letta-client 0.1.232__py3-none-any.whl → 0.1.234__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 (440) hide show
  1. letta_client/__init__.py +4 -0
  2. letta_client/agents/__init__.py +2 -0
  3. letta_client/agents/blocks/__init__.py +2 -0
  4. letta_client/agents/blocks/client.py +72 -313
  5. letta_client/agents/blocks/raw_client.py +654 -0
  6. letta_client/agents/client.py +329 -869
  7. letta_client/agents/context/__init__.py +2 -0
  8. letta_client/agents/context/client.py +31 -66
  9. letta_client/agents/context/raw_client.py +122 -0
  10. letta_client/agents/core_memory/__init__.py +2 -0
  11. letta_client/agents/core_memory/client.py +31 -66
  12. letta_client/agents/core_memory/raw_client.py +124 -0
  13. letta_client/agents/files/__init__.py +2 -0
  14. letta_client/agents/files/client.py +39 -178
  15. letta_client/agents/files/raw_client.py +349 -0
  16. letta_client/agents/folders/__init__.py +2 -0
  17. letta_client/agents/folders/client.py +39 -178
  18. letta_client/agents/folders/raw_client.py +327 -0
  19. letta_client/agents/groups/__init__.py +2 -0
  20. letta_client/agents/groups/client.py +31 -72
  21. letta_client/agents/groups/raw_client.py +142 -0
  22. letta_client/agents/memory_variables/__init__.py +2 -0
  23. letta_client/agents/memory_variables/client.py +31 -65
  24. letta_client/agents/memory_variables/raw_client.py +125 -0
  25. letta_client/agents/memory_variables/types/__init__.py +2 -0
  26. letta_client/agents/memory_variables/types/memory_variables_list_response.py +3 -2
  27. letta_client/agents/messages/__init__.py +2 -0
  28. letta_client/agents/messages/client.py +150 -589
  29. letta_client/agents/messages/raw_client.py +1384 -0
  30. letta_client/agents/messages/types/__init__.py +2 -0
  31. letta_client/agents/messages/types/letta_streaming_response.py +6 -5
  32. letta_client/agents/messages/types/messages_modify_request.py +3 -2
  33. letta_client/agents/messages/types/messages_modify_response.py +5 -4
  34. letta_client/agents/messages/types/messages_preview_raw_payload_request.py +1 -0
  35. letta_client/agents/passages/__init__.py +2 -0
  36. letta_client/agents/passages/client.py +89 -301
  37. letta_client/agents/passages/raw_client.py +678 -0
  38. letta_client/agents/raw_client.py +2068 -0
  39. letta_client/agents/sources/__init__.py +2 -0
  40. letta_client/agents/sources/client.py +39 -178
  41. letta_client/agents/sources/raw_client.py +327 -0
  42. letta_client/agents/templates/__init__.py +2 -0
  43. letta_client/agents/templates/client.py +57 -276
  44. letta_client/agents/templates/raw_client.py +505 -0
  45. letta_client/agents/templates/types/__init__.py +2 -0
  46. letta_client/agents/templates/types/templates_create_response.py +5 -4
  47. letta_client/agents/templates/types/templates_migrate_response.py +3 -2
  48. letta_client/agents/tools/__init__.py +2 -0
  49. letta_client/agents/tools/client.py +40 -179
  50. letta_client/agents/tools/raw_client.py +327 -0
  51. letta_client/agents/types/__init__.py +2 -0
  52. letta_client/agents/types/agents_search_request_search_item.py +4 -3
  53. letta_client/agents/types/agents_search_request_search_item_field.py +4 -3
  54. letta_client/agents/types/agents_search_request_search_item_one.py +4 -3
  55. letta_client/agents/types/agents_search_request_search_item_three.py +3 -2
  56. letta_client/agents/types/agents_search_request_search_item_two.py +3 -2
  57. letta_client/agents/types/agents_search_request_search_item_zero.py +3 -2
  58. letta_client/agents/types/agents_search_response.py +5 -4
  59. letta_client/agents/types/create_agent_request_response_format.py +1 -0
  60. letta_client/agents/types/create_agent_request_tool_rules_item.py +4 -3
  61. letta_client/agents/types/update_agent_response_format.py +1 -0
  62. letta_client/agents/types/update_agent_tool_rules_item.py +4 -3
  63. letta_client/base_client.py +41 -49
  64. letta_client/batches/__init__.py +2 -0
  65. letta_client/batches/client.py +45 -253
  66. letta_client/batches/raw_client.py +457 -0
  67. letta_client/blocks/__init__.py +2 -0
  68. letta_client/blocks/agents/__init__.py +2 -0
  69. letta_client/blocks/agents/client.py +33 -70
  70. letta_client/blocks/agents/raw_client.py +144 -0
  71. letta_client/blocks/client.py +126 -424
  72. letta_client/blocks/raw_client.py +973 -0
  73. letta_client/client_side_access_tokens/__init__.py +2 -0
  74. letta_client/client_side_access_tokens/client.py +45 -216
  75. letta_client/client_side_access_tokens/raw_client.py +435 -0
  76. letta_client/client_side_access_tokens/types/__init__.py +2 -0
  77. letta_client/client_side_access_tokens/types/client_side_access_tokens_create_request_policy_item.py +4 -3
  78. letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response.py +6 -5
  79. letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response_policy.py +4 -3
  80. letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response_policy_data_item.py +4 -3
  81. letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response.py +6 -5
  82. letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item.py +6 -5
  83. letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy.py +4 -3
  84. letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy_data_item.py +4 -3
  85. letta_client/core/__init__.py +5 -0
  86. letta_client/core/api_error.py +13 -5
  87. letta_client/core/client_wrapper.py +14 -5
  88. letta_client/core/force_multipart.py +16 -0
  89. letta_client/core/http_client.py +70 -26
  90. letta_client/core/http_response.py +55 -0
  91. letta_client/core/jsonable_encoder.py +0 -1
  92. letta_client/core/pydantic_utilities.py +70 -111
  93. letta_client/core/serialization.py +7 -3
  94. letta_client/core/unchecked_base_model.py +40 -4
  95. letta_client/embedding_models/__init__.py +2 -0
  96. letta_client/embedding_models/client.py +31 -65
  97. letta_client/embedding_models/raw_client.py +117 -0
  98. letta_client/errors/__init__.py +2 -0
  99. letta_client/errors/bad_request_error.py +4 -3
  100. letta_client/errors/conflict_error.py +4 -2
  101. letta_client/errors/internal_server_error.py +4 -3
  102. letta_client/errors/not_found_error.py +4 -3
  103. letta_client/errors/payment_required_error.py +4 -2
  104. letta_client/errors/unprocessable_entity_error.py +4 -2
  105. letta_client/folders/__init__.py +2 -0
  106. letta_client/folders/client.py +100 -564
  107. letta_client/folders/files/__init__.py +2 -0
  108. letta_client/folders/files/client.py +44 -189
  109. letta_client/folders/files/raw_client.py +391 -0
  110. letta_client/folders/passages/__init__.py +2 -0
  111. letta_client/folders/passages/client.py +33 -74
  112. letta_client/folders/passages/raw_client.py +162 -0
  113. letta_client/folders/raw_client.py +1084 -0
  114. letta_client/groups/__init__.py +2 -0
  115. letta_client/groups/client.py +87 -406
  116. letta_client/groups/messages/__init__.py +2 -0
  117. letta_client/groups/messages/client.py +110 -371
  118. letta_client/groups/messages/raw_client.py +881 -0
  119. letta_client/groups/messages/types/__init__.py +2 -0
  120. letta_client/groups/messages/types/letta_streaming_response.py +5 -4
  121. letta_client/groups/messages/types/messages_modify_request.py +3 -2
  122. letta_client/groups/messages/types/messages_modify_response.py +5 -4
  123. letta_client/groups/raw_client.py +807 -0
  124. letta_client/groups/types/__init__.py +2 -0
  125. letta_client/groups/types/group_create_manager_config.py +1 -0
  126. letta_client/groups/types/group_update_manager_config.py +1 -0
  127. letta_client/health/__init__.py +2 -0
  128. letta_client/health/client.py +31 -43
  129. letta_client/health/raw_client.py +85 -0
  130. letta_client/identities/__init__.py +2 -0
  131. letta_client/identities/client.py +115 -498
  132. letta_client/identities/properties/__init__.py +2 -0
  133. letta_client/identities/properties/client.py +32 -76
  134. letta_client/identities/properties/raw_client.py +152 -0
  135. letta_client/identities/raw_client.py +1010 -0
  136. letta_client/jobs/__init__.py +2 -0
  137. letta_client/jobs/client.py +67 -310
  138. letta_client/jobs/raw_client.py +624 -0
  139. letta_client/messages/__init__.py +2 -0
  140. letta_client/messages/client.py +41 -74
  141. letta_client/messages/raw_client.py +186 -0
  142. letta_client/models/__init__.py +2 -0
  143. letta_client/models/client.py +39 -73
  144. letta_client/models/raw_client.py +151 -0
  145. letta_client/projects/__init__.py +2 -0
  146. letta_client/projects/client.py +31 -53
  147. letta_client/projects/raw_client.py +125 -0
  148. letta_client/projects/types/__init__.py +2 -0
  149. letta_client/projects/types/projects_list_response.py +5 -4
  150. letta_client/projects/types/projects_list_response_projects_item.py +3 -2
  151. letta_client/providers/__init__.py +2 -0
  152. letta_client/providers/client.py +62 -335
  153. letta_client/providers/raw_client.py +664 -0
  154. letta_client/runs/__init__.py +2 -0
  155. letta_client/runs/client.py +56 -258
  156. letta_client/runs/messages/__init__.py +2 -0
  157. letta_client/runs/messages/client.py +34 -79
  158. letta_client/runs/messages/raw_client.py +209 -0
  159. letta_client/runs/raw_client.py +440 -0
  160. letta_client/runs/steps/__init__.py +2 -0
  161. letta_client/runs/steps/client.py +33 -76
  162. letta_client/runs/steps/raw_client.py +192 -0
  163. letta_client/runs/usage/__init__.py +2 -0
  164. letta_client/runs/usage/client.py +31 -66
  165. letta_client/runs/usage/raw_client.py +122 -0
  166. letta_client/sources/__init__.py +2 -0
  167. letta_client/sources/client.py +107 -625
  168. letta_client/sources/files/__init__.py +2 -0
  169. letta_client/sources/files/client.py +44 -189
  170. letta_client/sources/files/raw_client.py +391 -0
  171. letta_client/sources/passages/__init__.py +2 -0
  172. letta_client/sources/passages/client.py +33 -74
  173. letta_client/sources/passages/raw_client.py +162 -0
  174. letta_client/sources/raw_client.py +1209 -0
  175. letta_client/steps/__init__.py +2 -0
  176. letta_client/steps/client.py +65 -153
  177. letta_client/steps/feedback/__init__.py +2 -0
  178. letta_client/steps/feedback/client.py +32 -73
  179. letta_client/steps/feedback/raw_client.py +141 -0
  180. letta_client/steps/raw_client.py +355 -0
  181. letta_client/steps/types/__init__.py +2 -0
  182. letta_client/tags/__init__.py +2 -0
  183. letta_client/tags/client.py +33 -73
  184. letta_client/tags/raw_client.py +148 -0
  185. letta_client/telemetry/__init__.py +2 -0
  186. letta_client/telemetry/client.py +31 -66
  187. letta_client/telemetry/raw_client.py +118 -0
  188. letta_client/templates/__init__.py +2 -0
  189. letta_client/templates/agents/__init__.py +2 -0
  190. letta_client/templates/agents/client.py +48 -96
  191. letta_client/templates/agents/raw_client.py +227 -0
  192. letta_client/templates/agents/types/__init__.py +2 -0
  193. letta_client/templates/agents/types/agents_create_request_initial_message_sequence_item.py +4 -3
  194. letta_client/templates/agents/types/agents_create_response.py +4 -3
  195. letta_client/templates/client.py +36 -57
  196. letta_client/templates/raw_client.py +133 -0
  197. letta_client/templates/types/__init__.py +2 -0
  198. letta_client/templates/types/templates_list_response.py +5 -4
  199. letta_client/templates/types/templates_list_response_templates_item.py +3 -2
  200. letta_client/tools/__init__.py +2 -0
  201. letta_client/tools/client.py +195 -1322
  202. letta_client/tools/raw_client.py +2565 -0
  203. letta_client/tools/types/__init__.py +2 -0
  204. letta_client/tools/types/add_mcp_server_request.py +2 -1
  205. letta_client/tools/types/add_mcp_server_response_item.py +2 -1
  206. letta_client/tools/types/connect_mcp_server_request.py +2 -1
  207. letta_client/tools/types/delete_mcp_server_response_item.py +2 -1
  208. letta_client/tools/types/list_mcp_servers_response_value.py +1 -0
  209. letta_client/tools/types/streaming_response.py +5 -4
  210. letta_client/tools/types/test_mcp_server_request.py +2 -1
  211. letta_client/tools/types/update_mcp_server_request.py +2 -1
  212. letta_client/tools/types/update_mcp_server_response.py +2 -1
  213. letta_client/types/__init__.py +4 -0
  214. letta_client/types/action_model.py +6 -5
  215. letta_client/types/action_parameters_model.py +3 -2
  216. letta_client/types/action_response_model.py +3 -2
  217. letta_client/types/agent_environment_variable.py +3 -2
  218. letta_client/types/agent_schema.py +7 -6
  219. letta_client/types/agent_schema_tool_rules_item.py +2 -1
  220. letta_client/types/agent_state.py +9 -8
  221. letta_client/types/agent_state_response_format.py +1 -0
  222. letta_client/types/agent_state_tool_rules_item.py +4 -3
  223. letta_client/types/app_auth_scheme.py +4 -3
  224. letta_client/types/app_model.py +5 -4
  225. letta_client/types/assistant_message.py +3 -2
  226. letta_client/types/assistant_message_content.py +1 -0
  227. letta_client/types/audio.py +3 -2
  228. letta_client/types/auth_request.py +2 -1
  229. letta_client/types/auth_response.py +5 -4
  230. letta_client/types/auth_scheme_field.py +3 -2
  231. letta_client/types/bad_request_error_body.py +3 -2
  232. letta_client/types/base_64_image.py +2 -1
  233. letta_client/types/base_tool_rule_schema.py +3 -2
  234. letta_client/types/batch_job.py +4 -3
  235. letta_client/types/block.py +3 -2
  236. letta_client/types/block_update.py +2 -1
  237. letta_client/types/chat_completion_assistant_message_param.py +5 -4
  238. letta_client/types/chat_completion_assistant_message_param_content.py +1 -0
  239. letta_client/types/chat_completion_assistant_message_param_content_item.py +2 -1
  240. letta_client/types/chat_completion_audio_param.py +4 -3
  241. letta_client/types/chat_completion_content_part_image_param.py +4 -3
  242. letta_client/types/chat_completion_content_part_input_audio_param.py +4 -3
  243. letta_client/types/chat_completion_content_part_refusal_param.py +3 -2
  244. letta_client/types/chat_completion_content_part_text_param.py +3 -2
  245. letta_client/types/chat_completion_developer_message_param.py +4 -3
  246. letta_client/types/chat_completion_developer_message_param_content.py +1 -0
  247. letta_client/types/chat_completion_function_call_option_param.py +3 -2
  248. letta_client/types/chat_completion_function_message_param.py +3 -2
  249. letta_client/types/chat_completion_message_tool_call.py +4 -3
  250. letta_client/types/chat_completion_message_tool_call_param.py +4 -3
  251. letta_client/types/chat_completion_named_tool_choice_param.py +4 -3
  252. letta_client/types/chat_completion_prediction_content_param.py +4 -3
  253. letta_client/types/chat_completion_prediction_content_param_content.py +1 -0
  254. letta_client/types/chat_completion_stream_options_param.py +3 -2
  255. letta_client/types/chat_completion_system_message_param.py +4 -3
  256. letta_client/types/chat_completion_system_message_param_content.py +1 -0
  257. letta_client/types/chat_completion_tool_message_param.py +4 -3
  258. letta_client/types/chat_completion_tool_message_param_content.py +1 -0
  259. letta_client/types/chat_completion_tool_param.py +4 -3
  260. letta_client/types/chat_completion_user_message_param.py +4 -3
  261. letta_client/types/chat_completion_user_message_param_content.py +1 -0
  262. letta_client/types/chat_completion_user_message_param_content_item.py +2 -1
  263. letta_client/types/child_tool_rule.py +3 -2
  264. letta_client/types/child_tool_rule_schema.py +3 -2
  265. letta_client/types/code_input.py +3 -2
  266. letta_client/types/completion_create_params_non_streaming.py +10 -9
  267. letta_client/types/completion_create_params_non_streaming_function_call.py +1 -0
  268. letta_client/types/completion_create_params_non_streaming_messages_item.py +4 -3
  269. letta_client/types/completion_create_params_non_streaming_response_format.py +3 -2
  270. letta_client/types/completion_create_params_non_streaming_tool_choice.py +1 -0
  271. letta_client/types/completion_create_params_streaming.py +10 -9
  272. letta_client/types/completion_create_params_streaming_function_call.py +1 -0
  273. letta_client/types/completion_create_params_streaming_messages_item.py +4 -3
  274. letta_client/types/completion_create_params_streaming_response_format.py +3 -2
  275. letta_client/types/completion_create_params_streaming_tool_choice.py +1 -0
  276. letta_client/types/conditional_tool_rule.py +3 -2
  277. letta_client/types/conditional_tool_rule_schema.py +3 -2
  278. letta_client/types/conflict_error_body.py +3 -2
  279. letta_client/types/context_window_overview.py +4 -3
  280. letta_client/types/continue_tool_rule.py +3 -2
  281. letta_client/types/core_memory_block_schema.py +4 -3
  282. letta_client/types/create_block.py +3 -2
  283. letta_client/types/dynamic_manager.py +2 -1
  284. letta_client/types/dynamic_manager_update.py +2 -1
  285. letta_client/types/e_2_b_sandbox_config.py +2 -1
  286. letta_client/types/embedding_config.py +4 -3
  287. letta_client/types/file.py +4 -3
  288. letta_client/types/file_block.py +4 -3
  289. letta_client/types/file_file.py +3 -2
  290. letta_client/types/file_metadata.py +5 -4
  291. letta_client/types/file_stats.py +3 -2
  292. letta_client/types/folder.py +5 -4
  293. letta_client/types/function_call.py +3 -2
  294. letta_client/types/function_definition_input.py +3 -2
  295. letta_client/types/function_definition_output.py +3 -2
  296. letta_client/types/function_output.py +3 -2
  297. letta_client/types/function_tool.py +4 -3
  298. letta_client/types/generate_tool_input.py +3 -2
  299. letta_client/types/generate_tool_output.py +4 -3
  300. letta_client/types/group.py +4 -3
  301. letta_client/types/health.py +3 -2
  302. letta_client/types/hidden_reasoning_message.py +4 -3
  303. letta_client/types/http_validation_error.py +4 -3
  304. letta_client/types/identity.py +4 -3
  305. letta_client/types/identity_property.py +5 -4
  306. letta_client/types/image_content.py +3 -2
  307. letta_client/types/image_content_source.py +1 -0
  308. letta_client/types/image_url.py +4 -3
  309. letta_client/types/init_tool_rule.py +3 -2
  310. letta_client/types/input_audio.py +4 -3
  311. letta_client/types/internal_server_error_body.py +3 -2
  312. letta_client/types/job.py +4 -3
  313. letta_client/types/json_object_response_format.py +3 -2
  314. letta_client/types/json_schema.py +4 -3
  315. letta_client/types/json_schema_response_format.py +2 -1
  316. letta_client/types/letta_batch_messages.py +4 -3
  317. letta_client/types/letta_batch_request.py +4 -3
  318. letta_client/types/letta_image.py +2 -1
  319. letta_client/types/letta_message_content_union.py +4 -3
  320. letta_client/types/letta_message_union.py +5 -4
  321. letta_client/types/letta_ping.py +2 -1
  322. letta_client/types/letta_request.py +4 -3
  323. letta_client/types/letta_request_config.py +3 -2
  324. letta_client/types/letta_response.py +4 -3
  325. letta_client/types/letta_stop_reason.py +3 -2
  326. letta_client/types/letta_streaming_request.py +9 -3
  327. letta_client/types/letta_usage_statistics.py +3 -2
  328. letta_client/types/letta_user_message_content_union.py +2 -1
  329. letta_client/types/llm_config.py +6 -5
  330. letta_client/types/local_sandbox_config.py +3 -2
  331. letta_client/types/max_count_per_step_tool_rule.py +3 -2
  332. letta_client/types/max_count_per_step_tool_rule_schema.py +3 -2
  333. letta_client/types/mcp_tool.py +4 -3
  334. letta_client/types/memory.py +4 -3
  335. letta_client/types/message.py +6 -5
  336. letta_client/types/message_content_item.py +1 -0
  337. letta_client/types/message_create.py +5 -4
  338. letta_client/types/message_create_content.py +1 -0
  339. letta_client/types/message_schema.py +4 -3
  340. letta_client/types/modal_sandbox_config.py +28 -0
  341. letta_client/types/not_found_error_body.py +3 -2
  342. letta_client/types/omitted_reasoning_content.py +3 -2
  343. letta_client/types/openai_types_chat_chat_completion_message_tool_call_param_function.py +3 -2
  344. letta_client/types/openai_types_chat_chat_completion_named_tool_choice_param_function.py +3 -2
  345. letta_client/types/openai_types_chat_completion_create_params_function.py +3 -2
  346. letta_client/types/organization.py +3 -2
  347. letta_client/types/organization_create.py +2 -1
  348. letta_client/types/organization_sources_stats.py +3 -2
  349. letta_client/types/organization_update.py +2 -1
  350. letta_client/types/parameter_properties.py +3 -2
  351. letta_client/types/parameters_schema.py +4 -3
  352. letta_client/types/parent_tool_rule.py +3 -2
  353. letta_client/types/passage.py +4 -3
  354. letta_client/types/payment_required_error_body.py +3 -2
  355. letta_client/types/pip_requirement.py +3 -2
  356. letta_client/types/provider.py +5 -4
  357. letta_client/types/provider_check.py +4 -3
  358. letta_client/types/provider_trace.py +3 -2
  359. letta_client/types/reasoning_content.py +2 -1
  360. letta_client/types/reasoning_message.py +4 -3
  361. letta_client/types/redacted_reasoning_content.py +2 -1
  362. letta_client/types/required_before_exit_tool_rule.py +3 -2
  363. letta_client/types/response_format_json_object.py +3 -2
  364. letta_client/types/response_format_json_schema.py +4 -3
  365. letta_client/types/response_format_text.py +3 -2
  366. letta_client/types/round_robin_manager.py +2 -1
  367. letta_client/types/round_robin_manager_update.py +2 -1
  368. letta_client/types/run.py +4 -3
  369. letta_client/types/sandbox_config.py +4 -3
  370. letta_client/types/sandbox_config_create.py +4 -3
  371. letta_client/types/sandbox_config_create_config.py +4 -2
  372. letta_client/types/sandbox_config_update.py +3 -2
  373. letta_client/types/sandbox_config_update_config.py +4 -2
  374. letta_client/types/sandbox_environment_variable.py +3 -2
  375. letta_client/types/sandbox_environment_variable_create.py +3 -2
  376. letta_client/types/sandbox_environment_variable_update.py +2 -1
  377. letta_client/types/sandbox_type.py +1 -1
  378. letta_client/types/sleeptime_manager.py +2 -1
  379. letta_client/types/sleeptime_manager_update.py +2 -1
  380. letta_client/types/source.py +5 -4
  381. letta_client/types/source_create.py +4 -3
  382. letta_client/types/source_stats.py +4 -3
  383. letta_client/types/source_update.py +3 -2
  384. letta_client/types/sse_server_config.py +4 -3
  385. letta_client/types/stdio_server_config.py +4 -3
  386. letta_client/types/step.py +5 -4
  387. letta_client/types/streamable_http_server_config.py +4 -3
  388. letta_client/types/supervisor_manager.py +2 -1
  389. letta_client/types/supervisor_manager_update.py +2 -1
  390. letta_client/types/system_message.py +2 -1
  391. letta_client/types/tag_schema.py +3 -2
  392. letta_client/types/terminal_tool_rule.py +3 -2
  393. letta_client/types/text_content.py +2 -1
  394. letta_client/types/text_response_format.py +3 -2
  395. letta_client/types/tool.py +5 -4
  396. letta_client/types/tool_annotations.py +4 -3
  397. letta_client/types/tool_call.py +3 -2
  398. letta_client/types/tool_call_content.py +2 -1
  399. letta_client/types/tool_call_delta.py +3 -2
  400. letta_client/types/tool_call_message.py +4 -3
  401. letta_client/types/tool_call_message_tool_call.py +1 -0
  402. letta_client/types/tool_create.py +3 -2
  403. letta_client/types/tool_env_var_schema.py +3 -2
  404. letta_client/types/tool_json_schema.py +4 -3
  405. letta_client/types/tool_return.py +4 -3
  406. letta_client/types/tool_return_content.py +2 -1
  407. letta_client/types/tool_return_message.py +4 -3
  408. letta_client/types/tool_schema.py +5 -4
  409. letta_client/types/tool_type.py +0 -1
  410. letta_client/types/update_assistant_message.py +3 -2
  411. letta_client/types/update_assistant_message_content.py +1 -0
  412. letta_client/types/update_reasoning_message.py +3 -2
  413. letta_client/types/update_ssemcp_server.py +2 -1
  414. letta_client/types/update_stdio_mcp_server.py +3 -2
  415. letta_client/types/update_streamable_httpmcp_server.py +2 -1
  416. letta_client/types/update_system_message.py +2 -1
  417. letta_client/types/update_user_message.py +3 -2
  418. letta_client/types/update_user_message_content.py +1 -0
  419. letta_client/types/url_image.py +2 -1
  420. letta_client/types/usage_statistics.py +5 -4
  421. letta_client/types/usage_statistics_completion_token_details.py +3 -2
  422. letta_client/types/usage_statistics_prompt_token_details.py +3 -2
  423. letta_client/types/user.py +3 -2
  424. letta_client/types/user_create.py +3 -2
  425. letta_client/types/user_message.py +3 -2
  426. letta_client/types/user_message_content.py +1 -0
  427. letta_client/types/user_update.py +3 -2
  428. letta_client/types/validation_error.py +4 -3
  429. letta_client/types/voice_sleeptime_manager.py +2 -1
  430. letta_client/types/voice_sleeptime_manager_update.py +2 -1
  431. letta_client/types/web_search_options.py +4 -3
  432. letta_client/types/web_search_options_user_location.py +4 -3
  433. letta_client/types/web_search_options_user_location_approximate.py +3 -2
  434. letta_client/voice/__init__.py +2 -0
  435. letta_client/voice/client.py +33 -74
  436. letta_client/voice/raw_client.py +154 -0
  437. {letta_client-0.1.232.dist-info → letta_client-0.1.234.dist-info}/METADATA +24 -3
  438. letta_client-0.1.234.dist-info/RECORD +503 -0
  439. letta_client-0.1.232.dist-info/RECORD +0 -454
  440. {letta_client-0.1.232.dist-info → letta_client-0.1.234.dist-info}/WHEEL +0 -0
@@ -1,5 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ # isort: skip_file
4
+
3
5
  from .types import StepsListRequestFeedback
4
6
  from . import feedback
5
7
 
@@ -1,25 +1,30 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ..core.client_wrapper import SyncClientWrapper
4
- from .feedback.client import FeedbackClient
5
3
  import typing
6
- from .types.steps_list_request_feedback import StepsListRequestFeedback
4
+
5
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
7
6
  from ..core.request_options import RequestOptions
8
7
  from ..types.step import Step
9
- from ..core.unchecked_base_model import construct_type
10
- from ..errors.unprocessable_entity_error import UnprocessableEntityError
11
- from ..types.http_validation_error import HttpValidationError
12
- from json.decoder import JSONDecodeError
13
- from ..core.api_error import ApiError
14
- from ..core.jsonable_encoder import jsonable_encoder
15
- from ..core.client_wrapper import AsyncClientWrapper
16
- from .feedback.client import AsyncFeedbackClient
8
+ from .feedback.client import AsyncFeedbackClient, FeedbackClient
9
+ from .raw_client import AsyncRawStepsClient, RawStepsClient
10
+ from .types.steps_list_request_feedback import StepsListRequestFeedback
17
11
 
18
12
 
19
13
  class StepsClient:
20
14
  def __init__(self, *, client_wrapper: SyncClientWrapper):
21
- self._client_wrapper = client_wrapper
22
- self.feedback = FeedbackClient(client_wrapper=self._client_wrapper)
15
+ self._raw_client = RawStepsClient(client_wrapper=client_wrapper)
16
+ self.feedback = FeedbackClient(client_wrapper=client_wrapper)
17
+
18
+ @property
19
+ def with_raw_response(self) -> RawStepsClient:
20
+ """
21
+ Retrieves a raw implementation of this client that returns raw responses.
22
+
23
+ Returns
24
+ -------
25
+ RawStepsClient
26
+ """
27
+ return self._raw_client
23
28
 
24
29
  def list(
25
30
  self,
@@ -102,49 +107,23 @@ class StepsClient:
102
107
  )
103
108
  client.steps.list()
104
109
  """
105
- _response = self._client_wrapper.httpx_client.request(
106
- "v1/steps/",
107
- method="GET",
108
- params={
109
- "before": before,
110
- "after": after,
111
- "limit": limit,
112
- "order": order,
113
- "start_date": start_date,
114
- "end_date": end_date,
115
- "model": model,
116
- "agent_id": agent_id,
117
- "trace_ids": trace_ids,
118
- "feedback": feedback,
119
- "has_feedback": has_feedback,
120
- "tags": tags,
121
- "project_id": project_id,
122
- },
110
+ _response = self._raw_client.list(
111
+ before=before,
112
+ after=after,
113
+ limit=limit,
114
+ order=order,
115
+ start_date=start_date,
116
+ end_date=end_date,
117
+ model=model,
118
+ agent_id=agent_id,
119
+ trace_ids=trace_ids,
120
+ feedback=feedback,
121
+ has_feedback=has_feedback,
122
+ tags=tags,
123
+ project_id=project_id,
123
124
  request_options=request_options,
124
125
  )
125
- try:
126
- if 200 <= _response.status_code < 300:
127
- return typing.cast(
128
- typing.List[Step],
129
- construct_type(
130
- type_=typing.List[Step], # type: ignore
131
- object_=_response.json(),
132
- ),
133
- )
134
- if _response.status_code == 422:
135
- raise UnprocessableEntityError(
136
- typing.cast(
137
- HttpValidationError,
138
- construct_type(
139
- type_=HttpValidationError, # type: ignore
140
- object_=_response.json(),
141
- ),
142
- )
143
- )
144
- _response_json = _response.json()
145
- except JSONDecodeError:
146
- raise ApiError(status_code=_response.status_code, body=_response.text)
147
- raise ApiError(status_code=_response.status_code, body=_response_json)
126
+ return _response.data
148
127
 
149
128
  def retrieve(self, step_id: str, *, request_options: typing.Optional[RequestOptions] = None) -> Step:
150
129
  """
@@ -174,40 +153,25 @@ class StepsClient:
174
153
  step_id="step_id",
175
154
  )
176
155
  """
177
- _response = self._client_wrapper.httpx_client.request(
178
- f"v1/steps/{jsonable_encoder(step_id)}",
179
- method="GET",
180
- request_options=request_options,
181
- )
182
- try:
183
- if 200 <= _response.status_code < 300:
184
- return typing.cast(
185
- Step,
186
- construct_type(
187
- type_=Step, # type: ignore
188
- object_=_response.json(),
189
- ),
190
- )
191
- if _response.status_code == 422:
192
- raise UnprocessableEntityError(
193
- typing.cast(
194
- HttpValidationError,
195
- construct_type(
196
- type_=HttpValidationError, # type: ignore
197
- object_=_response.json(),
198
- ),
199
- )
200
- )
201
- _response_json = _response.json()
202
- except JSONDecodeError:
203
- raise ApiError(status_code=_response.status_code, body=_response.text)
204
- raise ApiError(status_code=_response.status_code, body=_response_json)
156
+ _response = self._raw_client.retrieve(step_id, request_options=request_options)
157
+ return _response.data
205
158
 
206
159
 
207
160
  class AsyncStepsClient:
208
161
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
209
- self._client_wrapper = client_wrapper
210
- self.feedback = AsyncFeedbackClient(client_wrapper=self._client_wrapper)
162
+ self._raw_client = AsyncRawStepsClient(client_wrapper=client_wrapper)
163
+ self.feedback = AsyncFeedbackClient(client_wrapper=client_wrapper)
164
+
165
+ @property
166
+ def with_raw_response(self) -> AsyncRawStepsClient:
167
+ """
168
+ Retrieves a raw implementation of this client that returns raw responses.
169
+
170
+ Returns
171
+ -------
172
+ AsyncRawStepsClient
173
+ """
174
+ return self._raw_client
211
175
 
212
176
  async def list(
213
177
  self,
@@ -298,49 +262,23 @@ class AsyncStepsClient:
298
262
 
299
263
  asyncio.run(main())
300
264
  """
301
- _response = await self._client_wrapper.httpx_client.request(
302
- "v1/steps/",
303
- method="GET",
304
- params={
305
- "before": before,
306
- "after": after,
307
- "limit": limit,
308
- "order": order,
309
- "start_date": start_date,
310
- "end_date": end_date,
311
- "model": model,
312
- "agent_id": agent_id,
313
- "trace_ids": trace_ids,
314
- "feedback": feedback,
315
- "has_feedback": has_feedback,
316
- "tags": tags,
317
- "project_id": project_id,
318
- },
265
+ _response = await self._raw_client.list(
266
+ before=before,
267
+ after=after,
268
+ limit=limit,
269
+ order=order,
270
+ start_date=start_date,
271
+ end_date=end_date,
272
+ model=model,
273
+ agent_id=agent_id,
274
+ trace_ids=trace_ids,
275
+ feedback=feedback,
276
+ has_feedback=has_feedback,
277
+ tags=tags,
278
+ project_id=project_id,
319
279
  request_options=request_options,
320
280
  )
321
- try:
322
- if 200 <= _response.status_code < 300:
323
- return typing.cast(
324
- typing.List[Step],
325
- construct_type(
326
- type_=typing.List[Step], # type: ignore
327
- object_=_response.json(),
328
- ),
329
- )
330
- if _response.status_code == 422:
331
- raise UnprocessableEntityError(
332
- typing.cast(
333
- HttpValidationError,
334
- construct_type(
335
- type_=HttpValidationError, # type: ignore
336
- object_=_response.json(),
337
- ),
338
- )
339
- )
340
- _response_json = _response.json()
341
- except JSONDecodeError:
342
- raise ApiError(status_code=_response.status_code, body=_response.text)
343
- raise ApiError(status_code=_response.status_code, body=_response_json)
281
+ return _response.data
344
282
 
345
283
  async def retrieve(self, step_id: str, *, request_options: typing.Optional[RequestOptions] = None) -> Step:
346
284
  """
@@ -378,31 +316,5 @@ class AsyncStepsClient:
378
316
 
379
317
  asyncio.run(main())
380
318
  """
381
- _response = await self._client_wrapper.httpx_client.request(
382
- f"v1/steps/{jsonable_encoder(step_id)}",
383
- method="GET",
384
- request_options=request_options,
385
- )
386
- try:
387
- if 200 <= _response.status_code < 300:
388
- return typing.cast(
389
- Step,
390
- construct_type(
391
- type_=Step, # type: ignore
392
- object_=_response.json(),
393
- ),
394
- )
395
- if _response.status_code == 422:
396
- raise UnprocessableEntityError(
397
- typing.cast(
398
- HttpValidationError,
399
- construct_type(
400
- type_=HttpValidationError, # type: ignore
401
- object_=_response.json(),
402
- ),
403
- )
404
- )
405
- _response_json = _response.json()
406
- except JSONDecodeError:
407
- raise ApiError(status_code=_response.status_code, body=_response.text)
408
- raise ApiError(status_code=_response.status_code, body=_response_json)
319
+ _response = await self._raw_client.retrieve(step_id, request_options=request_options)
320
+ return _response.data
@@ -1,2 +1,4 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ # isort: skip_file
4
+
@@ -1,22 +1,28 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from ...core.client_wrapper import SyncClientWrapper
4
3
  import typing
5
- from ...types.feedback_type import FeedbackType
4
+
5
+ from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
6
6
  from ...core.request_options import RequestOptions
7
+ from ...types.feedback_type import FeedbackType
7
8
  from ...types.step import Step
8
- from ...core.jsonable_encoder import jsonable_encoder
9
- from ...core.unchecked_base_model import construct_type
10
- from ...errors.unprocessable_entity_error import UnprocessableEntityError
11
- from ...types.http_validation_error import HttpValidationError
12
- from json.decoder import JSONDecodeError
13
- from ...core.api_error import ApiError
14
- from ...core.client_wrapper import AsyncClientWrapper
9
+ from .raw_client import AsyncRawFeedbackClient, RawFeedbackClient
15
10
 
16
11
 
17
12
  class FeedbackClient:
18
13
  def __init__(self, *, client_wrapper: SyncClientWrapper):
19
- self._client_wrapper = client_wrapper
14
+ self._raw_client = RawFeedbackClient(client_wrapper=client_wrapper)
15
+
16
+ @property
17
+ def with_raw_response(self) -> RawFeedbackClient:
18
+ """
19
+ Retrieves a raw implementation of this client that returns raw responses.
20
+
21
+ Returns
22
+ -------
23
+ RawFeedbackClient
24
+ """
25
+ return self._raw_client
20
26
 
21
27
  def create(
22
28
  self,
@@ -54,42 +60,24 @@ class FeedbackClient:
54
60
  step_id="step_id",
55
61
  )
56
62
  """
57
- _response = self._client_wrapper.httpx_client.request(
58
- f"v1/steps/{jsonable_encoder(step_id)}/feedback",
59
- method="PATCH",
60
- params={
61
- "feedback": feedback,
62
- },
63
- request_options=request_options,
64
- )
65
- try:
66
- if 200 <= _response.status_code < 300:
67
- return typing.cast(
68
- Step,
69
- construct_type(
70
- type_=Step, # type: ignore
71
- object_=_response.json(),
72
- ),
73
- )
74
- if _response.status_code == 422:
75
- raise UnprocessableEntityError(
76
- typing.cast(
77
- HttpValidationError,
78
- construct_type(
79
- type_=HttpValidationError, # type: ignore
80
- object_=_response.json(),
81
- ),
82
- )
83
- )
84
- _response_json = _response.json()
85
- except JSONDecodeError:
86
- raise ApiError(status_code=_response.status_code, body=_response.text)
87
- raise ApiError(status_code=_response.status_code, body=_response_json)
63
+ _response = self._raw_client.create(step_id, feedback=feedback, request_options=request_options)
64
+ return _response.data
88
65
 
89
66
 
90
67
  class AsyncFeedbackClient:
91
68
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
92
- self._client_wrapper = client_wrapper
69
+ self._raw_client = AsyncRawFeedbackClient(client_wrapper=client_wrapper)
70
+
71
+ @property
72
+ def with_raw_response(self) -> AsyncRawFeedbackClient:
73
+ """
74
+ Retrieves a raw implementation of this client that returns raw responses.
75
+
76
+ Returns
77
+ -------
78
+ AsyncRawFeedbackClient
79
+ """
80
+ return self._raw_client
93
81
 
94
82
  async def create(
95
83
  self,
@@ -135,34 +123,5 @@ class AsyncFeedbackClient:
135
123
 
136
124
  asyncio.run(main())
137
125
  """
138
- _response = await self._client_wrapper.httpx_client.request(
139
- f"v1/steps/{jsonable_encoder(step_id)}/feedback",
140
- method="PATCH",
141
- params={
142
- "feedback": feedback,
143
- },
144
- request_options=request_options,
145
- )
146
- try:
147
- if 200 <= _response.status_code < 300:
148
- return typing.cast(
149
- Step,
150
- construct_type(
151
- type_=Step, # type: ignore
152
- object_=_response.json(),
153
- ),
154
- )
155
- if _response.status_code == 422:
156
- raise UnprocessableEntityError(
157
- typing.cast(
158
- HttpValidationError,
159
- construct_type(
160
- type_=HttpValidationError, # type: ignore
161
- object_=_response.json(),
162
- ),
163
- )
164
- )
165
- _response_json = _response.json()
166
- except JSONDecodeError:
167
- raise ApiError(status_code=_response.status_code, body=_response.text)
168
- raise ApiError(status_code=_response.status_code, body=_response_json)
126
+ _response = await self._raw_client.create(step_id, feedback=feedback, request_options=request_options)
127
+ return _response.data
@@ -0,0 +1,141 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from json.decoder import JSONDecodeError
5
+
6
+ from ...core.api_error import ApiError
7
+ from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
8
+ from ...core.http_response import AsyncHttpResponse, HttpResponse
9
+ from ...core.jsonable_encoder import jsonable_encoder
10
+ from ...core.request_options import RequestOptions
11
+ from ...core.unchecked_base_model import construct_type
12
+ from ...errors.unprocessable_entity_error import UnprocessableEntityError
13
+ from ...types.feedback_type import FeedbackType
14
+ from ...types.http_validation_error import HttpValidationError
15
+ from ...types.step import Step
16
+
17
+
18
+ class RawFeedbackClient:
19
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
20
+ self._client_wrapper = client_wrapper
21
+
22
+ def create(
23
+ self,
24
+ step_id: str,
25
+ *,
26
+ feedback: typing.Optional[FeedbackType] = None,
27
+ request_options: typing.Optional[RequestOptions] = None,
28
+ ) -> HttpResponse[Step]:
29
+ """
30
+ Add feedback to a step.
31
+
32
+ Parameters
33
+ ----------
34
+ step_id : str
35
+
36
+ feedback : typing.Optional[FeedbackType]
37
+
38
+ request_options : typing.Optional[RequestOptions]
39
+ Request-specific configuration.
40
+
41
+ Returns
42
+ -------
43
+ HttpResponse[Step]
44
+ Successful Response
45
+ """
46
+ _response = self._client_wrapper.httpx_client.request(
47
+ f"v1/steps/{jsonable_encoder(step_id)}/feedback",
48
+ method="PATCH",
49
+ params={
50
+ "feedback": feedback,
51
+ },
52
+ request_options=request_options,
53
+ )
54
+ try:
55
+ if 200 <= _response.status_code < 300:
56
+ _data = typing.cast(
57
+ Step,
58
+ construct_type(
59
+ type_=Step, # type: ignore
60
+ object_=_response.json(),
61
+ ),
62
+ )
63
+ return HttpResponse(response=_response, data=_data)
64
+ if _response.status_code == 422:
65
+ raise UnprocessableEntityError(
66
+ headers=dict(_response.headers),
67
+ body=typing.cast(
68
+ HttpValidationError,
69
+ construct_type(
70
+ type_=HttpValidationError, # type: ignore
71
+ object_=_response.json(),
72
+ ),
73
+ ),
74
+ )
75
+ _response_json = _response.json()
76
+ except JSONDecodeError:
77
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
78
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
79
+
80
+
81
+ class AsyncRawFeedbackClient:
82
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
83
+ self._client_wrapper = client_wrapper
84
+
85
+ async def create(
86
+ self,
87
+ step_id: str,
88
+ *,
89
+ feedback: typing.Optional[FeedbackType] = None,
90
+ request_options: typing.Optional[RequestOptions] = None,
91
+ ) -> AsyncHttpResponse[Step]:
92
+ """
93
+ Add feedback to a step.
94
+
95
+ Parameters
96
+ ----------
97
+ step_id : str
98
+
99
+ feedback : typing.Optional[FeedbackType]
100
+
101
+ request_options : typing.Optional[RequestOptions]
102
+ Request-specific configuration.
103
+
104
+ Returns
105
+ -------
106
+ AsyncHttpResponse[Step]
107
+ Successful Response
108
+ """
109
+ _response = await self._client_wrapper.httpx_client.request(
110
+ f"v1/steps/{jsonable_encoder(step_id)}/feedback",
111
+ method="PATCH",
112
+ params={
113
+ "feedback": feedback,
114
+ },
115
+ request_options=request_options,
116
+ )
117
+ try:
118
+ if 200 <= _response.status_code < 300:
119
+ _data = typing.cast(
120
+ Step,
121
+ construct_type(
122
+ type_=Step, # type: ignore
123
+ object_=_response.json(),
124
+ ),
125
+ )
126
+ return AsyncHttpResponse(response=_response, data=_data)
127
+ if _response.status_code == 422:
128
+ raise UnprocessableEntityError(
129
+ headers=dict(_response.headers),
130
+ body=typing.cast(
131
+ HttpValidationError,
132
+ construct_type(
133
+ type_=HttpValidationError, # type: ignore
134
+ object_=_response.json(),
135
+ ),
136
+ ),
137
+ )
138
+ _response_json = _response.json()
139
+ except JSONDecodeError:
140
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
141
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)