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

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

Potentially problematic release.


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

Files changed (211) hide show
  1. letta_client/__init__.py +51 -9
  2. letta_client/agents/__init__.py +6 -2
  3. letta_client/agents/client.py +50 -213
  4. letta_client/agents/files/client.py +51 -6
  5. letta_client/agents/files/raw_client.py +94 -9
  6. letta_client/agents/messages/__init__.py +2 -2
  7. letta_client/agents/messages/client.py +116 -26
  8. letta_client/agents/messages/raw_client.py +121 -19
  9. letta_client/agents/messages/types/__init__.py +2 -2
  10. letta_client/agents/messages/types/{messages_preview_raw_payload_request.py → messages_preview_request.py} +1 -1
  11. letta_client/agents/raw_client.py +50 -253
  12. letta_client/agents/types/__init__.py +4 -0
  13. letta_client/agents/types/agents_list_request_order.py +5 -0
  14. letta_client/agents/types/agents_list_request_order_by.py +5 -0
  15. letta_client/archives/__init__.py +7 -0
  16. letta_client/archives/client.py +362 -0
  17. letta_client/archives/raw_client.py +448 -0
  18. letta_client/archives/types/__init__.py +7 -0
  19. letta_client/archives/types/list_archives_request_order.py +5 -0
  20. letta_client/base_client.py +3 -6
  21. letta_client/batches/__init__.py +5 -0
  22. letta_client/batches/client.py +68 -8
  23. letta_client/batches/messages/__init__.py +7 -0
  24. letta_client/{messages → batches/messages}/client.py +50 -43
  25. letta_client/{messages → batches/messages}/raw_client.py +52 -45
  26. letta_client/batches/messages/types/__init__.py +7 -0
  27. letta_client/batches/messages/types/messages_list_request_order.py +5 -0
  28. letta_client/batches/raw_client.py +71 -6
  29. letta_client/batches/types/__init__.py +7 -0
  30. letta_client/batches/types/batches_list_request_order.py +5 -0
  31. letta_client/blocks/__init__.py +3 -1
  32. letta_client/blocks/agents/__init__.py +3 -0
  33. letta_client/blocks/agents/client.py +57 -2
  34. letta_client/blocks/agents/raw_client.py +51 -0
  35. letta_client/blocks/agents/types/__init__.py +7 -0
  36. letta_client/blocks/agents/types/agents_list_request_order.py +5 -0
  37. letta_client/blocks/client.py +25 -4
  38. letta_client/blocks/raw_client.py +25 -4
  39. letta_client/blocks/types/__init__.py +7 -0
  40. letta_client/blocks/types/blocks_list_request_order.py +5 -0
  41. letta_client/core/client_wrapper.py +2 -2
  42. letta_client/errors/__init__.py +9 -1
  43. letta_client/errors/internal_server_error.py +10 -0
  44. letta_client/folders/__init__.py +14 -2
  45. letta_client/folders/agents/__init__.py +7 -0
  46. letta_client/folders/agents/client.py +176 -0
  47. letta_client/folders/agents/raw_client.py +182 -0
  48. letta_client/folders/agents/types/__init__.py +7 -0
  49. letta_client/folders/agents/types/agents_list_request_order.py +5 -0
  50. letta_client/folders/client.py +96 -86
  51. letta_client/folders/files/__init__.py +3 -0
  52. letta_client/folders/files/client.py +49 -10
  53. letta_client/folders/files/raw_client.py +41 -10
  54. letta_client/folders/files/types/__init__.py +7 -0
  55. letta_client/folders/files/types/files_list_request_order.py +5 -0
  56. letta_client/folders/passages/__init__.py +3 -0
  57. letta_client/folders/passages/client.py +43 -14
  58. letta_client/folders/passages/raw_client.py +35 -14
  59. letta_client/folders/passages/types/__init__.py +7 -0
  60. letta_client/folders/passages/types/passages_list_request_order.py +5 -0
  61. letta_client/folders/raw_client.py +83 -104
  62. letta_client/folders/types/__init__.py +7 -0
  63. letta_client/folders/types/folders_list_request_order.py +5 -0
  64. letta_client/groups/__init__.py +4 -2
  65. letta_client/groups/client.py +27 -6
  66. letta_client/groups/messages/__init__.py +2 -2
  67. letta_client/groups/messages/client.py +39 -18
  68. letta_client/groups/messages/raw_client.py +35 -14
  69. letta_client/groups/messages/types/__init__.py +2 -1
  70. letta_client/groups/messages/types/messages_list_request_order.py +5 -0
  71. letta_client/groups/raw_client.py +27 -6
  72. letta_client/groups/types/__init__.py +2 -1
  73. letta_client/groups/types/groups_list_request_order.py +5 -0
  74. letta_client/identities/__init__.py +12 -2
  75. letta_client/identities/agents/__init__.py +7 -0
  76. letta_client/identities/agents/client.py +177 -0
  77. letta_client/identities/agents/raw_client.py +183 -0
  78. letta_client/identities/agents/types/__init__.py +7 -0
  79. letta_client/identities/agents/types/agents_list_request_order.py +5 -0
  80. letta_client/identities/blocks/__init__.py +7 -0
  81. letta_client/identities/blocks/client.py +177 -0
  82. letta_client/identities/blocks/raw_client.py +183 -0
  83. letta_client/identities/blocks/types/__init__.py +7 -0
  84. letta_client/identities/blocks/types/blocks_list_request_order.py +5 -0
  85. letta_client/identities/client.py +37 -0
  86. letta_client/identities/raw_client.py +27 -0
  87. letta_client/identities/types/__init__.py +7 -0
  88. letta_client/identities/types/identities_list_request_order.py +5 -0
  89. letta_client/jobs/client.py +10 -2
  90. letta_client/jobs/raw_client.py +10 -2
  91. letta_client/models/__init__.py +3 -0
  92. letta_client/models/client.py +3 -0
  93. letta_client/{embedding_models → models/embeddings}/client.py +14 -14
  94. letta_client/{embedding_models → models/embeddings}/raw_client.py +10 -10
  95. letta_client/providers/__init__.py +3 -0
  96. letta_client/providers/client.py +151 -82
  97. letta_client/providers/raw_client.py +165 -72
  98. letta_client/providers/types/__init__.py +7 -0
  99. letta_client/providers/types/providers_list_request_order.py +5 -0
  100. letta_client/runs/__init__.py +2 -1
  101. letta_client/runs/client.py +21 -0
  102. letta_client/runs/messages/__init__.py +3 -0
  103. letta_client/runs/messages/client.py +15 -49
  104. letta_client/runs/messages/raw_client.py +13 -49
  105. letta_client/runs/messages/types/__init__.py +7 -0
  106. letta_client/runs/messages/types/messages_list_request_order.py +5 -0
  107. letta_client/runs/raw_client.py +21 -0
  108. letta_client/steps/__init__.py +13 -3
  109. letta_client/steps/client.py +32 -83
  110. letta_client/steps/feedback/client.py +21 -6
  111. letta_client/steps/feedback/raw_client.py +29 -6
  112. letta_client/steps/messages/__init__.py +7 -0
  113. letta_client/steps/messages/client.py +177 -0
  114. letta_client/steps/messages/raw_client.py +183 -0
  115. letta_client/steps/messages/types/__init__.py +8 -0
  116. letta_client/steps/messages/types/messages_list_request_order.py +5 -0
  117. letta_client/steps/messages/types/messages_list_response_item.py +25 -0
  118. letta_client/steps/metrics/client.py +110 -0
  119. letta_client/steps/metrics/raw_client.py +122 -0
  120. letta_client/steps/raw_client.py +17 -107
  121. letta_client/steps/trace/__init__.py +4 -0
  122. letta_client/steps/trace/client.py +110 -0
  123. letta_client/steps/trace/raw_client.py +122 -0
  124. letta_client/steps/types/__init__.py +2 -1
  125. letta_client/steps/types/steps_list_request_order.py +5 -0
  126. letta_client/tags/__init__.py +3 -0
  127. letta_client/tags/client.py +57 -4
  128. letta_client/tags/raw_client.py +49 -2
  129. letta_client/tags/types/__init__.py +7 -0
  130. letta_client/tags/types/tags_list_request_order.py +5 -0
  131. letta_client/telemetry/client.py +8 -0
  132. letta_client/telemetry/raw_client.py +8 -0
  133. letta_client/templates/__init__.py +64 -0
  134. letta_client/templates/agents/__init__.py +58 -0
  135. letta_client/templates/agents/types/__init__.py +66 -0
  136. letta_client/templates/agents/types/agents_create_response.py +6 -0
  137. letta_client/templates/agents/types/agents_create_response_group.py +52 -0
  138. letta_client/templates/agents/types/agents_create_response_group_base_template_id.py +12 -0
  139. letta_client/templates/agents/types/agents_create_response_group_base_template_id_item.py +5 -0
  140. letta_client/templates/agents/types/agents_create_response_group_deployment_id.py +12 -0
  141. letta_client/templates/agents/types/agents_create_response_group_deployment_id_item.py +5 -0
  142. letta_client/templates/agents/types/agents_create_response_group_hidden.py +12 -0
  143. letta_client/templates/agents/types/agents_create_response_group_hidden_item.py +5 -0
  144. letta_client/templates/agents/types/agents_create_response_group_last_processed_message_id.py +14 -0
  145. letta_client/templates/agents/types/agents_create_response_group_last_processed_message_id_item.py +5 -0
  146. letta_client/templates/agents/types/agents_create_response_group_manager_agent_id.py +12 -0
  147. letta_client/templates/agents/types/agents_create_response_group_manager_agent_id_item.py +5 -0
  148. letta_client/templates/agents/types/agents_create_response_group_manager_type.py +7 -0
  149. letta_client/templates/agents/types/agents_create_response_group_max_message_buffer_length.py +14 -0
  150. letta_client/templates/agents/types/agents_create_response_group_max_message_buffer_length_item.py +5 -0
  151. letta_client/templates/agents/types/agents_create_response_group_max_turns.py +12 -0
  152. letta_client/templates/agents/types/agents_create_response_group_max_turns_item.py +5 -0
  153. letta_client/templates/agents/types/agents_create_response_group_min_message_buffer_length.py +14 -0
  154. letta_client/templates/agents/types/agents_create_response_group_min_message_buffer_length_item.py +5 -0
  155. letta_client/templates/agents/types/agents_create_response_group_project_id.py +12 -0
  156. letta_client/templates/agents/types/agents_create_response_group_project_id_item.py +5 -0
  157. letta_client/templates/agents/types/agents_create_response_group_shared_block_ids.py +5 -0
  158. letta_client/templates/agents/types/agents_create_response_group_sleeptime_agent_frequency.py +14 -0
  159. letta_client/templates/agents/types/agents_create_response_group_sleeptime_agent_frequency_item.py +5 -0
  160. letta_client/templates/agents/types/agents_create_response_group_template_id.py +12 -0
  161. letta_client/templates/agents/types/agents_create_response_group_template_id_item.py +5 -0
  162. letta_client/templates/agents/types/agents_create_response_group_termination_token.py +12 -0
  163. letta_client/templates/agents/types/agents_create_response_group_termination_token_item.py +5 -0
  164. letta_client/templates/agents/types/agents_create_response_group_turns_counter.py +12 -0
  165. letta_client/templates/agents/types/agents_create_response_group_turns_counter_item.py +5 -0
  166. letta_client/templates/client.py +260 -0
  167. letta_client/templates/raw_client.py +395 -0
  168. letta_client/templates/types/__init__.py +8 -0
  169. letta_client/templates/types/templates_get_template_snapshot_response.py +4 -0
  170. letta_client/templates/types/templates_get_template_snapshot_response_blocks_item.py +1 -0
  171. letta_client/templates/types/templates_get_template_snapshot_response_relationships_item.py +23 -0
  172. letta_client/templates/types/templates_migrate_deployment_response.py +21 -0
  173. letta_client/templates/types/templates_set_current_template_from_snapshot_response.py +21 -0
  174. letta_client/tools/__init__.py +2 -0
  175. letta_client/tools/client.py +47 -20
  176. letta_client/tools/raw_client.py +43 -26
  177. letta_client/tools/types/__init__.py +2 -0
  178. letta_client/tools/types/tools_list_request_order.py +5 -0
  179. letta_client/types/__init__.py +10 -2
  180. letta_client/types/agent_state.py +5 -0
  181. letta_client/types/archive.py +77 -0
  182. letta_client/types/batch_job.py +6 -0
  183. letta_client/types/{body_export_agent_serialized.py → body_export_agent.py} +1 -1
  184. letta_client/types/child_tool_rule.py +1 -1
  185. letta_client/types/conditional_tool_rule.py +1 -1
  186. letta_client/types/continue_tool_rule.py +1 -1
  187. letta_client/types/deployment_entity.py +2 -0
  188. letta_client/types/init_tool_rule.py +1 -1
  189. letta_client/types/internal_server_error_body.py +20 -0
  190. letta_client/types/internal_template_agent_create.py +5 -0
  191. letta_client/types/job.py +6 -0
  192. letta_client/types/letta_schemas_agent_file_agent_schema.py +5 -0
  193. letta_client/types/max_count_per_step_tool_rule.py +1 -1
  194. letta_client/types/memory.py +7 -1
  195. letta_client/types/memory_agent_type.py +7 -0
  196. letta_client/types/parent_tool_rule.py +1 -1
  197. letta_client/types/required_before_exit_tool_rule.py +1 -1
  198. letta_client/types/requires_approval_tool_rule.py +1 -1
  199. letta_client/types/run.py +6 -0
  200. letta_client/types/source.py +6 -0
  201. letta_client/types/step.py +1 -1
  202. letta_client/types/stop_reason_type.py +1 -0
  203. letta_client/types/terminal_tool_rule.py +1 -1
  204. letta_client/types/vector_db_provider.py +5 -0
  205. letta_client/voice/client.py +2 -8
  206. letta_client/voice/raw_client.py +0 -8
  207. {letta_client-0.1.318.dist-info → letta_client-0.1.320.dist-info}/METADATA +9 -9
  208. {letta_client-0.1.318.dist-info → letta_client-0.1.320.dist-info}/RECORD +211 -114
  209. /letta_client/{embedding_models → models/embeddings}/__init__.py +0 -0
  210. /letta_client/{messages → steps/metrics}/__init__.py +0 -0
  211. {letta_client-0.1.318.dist-info → letta_client-0.1.320.dist-info}/WHEEL +0 -0
@@ -0,0 +1,14 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_min_message_buffer_length_item import (
6
+ AgentsCreateResponseGroupMinMessageBufferLengthItem,
7
+ )
8
+
9
+ AgentsCreateResponseGroupMinMessageBufferLength = typing.Union[
10
+ float,
11
+ typing.Optional[str],
12
+ typing.List[typing.Optional[AgentsCreateResponseGroupMinMessageBufferLengthItem]],
13
+ typing.Optional[typing.Any],
14
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupMinMessageBufferLengthItem = typing.Union[float, typing.Optional[str]]
@@ -0,0 +1,12 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_project_id_item import AgentsCreateResponseGroupProjectIdItem
6
+
7
+ AgentsCreateResponseGroupProjectId = typing.Union[
8
+ str,
9
+ typing.Optional[str],
10
+ typing.List[typing.Optional[AgentsCreateResponseGroupProjectIdItem]],
11
+ typing.Optional[typing.Any],
12
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupProjectIdItem = typing.Union[str, typing.Optional[str]]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupSharedBlockIds = typing.Union[typing.List[str], typing.Optional[typing.Any]]
@@ -0,0 +1,14 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_sleeptime_agent_frequency_item import (
6
+ AgentsCreateResponseGroupSleeptimeAgentFrequencyItem,
7
+ )
8
+
9
+ AgentsCreateResponseGroupSleeptimeAgentFrequency = typing.Union[
10
+ float,
11
+ typing.Optional[str],
12
+ typing.List[typing.Optional[AgentsCreateResponseGroupSleeptimeAgentFrequencyItem]],
13
+ typing.Optional[typing.Any],
14
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupSleeptimeAgentFrequencyItem = typing.Union[float, typing.Optional[str]]
@@ -0,0 +1,12 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_template_id_item import AgentsCreateResponseGroupTemplateIdItem
6
+
7
+ AgentsCreateResponseGroupTemplateId = typing.Union[
8
+ str,
9
+ typing.Optional[str],
10
+ typing.List[typing.Optional[AgentsCreateResponseGroupTemplateIdItem]],
11
+ typing.Optional[typing.Any],
12
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupTemplateIdItem = typing.Union[str, typing.Optional[str]]
@@ -0,0 +1,12 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_termination_token_item import AgentsCreateResponseGroupTerminationTokenItem
6
+
7
+ AgentsCreateResponseGroupTerminationToken = typing.Union[
8
+ str,
9
+ typing.Optional[str],
10
+ typing.List[typing.Optional[AgentsCreateResponseGroupTerminationTokenItem]],
11
+ typing.Optional[typing.Any],
12
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupTerminationTokenItem = typing.Union[str, typing.Optional[str]]
@@ -0,0 +1,12 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .agents_create_response_group_turns_counter_item import AgentsCreateResponseGroupTurnsCounterItem
6
+
7
+ AgentsCreateResponseGroupTurnsCounter = typing.Union[
8
+ float,
9
+ typing.Optional[str],
10
+ typing.List[typing.Optional[AgentsCreateResponseGroupTurnsCounterItem]],
11
+ typing.Optional[typing.Any],
12
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentsCreateResponseGroupTurnsCounterItem = typing.Union[float, typing.Optional[str]]
@@ -14,8 +14,10 @@ from .types.templates_get_template_snapshot_response import TemplatesGetTemplate
14
14
  from .types.templates_list_request_sort_by import TemplatesListRequestSortBy
15
15
  from .types.templates_list_response import TemplatesListResponse
16
16
  from .types.templates_list_template_versions_response import TemplatesListTemplateVersionsResponse
17
+ from .types.templates_migrate_deployment_response import TemplatesMigrateDeploymentResponse
17
18
  from .types.templates_rename_template_response import TemplatesRenameTemplateResponse
18
19
  from .types.templates_save_template_version_response import TemplatesSaveTemplateVersionResponse
20
+ from .types.templates_set_current_template_from_snapshot_response import TemplatesSetCurrentTemplateFromSnapshotResponse
19
21
  from .types.templates_update_template_description_response import TemplatesUpdateTemplateDescriptionResponse
20
22
 
21
23
  # this is used as the default value for optional parameters
@@ -255,6 +257,54 @@ class TemplatesClient:
255
257
  _response = self._raw_client.gettemplatesnapshot(project, template_version, request_options=request_options)
256
258
  return _response.data
257
259
 
260
+ def setcurrenttemplatefromsnapshot(
261
+ self,
262
+ project: str,
263
+ template_version: str,
264
+ *,
265
+ request: typing.Optional[typing.Any] = None,
266
+ request_options: typing.Optional[RequestOptions] = None,
267
+ ) -> TemplatesSetCurrentTemplateFromSnapshotResponse:
268
+ """
269
+ Updates the current working version of a template from a snapshot
270
+
271
+ Parameters
272
+ ----------
273
+ project : str
274
+ The project slug
275
+
276
+ template_version : str
277
+ The template name with :current version (e.g., my-template:current)
278
+
279
+ request : typing.Optional[typing.Any]
280
+
281
+ request_options : typing.Optional[RequestOptions]
282
+ Request-specific configuration.
283
+
284
+ Returns
285
+ -------
286
+ TemplatesSetCurrentTemplateFromSnapshotResponse
287
+ 200
288
+
289
+ Examples
290
+ --------
291
+ from letta_client import Letta
292
+
293
+ client = Letta(
294
+ project="YOUR_PROJECT",
295
+ token="YOUR_TOKEN",
296
+ )
297
+ client.templates.setcurrenttemplatefromsnapshot(
298
+ project="project",
299
+ template_version="template_version",
300
+ request={"key": "value"},
301
+ )
302
+ """
303
+ _response = self._raw_client.setcurrenttemplatefromsnapshot(
304
+ project, template_version, request=request, request_options=request_options
305
+ )
306
+ return _response.data
307
+
258
308
  def forktemplate(
259
309
  self,
260
310
  project: str,
@@ -492,6 +542,79 @@ class TemplatesClient:
492
542
  )
493
543
  return _response.data
494
544
 
545
+ def migratedeployment(
546
+ self,
547
+ project: str,
548
+ template_name: str,
549
+ deployment_id: str,
550
+ *,
551
+ version: str,
552
+ preserve_tool_variables: typing.Optional[bool] = OMIT,
553
+ preserve_core_memories: typing.Optional[bool] = OMIT,
554
+ memory_variables: typing.Optional[typing.Dict[str, str]] = OMIT,
555
+ request_options: typing.Optional[RequestOptions] = None,
556
+ ) -> TemplatesMigrateDeploymentResponse:
557
+ """
558
+ Migrates a deployment to a specific template version
559
+
560
+ Parameters
561
+ ----------
562
+ project : str
563
+ The project slug
564
+
565
+ template_name : str
566
+ The template name (without version)
567
+
568
+ deployment_id : str
569
+ The deployment ID to migrate
570
+
571
+ version : str
572
+ The target template version to migrate to
573
+
574
+ preserve_tool_variables : typing.Optional[bool]
575
+ Whether to preserve existing tool variables during migration
576
+
577
+ preserve_core_memories : typing.Optional[bool]
578
+ Whether to preserve existing core memories during migration
579
+
580
+ memory_variables : typing.Optional[typing.Dict[str, str]]
581
+ Additional memory variables to apply during migration
582
+
583
+ request_options : typing.Optional[RequestOptions]
584
+ Request-specific configuration.
585
+
586
+ Returns
587
+ -------
588
+ TemplatesMigrateDeploymentResponse
589
+ 200
590
+
591
+ Examples
592
+ --------
593
+ from letta_client import Letta
594
+
595
+ client = Letta(
596
+ project="YOUR_PROJECT",
597
+ token="YOUR_TOKEN",
598
+ )
599
+ client.templates.migratedeployment(
600
+ project="project",
601
+ template_name="template_name",
602
+ deployment_id="deployment_id",
603
+ version="version",
604
+ )
605
+ """
606
+ _response = self._raw_client.migratedeployment(
607
+ project,
608
+ template_name,
609
+ deployment_id,
610
+ version=version,
611
+ preserve_tool_variables=preserve_tool_variables,
612
+ preserve_core_memories=preserve_core_memories,
613
+ memory_variables=memory_variables,
614
+ request_options=request_options,
615
+ )
616
+ return _response.data
617
+
495
618
 
496
619
  class AsyncTemplatesClient:
497
620
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
@@ -760,6 +883,62 @@ class AsyncTemplatesClient:
760
883
  )
761
884
  return _response.data
762
885
 
886
+ async def setcurrenttemplatefromsnapshot(
887
+ self,
888
+ project: str,
889
+ template_version: str,
890
+ *,
891
+ request: typing.Optional[typing.Any] = None,
892
+ request_options: typing.Optional[RequestOptions] = None,
893
+ ) -> TemplatesSetCurrentTemplateFromSnapshotResponse:
894
+ """
895
+ Updates the current working version of a template from a snapshot
896
+
897
+ Parameters
898
+ ----------
899
+ project : str
900
+ The project slug
901
+
902
+ template_version : str
903
+ The template name with :current version (e.g., my-template:current)
904
+
905
+ request : typing.Optional[typing.Any]
906
+
907
+ request_options : typing.Optional[RequestOptions]
908
+ Request-specific configuration.
909
+
910
+ Returns
911
+ -------
912
+ TemplatesSetCurrentTemplateFromSnapshotResponse
913
+ 200
914
+
915
+ Examples
916
+ --------
917
+ import asyncio
918
+
919
+ from letta_client import AsyncLetta
920
+
921
+ client = AsyncLetta(
922
+ project="YOUR_PROJECT",
923
+ token="YOUR_TOKEN",
924
+ )
925
+
926
+
927
+ async def main() -> None:
928
+ await client.templates.setcurrenttemplatefromsnapshot(
929
+ project="project",
930
+ template_version="template_version",
931
+ request={"key": "value"},
932
+ )
933
+
934
+
935
+ asyncio.run(main())
936
+ """
937
+ _response = await self._raw_client.setcurrenttemplatefromsnapshot(
938
+ project, template_version, request=request, request_options=request_options
939
+ )
940
+ return _response.data
941
+
763
942
  async def forktemplate(
764
943
  self,
765
944
  project: str,
@@ -1038,3 +1217,84 @@ class AsyncTemplatesClient:
1038
1217
  project_slug, name, offset=offset, limit=limit, request_options=request_options
1039
1218
  )
1040
1219
  return _response.data
1220
+
1221
+ async def migratedeployment(
1222
+ self,
1223
+ project: str,
1224
+ template_name: str,
1225
+ deployment_id: str,
1226
+ *,
1227
+ version: str,
1228
+ preserve_tool_variables: typing.Optional[bool] = OMIT,
1229
+ preserve_core_memories: typing.Optional[bool] = OMIT,
1230
+ memory_variables: typing.Optional[typing.Dict[str, str]] = OMIT,
1231
+ request_options: typing.Optional[RequestOptions] = None,
1232
+ ) -> TemplatesMigrateDeploymentResponse:
1233
+ """
1234
+ Migrates a deployment to a specific template version
1235
+
1236
+ Parameters
1237
+ ----------
1238
+ project : str
1239
+ The project slug
1240
+
1241
+ template_name : str
1242
+ The template name (without version)
1243
+
1244
+ deployment_id : str
1245
+ The deployment ID to migrate
1246
+
1247
+ version : str
1248
+ The target template version to migrate to
1249
+
1250
+ preserve_tool_variables : typing.Optional[bool]
1251
+ Whether to preserve existing tool variables during migration
1252
+
1253
+ preserve_core_memories : typing.Optional[bool]
1254
+ Whether to preserve existing core memories during migration
1255
+
1256
+ memory_variables : typing.Optional[typing.Dict[str, str]]
1257
+ Additional memory variables to apply during migration
1258
+
1259
+ request_options : typing.Optional[RequestOptions]
1260
+ Request-specific configuration.
1261
+
1262
+ Returns
1263
+ -------
1264
+ TemplatesMigrateDeploymentResponse
1265
+ 200
1266
+
1267
+ Examples
1268
+ --------
1269
+ import asyncio
1270
+
1271
+ from letta_client import AsyncLetta
1272
+
1273
+ client = AsyncLetta(
1274
+ project="YOUR_PROJECT",
1275
+ token="YOUR_TOKEN",
1276
+ )
1277
+
1278
+
1279
+ async def main() -> None:
1280
+ await client.templates.migratedeployment(
1281
+ project="project",
1282
+ template_name="template_name",
1283
+ deployment_id="deployment_id",
1284
+ version="version",
1285
+ )
1286
+
1287
+
1288
+ asyncio.run(main())
1289
+ """
1290
+ _response = await self._raw_client.migratedeployment(
1291
+ project,
1292
+ template_name,
1293
+ deployment_id,
1294
+ version=version,
1295
+ preserve_tool_variables=preserve_tool_variables,
1296
+ preserve_core_memories=preserve_core_memories,
1297
+ memory_variables=memory_variables,
1298
+ request_options=request_options,
1299
+ )
1300
+ return _response.data