letta-client 0.1.319__py3-none-any.whl → 0.1.320__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of letta-client might be problematic. Click here for more details.

Files changed (211) hide show
  1. letta_client/__init__.py +51 -9
  2. letta_client/agents/__init__.py +6 -2
  3. letta_client/agents/client.py +50 -213
  4. letta_client/agents/files/client.py +51 -6
  5. letta_client/agents/files/raw_client.py +94 -9
  6. letta_client/agents/messages/__init__.py +2 -2
  7. letta_client/agents/messages/client.py +104 -24
  8. letta_client/agents/messages/raw_client.py +109 -17
  9. letta_client/agents/messages/types/__init__.py +2 -2
  10. letta_client/agents/messages/types/{messages_preview_raw_payload_request.py → messages_preview_request.py} +1 -1
  11. letta_client/agents/raw_client.py +50 -253
  12. letta_client/agents/types/__init__.py +4 -0
  13. letta_client/agents/types/agents_list_request_order.py +5 -0
  14. letta_client/agents/types/agents_list_request_order_by.py +5 -0
  15. letta_client/archives/__init__.py +7 -0
  16. letta_client/archives/client.py +362 -0
  17. letta_client/archives/raw_client.py +448 -0
  18. letta_client/archives/types/__init__.py +7 -0
  19. letta_client/archives/types/list_archives_request_order.py +5 -0
  20. letta_client/base_client.py +3 -6
  21. letta_client/batches/__init__.py +5 -0
  22. letta_client/batches/client.py +68 -8
  23. letta_client/batches/messages/__init__.py +7 -0
  24. letta_client/{messages → batches/messages}/client.py +50 -43
  25. letta_client/{messages → batches/messages}/raw_client.py +52 -45
  26. letta_client/batches/messages/types/__init__.py +7 -0
  27. letta_client/batches/messages/types/messages_list_request_order.py +5 -0
  28. letta_client/batches/raw_client.py +71 -6
  29. letta_client/batches/types/__init__.py +7 -0
  30. letta_client/batches/types/batches_list_request_order.py +5 -0
  31. letta_client/blocks/__init__.py +3 -1
  32. letta_client/blocks/agents/__init__.py +3 -0
  33. letta_client/blocks/agents/client.py +57 -2
  34. letta_client/blocks/agents/raw_client.py +51 -0
  35. letta_client/blocks/agents/types/__init__.py +7 -0
  36. letta_client/blocks/agents/types/agents_list_request_order.py +5 -0
  37. letta_client/blocks/client.py +25 -4
  38. letta_client/blocks/raw_client.py +25 -4
  39. letta_client/blocks/types/__init__.py +7 -0
  40. letta_client/blocks/types/blocks_list_request_order.py +5 -0
  41. letta_client/core/client_wrapper.py +2 -2
  42. letta_client/errors/__init__.py +9 -1
  43. letta_client/errors/internal_server_error.py +10 -0
  44. letta_client/folders/__init__.py +14 -2
  45. letta_client/folders/agents/__init__.py +7 -0
  46. letta_client/folders/agents/client.py +176 -0
  47. letta_client/folders/agents/raw_client.py +182 -0
  48. letta_client/folders/agents/types/__init__.py +7 -0
  49. letta_client/folders/agents/types/agents_list_request_order.py +5 -0
  50. letta_client/folders/client.py +96 -86
  51. letta_client/folders/files/__init__.py +3 -0
  52. letta_client/folders/files/client.py +49 -10
  53. letta_client/folders/files/raw_client.py +41 -10
  54. letta_client/folders/files/types/__init__.py +7 -0
  55. letta_client/folders/files/types/files_list_request_order.py +5 -0
  56. letta_client/folders/passages/__init__.py +3 -0
  57. letta_client/folders/passages/client.py +43 -14
  58. letta_client/folders/passages/raw_client.py +35 -14
  59. letta_client/folders/passages/types/__init__.py +7 -0
  60. letta_client/folders/passages/types/passages_list_request_order.py +5 -0
  61. letta_client/folders/raw_client.py +83 -104
  62. letta_client/folders/types/__init__.py +7 -0
  63. letta_client/folders/types/folders_list_request_order.py +5 -0
  64. letta_client/groups/__init__.py +4 -2
  65. letta_client/groups/client.py +27 -6
  66. letta_client/groups/messages/__init__.py +2 -2
  67. letta_client/groups/messages/client.py +39 -18
  68. letta_client/groups/messages/raw_client.py +35 -14
  69. letta_client/groups/messages/types/__init__.py +2 -1
  70. letta_client/groups/messages/types/messages_list_request_order.py +5 -0
  71. letta_client/groups/raw_client.py +27 -6
  72. letta_client/groups/types/__init__.py +2 -1
  73. letta_client/groups/types/groups_list_request_order.py +5 -0
  74. letta_client/identities/__init__.py +12 -2
  75. letta_client/identities/agents/__init__.py +7 -0
  76. letta_client/identities/agents/client.py +177 -0
  77. letta_client/identities/agents/raw_client.py +183 -0
  78. letta_client/identities/agents/types/__init__.py +7 -0
  79. letta_client/identities/agents/types/agents_list_request_order.py +5 -0
  80. letta_client/identities/blocks/__init__.py +7 -0
  81. letta_client/identities/blocks/client.py +177 -0
  82. letta_client/identities/blocks/raw_client.py +183 -0
  83. letta_client/identities/blocks/types/__init__.py +7 -0
  84. letta_client/identities/blocks/types/blocks_list_request_order.py +5 -0
  85. letta_client/identities/client.py +37 -0
  86. letta_client/identities/raw_client.py +27 -0
  87. letta_client/identities/types/__init__.py +7 -0
  88. letta_client/identities/types/identities_list_request_order.py +5 -0
  89. letta_client/jobs/client.py +10 -2
  90. letta_client/jobs/raw_client.py +10 -2
  91. letta_client/models/__init__.py +3 -0
  92. letta_client/models/client.py +3 -0
  93. letta_client/{embedding_models → models/embeddings}/client.py +14 -14
  94. letta_client/{embedding_models → models/embeddings}/raw_client.py +10 -10
  95. letta_client/providers/__init__.py +3 -0
  96. letta_client/providers/client.py +151 -82
  97. letta_client/providers/raw_client.py +165 -72
  98. letta_client/providers/types/__init__.py +7 -0
  99. letta_client/providers/types/providers_list_request_order.py +5 -0
  100. letta_client/runs/__init__.py +2 -1
  101. letta_client/runs/client.py +21 -0
  102. letta_client/runs/messages/__init__.py +3 -0
  103. letta_client/runs/messages/client.py +15 -49
  104. letta_client/runs/messages/raw_client.py +13 -49
  105. letta_client/runs/messages/types/__init__.py +7 -0
  106. letta_client/runs/messages/types/messages_list_request_order.py +5 -0
  107. letta_client/runs/raw_client.py +21 -0
  108. letta_client/steps/__init__.py +13 -3
  109. letta_client/steps/client.py +32 -83
  110. letta_client/steps/feedback/client.py +21 -6
  111. letta_client/steps/feedback/raw_client.py +29 -6
  112. letta_client/steps/messages/__init__.py +7 -0
  113. letta_client/steps/messages/client.py +177 -0
  114. letta_client/steps/messages/raw_client.py +183 -0
  115. letta_client/steps/messages/types/__init__.py +8 -0
  116. letta_client/steps/messages/types/messages_list_request_order.py +5 -0
  117. letta_client/steps/messages/types/messages_list_response_item.py +25 -0
  118. letta_client/steps/metrics/client.py +110 -0
  119. letta_client/steps/metrics/raw_client.py +122 -0
  120. letta_client/steps/raw_client.py +17 -107
  121. letta_client/steps/trace/__init__.py +4 -0
  122. letta_client/steps/trace/client.py +110 -0
  123. letta_client/steps/trace/raw_client.py +122 -0
  124. letta_client/steps/types/__init__.py +2 -1
  125. letta_client/steps/types/steps_list_request_order.py +5 -0
  126. letta_client/tags/__init__.py +3 -0
  127. letta_client/tags/client.py +57 -4
  128. letta_client/tags/raw_client.py +49 -2
  129. letta_client/tags/types/__init__.py +7 -0
  130. letta_client/tags/types/tags_list_request_order.py +5 -0
  131. letta_client/telemetry/client.py +8 -0
  132. letta_client/telemetry/raw_client.py +8 -0
  133. letta_client/templates/__init__.py +64 -0
  134. letta_client/templates/agents/__init__.py +58 -0
  135. letta_client/templates/agents/types/__init__.py +66 -0
  136. letta_client/templates/agents/types/agents_create_response.py +6 -0
  137. letta_client/templates/agents/types/agents_create_response_group.py +52 -0
  138. letta_client/templates/agents/types/agents_create_response_group_base_template_id.py +12 -0
  139. letta_client/templates/agents/types/agents_create_response_group_base_template_id_item.py +5 -0
  140. letta_client/templates/agents/types/agents_create_response_group_deployment_id.py +12 -0
  141. letta_client/templates/agents/types/agents_create_response_group_deployment_id_item.py +5 -0
  142. letta_client/templates/agents/types/agents_create_response_group_hidden.py +12 -0
  143. letta_client/templates/agents/types/agents_create_response_group_hidden_item.py +5 -0
  144. letta_client/templates/agents/types/agents_create_response_group_last_processed_message_id.py +14 -0
  145. letta_client/templates/agents/types/agents_create_response_group_last_processed_message_id_item.py +5 -0
  146. letta_client/templates/agents/types/agents_create_response_group_manager_agent_id.py +12 -0
  147. letta_client/templates/agents/types/agents_create_response_group_manager_agent_id_item.py +5 -0
  148. letta_client/templates/agents/types/agents_create_response_group_manager_type.py +7 -0
  149. letta_client/templates/agents/types/agents_create_response_group_max_message_buffer_length.py +14 -0
  150. letta_client/templates/agents/types/agents_create_response_group_max_message_buffer_length_item.py +5 -0
  151. letta_client/templates/agents/types/agents_create_response_group_max_turns.py +12 -0
  152. letta_client/templates/agents/types/agents_create_response_group_max_turns_item.py +5 -0
  153. letta_client/templates/agents/types/agents_create_response_group_min_message_buffer_length.py +14 -0
  154. letta_client/templates/agents/types/agents_create_response_group_min_message_buffer_length_item.py +5 -0
  155. letta_client/templates/agents/types/agents_create_response_group_project_id.py +12 -0
  156. letta_client/templates/agents/types/agents_create_response_group_project_id_item.py +5 -0
  157. letta_client/templates/agents/types/agents_create_response_group_shared_block_ids.py +5 -0
  158. letta_client/templates/agents/types/agents_create_response_group_sleeptime_agent_frequency.py +14 -0
  159. letta_client/templates/agents/types/agents_create_response_group_sleeptime_agent_frequency_item.py +5 -0
  160. letta_client/templates/agents/types/agents_create_response_group_template_id.py +12 -0
  161. letta_client/templates/agents/types/agents_create_response_group_template_id_item.py +5 -0
  162. letta_client/templates/agents/types/agents_create_response_group_termination_token.py +12 -0
  163. letta_client/templates/agents/types/agents_create_response_group_termination_token_item.py +5 -0
  164. letta_client/templates/agents/types/agents_create_response_group_turns_counter.py +12 -0
  165. letta_client/templates/agents/types/agents_create_response_group_turns_counter_item.py +5 -0
  166. letta_client/templates/client.py +260 -0
  167. letta_client/templates/raw_client.py +395 -0
  168. letta_client/templates/types/__init__.py +8 -0
  169. letta_client/templates/types/templates_get_template_snapshot_response.py +4 -0
  170. letta_client/templates/types/templates_get_template_snapshot_response_blocks_item.py +1 -0
  171. letta_client/templates/types/templates_get_template_snapshot_response_relationships_item.py +23 -0
  172. letta_client/templates/types/templates_migrate_deployment_response.py +21 -0
  173. letta_client/templates/types/templates_set_current_template_from_snapshot_response.py +21 -0
  174. letta_client/tools/__init__.py +2 -0
  175. letta_client/tools/client.py +47 -20
  176. letta_client/tools/raw_client.py +43 -26
  177. letta_client/tools/types/__init__.py +2 -0
  178. letta_client/tools/types/tools_list_request_order.py +5 -0
  179. letta_client/types/__init__.py +10 -2
  180. letta_client/types/agent_state.py +5 -0
  181. letta_client/types/archive.py +77 -0
  182. letta_client/types/batch_job.py +6 -0
  183. letta_client/types/{body_export_agent_serialized.py → body_export_agent.py} +1 -1
  184. letta_client/types/child_tool_rule.py +1 -1
  185. letta_client/types/conditional_tool_rule.py +1 -1
  186. letta_client/types/continue_tool_rule.py +1 -1
  187. letta_client/types/deployment_entity.py +2 -0
  188. letta_client/types/init_tool_rule.py +1 -1
  189. letta_client/types/internal_server_error_body.py +20 -0
  190. letta_client/types/internal_template_agent_create.py +5 -0
  191. letta_client/types/job.py +6 -0
  192. letta_client/types/letta_schemas_agent_file_agent_schema.py +5 -0
  193. letta_client/types/max_count_per_step_tool_rule.py +1 -1
  194. letta_client/types/memory.py +7 -1
  195. letta_client/types/memory_agent_type.py +7 -0
  196. letta_client/types/parent_tool_rule.py +1 -1
  197. letta_client/types/required_before_exit_tool_rule.py +1 -1
  198. letta_client/types/requires_approval_tool_rule.py +1 -1
  199. letta_client/types/run.py +6 -0
  200. letta_client/types/source.py +6 -0
  201. letta_client/types/step.py +1 -1
  202. letta_client/types/stop_reason_type.py +1 -0
  203. letta_client/types/terminal_tool_rule.py +1 -1
  204. letta_client/types/vector_db_provider.py +5 -0
  205. letta_client/voice/client.py +2 -8
  206. letta_client/voice/raw_client.py +0 -8
  207. {letta_client-0.1.319.dist-info → letta_client-0.1.320.dist-info}/METADATA +9 -9
  208. {letta_client-0.1.319.dist-info → letta_client-0.1.320.dist-info}/RECORD +211 -114
  209. /letta_client/{embedding_models → models/embeddings}/__init__.py +0 -0
  210. /letta_client/{messages → steps/metrics}/__init__.py +0 -0
  211. {letta_client-0.1.319.dist-info → letta_client-0.1.320.dist-info}/WHEEL +0 -0
@@ -21,7 +21,8 @@ from ..types.http_validation_error import HttpValidationError
21
21
  from ..types.imported_agents_response import ImportedAgentsResponse
22
22
  from ..types.llm_config import LlmConfig
23
23
  from ..types.message_create import MessageCreate
24
- from ..types.paginated_agent_files import PaginatedAgentFiles
24
+ from .types.agents_list_request_order import AgentsListRequestOrder
25
+ from .types.agents_list_request_order_by import AgentsListRequestOrderBy
25
26
  from .types.agents_search_request_search_item import AgentsSearchRequestSearchItem
26
27
  from .types.agents_search_request_sort_by import AgentsSearchRequestSortBy
27
28
  from .types.agents_search_response import AgentsSearchResponse
@@ -54,15 +55,14 @@ class RawAgentsClient:
54
55
  identity_id: typing.Optional[str] = None,
55
56
  identifier_keys: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
56
57
  include_relationships: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
58
+ order: typing.Optional[AgentsListRequestOrder] = None,
59
+ order_by: typing.Optional[AgentsListRequestOrderBy] = None,
57
60
  ascending: typing.Optional[bool] = None,
58
61
  sort_by: typing.Optional[str] = None,
59
62
  request_options: typing.Optional[RequestOptions] = None,
60
63
  ) -> HttpResponse[typing.List[AgentState]]:
61
64
  """
62
- List all agents associated with a given user.
63
-
64
- This endpoint retrieves a list of all agents and their configurations
65
- associated with the specified user ID.
65
+ Get a list of all agents.
66
66
 
67
67
  Parameters
68
68
  ----------
@@ -105,6 +105,12 @@ class RawAgentsClient:
105
105
  include_relationships : typing.Optional[typing.Union[str, typing.Sequence[str]]]
106
106
  Specify which relational fields (e.g., 'tools', 'sources', 'memory') to include in the response. If not provided, all relationships are loaded by default. Using this can optimize performance by reducing unnecessary joins.
107
107
 
108
+ order : typing.Optional[AgentsListRequestOrder]
109
+ Sort order for agents by creation time. 'asc' for oldest first, 'desc' for newest first
110
+
111
+ order_by : typing.Optional[AgentsListRequestOrderBy]
112
+ Field to sort by
113
+
108
114
  ascending : typing.Optional[bool]
109
115
  Whether to sort agents oldest to newest (True) or newest to oldest (False, default)
110
116
 
@@ -136,6 +142,8 @@ class RawAgentsClient:
136
142
  "identity_id": identity_id,
137
143
  "identifier_keys": identifier_keys,
138
144
  "include_relationships": include_relationships,
145
+ "order": order,
146
+ "order_by": order_by,
139
147
  "ascending": ascending,
140
148
  "sort_by": sort_by,
141
149
  },
@@ -201,6 +209,7 @@ class RawAgentsClient:
201
209
  template: typing.Optional[bool] = OMIT,
202
210
  project: typing.Optional[str] = OMIT,
203
211
  tool_exec_environment_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
212
+ secrets: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
204
213
  memory_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
205
214
  project_id: typing.Optional[str] = OMIT,
206
215
  template_id: typing.Optional[str] = OMIT,
@@ -216,7 +225,7 @@ class RawAgentsClient:
216
225
  request_options: typing.Optional[RequestOptions] = None,
217
226
  ) -> HttpResponse[AgentState]:
218
227
  """
219
- Create a new agent with the specified configuration.
228
+ Create an agent.
220
229
 
221
230
  Parameters
222
231
  ----------
@@ -311,6 +320,9 @@ class RawAgentsClient:
311
320
  Deprecated: Project should now be passed via the X-Project header instead of in the request body. If using the sdk, this can be done via the new x_project field below.
312
321
 
313
322
  tool_exec_environment_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
323
+ Deprecated: use `secrets` field instead.
324
+
325
+ secrets : typing.Optional[typing.Dict[str, typing.Optional[str]]]
314
326
  The environment variables for tool execution specific to this agent.
315
327
 
316
328
  memory_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
@@ -402,6 +414,7 @@ class RawAgentsClient:
402
414
  "template": template,
403
415
  "project": project,
404
416
  "tool_exec_environment_variables": tool_exec_environment_variables,
417
+ "secrets": secrets,
405
418
  "memory_variables": memory_variables,
406
419
  "project_id": project_id,
407
420
  "template_id": template_id,
@@ -451,7 +464,7 @@ class RawAgentsClient:
451
464
 
452
465
  def count(self, *, request_options: typing.Optional[RequestOptions] = None) -> HttpResponse[int]:
453
466
  """
454
- Get the count of all agents associated with a given user.
467
+ Get the total number of agents.
455
468
 
456
469
  Parameters
457
470
  ----------
@@ -787,6 +800,7 @@ class RawAgentsClient:
787
800
  description: typing.Optional[str] = OMIT,
788
801
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
789
802
  tool_exec_environment_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
803
+ secrets: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
790
804
  project_id: typing.Optional[str] = OMIT,
791
805
  template_id: typing.Optional[str] = OMIT,
792
806
  base_template_id: typing.Optional[str] = OMIT,
@@ -806,7 +820,7 @@ class RawAgentsClient:
806
820
  request_options: typing.Optional[RequestOptions] = None,
807
821
  ) -> HttpResponse[AgentState]:
808
822
  """
809
- Update an existing agent
823
+ Update an existing agent.
810
824
 
811
825
  Parameters
812
826
  ----------
@@ -849,6 +863,9 @@ class RawAgentsClient:
849
863
  The metadata of the agent.
850
864
 
851
865
  tool_exec_environment_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
866
+ Deprecated: use `secrets` field instead
867
+
868
+ secrets : typing.Optional[typing.Dict[str, typing.Optional[str]]]
852
869
  The environment variables for tool execution specific to this agent.
853
870
 
854
871
  project_id : typing.Optional[str]
@@ -930,6 +947,7 @@ class RawAgentsClient:
930
947
  "description": description,
931
948
  "metadata": metadata,
932
949
  "tool_exec_environment_variables": tool_exec_environment_variables,
950
+ "secrets": secrets,
933
951
  "project_id": project_id,
934
952
  "template_id": template_id,
935
953
  "base_template_id": base_template_id,
@@ -981,125 +999,6 @@ class RawAgentsClient:
981
999
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
982
1000
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
983
1001
 
984
- def list_agent_files(
985
- self,
986
- agent_id: str,
987
- *,
988
- cursor: typing.Optional[str] = None,
989
- limit: typing.Optional[int] = None,
990
- is_open: typing.Optional[bool] = None,
991
- request_options: typing.Optional[RequestOptions] = None,
992
- ) -> HttpResponse[PaginatedAgentFiles]:
993
- """
994
- Get the files attached to an agent with their open/closed status (paginated).
995
-
996
- Parameters
997
- ----------
998
- agent_id : str
999
-
1000
- cursor : typing.Optional[str]
1001
- Pagination cursor from previous response
1002
-
1003
- limit : typing.Optional[int]
1004
- Number of items to return (1-100)
1005
-
1006
- is_open : typing.Optional[bool]
1007
- Filter by open status (true for open files, false for closed files)
1008
-
1009
- request_options : typing.Optional[RequestOptions]
1010
- Request-specific configuration.
1011
-
1012
- Returns
1013
- -------
1014
- HttpResponse[PaginatedAgentFiles]
1015
- Successful Response
1016
- """
1017
- _response = self._client_wrapper.httpx_client.request(
1018
- f"v1/agents/{jsonable_encoder(agent_id)}/files",
1019
- method="GET",
1020
- params={
1021
- "cursor": cursor,
1022
- "limit": limit,
1023
- "is_open": is_open,
1024
- },
1025
- request_options=request_options,
1026
- )
1027
- try:
1028
- if 200 <= _response.status_code < 300:
1029
- _data = typing.cast(
1030
- PaginatedAgentFiles,
1031
- construct_type(
1032
- type_=PaginatedAgentFiles, # type: ignore
1033
- object_=_response.json(),
1034
- ),
1035
- )
1036
- return HttpResponse(response=_response, data=_data)
1037
- if _response.status_code == 422:
1038
- raise UnprocessableEntityError(
1039
- headers=dict(_response.headers),
1040
- body=typing.cast(
1041
- HttpValidationError,
1042
- construct_type(
1043
- type_=HttpValidationError, # type: ignore
1044
- object_=_response.json(),
1045
- ),
1046
- ),
1047
- )
1048
- _response_json = _response.json()
1049
- except JSONDecodeError:
1050
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
1051
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
1052
-
1053
- def summarize_agent_conversation(
1054
- self, agent_id: str, *, max_message_length: int, request_options: typing.Optional[RequestOptions] = None
1055
- ) -> HttpResponse[None]:
1056
- """
1057
- Summarize an agent's conversation history to a target message length.
1058
-
1059
- This endpoint summarizes the current message history for a given agent,
1060
- truncating and compressing it down to the specified `max_message_length`.
1061
-
1062
- Parameters
1063
- ----------
1064
- agent_id : str
1065
-
1066
- max_message_length : int
1067
- Maximum number of messages to retain after summarization.
1068
-
1069
- request_options : typing.Optional[RequestOptions]
1070
- Request-specific configuration.
1071
-
1072
- Returns
1073
- -------
1074
- HttpResponse[None]
1075
- """
1076
- _response = self._client_wrapper.httpx_client.request(
1077
- f"v1/agents/{jsonable_encoder(agent_id)}/summarize",
1078
- method="POST",
1079
- params={
1080
- "max_message_length": max_message_length,
1081
- },
1082
- request_options=request_options,
1083
- )
1084
- try:
1085
- if 200 <= _response.status_code < 300:
1086
- return HttpResponse(response=_response, data=None)
1087
- if _response.status_code == 422:
1088
- raise UnprocessableEntityError(
1089
- headers=dict(_response.headers),
1090
- body=typing.cast(
1091
- HttpValidationError,
1092
- construct_type(
1093
- type_=HttpValidationError, # type: ignore
1094
- object_=_response.json(),
1095
- ),
1096
- ),
1097
- )
1098
- _response_json = _response.json()
1099
- except JSONDecodeError:
1100
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
1101
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
1102
-
1103
1002
  def search(
1104
1003
  self,
1105
1004
  *,
@@ -1197,15 +1096,14 @@ class AsyncRawAgentsClient:
1197
1096
  identity_id: typing.Optional[str] = None,
1198
1097
  identifier_keys: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
1199
1098
  include_relationships: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
1099
+ order: typing.Optional[AgentsListRequestOrder] = None,
1100
+ order_by: typing.Optional[AgentsListRequestOrderBy] = None,
1200
1101
  ascending: typing.Optional[bool] = None,
1201
1102
  sort_by: typing.Optional[str] = None,
1202
1103
  request_options: typing.Optional[RequestOptions] = None,
1203
1104
  ) -> AsyncHttpResponse[typing.List[AgentState]]:
1204
1105
  """
1205
- List all agents associated with a given user.
1206
-
1207
- This endpoint retrieves a list of all agents and their configurations
1208
- associated with the specified user ID.
1106
+ Get a list of all agents.
1209
1107
 
1210
1108
  Parameters
1211
1109
  ----------
@@ -1248,6 +1146,12 @@ class AsyncRawAgentsClient:
1248
1146
  include_relationships : typing.Optional[typing.Union[str, typing.Sequence[str]]]
1249
1147
  Specify which relational fields (e.g., 'tools', 'sources', 'memory') to include in the response. If not provided, all relationships are loaded by default. Using this can optimize performance by reducing unnecessary joins.
1250
1148
 
1149
+ order : typing.Optional[AgentsListRequestOrder]
1150
+ Sort order for agents by creation time. 'asc' for oldest first, 'desc' for newest first
1151
+
1152
+ order_by : typing.Optional[AgentsListRequestOrderBy]
1153
+ Field to sort by
1154
+
1251
1155
  ascending : typing.Optional[bool]
1252
1156
  Whether to sort agents oldest to newest (True) or newest to oldest (False, default)
1253
1157
 
@@ -1279,6 +1183,8 @@ class AsyncRawAgentsClient:
1279
1183
  "identity_id": identity_id,
1280
1184
  "identifier_keys": identifier_keys,
1281
1185
  "include_relationships": include_relationships,
1186
+ "order": order,
1187
+ "order_by": order_by,
1282
1188
  "ascending": ascending,
1283
1189
  "sort_by": sort_by,
1284
1190
  },
@@ -1344,6 +1250,7 @@ class AsyncRawAgentsClient:
1344
1250
  template: typing.Optional[bool] = OMIT,
1345
1251
  project: typing.Optional[str] = OMIT,
1346
1252
  tool_exec_environment_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
1253
+ secrets: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
1347
1254
  memory_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
1348
1255
  project_id: typing.Optional[str] = OMIT,
1349
1256
  template_id: typing.Optional[str] = OMIT,
@@ -1359,7 +1266,7 @@ class AsyncRawAgentsClient:
1359
1266
  request_options: typing.Optional[RequestOptions] = None,
1360
1267
  ) -> AsyncHttpResponse[AgentState]:
1361
1268
  """
1362
- Create a new agent with the specified configuration.
1269
+ Create an agent.
1363
1270
 
1364
1271
  Parameters
1365
1272
  ----------
@@ -1454,6 +1361,9 @@ class AsyncRawAgentsClient:
1454
1361
  Deprecated: Project should now be passed via the X-Project header instead of in the request body. If using the sdk, this can be done via the new x_project field below.
1455
1362
 
1456
1363
  tool_exec_environment_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
1364
+ Deprecated: use `secrets` field instead.
1365
+
1366
+ secrets : typing.Optional[typing.Dict[str, typing.Optional[str]]]
1457
1367
  The environment variables for tool execution specific to this agent.
1458
1368
 
1459
1369
  memory_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
@@ -1545,6 +1455,7 @@ class AsyncRawAgentsClient:
1545
1455
  "template": template,
1546
1456
  "project": project,
1547
1457
  "tool_exec_environment_variables": tool_exec_environment_variables,
1458
+ "secrets": secrets,
1548
1459
  "memory_variables": memory_variables,
1549
1460
  "project_id": project_id,
1550
1461
  "template_id": template_id,
@@ -1594,7 +1505,7 @@ class AsyncRawAgentsClient:
1594
1505
 
1595
1506
  async def count(self, *, request_options: typing.Optional[RequestOptions] = None) -> AsyncHttpResponse[int]:
1596
1507
  """
1597
- Get the count of all agents associated with a given user.
1508
+ Get the total number of agents.
1598
1509
 
1599
1510
  Parameters
1600
1511
  ----------
@@ -1930,6 +1841,7 @@ class AsyncRawAgentsClient:
1930
1841
  description: typing.Optional[str] = OMIT,
1931
1842
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1932
1843
  tool_exec_environment_variables: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
1844
+ secrets: typing.Optional[typing.Dict[str, typing.Optional[str]]] = OMIT,
1933
1845
  project_id: typing.Optional[str] = OMIT,
1934
1846
  template_id: typing.Optional[str] = OMIT,
1935
1847
  base_template_id: typing.Optional[str] = OMIT,
@@ -1949,7 +1861,7 @@ class AsyncRawAgentsClient:
1949
1861
  request_options: typing.Optional[RequestOptions] = None,
1950
1862
  ) -> AsyncHttpResponse[AgentState]:
1951
1863
  """
1952
- Update an existing agent
1864
+ Update an existing agent.
1953
1865
 
1954
1866
  Parameters
1955
1867
  ----------
@@ -1992,6 +1904,9 @@ class AsyncRawAgentsClient:
1992
1904
  The metadata of the agent.
1993
1905
 
1994
1906
  tool_exec_environment_variables : typing.Optional[typing.Dict[str, typing.Optional[str]]]
1907
+ Deprecated: use `secrets` field instead
1908
+
1909
+ secrets : typing.Optional[typing.Dict[str, typing.Optional[str]]]
1995
1910
  The environment variables for tool execution specific to this agent.
1996
1911
 
1997
1912
  project_id : typing.Optional[str]
@@ -2073,6 +1988,7 @@ class AsyncRawAgentsClient:
2073
1988
  "description": description,
2074
1989
  "metadata": metadata,
2075
1990
  "tool_exec_environment_variables": tool_exec_environment_variables,
1991
+ "secrets": secrets,
2076
1992
  "project_id": project_id,
2077
1993
  "template_id": template_id,
2078
1994
  "base_template_id": base_template_id,
@@ -2124,125 +2040,6 @@ class AsyncRawAgentsClient:
2124
2040
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
2125
2041
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
2126
2042
 
2127
- async def list_agent_files(
2128
- self,
2129
- agent_id: str,
2130
- *,
2131
- cursor: typing.Optional[str] = None,
2132
- limit: typing.Optional[int] = None,
2133
- is_open: typing.Optional[bool] = None,
2134
- request_options: typing.Optional[RequestOptions] = None,
2135
- ) -> AsyncHttpResponse[PaginatedAgentFiles]:
2136
- """
2137
- Get the files attached to an agent with their open/closed status (paginated).
2138
-
2139
- Parameters
2140
- ----------
2141
- agent_id : str
2142
-
2143
- cursor : typing.Optional[str]
2144
- Pagination cursor from previous response
2145
-
2146
- limit : typing.Optional[int]
2147
- Number of items to return (1-100)
2148
-
2149
- is_open : typing.Optional[bool]
2150
- Filter by open status (true for open files, false for closed files)
2151
-
2152
- request_options : typing.Optional[RequestOptions]
2153
- Request-specific configuration.
2154
-
2155
- Returns
2156
- -------
2157
- AsyncHttpResponse[PaginatedAgentFiles]
2158
- Successful Response
2159
- """
2160
- _response = await self._client_wrapper.httpx_client.request(
2161
- f"v1/agents/{jsonable_encoder(agent_id)}/files",
2162
- method="GET",
2163
- params={
2164
- "cursor": cursor,
2165
- "limit": limit,
2166
- "is_open": is_open,
2167
- },
2168
- request_options=request_options,
2169
- )
2170
- try:
2171
- if 200 <= _response.status_code < 300:
2172
- _data = typing.cast(
2173
- PaginatedAgentFiles,
2174
- construct_type(
2175
- type_=PaginatedAgentFiles, # type: ignore
2176
- object_=_response.json(),
2177
- ),
2178
- )
2179
- return AsyncHttpResponse(response=_response, data=_data)
2180
- if _response.status_code == 422:
2181
- raise UnprocessableEntityError(
2182
- headers=dict(_response.headers),
2183
- body=typing.cast(
2184
- HttpValidationError,
2185
- construct_type(
2186
- type_=HttpValidationError, # type: ignore
2187
- object_=_response.json(),
2188
- ),
2189
- ),
2190
- )
2191
- _response_json = _response.json()
2192
- except JSONDecodeError:
2193
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
2194
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
2195
-
2196
- async def summarize_agent_conversation(
2197
- self, agent_id: str, *, max_message_length: int, request_options: typing.Optional[RequestOptions] = None
2198
- ) -> AsyncHttpResponse[None]:
2199
- """
2200
- Summarize an agent's conversation history to a target message length.
2201
-
2202
- This endpoint summarizes the current message history for a given agent,
2203
- truncating and compressing it down to the specified `max_message_length`.
2204
-
2205
- Parameters
2206
- ----------
2207
- agent_id : str
2208
-
2209
- max_message_length : int
2210
- Maximum number of messages to retain after summarization.
2211
-
2212
- request_options : typing.Optional[RequestOptions]
2213
- Request-specific configuration.
2214
-
2215
- Returns
2216
- -------
2217
- AsyncHttpResponse[None]
2218
- """
2219
- _response = await self._client_wrapper.httpx_client.request(
2220
- f"v1/agents/{jsonable_encoder(agent_id)}/summarize",
2221
- method="POST",
2222
- params={
2223
- "max_message_length": max_message_length,
2224
- },
2225
- request_options=request_options,
2226
- )
2227
- try:
2228
- if 200 <= _response.status_code < 300:
2229
- return AsyncHttpResponse(response=_response, data=None)
2230
- if _response.status_code == 422:
2231
- raise UnprocessableEntityError(
2232
- headers=dict(_response.headers),
2233
- body=typing.cast(
2234
- HttpValidationError,
2235
- construct_type(
2236
- type_=HttpValidationError, # type: ignore
2237
- object_=_response.json(),
2238
- ),
2239
- ),
2240
- )
2241
- _response_json = _response.json()
2242
- except JSONDecodeError:
2243
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
2244
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
2245
-
2246
2043
  async def search(
2247
2044
  self,
2248
2045
  *,
@@ -2,6 +2,8 @@
2
2
 
3
3
  # isort: skip_file
4
4
 
5
+ from .agents_list_request_order import AgentsListRequestOrder
6
+ from .agents_list_request_order_by import AgentsListRequestOrderBy
5
7
  from .agents_search_request_search_item import AgentsSearchRequestSearchItem
6
8
  from .agents_search_request_search_item_field import AgentsSearchRequestSearchItemField
7
9
  from .agents_search_request_search_item_one import AgentsSearchRequestSearchItemOne
@@ -17,6 +19,8 @@ from .update_agent_response_format import UpdateAgentResponseFormat
17
19
  from .update_agent_tool_rules_item import UpdateAgentToolRulesItem
18
20
 
19
21
  __all__ = [
22
+ "AgentsListRequestOrder",
23
+ "AgentsListRequestOrderBy",
20
24
  "AgentsSearchRequestSearchItem",
21
25
  "AgentsSearchRequestSearchItemField",
22
26
  "AgentsSearchRequestSearchItemOne",
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsListRequestOrder = typing.Union[typing.Literal["asc", "desc"], typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsListRequestOrderBy = typing.Union[typing.Literal["created_at", "last_run_completion"], typing.Any]
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ from .types import ListArchivesRequestOrder
6
+
7
+ __all__ = ["ListArchivesRequestOrder"]