letta-client 1.0.0a6__py3-none-any.whl → 1.0.0a7__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 (467) hide show
  1. {letta_sdk → letta_client}/__init__.py +8 -8
  2. {letta_sdk → letta_client}/_base_client.py +1 -1
  3. {letta_sdk → letta_client}/_client.py +124 -171
  4. {letta_sdk → letta_client}/_exceptions.py +2 -2
  5. {letta_sdk → letta_client}/_resource.py +5 -5
  6. {letta_sdk → letta_client}/_response.py +8 -6
  7. {letta_sdk → letta_client}/_streaming.py +3 -3
  8. {letta_sdk → letta_client}/_types.py +1 -1
  9. {letta_sdk → letta_client}/_utils/_logs.py +3 -3
  10. {letta_sdk → letta_client}/_utils/_resources_proxy.py +4 -4
  11. {letta_sdk → letta_client}/_version.py +2 -2
  12. {letta_sdk → letta_client}/resources/__init__.py +14 -154
  13. {letta_sdk → letta_client}/resources/agents/__init__.py +28 -42
  14. {letta_sdk → letta_client}/resources/agents/agents.py +216 -734
  15. {letta_sdk/resources/agents/core_memory → letta_client/resources/agents}/blocks.py +103 -12
  16. {letta_sdk → letta_client}/resources/agents/files.py +71 -8
  17. {letta_sdk → letta_client}/resources/agents/folders.py +90 -3
  18. letta_client/resources/agents/groups.py +242 -0
  19. {letta_sdk → letta_client}/resources/agents/messages.py +252 -480
  20. {letta_sdk → letta_client}/resources/agents/tools.py +135 -22
  21. letta_sdk/resources/jobs.py → letta_client/resources/archives.py +268 -280
  22. {letta_sdk/resources/messages → letta_client/resources/batches}/batches.py +35 -152
  23. letta_client/resources/batches/messages.py +238 -0
  24. {letta_sdk/resources/agents/core_memory → letta_client/resources/blocks}/__init__.py +14 -14
  25. letta_client/resources/blocks/agents.py +284 -0
  26. {letta_sdk/resources → letta_client/resources/blocks}/blocks.py +54 -167
  27. letta_client/resources/folders/__init__.py +47 -0
  28. letta_client/resources/folders/agents.py +234 -0
  29. letta_client/resources/folders/files.py +469 -0
  30. letta_sdk/resources/providers.py → letta_client/resources/folders/folders.py +292 -309
  31. {letta_sdk → letta_client}/resources/groups/groups.py +12 -78
  32. {letta_sdk → letta_client}/resources/groups/messages.py +165 -27
  33. letta_client/resources/identities/__init__.py +61 -0
  34. letta_client/resources/identities/agents.py +266 -0
  35. letta_client/resources/identities/blocks.py +234 -0
  36. {letta_sdk/resources → letta_client/resources/identities}/identities.py +267 -525
  37. letta_client/resources/identities/properties.py +174 -0
  38. letta_client/resources/models/__init__.py +33 -0
  39. {letta_sdk/resources → letta_client/resources/models}/embeddings.py +26 -49
  40. {letta_sdk/resources → letta_client/resources/models}/models.py +42 -117
  41. letta_client/resources/runs/__init__.py +61 -0
  42. letta_sdk/resources/archives.py → letta_client/resources/runs/messages.py +182 -153
  43. letta_client/resources/runs/runs.py +460 -0
  44. letta_sdk/resources/projects.py → letta_client/resources/runs/steps.py +93 -56
  45. letta_sdk/resources/voice_beta/chat.py → letta_client/resources/runs/usage.py +50 -57
  46. letta_client/resources/steps/__init__.py +75 -0
  47. letta_client/resources/steps/feedback.py +198 -0
  48. letta_client/resources/steps/messages.py +234 -0
  49. letta_client/resources/steps/metrics.py +167 -0
  50. letta_client/resources/steps/steps.py +511 -0
  51. letta_sdk/resources/telemetry.py → letta_client/resources/steps/trace.py +45 -56
  52. letta_client/resources/templates/__init__.py +33 -0
  53. letta_client/resources/templates/agents.py +236 -0
  54. letta_client/resources/templates/templates.py +102 -0
  55. {letta_sdk/resources/tools → letta_client/resources}/tools.py +239 -425
  56. letta_client/types/__init__.py +120 -0
  57. {letta_sdk → letta_client}/types/agent_create_params.py +5 -2
  58. {letta_sdk → letta_client}/types/agent_environment_variable.py +3 -0
  59. letta_client/types/agent_export_file_params.py +18 -0
  60. letta_sdk/types/agent_export_response.py → letta_client/types/agent_export_file_response.py +2 -2
  61. letta_sdk/types/agent_import_params.py → letta_client/types/agent_import_file_params.py +5 -2
  62. letta_sdk/types/agent_import_response.py → letta_client/types/agent_import_file_response.py +2 -2
  63. {letta_sdk → letta_client}/types/agent_list_params.py +19 -2
  64. {letta_sdk → letta_client}/types/agent_retrieve_params.py +20 -3
  65. {letta_sdk → letta_client}/types/agent_state.py +131 -3
  66. {letta_sdk → letta_client}/types/agent_type.py +1 -0
  67. {letta_sdk → letta_client}/types/agent_update_params.py +12 -0
  68. {letta_sdk → letta_client}/types/agents/__init__.py +12 -19
  69. letta_client/types/agents/approval_create_param.py +44 -0
  70. {letta_sdk → letta_client}/types/agents/approval_request_message.py +10 -2
  71. letta_client/types/agents/approval_response_message.py +63 -0
  72. {letta_sdk/types/agents/core_memory → letta_client/types/agents}/block.py +1 -1
  73. letta_sdk/types/identity_list_blocks_params.py → letta_client/types/agents/block_list_params.py +2 -2
  74. {letta_sdk/types/agents/core_memory → letta_client/types/agents}/block_update_params.py +1 -0
  75. letta_client/types/agents/file_list_params.py +40 -0
  76. letta_client/types/agents/folder_list_params.py +34 -0
  77. letta_sdk/types/source.py → letta_client/types/agents/folder_list_response.py +10 -6
  78. letta_client/types/agents/group_list_params.py +37 -0
  79. letta_client/types/agents/group_list_response.py +10 -0
  80. {letta_sdk → letta_client}/types/agents/letta_assistant_message_content_union.py +3 -0
  81. {letta_sdk → letta_client}/types/agents/letta_assistant_message_content_union_param.py +4 -0
  82. {letta_sdk → letta_client}/types/agents/letta_response.py +0 -4
  83. {letta_sdk → letta_client}/types/agents/message.py +93 -2
  84. {letta_sdk → letta_client}/types/agents/message_list_params.py +20 -5
  85. letta_sdk/types/agent_reset_messages_params.py → letta_client/types/agents/message_reset_params.py +2 -2
  86. {letta_sdk → letta_client}/types/agents/message_send_async_params.py +12 -3
  87. {letta_sdk → letta_client}/types/agents/message_send_params.py +12 -3
  88. letta_sdk/types/agents/message_send_stream_params.py → letta_client/types/agents/message_stream_params.py +14 -5
  89. {letta_sdk → letta_client}/types/agents/message_update_params.py +4 -0
  90. {letta_sdk → letta_client}/types/agents/omitted_reasoning_content.py +3 -0
  91. {letta_sdk → letta_client}/types/agents/omitted_reasoning_content_param.py +4 -0
  92. {letta_sdk → letta_client}/types/agents/run.py +16 -19
  93. {letta_sdk → letta_client}/types/agents/text_content.py +3 -0
  94. {letta_sdk → letta_client}/types/agents/text_content_param.py +4 -0
  95. {letta_sdk → letta_client}/types/agents/tool_call_content.py +3 -0
  96. {letta_sdk → letta_client}/types/agents/tool_call_content_param.py +4 -1
  97. {letta_sdk → letta_client}/types/agents/tool_call_message.py +6 -2
  98. letta_client/types/agents/tool_list_params.py +34 -0
  99. {letta_sdk → letta_client}/types/agents/tool_return.py +7 -3
  100. letta_client/types/agents/tool_return_param.py +25 -0
  101. letta_client/types/agents/tool_update_approval_params.py +21 -0
  102. {letta_sdk → letta_client}/types/archive.py +4 -0
  103. letta_client/types/archive_create_params.py +19 -0
  104. letta_sdk/types/archive_retrieve_params.py → letta_client/types/archive_list_params.py +2 -2
  105. letta_sdk/types/archive_retrieve_response.py → letta_client/types/archive_list_response.py +2 -2
  106. {letta_sdk → letta_client}/types/archive_update_params.py +3 -3
  107. {letta_sdk/types/messages → letta_client/types}/batch_create_params.py +15 -6
  108. letta_sdk/types/job.py → letta_client/types/batch_job.py +8 -3
  109. letta_client/types/batches/__init__.py +6 -0
  110. letta_sdk/types/messages/batch_list_messages_params.py → letta_client/types/batches/message_list_params.py +2 -2
  111. letta_sdk/types/messages/batch_list_messages_response.py → letta_client/types/batches/message_list_response.py +2 -2
  112. {letta_sdk → letta_client}/types/block_list_response.py +1 -1
  113. letta_client/types/blocks/__init__.py +6 -0
  114. letta_sdk/types/block_list_agents_params.py → letta_client/types/blocks/agent_list_params.py +22 -5
  115. letta_sdk/types/agent_list_groups_response.py → letta_client/types/blocks/agent_list_response.py +3 -3
  116. letta_client/types/child_tool_rule.py +40 -0
  117. letta_client/types/child_tool_rule_param.py +42 -0
  118. letta_client/types/folders/__init__.py +10 -0
  119. letta_sdk/types/folder_list_agents_params.py → letta_client/types/folders/agent_list_params.py +2 -2
  120. letta_sdk/types/run_list_active_response.py → letta_client/types/folders/agent_list_response.py +2 -4
  121. letta_sdk/types/folder_list_files_params.py → letta_client/types/folders/file_list_params.py +2 -2
  122. letta_client/types/folders/file_list_response.py +68 -0
  123. letta_sdk/types/source_upload_file_params.py → letta_client/types/folders/file_upload_params.py +5 -6
  124. letta_sdk/types/file_metadata.py → letta_client/types/folders/file_upload_response.py +5 -5
  125. {letta_sdk → letta_client}/types/groups/__init__.py +1 -1
  126. {letta_sdk → letta_client}/types/groups/message_send_params.py +12 -3
  127. letta_sdk/types/groups/message_send_stream_params.py → letta_client/types/groups/message_stream_params.py +14 -5
  128. {letta_sdk → letta_client}/types/groups/message_update_params.py +4 -0
  129. letta_sdk/types/health_check_response.py → letta_client/types/health_response.py +2 -2
  130. letta_client/types/identities/__init__.py +9 -0
  131. letta_sdk/types/identity_list_agents_params.py → letta_client/types/identities/agent_list_params.py +19 -3
  132. letta_client/types/identities/agent_list_response.py +10 -0
  133. letta_client/types/identities/block_list_params.py +34 -0
  134. letta_sdk/types/agents/folder_list_response.py → letta_client/types/identities/block_list_response.py +3 -3
  135. letta_sdk/types/identity_upsert_properties_params.py → letta_client/types/identities/property_upsert_params.py +3 -3
  136. letta_sdk/types/identity_modify_params.py → letta_client/types/identity_update_params.py +2 -2
  137. {letta_sdk → letta_client}/types/init_tool_rule.py +10 -1
  138. {letta_sdk → letta_client}/types/init_tool_rule_param.py +10 -1
  139. {letta_sdk → letta_client}/types/llm_config.py +6 -0
  140. {letta_sdk → letta_client}/types/llm_config_param.py +6 -0
  141. {letta_sdk/types/voice_beta → letta_client/types/models}/__init__.py +1 -1
  142. letta_sdk/types/agents/archival_memory_create_response.py → letta_client/types/models/embedding_list_response.py +3 -3
  143. {letta_sdk → letta_client}/types/run_list_params.py +29 -5
  144. letta_client/types/runs/__init__.py +10 -0
  145. letta_sdk/types/run_list_messages_params.py → letta_client/types/runs/message_list_params.py +5 -2
  146. letta_client/types/runs/message_list_response.py +10 -0
  147. letta_sdk/types/run_retrieve_stream_params.py → letta_client/types/runs/message_stream_params.py +2 -2
  148. letta_sdk/types/run_list_steps_params.py → letta_client/types/runs/step_list_params.py +9 -6
  149. letta_sdk/types/job_list_response.py → letta_client/types/runs/step_list_response.py +3 -3
  150. letta_sdk/types/run_retrieve_usage_response.py → letta_client/types/runs/usage_retrieve_response.py +3 -3
  151. {letta_sdk → letta_client}/types/step.py +6 -6
  152. letta_client/types/steps/__init__.py +8 -0
  153. letta_sdk/types/step_update_feedback_params.py → letta_client/types/steps/feedback_create_params.py +3 -3
  154. letta_sdk/types/step_list_messages_params.py → letta_client/types/steps/message_list_params.py +2 -2
  155. letta_client/types/steps/message_list_response.py +34 -0
  156. letta_sdk/types/step_retrieve_metrics_response.py → letta_client/types/steps/metric_retrieve_response.py +6 -6
  157. {letta_sdk/types/tools → letta_client/types/templates}/__init__.py +2 -0
  158. letta_sdk/types/template_create_agents_params.py → letta_client/types/templates/agent_create_params.py +4 -4
  159. {letta_sdk → letta_client}/types/tool.py +6 -0
  160. {letta_sdk → letta_client}/types/tool_create_params.py +6 -0
  161. {letta_sdk → letta_client}/types/tool_return_message.py +3 -0
  162. letta_sdk/types/tool_modify_params.py → letta_client/types/tool_update_params.py +8 -2
  163. letta_sdk/types/tool_upsert_base_response.py → letta_client/types/tool_upsert_base_tools_response.py +2 -2
  164. {letta_sdk → letta_client}/types/tool_upsert_params.py +6 -0
  165. {letta_client-1.0.0a6.dist-info → letta_client-1.0.0a7.dist-info}/METADATA +110 -70
  166. letta_client-1.0.0a7.dist-info/RECORD +307 -0
  167. {letta_client-1.0.0a6.dist-info → letta_client-1.0.0a7.dist-info}/licenses/LICENSE +1 -1
  168. letta_client-1.0.0a6.dist-info/RECORD +0 -420
  169. letta_sdk/resources/_internal_templates/__init__.py +0 -33
  170. letta_sdk/resources/_internal_templates/_internal_templates.py +0 -961
  171. letta_sdk/resources/_internal_templates/deployment.py +0 -268
  172. letta_sdk/resources/agents/archival_memory.py +0 -581
  173. letta_sdk/resources/agents/core_memory/core_memory.py +0 -278
  174. letta_sdk/resources/agents/sources.py +0 -332
  175. letta_sdk/resources/client_side_access_tokens.py +0 -402
  176. letta_sdk/resources/folders.py +0 -1562
  177. letta_sdk/resources/health.py +0 -135
  178. letta_sdk/resources/messages/messages.py +0 -102
  179. letta_sdk/resources/runs.py +0 -1016
  180. letta_sdk/resources/sources/__init__.py +0 -33
  181. letta_sdk/resources/sources/files.py +0 -341
  182. letta_sdk/resources/sources/sources.py +0 -1371
  183. letta_sdk/resources/steps.py +0 -784
  184. letta_sdk/resources/templates.py +0 -1310
  185. letta_sdk/resources/tools/__init__.py +0 -47
  186. letta_sdk/resources/tools/composio/__init__.py +0 -33
  187. letta_sdk/resources/tools/composio/apps.py +0 -214
  188. letta_sdk/resources/tools/composio/composio.py +0 -201
  189. letta_sdk/resources/tools/mcp/__init__.py +0 -47
  190. letta_sdk/resources/tools/mcp/mcp.py +0 -134
  191. letta_sdk/resources/tools/mcp/oauth.py +0 -214
  192. letta_sdk/resources/tools/mcp/servers/__init__.py +0 -33
  193. letta_sdk/resources/tools/mcp/servers/servers.py +0 -1785
  194. letta_sdk/resources/tools/mcp/servers/tools.py +0 -263
  195. letta_sdk/resources/voice_beta/__init__.py +0 -33
  196. letta_sdk/resources/voice_beta/voice_beta.py +0 -102
  197. letta_sdk/types/__init__.py +0 -226
  198. letta_sdk/types/_internal_templates/__init__.py +0 -7
  199. letta_sdk/types/_internal_templates/deployment_delete_response.py +0 -17
  200. letta_sdk/types/_internal_templates/deployment_list_entities_params.py +0 -15
  201. letta_sdk/types/_internal_templates/deployment_list_entities_response.py +0 -31
  202. letta_sdk/types/agent_export_params.py +0 -17
  203. letta_sdk/types/agent_list_groups_params.py +0 -13
  204. letta_sdk/types/agent_migrate_params.py +0 -19
  205. letta_sdk/types/agent_migrate_response.py +0 -11
  206. letta_sdk/types/agent_retrieve_context_response.py +0 -110
  207. letta_sdk/types/agent_search_params.py +0 -78
  208. letta_sdk/types/agent_search_response.py +0 -16
  209. letta_sdk/types/agent_summarize_params.py +0 -12
  210. letta_sdk/types/agents/approval_create_param.py +0 -22
  211. letta_sdk/types/agents/approval_response_message.py +0 -41
  212. letta_sdk/types/agents/archival_memory_create_params.py +0 -23
  213. letta_sdk/types/agents/archival_memory_list_params.py +0 -28
  214. letta_sdk/types/agents/archival_memory_list_response.py +0 -10
  215. letta_sdk/types/agents/archival_memory_search_params.py +0 -35
  216. letta_sdk/types/agents/archival_memory_search_response.py +0 -26
  217. letta_sdk/types/agents/core_memory/__init__.py +0 -7
  218. letta_sdk/types/agents/core_memory_retrieve_variables_response.py +0 -11
  219. letta_sdk/types/agents/file_list_params.py +0 -19
  220. letta_sdk/types/agents/letta_request_param.py +0 -45
  221. letta_sdk/types/agents/letta_streaming_request_param.py +0 -60
  222. letta_sdk/types/agents/memory.py +0 -92
  223. letta_sdk/types/agents/message_preview_raw_payload_params.py +0 -103
  224. letta_sdk/types/agents/message_preview_raw_payload_response.py +0 -8
  225. letta_sdk/types/agents/message_search_params.py +0 -38
  226. letta_sdk/types/agents/message_search_response.py +0 -29
  227. letta_sdk/types/agents/source_list_response.py +0 -10
  228. letta_sdk/types/agents/tool_modify_approval_params.py +0 -13
  229. letta_sdk/types/block_list_agents_response.py +0 -10
  230. letta_sdk/types/child_tool_rule.py +0 -21
  231. letta_sdk/types/child_tool_rule_param.py +0 -23
  232. letta_sdk/types/client_side_access_token_create_params.py +0 -32
  233. letta_sdk/types/client_side_access_token_create_response.py +0 -34
  234. letta_sdk/types/client_side_access_token_delete_params.py +0 -11
  235. letta_sdk/types/client_side_access_token_list_params.py +0 -23
  236. letta_sdk/types/client_side_access_token_list_response.py +0 -40
  237. letta_sdk/types/duplicate_file_handling.py +0 -7
  238. letta_sdk/types/embedding_get_total_storage_size_response.py +0 -7
  239. letta_sdk/types/file_processing_status.py +0 -7
  240. letta_sdk/types/folder_get_by_name_response.py +0 -7
  241. letta_sdk/types/folder_list_agents_response.py +0 -8
  242. letta_sdk/types/folder_list_files_response.py +0 -10
  243. letta_sdk/types/folder_list_passages_params.py +0 -34
  244. letta_sdk/types/folder_list_passages_response.py +0 -10
  245. letta_sdk/types/folder_retrieve_metadata_params.py +0 -11
  246. letta_sdk/types/folder_upload_file_params.py +0 -21
  247. letta_sdk/types/identity_list_agents_response.py +0 -10
  248. letta_sdk/types/identity_list_blocks_response.py +0 -10
  249. letta_sdk/types/internal_template_create_agent_params.py +0 -217
  250. letta_sdk/types/internal_template_create_block_params.py +0 -54
  251. letta_sdk/types/internal_template_create_group_params.py +0 -49
  252. letta_sdk/types/job_list_active_params.py +0 -28
  253. letta_sdk/types/job_list_active_response.py +0 -10
  254. letta_sdk/types/job_list_params.py +0 -31
  255. letta_sdk/types/messages/__init__.py +0 -10
  256. letta_sdk/types/messages/batch_job.py +0 -60
  257. letta_sdk/types/model_list_embedding_response.py +0 -10
  258. letta_sdk/types/organization_sources_stats.py +0 -49
  259. letta_sdk/types/passage.py +0 -56
  260. letta_sdk/types/project_list_params.py +0 -16
  261. letta_sdk/types/project_list_response.py +0 -23
  262. letta_sdk/types/provider.py +0 -42
  263. letta_sdk/types/provider_check_params.py +0 -30
  264. letta_sdk/types/provider_create_params.py +0 -33
  265. letta_sdk/types/provider_list_params.py +0 -42
  266. letta_sdk/types/provider_list_response.py +0 -10
  267. letta_sdk/types/provider_update_params.py +0 -25
  268. letta_sdk/types/run_list_active_params.py +0 -18
  269. letta_sdk/types/run_list_messages_response.py +0 -10
  270. letta_sdk/types/run_list_steps_response.py +0 -10
  271. letta_sdk/types/source_count_response.py +0 -7
  272. letta_sdk/types/source_create_params.py +0 -33
  273. letta_sdk/types/source_get_agents_response.py +0 -8
  274. letta_sdk/types/source_get_by_name_response.py +0 -7
  275. letta_sdk/types/source_get_metadata_params.py +0 -11
  276. letta_sdk/types/source_list_passages_params.py +0 -19
  277. letta_sdk/types/source_list_passages_response.py +0 -10
  278. letta_sdk/types/source_list_response.py +0 -10
  279. letta_sdk/types/source_update_params.py +0 -27
  280. letta_sdk/types/sources/__init__.py +0 -7
  281. letta_sdk/types/sources/file_list_params.py +0 -26
  282. letta_sdk/types/sources/file_list_response.py +0 -10
  283. letta_sdk/types/sources/file_retrieve_params.py +0 -14
  284. letta_sdk/types/step_list_messages_response.py +0 -34
  285. letta_sdk/types/template_create_agents_response.py +0 -12
  286. letta_sdk/types/template_create_params.py +0 -40
  287. letta_sdk/types/template_create_response.py +0 -29
  288. letta_sdk/types/template_delete_response.py +0 -9
  289. letta_sdk/types/template_fork_params.py +0 -17
  290. letta_sdk/types/template_fork_response.py +0 -29
  291. letta_sdk/types/template_get_snapshot_response.py +0 -258
  292. letta_sdk/types/template_list_params.py +0 -34
  293. letta_sdk/types/template_list_response.py +0 -35
  294. letta_sdk/types/template_list_versions_params.py +0 -16
  295. letta_sdk/types/template_list_versions_response.py +0 -29
  296. letta_sdk/types/template_rename_params.py +0 -14
  297. letta_sdk/types/template_rename_response.py +0 -9
  298. letta_sdk/types/template_save_version_params.py +0 -32
  299. letta_sdk/types/template_save_version_response.py +0 -29
  300. letta_sdk/types/template_update_description_params.py +0 -14
  301. letta_sdk/types/template_update_description_response.py +0 -9
  302. letta_sdk/types/tool_run_params.py +0 -43
  303. letta_sdk/types/tools/composio/__init__.py +0 -6
  304. letta_sdk/types/tools/composio/app_list_actions_response.py +0 -70
  305. letta_sdk/types/tools/composio/app_list_response.py +0 -103
  306. letta_sdk/types/tools/mcp/__init__.py +0 -21
  307. letta_sdk/types/tools/mcp/mcp_server_type.py +0 -7
  308. letta_sdk/types/tools/mcp/oauth_callback_params.py +0 -22
  309. letta_sdk/types/tools/mcp/server_add_params.py +0 -68
  310. letta_sdk/types/tools/mcp/server_add_response.py +0 -14
  311. letta_sdk/types/tools/mcp/server_connect_params.py +0 -68
  312. letta_sdk/types/tools/mcp/server_delete_response.py +0 -14
  313. letta_sdk/types/tools/mcp/server_list_response.py +0 -14
  314. letta_sdk/types/tools/mcp/server_resync_params.py +0 -12
  315. letta_sdk/types/tools/mcp/server_test_params.py +0 -68
  316. letta_sdk/types/tools/mcp/server_update_params.py +0 -43
  317. letta_sdk/types/tools/mcp/server_update_response.py +0 -12
  318. letta_sdk/types/tools/mcp/servers/__init__.py +0 -6
  319. letta_sdk/types/tools/mcp/servers/tool_execute_params.py +0 -15
  320. letta_sdk/types/tools/mcp/servers/tool_list_response.py +0 -85
  321. letta_sdk/types/tools/mcp/sse_server_config.py +0 -27
  322. letta_sdk/types/tools/mcp/sse_server_config_param.py +0 -29
  323. letta_sdk/types/tools/mcp/stdio_server_config.py +0 -24
  324. letta_sdk/types/tools/mcp/stdio_server_config_param.py +0 -27
  325. letta_sdk/types/tools/mcp/streamable_http_server_config.py +0 -27
  326. letta_sdk/types/tools/mcp/streamable_http_server_config_param.py +0 -29
  327. letta_sdk/types/voice_beta/chat_create_completion_params.py +0 -12
  328. {letta_sdk → letta_client}/_compat.py +0 -0
  329. {letta_sdk → letta_client}/_constants.py +0 -0
  330. {letta_sdk → letta_client}/_files.py +0 -0
  331. {letta_sdk → letta_client}/_models.py +0 -0
  332. {letta_sdk → letta_client}/_qs.py +0 -0
  333. {letta_sdk → letta_client}/_utils/__init__.py +0 -0
  334. {letta_sdk → letta_client}/_utils/_compat.py +0 -0
  335. {letta_sdk → letta_client}/_utils/_datetime_parse.py +0 -0
  336. {letta_sdk → letta_client}/_utils/_proxy.py +0 -0
  337. {letta_sdk → letta_client}/_utils/_reflection.py +0 -0
  338. {letta_sdk → letta_client}/_utils/_streams.py +0 -0
  339. {letta_sdk → letta_client}/_utils/_sync.py +0 -0
  340. {letta_sdk → letta_client}/_utils/_transform.py +0 -0
  341. {letta_sdk → letta_client}/_utils/_typing.py +0 -0
  342. {letta_sdk → letta_client}/_utils/_utils.py +0 -0
  343. {letta_sdk → letta_client}/lib/.keep +0 -0
  344. {letta_sdk → letta_client}/py.typed +0 -0
  345. {letta_sdk/resources/messages → letta_client/resources/batches}/__init__.py +6 -6
  346. {letta_sdk → letta_client}/resources/groups/__init__.py +0 -0
  347. {letta_sdk → letta_client}/resources/tags.py +0 -0
  348. {letta_sdk → letta_client}/types/agent_count_response.py +0 -0
  349. {letta_sdk → letta_client}/types/agent_list_response.py +0 -0
  350. {letta_sdk → letta_client}/types/agents/assistant_message.py +0 -0
  351. {letta_sdk/types/agents/core_memory → letta_client/types/agents}/block_list_response.py +0 -0
  352. {letta_sdk → letta_client}/types/agents/file_close_all_response.py +0 -0
  353. {letta_sdk → letta_client}/types/agents/file_list_response.py +0 -0
  354. {letta_sdk → letta_client}/types/agents/file_open_response.py +0 -0
  355. {letta_sdk → letta_client}/types/agents/hidden_reasoning_message.py +0 -0
  356. {letta_sdk → letta_client}/types/agents/image_content.py +0 -0
  357. {letta_sdk → letta_client}/types/agents/image_content_param.py +0 -0
  358. {letta_sdk → letta_client}/types/agents/job_status.py +0 -0
  359. {letta_sdk → letta_client}/types/agents/job_type.py +0 -0
  360. {letta_sdk → letta_client}/types/agents/letta_message_union.py +0 -0
  361. {letta_sdk → letta_client}/types/agents/letta_user_message_content_union.py +0 -0
  362. {letta_sdk → letta_client}/types/agents/letta_user_message_content_union_param.py +0 -0
  363. {letta_sdk → letta_client}/types/agents/message_cancel_params.py +0 -0
  364. {letta_sdk → letta_client}/types/agents/message_cancel_response.py +0 -0
  365. {letta_sdk → letta_client}/types/agents/message_list_response.py +0 -0
  366. {letta_sdk → letta_client}/types/agents/message_role.py +0 -0
  367. {letta_sdk → letta_client}/types/agents/message_type.py +0 -0
  368. {letta_sdk → letta_client}/types/agents/message_update_response.py +0 -0
  369. {letta_sdk → letta_client}/types/agents/reasoning_content.py +0 -0
  370. {letta_sdk → letta_client}/types/agents/reasoning_content_param.py +0 -0
  371. {letta_sdk → letta_client}/types/agents/reasoning_message.py +0 -0
  372. {letta_sdk → letta_client}/types/agents/redacted_reasoning_content.py +0 -0
  373. {letta_sdk → letta_client}/types/agents/redacted_reasoning_content_param.py +0 -0
  374. {letta_sdk → letta_client}/types/agents/system_message.py +0 -0
  375. {letta_sdk → letta_client}/types/agents/tool_call.py +0 -0
  376. {letta_sdk → letta_client}/types/agents/tool_call_delta.py +0 -0
  377. {letta_sdk → letta_client}/types/agents/tool_list_response.py +0 -0
  378. {letta_sdk → letta_client}/types/agents/tool_return_content.py +0 -0
  379. {letta_sdk → letta_client}/types/agents/tool_return_content_param.py +0 -0
  380. {letta_sdk → letta_client}/types/agents/update_assistant_message_param.py +0 -0
  381. {letta_sdk → letta_client}/types/agents/update_reasoning_message_param.py +0 -0
  382. {letta_sdk → letta_client}/types/agents/update_system_message_param.py +0 -0
  383. {letta_sdk → letta_client}/types/agents/update_user_message_param.py +0 -0
  384. {letta_sdk → letta_client}/types/agents/user_message.py +0 -0
  385. {letta_sdk/types/messages → letta_client/types}/batch_list_params.py +0 -0
  386. {letta_sdk/types/messages → letta_client/types}/batch_list_response.py +0 -0
  387. {letta_sdk → letta_client}/types/block_count_response.py +0 -0
  388. {letta_sdk → letta_client}/types/block_create_params.py +0 -0
  389. {letta_sdk → letta_client}/types/block_list_params.py +0 -0
  390. {letta_sdk → letta_client}/types/block_update_params.py +0 -0
  391. {letta_sdk → letta_client}/types/conditional_tool_rule.py +0 -0
  392. {letta_sdk → letta_client}/types/conditional_tool_rule_param.py +0 -0
  393. {letta_sdk → letta_client}/types/continue_tool_rule.py +0 -0
  394. {letta_sdk → letta_client}/types/continue_tool_rule_param.py +0 -0
  395. {letta_sdk → letta_client}/types/create_block_param.py +0 -0
  396. {letta_sdk → letta_client}/types/dynamic_manager_param.py +0 -0
  397. {letta_sdk → letta_client}/types/embedding_config.py +0 -0
  398. {letta_sdk → letta_client}/types/embedding_config_param.py +0 -0
  399. {letta_sdk → letta_client}/types/folder.py +0 -0
  400. {letta_sdk → letta_client}/types/folder_count_response.py +0 -0
  401. {letta_sdk → letta_client}/types/folder_create_params.py +0 -0
  402. {letta_sdk → letta_client}/types/folder_list_params.py +0 -0
  403. {letta_sdk → letta_client}/types/folder_list_response.py +0 -0
  404. {letta_sdk → letta_client}/types/folder_update_params.py +0 -0
  405. {letta_sdk → letta_client}/types/group.py +0 -0
  406. {letta_sdk → letta_client}/types/group_count_response.py +0 -0
  407. {letta_sdk → letta_client}/types/group_create_params.py +0 -0
  408. {letta_sdk → letta_client}/types/group_list_params.py +0 -0
  409. {letta_sdk → letta_client}/types/group_list_response.py +0 -0
  410. {letta_sdk → letta_client}/types/group_update_params.py +0 -0
  411. {letta_sdk → letta_client}/types/groups/message_list_params.py +0 -0
  412. {letta_sdk → letta_client}/types/groups/message_list_response.py +0 -0
  413. {letta_sdk → letta_client}/types/groups/message_update_response.py +0 -0
  414. {letta_sdk → letta_client}/types/identity.py +0 -0
  415. {letta_sdk → letta_client}/types/identity_count_response.py +0 -0
  416. {letta_sdk → letta_client}/types/identity_create_params.py +0 -0
  417. {letta_sdk → letta_client}/types/identity_list_params.py +0 -0
  418. {letta_sdk → letta_client}/types/identity_list_response.py +0 -0
  419. {letta_sdk → letta_client}/types/identity_property.py +0 -0
  420. {letta_sdk → letta_client}/types/identity_property_param.py +0 -0
  421. {letta_sdk → letta_client}/types/identity_type.py +0 -0
  422. {letta_sdk → letta_client}/types/identity_upsert_params.py +0 -0
  423. {letta_sdk → letta_client}/types/json_object_response_format.py +0 -0
  424. {letta_sdk → letta_client}/types/json_object_response_format_param.py +0 -0
  425. {letta_sdk → letta_client}/types/json_schema_response_format.py +0 -0
  426. {letta_sdk → letta_client}/types/json_schema_response_format_param.py +0 -0
  427. {letta_sdk → letta_client}/types/letta_message_content_union_param.py +0 -0
  428. {letta_sdk → letta_client}/types/manager_type.py +0 -0
  429. {letta_sdk → letta_client}/types/max_count_per_step_tool_rule.py +0 -0
  430. {letta_sdk → letta_client}/types/max_count_per_step_tool_rule_param.py +0 -0
  431. {letta_sdk → letta_client}/types/message_create_param.py +0 -0
  432. {letta_sdk → letta_client}/types/model_list_params.py +0 -0
  433. {letta_sdk → letta_client}/types/model_list_response.py +0 -0
  434. {letta_sdk → letta_client}/types/npm_requirement.py +0 -0
  435. {letta_sdk → letta_client}/types/npm_requirement_param.py +0 -0
  436. {letta_sdk → letta_client}/types/parent_tool_rule.py +0 -0
  437. {letta_sdk → letta_client}/types/parent_tool_rule_param.py +0 -0
  438. {letta_sdk → letta_client}/types/pip_requirement.py +0 -0
  439. {letta_sdk → letta_client}/types/pip_requirement_param.py +0 -0
  440. {letta_sdk → letta_client}/types/provider_category.py +0 -0
  441. {letta_sdk → letta_client}/types/provider_trace.py +0 -0
  442. {letta_sdk → letta_client}/types/provider_type.py +0 -0
  443. {letta_sdk → letta_client}/types/required_before_exit_tool_rule.py +0 -0
  444. {letta_sdk → letta_client}/types/required_before_exit_tool_rule_param.py +0 -0
  445. {letta_sdk → letta_client}/types/requires_approval_tool_rule.py +0 -0
  446. {letta_sdk → letta_client}/types/requires_approval_tool_rule_param.py +0 -0
  447. {letta_sdk → letta_client}/types/round_robin_manager_param.py +0 -0
  448. {letta_sdk → letta_client}/types/run_list_response.py +0 -0
  449. {letta_sdk → letta_client}/types/sleeptime_manager_param.py +0 -0
  450. {letta_sdk → letta_client}/types/step_list_params.py +0 -0
  451. {letta_sdk → letta_client}/types/step_list_response.py +0 -0
  452. {letta_sdk → letta_client}/types/stop_reason_type.py +0 -0
  453. {letta_sdk → letta_client}/types/supervisor_manager_param.py +0 -0
  454. {letta_sdk → letta_client}/types/tag_list_params.py +0 -0
  455. {letta_sdk → letta_client}/types/tag_list_response.py +0 -0
  456. {letta_sdk → letta_client}/types/terminal_tool_rule.py +0 -0
  457. {letta_sdk → letta_client}/types/terminal_tool_rule_param.py +0 -0
  458. {letta_sdk → letta_client}/types/text_response_format.py +0 -0
  459. {letta_sdk → letta_client}/types/text_response_format_param.py +0 -0
  460. {letta_sdk → letta_client}/types/tool_count_params.py +0 -0
  461. {letta_sdk → letta_client}/types/tool_count_response.py +0 -0
  462. {letta_sdk → letta_client}/types/tool_list_params.py +0 -0
  463. {letta_sdk → letta_client}/types/tool_list_response.py +0 -0
  464. {letta_sdk → letta_client}/types/tool_type.py +1 -1
  465. {letta_sdk → letta_client}/types/vector_db_provider.py +0 -0
  466. {letta_sdk → letta_client}/types/voice_sleeptime_manager_param.py +0 -0
  467. {letta_client-1.0.0a6.dist-info → letta_client-1.0.0a7.dist-info}/WHEEL +0 -0
@@ -1,784 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from __future__ import annotations
4
-
5
- from typing import Optional
6
- from typing_extensions import Literal
7
-
8
- import httpx
9
-
10
- from ..types import step_list_params, step_list_messages_params, step_update_feedback_params
11
- from .._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
12
- from .._utils import maybe_transform, strip_not_given, async_maybe_transform
13
- from .._compat import cached_property
14
- from .._resource import SyncAPIResource, AsyncAPIResource
15
- from .._response import (
16
- to_raw_response_wrapper,
17
- to_streamed_response_wrapper,
18
- async_to_raw_response_wrapper,
19
- async_to_streamed_response_wrapper,
20
- )
21
- from ..types.step import Step
22
- from .._base_client import make_request_options
23
- from ..types.provider_trace import ProviderTrace
24
- from ..types.step_list_response import StepListResponse
25
- from ..types.step_list_messages_response import StepListMessagesResponse
26
- from ..types.step_retrieve_metrics_response import StepRetrieveMetricsResponse
27
-
28
- __all__ = ["StepsResource", "AsyncStepsResource"]
29
-
30
-
31
- class StepsResource(SyncAPIResource):
32
- @cached_property
33
- def with_raw_response(self) -> StepsResourceWithRawResponse:
34
- """
35
- This property can be used as a prefix for any HTTP method call to return
36
- the raw response object instead of the parsed content.
37
-
38
- For more information, see https://www.github.com/letta-ai/letta-python#accessing-raw-response-data-eg-headers
39
- """
40
- return StepsResourceWithRawResponse(self)
41
-
42
- @cached_property
43
- def with_streaming_response(self) -> StepsResourceWithStreamingResponse:
44
- """
45
- An alternative to `.with_raw_response` that doesn't eagerly read the response body.
46
-
47
- For more information, see https://www.github.com/letta-ai/letta-python#with_streaming_response
48
- """
49
- return StepsResourceWithStreamingResponse(self)
50
-
51
- def retrieve(
52
- self,
53
- step_id: str,
54
- *,
55
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
56
- # The extra values given here take precedence over values defined on the client or passed to this method.
57
- extra_headers: Headers | None = None,
58
- extra_query: Query | None = None,
59
- extra_body: Body | None = None,
60
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
61
- ) -> Step:
62
- """
63
- Get a step by ID.
64
-
65
- Args:
66
- extra_headers: Send extra headers
67
-
68
- extra_query: Add additional query parameters to the request
69
-
70
- extra_body: Add additional JSON properties to the request
71
-
72
- timeout: Override the client-level default timeout for this request, in seconds
73
- """
74
- if not step_id:
75
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
76
- return self._get(
77
- f"/v1/steps/{step_id}",
78
- options=make_request_options(
79
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
80
- ),
81
- cast_to=Step,
82
- )
83
-
84
- def list(
85
- self,
86
- *,
87
- after: Optional[str] | Omit = omit,
88
- agent_id: Optional[str] | Omit = omit,
89
- before: Optional[str] | Omit = omit,
90
- end_date: Optional[str] | Omit = omit,
91
- feedback: Optional[Literal["positive", "negative"]] | Omit = omit,
92
- has_feedback: Optional[bool] | Omit = omit,
93
- limit: Optional[int] | Omit = omit,
94
- model: Optional[str] | Omit = omit,
95
- order: Literal["asc", "desc"] | Omit = omit,
96
- order_by: Literal["created_at"] | Omit = omit,
97
- project_id: Optional[str] | Omit = omit,
98
- start_date: Optional[str] | Omit = omit,
99
- tags: Optional[SequenceNotStr[str]] | Omit = omit,
100
- trace_ids: Optional[SequenceNotStr[str]] | Omit = omit,
101
- x_project: str | Omit = omit,
102
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
103
- # The extra values given here take precedence over values defined on the client or passed to this method.
104
- extra_headers: Headers | None = None,
105
- extra_query: Query | None = None,
106
- extra_body: Body | None = None,
107
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
108
- ) -> StepListResponse:
109
- """
110
- List steps with optional pagination and date filters.
111
-
112
- Args:
113
- after: Return steps after this step ID
114
-
115
- agent_id: Filter by the ID of the agent that performed the step
116
-
117
- before: Return steps before this step ID
118
-
119
- end_date: Return steps before this ISO datetime (e.g. "2025-01-29T15:01:19-08:00")
120
-
121
- feedback: Filter by feedback
122
-
123
- has_feedback: Filter by whether steps have feedback (true) or not (false)
124
-
125
- limit: Maximum number of steps to return
126
-
127
- model: Filter by the name of the model used for the step
128
-
129
- order: Sort order for steps by creation time. 'asc' for oldest first, 'desc' for newest
130
- first
131
-
132
- order_by: Field to sort by
133
-
134
- project_id: Filter by the project ID that is associated with the step (cloud only).
135
-
136
- start_date: Return steps after this ISO datetime (e.g. "2025-01-29T15:01:19-08:00")
137
-
138
- tags: Filter by tags
139
-
140
- trace_ids: Filter by trace ids returned by the server
141
-
142
- x_project: Filter by project slug to associate with the group (cloud only).
143
-
144
- extra_headers: Send extra headers
145
-
146
- extra_query: Add additional query parameters to the request
147
-
148
- extra_body: Add additional JSON properties to the request
149
-
150
- timeout: Override the client-level default timeout for this request, in seconds
151
- """
152
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
153
- return self._get(
154
- "/v1/steps/",
155
- options=make_request_options(
156
- extra_headers=extra_headers,
157
- extra_query=extra_query,
158
- extra_body=extra_body,
159
- timeout=timeout,
160
- query=maybe_transform(
161
- {
162
- "after": after,
163
- "agent_id": agent_id,
164
- "before": before,
165
- "end_date": end_date,
166
- "feedback": feedback,
167
- "has_feedback": has_feedback,
168
- "limit": limit,
169
- "model": model,
170
- "order": order,
171
- "order_by": order_by,
172
- "project_id": project_id,
173
- "start_date": start_date,
174
- "tags": tags,
175
- "trace_ids": trace_ids,
176
- },
177
- step_list_params.StepListParams,
178
- ),
179
- ),
180
- cast_to=StepListResponse,
181
- )
182
-
183
- def list_messages(
184
- self,
185
- step_id: str,
186
- *,
187
- after: Optional[str] | Omit = omit,
188
- before: Optional[str] | Omit = omit,
189
- limit: Optional[int] | Omit = omit,
190
- order: Literal["asc", "desc"] | Omit = omit,
191
- order_by: Literal["created_at"] | Omit = omit,
192
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
193
- # The extra values given here take precedence over values defined on the client or passed to this method.
194
- extra_headers: Headers | None = None,
195
- extra_query: Query | None = None,
196
- extra_body: Body | None = None,
197
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
198
- ) -> StepListMessagesResponse:
199
- """List messages for a given step.
200
-
201
- Args:
202
- after: Message ID cursor for pagination.
203
-
204
- Returns messages that come after this message
205
- ID in the specified sort order
206
-
207
- before: Message ID cursor for pagination. Returns messages that come before this message
208
- ID in the specified sort order
209
-
210
- limit: Maximum number of messages to return
211
-
212
- order: Sort order for messages by creation time. 'asc' for oldest first, 'desc' for
213
- newest first
214
-
215
- order_by: Sort by field
216
-
217
- extra_headers: Send extra headers
218
-
219
- extra_query: Add additional query parameters to the request
220
-
221
- extra_body: Add additional JSON properties to the request
222
-
223
- timeout: Override the client-level default timeout for this request, in seconds
224
- """
225
- if not step_id:
226
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
227
- return self._get(
228
- f"/v1/steps/{step_id}/messages",
229
- options=make_request_options(
230
- extra_headers=extra_headers,
231
- extra_query=extra_query,
232
- extra_body=extra_body,
233
- timeout=timeout,
234
- query=maybe_transform(
235
- {
236
- "after": after,
237
- "before": before,
238
- "limit": limit,
239
- "order": order,
240
- "order_by": order_by,
241
- },
242
- step_list_messages_params.StepListMessagesParams,
243
- ),
244
- ),
245
- cast_to=StepListMessagesResponse,
246
- )
247
-
248
- def retrieve_metrics(
249
- self,
250
- step_id: str,
251
- *,
252
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
253
- # The extra values given here take precedence over values defined on the client or passed to this method.
254
- extra_headers: Headers | None = None,
255
- extra_query: Query | None = None,
256
- extra_body: Body | None = None,
257
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
258
- ) -> StepRetrieveMetricsResponse:
259
- """
260
- Get step metrics by step ID.
261
-
262
- Args:
263
- extra_headers: Send extra headers
264
-
265
- extra_query: Add additional query parameters to the request
266
-
267
- extra_body: Add additional JSON properties to the request
268
-
269
- timeout: Override the client-level default timeout for this request, in seconds
270
- """
271
- if not step_id:
272
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
273
- return self._get(
274
- f"/v1/steps/{step_id}/metrics",
275
- options=make_request_options(
276
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
277
- ),
278
- cast_to=StepRetrieveMetricsResponse,
279
- )
280
-
281
- def retrieve_trace(
282
- self,
283
- step_id: str,
284
- *,
285
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
286
- # The extra values given here take precedence over values defined on the client or passed to this method.
287
- extra_headers: Headers | None = None,
288
- extra_query: Query | None = None,
289
- extra_body: Body | None = None,
290
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
291
- ) -> Optional[ProviderTrace]:
292
- """
293
- Retrieve Trace For Step
294
-
295
- Args:
296
- extra_headers: Send extra headers
297
-
298
- extra_query: Add additional query parameters to the request
299
-
300
- extra_body: Add additional JSON properties to the request
301
-
302
- timeout: Override the client-level default timeout for this request, in seconds
303
- """
304
- if not step_id:
305
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
306
- return self._get(
307
- f"/v1/steps/{step_id}/trace",
308
- options=make_request_options(
309
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
310
- ),
311
- cast_to=ProviderTrace,
312
- )
313
-
314
- def update_feedback(
315
- self,
316
- step_id: str,
317
- *,
318
- feedback: Optional[Literal["positive", "negative"]] | Omit = omit,
319
- tags: Optional[SequenceNotStr[str]] | Omit = omit,
320
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
321
- # The extra values given here take precedence over values defined on the client or passed to this method.
322
- extra_headers: Headers | None = None,
323
- extra_query: Query | None = None,
324
- extra_body: Body | None = None,
325
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
326
- ) -> Step:
327
- """
328
- Modify feedback for a given step.
329
-
330
- Args:
331
- feedback: Whether this feedback is positive or negative
332
-
333
- tags: Feedback tags to add to the step
334
-
335
- extra_headers: Send extra headers
336
-
337
- extra_query: Add additional query parameters to the request
338
-
339
- extra_body: Add additional JSON properties to the request
340
-
341
- timeout: Override the client-level default timeout for this request, in seconds
342
- """
343
- if not step_id:
344
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
345
- return self._patch(
346
- f"/v1/steps/{step_id}/feedback",
347
- body=maybe_transform(
348
- {
349
- "feedback": feedback,
350
- "tags": tags,
351
- },
352
- step_update_feedback_params.StepUpdateFeedbackParams,
353
- ),
354
- options=make_request_options(
355
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
356
- ),
357
- cast_to=Step,
358
- )
359
-
360
-
361
- class AsyncStepsResource(AsyncAPIResource):
362
- @cached_property
363
- def with_raw_response(self) -> AsyncStepsResourceWithRawResponse:
364
- """
365
- This property can be used as a prefix for any HTTP method call to return
366
- the raw response object instead of the parsed content.
367
-
368
- For more information, see https://www.github.com/letta-ai/letta-python#accessing-raw-response-data-eg-headers
369
- """
370
- return AsyncStepsResourceWithRawResponse(self)
371
-
372
- @cached_property
373
- def with_streaming_response(self) -> AsyncStepsResourceWithStreamingResponse:
374
- """
375
- An alternative to `.with_raw_response` that doesn't eagerly read the response body.
376
-
377
- For more information, see https://www.github.com/letta-ai/letta-python#with_streaming_response
378
- """
379
- return AsyncStepsResourceWithStreamingResponse(self)
380
-
381
- async def retrieve(
382
- self,
383
- step_id: str,
384
- *,
385
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
386
- # The extra values given here take precedence over values defined on the client or passed to this method.
387
- extra_headers: Headers | None = None,
388
- extra_query: Query | None = None,
389
- extra_body: Body | None = None,
390
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
391
- ) -> Step:
392
- """
393
- Get a step by ID.
394
-
395
- Args:
396
- extra_headers: Send extra headers
397
-
398
- extra_query: Add additional query parameters to the request
399
-
400
- extra_body: Add additional JSON properties to the request
401
-
402
- timeout: Override the client-level default timeout for this request, in seconds
403
- """
404
- if not step_id:
405
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
406
- return await self._get(
407
- f"/v1/steps/{step_id}",
408
- options=make_request_options(
409
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
410
- ),
411
- cast_to=Step,
412
- )
413
-
414
- async def list(
415
- self,
416
- *,
417
- after: Optional[str] | Omit = omit,
418
- agent_id: Optional[str] | Omit = omit,
419
- before: Optional[str] | Omit = omit,
420
- end_date: Optional[str] | Omit = omit,
421
- feedback: Optional[Literal["positive", "negative"]] | Omit = omit,
422
- has_feedback: Optional[bool] | Omit = omit,
423
- limit: Optional[int] | Omit = omit,
424
- model: Optional[str] | Omit = omit,
425
- order: Literal["asc", "desc"] | Omit = omit,
426
- order_by: Literal["created_at"] | Omit = omit,
427
- project_id: Optional[str] | Omit = omit,
428
- start_date: Optional[str] | Omit = omit,
429
- tags: Optional[SequenceNotStr[str]] | Omit = omit,
430
- trace_ids: Optional[SequenceNotStr[str]] | Omit = omit,
431
- x_project: str | Omit = omit,
432
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
433
- # The extra values given here take precedence over values defined on the client or passed to this method.
434
- extra_headers: Headers | None = None,
435
- extra_query: Query | None = None,
436
- extra_body: Body | None = None,
437
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
438
- ) -> StepListResponse:
439
- """
440
- List steps with optional pagination and date filters.
441
-
442
- Args:
443
- after: Return steps after this step ID
444
-
445
- agent_id: Filter by the ID of the agent that performed the step
446
-
447
- before: Return steps before this step ID
448
-
449
- end_date: Return steps before this ISO datetime (e.g. "2025-01-29T15:01:19-08:00")
450
-
451
- feedback: Filter by feedback
452
-
453
- has_feedback: Filter by whether steps have feedback (true) or not (false)
454
-
455
- limit: Maximum number of steps to return
456
-
457
- model: Filter by the name of the model used for the step
458
-
459
- order: Sort order for steps by creation time. 'asc' for oldest first, 'desc' for newest
460
- first
461
-
462
- order_by: Field to sort by
463
-
464
- project_id: Filter by the project ID that is associated with the step (cloud only).
465
-
466
- start_date: Return steps after this ISO datetime (e.g. "2025-01-29T15:01:19-08:00")
467
-
468
- tags: Filter by tags
469
-
470
- trace_ids: Filter by trace ids returned by the server
471
-
472
- x_project: Filter by project slug to associate with the group (cloud only).
473
-
474
- extra_headers: Send extra headers
475
-
476
- extra_query: Add additional query parameters to the request
477
-
478
- extra_body: Add additional JSON properties to the request
479
-
480
- timeout: Override the client-level default timeout for this request, in seconds
481
- """
482
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
483
- return await self._get(
484
- "/v1/steps/",
485
- options=make_request_options(
486
- extra_headers=extra_headers,
487
- extra_query=extra_query,
488
- extra_body=extra_body,
489
- timeout=timeout,
490
- query=await async_maybe_transform(
491
- {
492
- "after": after,
493
- "agent_id": agent_id,
494
- "before": before,
495
- "end_date": end_date,
496
- "feedback": feedback,
497
- "has_feedback": has_feedback,
498
- "limit": limit,
499
- "model": model,
500
- "order": order,
501
- "order_by": order_by,
502
- "project_id": project_id,
503
- "start_date": start_date,
504
- "tags": tags,
505
- "trace_ids": trace_ids,
506
- },
507
- step_list_params.StepListParams,
508
- ),
509
- ),
510
- cast_to=StepListResponse,
511
- )
512
-
513
- async def list_messages(
514
- self,
515
- step_id: str,
516
- *,
517
- after: Optional[str] | Omit = omit,
518
- before: Optional[str] | Omit = omit,
519
- limit: Optional[int] | Omit = omit,
520
- order: Literal["asc", "desc"] | Omit = omit,
521
- order_by: Literal["created_at"] | Omit = omit,
522
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
523
- # The extra values given here take precedence over values defined on the client or passed to this method.
524
- extra_headers: Headers | None = None,
525
- extra_query: Query | None = None,
526
- extra_body: Body | None = None,
527
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
528
- ) -> StepListMessagesResponse:
529
- """List messages for a given step.
530
-
531
- Args:
532
- after: Message ID cursor for pagination.
533
-
534
- Returns messages that come after this message
535
- ID in the specified sort order
536
-
537
- before: Message ID cursor for pagination. Returns messages that come before this message
538
- ID in the specified sort order
539
-
540
- limit: Maximum number of messages to return
541
-
542
- order: Sort order for messages by creation time. 'asc' for oldest first, 'desc' for
543
- newest first
544
-
545
- order_by: Sort by field
546
-
547
- extra_headers: Send extra headers
548
-
549
- extra_query: Add additional query parameters to the request
550
-
551
- extra_body: Add additional JSON properties to the request
552
-
553
- timeout: Override the client-level default timeout for this request, in seconds
554
- """
555
- if not step_id:
556
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
557
- return await self._get(
558
- f"/v1/steps/{step_id}/messages",
559
- options=make_request_options(
560
- extra_headers=extra_headers,
561
- extra_query=extra_query,
562
- extra_body=extra_body,
563
- timeout=timeout,
564
- query=await async_maybe_transform(
565
- {
566
- "after": after,
567
- "before": before,
568
- "limit": limit,
569
- "order": order,
570
- "order_by": order_by,
571
- },
572
- step_list_messages_params.StepListMessagesParams,
573
- ),
574
- ),
575
- cast_to=StepListMessagesResponse,
576
- )
577
-
578
- async def retrieve_metrics(
579
- self,
580
- step_id: str,
581
- *,
582
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
583
- # The extra values given here take precedence over values defined on the client or passed to this method.
584
- extra_headers: Headers | None = None,
585
- extra_query: Query | None = None,
586
- extra_body: Body | None = None,
587
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
588
- ) -> StepRetrieveMetricsResponse:
589
- """
590
- Get step metrics by step ID.
591
-
592
- Args:
593
- extra_headers: Send extra headers
594
-
595
- extra_query: Add additional query parameters to the request
596
-
597
- extra_body: Add additional JSON properties to the request
598
-
599
- timeout: Override the client-level default timeout for this request, in seconds
600
- """
601
- if not step_id:
602
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
603
- return await self._get(
604
- f"/v1/steps/{step_id}/metrics",
605
- options=make_request_options(
606
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
607
- ),
608
- cast_to=StepRetrieveMetricsResponse,
609
- )
610
-
611
- async def retrieve_trace(
612
- self,
613
- step_id: str,
614
- *,
615
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
616
- # The extra values given here take precedence over values defined on the client or passed to this method.
617
- extra_headers: Headers | None = None,
618
- extra_query: Query | None = None,
619
- extra_body: Body | None = None,
620
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
621
- ) -> Optional[ProviderTrace]:
622
- """
623
- Retrieve Trace For Step
624
-
625
- Args:
626
- extra_headers: Send extra headers
627
-
628
- extra_query: Add additional query parameters to the request
629
-
630
- extra_body: Add additional JSON properties to the request
631
-
632
- timeout: Override the client-level default timeout for this request, in seconds
633
- """
634
- if not step_id:
635
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
636
- return await self._get(
637
- f"/v1/steps/{step_id}/trace",
638
- options=make_request_options(
639
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
640
- ),
641
- cast_to=ProviderTrace,
642
- )
643
-
644
- async def update_feedback(
645
- self,
646
- step_id: str,
647
- *,
648
- feedback: Optional[Literal["positive", "negative"]] | Omit = omit,
649
- tags: Optional[SequenceNotStr[str]] | Omit = omit,
650
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
651
- # The extra values given here take precedence over values defined on the client or passed to this method.
652
- extra_headers: Headers | None = None,
653
- extra_query: Query | None = None,
654
- extra_body: Body | None = None,
655
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
656
- ) -> Step:
657
- """
658
- Modify feedback for a given step.
659
-
660
- Args:
661
- feedback: Whether this feedback is positive or negative
662
-
663
- tags: Feedback tags to add to the step
664
-
665
- extra_headers: Send extra headers
666
-
667
- extra_query: Add additional query parameters to the request
668
-
669
- extra_body: Add additional JSON properties to the request
670
-
671
- timeout: Override the client-level default timeout for this request, in seconds
672
- """
673
- if not step_id:
674
- raise ValueError(f"Expected a non-empty value for `step_id` but received {step_id!r}")
675
- return await self._patch(
676
- f"/v1/steps/{step_id}/feedback",
677
- body=await async_maybe_transform(
678
- {
679
- "feedback": feedback,
680
- "tags": tags,
681
- },
682
- step_update_feedback_params.StepUpdateFeedbackParams,
683
- ),
684
- options=make_request_options(
685
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
686
- ),
687
- cast_to=Step,
688
- )
689
-
690
-
691
- class StepsResourceWithRawResponse:
692
- def __init__(self, steps: StepsResource) -> None:
693
- self._steps = steps
694
-
695
- self.retrieve = to_raw_response_wrapper(
696
- steps.retrieve,
697
- )
698
- self.list = to_raw_response_wrapper(
699
- steps.list,
700
- )
701
- self.list_messages = to_raw_response_wrapper(
702
- steps.list_messages,
703
- )
704
- self.retrieve_metrics = to_raw_response_wrapper(
705
- steps.retrieve_metrics,
706
- )
707
- self.retrieve_trace = to_raw_response_wrapper(
708
- steps.retrieve_trace,
709
- )
710
- self.update_feedback = to_raw_response_wrapper(
711
- steps.update_feedback,
712
- )
713
-
714
-
715
- class AsyncStepsResourceWithRawResponse:
716
- def __init__(self, steps: AsyncStepsResource) -> None:
717
- self._steps = steps
718
-
719
- self.retrieve = async_to_raw_response_wrapper(
720
- steps.retrieve,
721
- )
722
- self.list = async_to_raw_response_wrapper(
723
- steps.list,
724
- )
725
- self.list_messages = async_to_raw_response_wrapper(
726
- steps.list_messages,
727
- )
728
- self.retrieve_metrics = async_to_raw_response_wrapper(
729
- steps.retrieve_metrics,
730
- )
731
- self.retrieve_trace = async_to_raw_response_wrapper(
732
- steps.retrieve_trace,
733
- )
734
- self.update_feedback = async_to_raw_response_wrapper(
735
- steps.update_feedback,
736
- )
737
-
738
-
739
- class StepsResourceWithStreamingResponse:
740
- def __init__(self, steps: StepsResource) -> None:
741
- self._steps = steps
742
-
743
- self.retrieve = to_streamed_response_wrapper(
744
- steps.retrieve,
745
- )
746
- self.list = to_streamed_response_wrapper(
747
- steps.list,
748
- )
749
- self.list_messages = to_streamed_response_wrapper(
750
- steps.list_messages,
751
- )
752
- self.retrieve_metrics = to_streamed_response_wrapper(
753
- steps.retrieve_metrics,
754
- )
755
- self.retrieve_trace = to_streamed_response_wrapper(
756
- steps.retrieve_trace,
757
- )
758
- self.update_feedback = to_streamed_response_wrapper(
759
- steps.update_feedback,
760
- )
761
-
762
-
763
- class AsyncStepsResourceWithStreamingResponse:
764
- def __init__(self, steps: AsyncStepsResource) -> None:
765
- self._steps = steps
766
-
767
- self.retrieve = async_to_streamed_response_wrapper(
768
- steps.retrieve,
769
- )
770
- self.list = async_to_streamed_response_wrapper(
771
- steps.list,
772
- )
773
- self.list_messages = async_to_streamed_response_wrapper(
774
- steps.list_messages,
775
- )
776
- self.retrieve_metrics = async_to_streamed_response_wrapper(
777
- steps.retrieve_metrics,
778
- )
779
- self.retrieve_trace = async_to_streamed_response_wrapper(
780
- steps.retrieve_trace,
781
- )
782
- self.update_feedback = async_to_streamed_response_wrapper(
783
- steps.update_feedback,
784
- )