letta-client 0.1.0__py3-none-any.whl → 0.1.4__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 (193) hide show
  1. letta/__init__.py +277 -0
  2. letta/agents/__init__.py +44 -0
  3. letta/agents/archival_memory/__init__.py +2 -0
  4. letta/agents/archival_memory/client.py +591 -0
  5. letta/agents/client.py +2604 -0
  6. letta/agents/context/__init__.py +2 -0
  7. letta/agents/context/client.py +145 -0
  8. letta/agents/memory/__init__.py +5 -0
  9. letta/agents/memory/client.py +149 -0
  10. letta/agents/memory/messages/__init__.py +2 -0
  11. letta/agents/memory/messages/client.py +147 -0
  12. letta/agents/memory_blocks/__init__.py +2 -0
  13. letta/agents/memory_blocks/client.py +364 -0
  14. letta/agents/messages/__init__.py +5 -0
  15. letta/agents/messages/client.py +787 -0
  16. letta/agents/messages/types/__init__.py +7 -0
  17. letta/agents/messages/types/letta_streaming_response.py +20 -0
  18. letta/agents/messages/types/messages_list_response.py +7 -0
  19. letta/agents/messages/types/messages_list_response_item.py +13 -0
  20. letta/agents/recall_memory/__init__.py +2 -0
  21. letta/agents/recall_memory/client.py +147 -0
  22. letta/agents/sources/__init__.py +2 -0
  23. letta/agents/sources/client.py +145 -0
  24. letta/agents/tools/__init__.py +2 -0
  25. letta/agents/tools/client.py +408 -0
  26. letta/agents/types/__init__.py +39 -0
  27. letta/agents/types/agents_get_agent_variables_response.py +19 -0
  28. letta/agents/types/agents_migrate_response.py +19 -0
  29. letta/agents/types/agents_search_deployed_agents_request_combinator.py +5 -0
  30. letta/agents/types/agents_search_deployed_agents_request_search_item.py +16 -0
  31. letta/agents/types/agents_search_deployed_agents_request_search_item_direction.py +27 -0
  32. letta/agents/types/agents_search_deployed_agents_request_search_item_direction_direction.py +5 -0
  33. letta/agents/types/agents_search_deployed_agents_request_search_item_direction_value.py +7 -0
  34. letta/agents/types/agents_search_deployed_agents_request_search_item_operator.py +24 -0
  35. letta/agents/types/agents_search_deployed_agents_request_search_item_operator_operator.py +7 -0
  36. letta/agents/types/agents_search_deployed_agents_request_search_item_zero.py +20 -0
  37. letta/agents/types/create_agent_request_tool_rules_item.py +9 -0
  38. letta/agents/types/update_agent_tool_rules_item.py +9 -0
  39. letta/blocks/__init__.py +2 -0
  40. letta/blocks/client.py +1054 -0
  41. letta/client.py +164 -0
  42. letta/core/__init__.py +47 -0
  43. letta/core/api_error.py +15 -0
  44. letta/core/client_wrapper.py +76 -0
  45. letta/core/datetime_utils.py +28 -0
  46. letta/core/file.py +67 -0
  47. letta/core/http_client.py +499 -0
  48. letta/core/jsonable_encoder.py +101 -0
  49. letta/core/pydantic_utilities.py +296 -0
  50. letta/core/query_encoder.py +58 -0
  51. letta/core/remove_none_from_dict.py +11 -0
  52. letta/core/request_options.py +35 -0
  53. letta/core/serialization.py +272 -0
  54. letta/environment.py +8 -0
  55. letta/errors/__init__.py +8 -0
  56. letta/errors/conflict_error.py +9 -0
  57. letta/errors/internal_server_error.py +9 -0
  58. letta/errors/not_found_error.py +9 -0
  59. letta/errors/unprocessable_entity_error.py +9 -0
  60. letta/health/__init__.py +2 -0
  61. letta/health/client.py +108 -0
  62. letta/jobs/__init__.py +2 -0
  63. letta/jobs/client.py +503 -0
  64. letta/models/__init__.py +2 -0
  65. letta/models/client.py +201 -0
  66. letta/sources/__init__.py +5 -0
  67. letta/sources/client.py +1154 -0
  68. letta/sources/files/__init__.py +2 -0
  69. letta/sources/files/client.py +436 -0
  70. letta/sources/passages/__init__.py +2 -0
  71. letta/sources/passages/client.py +145 -0
  72. letta/tools/__init__.py +2 -0
  73. letta/tools/client.py +1823 -0
  74. letta/types/__init__.py +231 -0
  75. letta/types/action_model.py +36 -0
  76. letta/types/action_parameters_model.py +26 -0
  77. letta/types/action_response_model.py +26 -0
  78. letta/types/agent_state.py +139 -0
  79. letta/types/agent_state_tool_rules_item.py +9 -0
  80. letta/types/agent_type.py +8 -0
  81. letta/types/app_auth_scheme.py +34 -0
  82. letta/types/app_auth_scheme_auth_mode.py +7 -0
  83. letta/types/app_model.py +44 -0
  84. letta/types/archival_memory_summary.py +22 -0
  85. letta/types/assistant_file.py +33 -0
  86. letta/types/assistant_message_input.py +23 -0
  87. letta/types/assistant_message_output.py +23 -0
  88. letta/types/auth_request.py +22 -0
  89. letta/types/auth_response.py +29 -0
  90. letta/types/auth_scheme_field.py +30 -0
  91. letta/types/block.py +91 -0
  92. letta/types/block_update.py +60 -0
  93. letta/types/chat_completion_request.py +49 -0
  94. letta/types/chat_completion_request_function_call.py +6 -0
  95. letta/types/chat_completion_request_messages_item.py +11 -0
  96. letta/types/chat_completion_request_stop.py +5 -0
  97. letta/types/chat_completion_request_tool_choice.py +8 -0
  98. letta/types/chat_completion_response.py +32 -0
  99. letta/types/child_tool_rule.py +33 -0
  100. letta/types/choice.py +25 -0
  101. letta/types/conditional_tool_rule.py +43 -0
  102. letta/types/conflict_error_body.py +21 -0
  103. letta/types/context_window_overview.py +105 -0
  104. letta/types/create_assistant_file_request.py +22 -0
  105. letta/types/create_assistant_request.py +57 -0
  106. letta/types/create_block.py +56 -0
  107. letta/types/delete_assistant_file_response.py +28 -0
  108. letta/types/delete_assistant_response.py +28 -0
  109. letta/types/e_2_b_sandbox_config.py +32 -0
  110. letta/types/embedding_config.py +77 -0
  111. letta/types/embedding_config_embedding_endpoint_type.py +26 -0
  112. letta/types/file_metadata.py +82 -0
  113. letta/types/function_call_input.py +19 -0
  114. letta/types/function_call_output.py +20 -0
  115. letta/types/function_schema.py +21 -0
  116. letta/types/health.py +24 -0
  117. letta/types/http_validation_error.py +20 -0
  118. letta/types/init_tool_rule.py +29 -0
  119. letta/types/internal_server_error_body.py +19 -0
  120. letta/types/job.py +79 -0
  121. letta/types/job_status.py +5 -0
  122. letta/types/letta_request.py +33 -0
  123. letta/types/letta_response.py +37 -0
  124. letta/types/letta_schemas_letta_message_tool_call.py +21 -0
  125. letta/types/letta_schemas_message_message.py +103 -0
  126. letta/types/letta_schemas_openai_chat_completion_request_tool.py +21 -0
  127. letta/types/letta_schemas_openai_chat_completion_request_tool_call.py +24 -0
  128. letta/types/letta_schemas_openai_chat_completion_request_tool_call_function.py +20 -0
  129. letta/types/letta_schemas_openai_chat_completion_response_message.py +24 -0
  130. letta/types/letta_schemas_openai_chat_completion_response_tool_call.py +22 -0
  131. letta/types/letta_schemas_openai_chat_completions_tool_call_function.py +27 -0
  132. letta/types/letta_schemas_openai_chat_completions_tool_call_input.py +29 -0
  133. letta/types/letta_schemas_openai_chat_completions_tool_call_output.py +29 -0
  134. letta/types/letta_schemas_tool_tool.py +88 -0
  135. letta/types/letta_usage_statistics.py +48 -0
  136. letta/types/llm_config.py +65 -0
  137. letta/types/llm_config_model_endpoint_type.py +26 -0
  138. letta/types/local_sandbox_config.py +32 -0
  139. letta/types/log_prob_token.py +21 -0
  140. letta/types/memory.py +32 -0
  141. letta/types/message_content_log_prob.py +23 -0
  142. letta/types/message_create.py +37 -0
  143. letta/types/message_create_role.py +5 -0
  144. letta/types/message_role.py +5 -0
  145. letta/types/not_found_error_body.py +19 -0
  146. letta/types/not_found_error_body_message.py +11 -0
  147. letta/types/open_ai_assistant.py +67 -0
  148. letta/types/organization.py +33 -0
  149. letta/types/organization_create.py +22 -0
  150. letta/types/passage.py +107 -0
  151. letta/types/reasoning_message.py +32 -0
  152. letta/types/recall_memory_summary.py +22 -0
  153. letta/types/response_format.py +19 -0
  154. letta/types/sandbox_config.py +59 -0
  155. letta/types/sandbox_config_create.py +23 -0
  156. letta/types/sandbox_config_create_config.py +7 -0
  157. letta/types/sandbox_config_update.py +27 -0
  158. letta/types/sandbox_config_update_config.py +7 -0
  159. letta/types/sandbox_environment_variable.py +68 -0
  160. letta/types/sandbox_environment_variable_create.py +32 -0
  161. letta/types/sandbox_environment_variable_update.py +36 -0
  162. letta/types/sandbox_type.py +5 -0
  163. letta/types/source.py +85 -0
  164. letta/types/system_message_input.py +21 -0
  165. letta/types/system_message_output.py +32 -0
  166. letta/types/terminal_tool_rule.py +29 -0
  167. letta/types/tool_call_delta.py +21 -0
  168. letta/types/tool_call_function_output.py +27 -0
  169. letta/types/tool_call_message.py +33 -0
  170. letta/types/tool_call_message_tool_call.py +7 -0
  171. letta/types/tool_create.py +57 -0
  172. letta/types/tool_function_choice.py +21 -0
  173. letta/types/tool_input.py +21 -0
  174. letta/types/tool_message.py +21 -0
  175. letta/types/tool_return_message.py +41 -0
  176. letta/types/tool_return_message_status.py +5 -0
  177. letta/types/tool_rule_type.py +10 -0
  178. letta/types/usage_statistics.py +21 -0
  179. letta/types/user.py +57 -0
  180. letta/types/user_create.py +27 -0
  181. letta/types/user_message_input.py +22 -0
  182. letta/types/user_message_input_content.py +5 -0
  183. letta/types/user_message_output.py +32 -0
  184. letta/types/user_update.py +32 -0
  185. letta/types/validation_error.py +22 -0
  186. letta/types/validation_error_loc_item.py +5 -0
  187. letta/version.py +3 -0
  188. letta_client-0.1.4.dist-info/METADATA +189 -0
  189. letta_client-0.1.4.dist-info/RECORD +191 -0
  190. {letta_client-0.1.0.dist-info → letta_client-0.1.4.dist-info}/WHEEL +1 -1
  191. letta_client-0.1.0.dist-info/METADATA +0 -15
  192. letta_client-0.1.0.dist-info/RECORD +0 -4
  193. /letta_client/__init__.py → /letta/py.typed +0 -0
@@ -0,0 +1,2 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
@@ -0,0 +1,145 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ...core.client_wrapper import SyncClientWrapper
4
+ import typing
5
+ from ...core.request_options import RequestOptions
6
+ from ...types.context_window_overview import ContextWindowOverview
7
+ from ...core.jsonable_encoder import jsonable_encoder
8
+ from ...core.pydantic_utilities import parse_obj_as
9
+ from ...errors.unprocessable_entity_error import UnprocessableEntityError
10
+ from ...types.http_validation_error import HttpValidationError
11
+ from json.decoder import JSONDecodeError
12
+ from ...core.api_error import ApiError
13
+ from ...core.client_wrapper import AsyncClientWrapper
14
+
15
+
16
+ class ContextClient:
17
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
18
+ self._client_wrapper = client_wrapper
19
+
20
+ def get(self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None) -> ContextWindowOverview:
21
+ """
22
+ Retrieve the context window of a specific agent.
23
+
24
+ Parameters
25
+ ----------
26
+ agent_id : str
27
+
28
+ request_options : typing.Optional[RequestOptions]
29
+ Request-specific configuration.
30
+
31
+ Returns
32
+ -------
33
+ ContextWindowOverview
34
+ Successful Response
35
+
36
+ Examples
37
+ --------
38
+ from letta import Letta
39
+
40
+ client = Letta(
41
+ token="YOUR_TOKEN",
42
+ )
43
+ client.agents.context.get(
44
+ agent_id="agent_id",
45
+ )
46
+ """
47
+ _response = self._client_wrapper.httpx_client.request(
48
+ f"v1/agents/{jsonable_encoder(agent_id)}/context",
49
+ method="GET",
50
+ request_options=request_options,
51
+ )
52
+ try:
53
+ if 200 <= _response.status_code < 300:
54
+ return typing.cast(
55
+ ContextWindowOverview,
56
+ parse_obj_as(
57
+ type_=ContextWindowOverview, # type: ignore
58
+ object_=_response.json(),
59
+ ),
60
+ )
61
+ if _response.status_code == 422:
62
+ raise UnprocessableEntityError(
63
+ typing.cast(
64
+ HttpValidationError,
65
+ parse_obj_as(
66
+ type_=HttpValidationError, # type: ignore
67
+ object_=_response.json(),
68
+ ),
69
+ )
70
+ )
71
+ _response_json = _response.json()
72
+ except JSONDecodeError:
73
+ raise ApiError(status_code=_response.status_code, body=_response.text)
74
+ raise ApiError(status_code=_response.status_code, body=_response_json)
75
+
76
+
77
+ class AsyncContextClient:
78
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
79
+ self._client_wrapper = client_wrapper
80
+
81
+ async def get(
82
+ self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
83
+ ) -> ContextWindowOverview:
84
+ """
85
+ Retrieve the context window of a specific agent.
86
+
87
+ Parameters
88
+ ----------
89
+ agent_id : str
90
+
91
+ request_options : typing.Optional[RequestOptions]
92
+ Request-specific configuration.
93
+
94
+ Returns
95
+ -------
96
+ ContextWindowOverview
97
+ Successful Response
98
+
99
+ Examples
100
+ --------
101
+ import asyncio
102
+
103
+ from letta import AsyncLetta
104
+
105
+ client = AsyncLetta(
106
+ token="YOUR_TOKEN",
107
+ )
108
+
109
+
110
+ async def main() -> None:
111
+ await client.agents.context.get(
112
+ agent_id="agent_id",
113
+ )
114
+
115
+
116
+ asyncio.run(main())
117
+ """
118
+ _response = await self._client_wrapper.httpx_client.request(
119
+ f"v1/agents/{jsonable_encoder(agent_id)}/context",
120
+ method="GET",
121
+ request_options=request_options,
122
+ )
123
+ try:
124
+ if 200 <= _response.status_code < 300:
125
+ return typing.cast(
126
+ ContextWindowOverview,
127
+ parse_obj_as(
128
+ type_=ContextWindowOverview, # type: ignore
129
+ object_=_response.json(),
130
+ ),
131
+ )
132
+ if _response.status_code == 422:
133
+ raise UnprocessableEntityError(
134
+ typing.cast(
135
+ HttpValidationError,
136
+ parse_obj_as(
137
+ type_=HttpValidationError, # type: ignore
138
+ object_=_response.json(),
139
+ ),
140
+ )
141
+ )
142
+ _response_json = _response.json()
143
+ except JSONDecodeError:
144
+ raise ApiError(status_code=_response.status_code, body=_response.text)
145
+ raise ApiError(status_code=_response.status_code, body=_response_json)
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from . import messages
4
+
5
+ __all__ = ["messages"]
@@ -0,0 +1,149 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ...core.client_wrapper import SyncClientWrapper
4
+ from .messages.client import MessagesClient
5
+ import typing
6
+ from ...core.request_options import RequestOptions
7
+ from ...types.memory import Memory
8
+ from ...core.jsonable_encoder import jsonable_encoder
9
+ from ...core.pydantic_utilities import parse_obj_as
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
15
+ from .messages.client import AsyncMessagesClient
16
+
17
+
18
+ class MemoryClient:
19
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
20
+ self._client_wrapper = client_wrapper
21
+ self.messages = MessagesClient(client_wrapper=self._client_wrapper)
22
+
23
+ def get(self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None) -> Memory:
24
+ """
25
+ Retrieve the memory state of a specific agent.
26
+ This endpoint fetches the current memory state of the agent identified by the user ID and agent ID.
27
+
28
+ Parameters
29
+ ----------
30
+ agent_id : str
31
+
32
+ request_options : typing.Optional[RequestOptions]
33
+ Request-specific configuration.
34
+
35
+ Returns
36
+ -------
37
+ Memory
38
+ Successful Response
39
+
40
+ Examples
41
+ --------
42
+ from letta import Letta
43
+
44
+ client = Letta(
45
+ token="YOUR_TOKEN",
46
+ )
47
+ client.agents.memory.get(
48
+ agent_id="agent_id",
49
+ )
50
+ """
51
+ _response = self._client_wrapper.httpx_client.request(
52
+ f"v1/agents/{jsonable_encoder(agent_id)}/memory",
53
+ method="GET",
54
+ request_options=request_options,
55
+ )
56
+ try:
57
+ if 200 <= _response.status_code < 300:
58
+ return typing.cast(
59
+ Memory,
60
+ parse_obj_as(
61
+ type_=Memory, # type: ignore
62
+ object_=_response.json(),
63
+ ),
64
+ )
65
+ if _response.status_code == 422:
66
+ raise UnprocessableEntityError(
67
+ typing.cast(
68
+ HttpValidationError,
69
+ parse_obj_as(
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, body=_response.text)
78
+ raise ApiError(status_code=_response.status_code, body=_response_json)
79
+
80
+
81
+ class AsyncMemoryClient:
82
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
83
+ self._client_wrapper = client_wrapper
84
+ self.messages = AsyncMessagesClient(client_wrapper=self._client_wrapper)
85
+
86
+ async def get(self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None) -> Memory:
87
+ """
88
+ Retrieve the memory state of a specific agent.
89
+ This endpoint fetches the current memory state of the agent identified by the user ID and agent ID.
90
+
91
+ Parameters
92
+ ----------
93
+ agent_id : str
94
+
95
+ request_options : typing.Optional[RequestOptions]
96
+ Request-specific configuration.
97
+
98
+ Returns
99
+ -------
100
+ Memory
101
+ Successful Response
102
+
103
+ Examples
104
+ --------
105
+ import asyncio
106
+
107
+ from letta import AsyncLetta
108
+
109
+ client = AsyncLetta(
110
+ token="YOUR_TOKEN",
111
+ )
112
+
113
+
114
+ async def main() -> None:
115
+ await client.agents.memory.get(
116
+ agent_id="agent_id",
117
+ )
118
+
119
+
120
+ asyncio.run(main())
121
+ """
122
+ _response = await self._client_wrapper.httpx_client.request(
123
+ f"v1/agents/{jsonable_encoder(agent_id)}/memory",
124
+ method="GET",
125
+ request_options=request_options,
126
+ )
127
+ try:
128
+ if 200 <= _response.status_code < 300:
129
+ return typing.cast(
130
+ Memory,
131
+ parse_obj_as(
132
+ type_=Memory, # type: ignore
133
+ object_=_response.json(),
134
+ ),
135
+ )
136
+ if _response.status_code == 422:
137
+ raise UnprocessableEntityError(
138
+ typing.cast(
139
+ HttpValidationError,
140
+ parse_obj_as(
141
+ type_=HttpValidationError, # type: ignore
142
+ object_=_response.json(),
143
+ ),
144
+ )
145
+ )
146
+ _response_json = _response.json()
147
+ except JSONDecodeError:
148
+ raise ApiError(status_code=_response.status_code, body=_response.text)
149
+ raise ApiError(status_code=_response.status_code, body=_response_json)
@@ -0,0 +1,2 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
@@ -0,0 +1,147 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ....core.client_wrapper import SyncClientWrapper
4
+ import typing
5
+ from ....core.request_options import RequestOptions
6
+ from ....types.letta_schemas_message_message import LettaSchemasMessageMessage
7
+ from ....core.jsonable_encoder import jsonable_encoder
8
+ from ....core.pydantic_utilities import parse_obj_as
9
+ from ....errors.unprocessable_entity_error import UnprocessableEntityError
10
+ from ....types.http_validation_error import HttpValidationError
11
+ from json.decoder import JSONDecodeError
12
+ from ....core.api_error import ApiError
13
+ from ....core.client_wrapper import AsyncClientWrapper
14
+
15
+
16
+ class MessagesClient:
17
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
18
+ self._client_wrapper = client_wrapper
19
+
20
+ def list_in_context(
21
+ self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
22
+ ) -> typing.List[LettaSchemasMessageMessage]:
23
+ """
24
+ Retrieve the messages in the context of a specific agent.
25
+
26
+ Parameters
27
+ ----------
28
+ agent_id : str
29
+
30
+ request_options : typing.Optional[RequestOptions]
31
+ Request-specific configuration.
32
+
33
+ Returns
34
+ -------
35
+ typing.List[LettaSchemasMessageMessage]
36
+ Successful Response
37
+
38
+ Examples
39
+ --------
40
+ from letta import Letta
41
+
42
+ client = Letta(
43
+ token="YOUR_TOKEN",
44
+ )
45
+ client.agents.memory.messages.list_in_context(
46
+ agent_id="agent_id",
47
+ )
48
+ """
49
+ _response = self._client_wrapper.httpx_client.request(
50
+ f"v1/agents/{jsonable_encoder(agent_id)}/memory/messages",
51
+ method="GET",
52
+ request_options=request_options,
53
+ )
54
+ try:
55
+ if 200 <= _response.status_code < 300:
56
+ return typing.cast(
57
+ typing.List[LettaSchemasMessageMessage],
58
+ parse_obj_as(
59
+ type_=typing.List[LettaSchemasMessageMessage], # type: ignore
60
+ object_=_response.json(),
61
+ ),
62
+ )
63
+ if _response.status_code == 422:
64
+ raise UnprocessableEntityError(
65
+ typing.cast(
66
+ HttpValidationError,
67
+ parse_obj_as(
68
+ type_=HttpValidationError, # type: ignore
69
+ object_=_response.json(),
70
+ ),
71
+ )
72
+ )
73
+ _response_json = _response.json()
74
+ except JSONDecodeError:
75
+ raise ApiError(status_code=_response.status_code, body=_response.text)
76
+ raise ApiError(status_code=_response.status_code, body=_response_json)
77
+
78
+
79
+ class AsyncMessagesClient:
80
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
81
+ self._client_wrapper = client_wrapper
82
+
83
+ async def list_in_context(
84
+ self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
85
+ ) -> typing.List[LettaSchemasMessageMessage]:
86
+ """
87
+ Retrieve the messages in the context of a specific agent.
88
+
89
+ Parameters
90
+ ----------
91
+ agent_id : str
92
+
93
+ request_options : typing.Optional[RequestOptions]
94
+ Request-specific configuration.
95
+
96
+ Returns
97
+ -------
98
+ typing.List[LettaSchemasMessageMessage]
99
+ Successful Response
100
+
101
+ Examples
102
+ --------
103
+ import asyncio
104
+
105
+ from letta import AsyncLetta
106
+
107
+ client = AsyncLetta(
108
+ token="YOUR_TOKEN",
109
+ )
110
+
111
+
112
+ async def main() -> None:
113
+ await client.agents.memory.messages.list_in_context(
114
+ agent_id="agent_id",
115
+ )
116
+
117
+
118
+ asyncio.run(main())
119
+ """
120
+ _response = await self._client_wrapper.httpx_client.request(
121
+ f"v1/agents/{jsonable_encoder(agent_id)}/memory/messages",
122
+ method="GET",
123
+ request_options=request_options,
124
+ )
125
+ try:
126
+ if 200 <= _response.status_code < 300:
127
+ return typing.cast(
128
+ typing.List[LettaSchemasMessageMessage],
129
+ parse_obj_as(
130
+ type_=typing.List[LettaSchemasMessageMessage], # type: ignore
131
+ object_=_response.json(),
132
+ ),
133
+ )
134
+ if _response.status_code == 422:
135
+ raise UnprocessableEntityError(
136
+ typing.cast(
137
+ HttpValidationError,
138
+ parse_obj_as(
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)
@@ -0,0 +1,2 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+