libraos-sdk 1.0.1__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.
Files changed (233) hide show
  1. libraos/__init__.py +55 -0
  2. libraos/_generated/__init__.py +8 -0
  3. libraos/_generated/api/__init__.py +1 -0
  4. libraos/_generated/api/agents/__init__.py +1 -0
  5. libraos/_generated/api/agents/create_agent.py +177 -0
  6. libraos/_generated/api/agents/delete_agent.py +160 -0
  7. libraos/_generated/api/agents/get_agent.py +162 -0
  8. libraos/_generated/api/agents/get_agent_schema.py +144 -0
  9. libraos/_generated/api/agents/list_agents.py +192 -0
  10. libraos/_generated/api/agents/update_agent.py +188 -0
  11. libraos/_generated/api/deployment/__init__.py +1 -0
  12. libraos/_generated/api/deployment/get_deployment.py +162 -0
  13. libraos/_generated/api/documents/__init__.py +1 -0
  14. libraos/_generated/api/documents/delete_document.py +160 -0
  15. libraos/_generated/api/documents/list_documents.py +179 -0
  16. libraos/_generated/api/documents/upload_document.py +165 -0
  17. libraos/_generated/api/employees/__init__.py +1 -0
  18. libraos/_generated/api/employees/create_employee.py +166 -0
  19. libraos/_generated/api/employees/delete_employee.py +160 -0
  20. libraos/_generated/api/employees/export_employee_bundle.py +177 -0
  21. libraos/_generated/api/employees/get_employee.py +162 -0
  22. libraos/_generated/api/employees/list_employees.py +179 -0
  23. libraos/_generated/api/employees/update_employee.py +188 -0
  24. libraos/_generated/api/filesystem/__init__.py +1 -0
  25. libraos/_generated/api/filesystem/delete_file.py +118 -0
  26. libraos/_generated/api/filesystem/list_files.py +244 -0
  27. libraos/_generated/api/filesystem/read_file.py +185 -0
  28. libraos/_generated/api/filesystem/write_file.py +230 -0
  29. libraos/_generated/api/hooks/__init__.py +1 -0
  30. libraos/_generated/api/hooks/create_hook.py +191 -0
  31. libraos/_generated/api/hooks/delete_hook.py +163 -0
  32. libraos/_generated/api/hooks/get_hook.py +166 -0
  33. libraos/_generated/api/hooks/list_hooks.py +134 -0
  34. libraos/_generated/api/jobs/__init__.py +1 -0
  35. libraos/_generated/api/jobs/cancel_job.py +160 -0
  36. libraos/_generated/api/jobs/create_job.py +167 -0
  37. libraos/_generated/api/jobs/get_job.py +162 -0
  38. libraos/_generated/api/jobs/list_jobs.py +212 -0
  39. libraos/_generated/api/jobs/stream_job.py +329 -0
  40. libraos/_generated/api/knowledge/__init__.py +1 -0
  41. libraos/_generated/api/knowledge/ingest_knowledge.py +176 -0
  42. libraos/_generated/api/knowledge/list_knowledge_collections.py +134 -0
  43. libraos/_generated/api/knowledge/search_knowledge.py +176 -0
  44. libraos/_generated/api/messages/__init__.py +1 -0
  45. libraos/_generated/api/messages/create_message.py +210 -0
  46. libraos/_generated/api/messages/submit_custom_tool_result.py +202 -0
  47. libraos/_generated/api/personas/__init__.py +1 -0
  48. libraos/_generated/api/personas/get_persona_by_id.py +173 -0
  49. libraos/_generated/api/personas/list_personas.py +177 -0
  50. libraos/_generated/api/sessions/__init__.py +1 -0
  51. libraos/_generated/api/sessions/create_managed_session.py +187 -0
  52. libraos/_generated/api/sessions/get_managed_session.py +157 -0
  53. libraos/_generated/api/settings/__init__.py +1 -0
  54. libraos/_generated/api/settings/get_setting.py +159 -0
  55. libraos/_generated/api/settings/list_settings.py +134 -0
  56. libraos/_generated/api/settings/put_setting.py +185 -0
  57. libraos/_generated/api/users/__init__.py +1 -0
  58. libraos/_generated/api/users/create_user.py +167 -0
  59. libraos/_generated/api/users/delete_user.py +155 -0
  60. libraos/_generated/api/users/get_user.py +157 -0
  61. libraos/_generated/api/users/list_users.py +130 -0
  62. libraos/_generated/client.py +268 -0
  63. libraos/_generated/errors.py +16 -0
  64. libraos/_generated/models/__init__.py +257 -0
  65. libraos/_generated/models/agent.py +308 -0
  66. libraos/_generated/models/agent_create.py +237 -0
  67. libraos/_generated/models/agent_create_filesystem.py +47 -0
  68. libraos/_generated/models/agent_create_guardrails.py +47 -0
  69. libraos/_generated/models/agent_create_visibility.py +10 -0
  70. libraos/_generated/models/agent_filesystem.py +47 -0
  71. libraos/_generated/models/agent_guardrails.py +47 -0
  72. libraos/_generated/models/agent_list.py +95 -0
  73. libraos/_generated/models/agent_type.py +9 -0
  74. libraos/_generated/models/agent_update.py +236 -0
  75. libraos/_generated/models/agent_update_filesystem.py +47 -0
  76. libraos/_generated/models/agent_update_guardrails.py +47 -0
  77. libraos/_generated/models/agent_update_visibility.py +10 -0
  78. libraos/_generated/models/agent_visibility.py +10 -0
  79. libraos/_generated/models/bundle_import_result.py +91 -0
  80. libraos/_generated/models/bundle_manifest.py +110 -0
  81. libraos/_generated/models/bundle_manifest_schema_version.py +8 -0
  82. libraos/_generated/models/custom_tool.py +106 -0
  83. libraos/_generated/models/custom_tool_callback.py +104 -0
  84. libraos/_generated/models/custom_tool_callback_auth.py +71 -0
  85. libraos/_generated/models/custom_tool_callback_auth_type.py +8 -0
  86. libraos/_generated/models/custom_tool_callback_retry.py +78 -0
  87. libraos/_generated/models/custom_tool_callback_retry_backoff.py +10 -0
  88. libraos/_generated/models/custom_tool_result_request.py +80 -0
  89. libraos/_generated/models/deployment.py +137 -0
  90. libraos/_generated/models/deployment_auth.py +55 -0
  91. libraos/_generated/models/deployment_models.py +62 -0
  92. libraos/_generated/models/document.py +147 -0
  93. libraos/_generated/models/document_list.py +95 -0
  94. libraos/_generated/models/document_metadata.py +47 -0
  95. libraos/_generated/models/employee.py +198 -0
  96. libraos/_generated/models/employee_list.py +95 -0
  97. libraos/_generated/models/employee_update.py +133 -0
  98. libraos/_generated/models/error.py +126 -0
  99. libraos/_generated/models/error_type.py +17 -0
  100. libraos/_generated/models/file_meta.py +99 -0
  101. libraos/_generated/models/file_meta_list.py +86 -0
  102. libraos/_generated/models/get_agent_schema_response_200.py +47 -0
  103. libraos/_generated/models/hook_event.py +16 -0
  104. libraos/_generated/models/hook_subscription.py +117 -0
  105. libraos/_generated/models/hook_subscription_create.py +100 -0
  106. libraos/_generated/models/hook_subscription_list.py +75 -0
  107. libraos/_generated/models/import_employee_bundle_on_conflict.py +10 -0
  108. libraos/_generated/models/ingest_knowledge_response_201.py +69 -0
  109. libraos/_generated/models/ingest_knowledge_response_201_status.py +8 -0
  110. libraos/_generated/models/job.py +189 -0
  111. libraos/_generated/models/job_create.py +135 -0
  112. libraos/_generated/models/job_create_metadata.py +47 -0
  113. libraos/_generated/models/job_list.py +95 -0
  114. libraos/_generated/models/job_status.py +12 -0
  115. libraos/_generated/models/json_schema_object.py +51 -0
  116. libraos/_generated/models/knowledge_chunk.py +112 -0
  117. libraos/_generated/models/knowledge_chunk_metadata.py +47 -0
  118. libraos/_generated/models/knowledge_collection_list.py +61 -0
  119. libraos/_generated/models/knowledge_ingest_request.py +103 -0
  120. libraos/_generated/models/knowledge_ingest_request_metadata.py +47 -0
  121. libraos/_generated/models/knowledge_search_request.py +90 -0
  122. libraos/_generated/models/knowledge_search_response.py +75 -0
  123. libraos/_generated/models/list_files_recursive.py +9 -0
  124. libraos/_generated/models/list_settings_response_200.py +47 -0
  125. libraos/_generated/models/manifest.py +88 -0
  126. libraos/_generated/models/message.py +139 -0
  127. libraos/_generated/models/message_request.py +163 -0
  128. libraos/_generated/models/message_request_metadata.py +90 -0
  129. libraos/_generated/models/message_response.py +282 -0
  130. libraos/_generated/models/message_response_stop_reason.py +11 -0
  131. libraos/_generated/models/message_response_type.py +8 -0
  132. libraos/_generated/models/message_response_usage.py +70 -0
  133. libraos/_generated/models/model_config.py +109 -0
  134. libraos/_generated/models/model_slot.py +75 -0
  135. libraos/_generated/models/output_type_contract.py +96 -0
  136. libraos/_generated/models/output_type_contract_violation_mode.py +10 -0
  137. libraos/_generated/models/output_violation.py +80 -0
  138. libraos/_generated/models/persona_manifest_entry.py +118 -0
  139. libraos/_generated/models/persona_manifest_entry_emits_route_hint_kinds_item.py +10 -0
  140. libraos/_generated/models/persona_not_found_error.py +71 -0
  141. libraos/_generated/models/persona_triage.py +10 -0
  142. libraos/_generated/models/put_setting_body.py +61 -0
  143. libraos/_generated/models/role.py +10 -0
  144. libraos/_generated/models/route_hint_ask_clarification.py +74 -0
  145. libraos/_generated/models/route_hint_ask_clarification_kind.py +8 -0
  146. libraos/_generated/models/route_hint_navigate_to.py +97 -0
  147. libraos/_generated/models/route_hint_navigate_to_kind.py +8 -0
  148. libraos/_generated/models/route_hint_navigate_to_params.py +47 -0
  149. libraos/_generated/models/route_hint_render_inline.py +65 -0
  150. libraos/_generated/models/route_hint_render_inline_kind.py +8 -0
  151. libraos/_generated/models/session.py +107 -0
  152. libraos/_generated/models/session_create.py +81 -0
  153. libraos/_generated/models/setting_value.py +70 -0
  154. libraos/_generated/models/skill.py +72 -0
  155. libraos/_generated/models/stream_event_custom_tool_use.py +93 -0
  156. libraos/_generated/models/stream_event_custom_tool_use_input.py +47 -0
  157. libraos/_generated/models/stream_event_custom_tool_use_type.py +8 -0
  158. libraos/_generated/models/stream_event_done.py +82 -0
  159. libraos/_generated/models/stream_event_done_status.py +10 -0
  160. libraos/_generated/models/stream_event_done_type.py +8 -0
  161. libraos/_generated/models/stream_event_error.py +77 -0
  162. libraos/_generated/models/stream_event_error_type.py +8 -0
  163. libraos/_generated/models/stream_event_route_hint.py +118 -0
  164. libraos/_generated/models/stream_event_route_hint_type.py +8 -0
  165. libraos/_generated/models/stream_event_text_delta.py +71 -0
  166. libraos/_generated/models/stream_event_text_delta_type.py +8 -0
  167. libraos/_generated/models/stream_event_thinking.py +71 -0
  168. libraos/_generated/models/stream_event_thinking_type.py +8 -0
  169. libraos/_generated/models/stream_event_tool_result.py +90 -0
  170. libraos/_generated/models/stream_event_tool_result_type.py +8 -0
  171. libraos/_generated/models/stream_event_tool_use.py +93 -0
  172. libraos/_generated/models/stream_event_tool_use_input.py +47 -0
  173. libraos/_generated/models/stream_event_tool_use_type.py +8 -0
  174. libraos/_generated/models/text_block.py +71 -0
  175. libraos/_generated/models/text_block_type.py +8 -0
  176. libraos/_generated/models/tool_definition.py +105 -0
  177. libraos/_generated/models/tool_definition_type.py +11 -0
  178. libraos/_generated/models/tool_result_block.py +119 -0
  179. libraos/_generated/models/tool_result_block_type.py +8 -0
  180. libraos/_generated/models/tool_use_block.py +93 -0
  181. libraos/_generated/models/tool_use_block_input.py +47 -0
  182. libraos/_generated/models/tool_use_block_type.py +8 -0
  183. libraos/_generated/models/upload_document_body.py +87 -0
  184. libraos/_generated/models/user.py +116 -0
  185. libraos/_generated/models/user_create.py +89 -0
  186. libraos/_generated/models/user_create_role.py +11 -0
  187. libraos/_generated/models/user_list.py +75 -0
  188. libraos/_generated/models/user_role.py +11 -0
  189. libraos/_generated/models/web_search_backend.py +13 -0
  190. libraos/_generated/models/web_search_config.py +121 -0
  191. libraos/_generated/py.typed +1 -0
  192. libraos/_generated/types.py +54 -0
  193. libraos/_retry.py +73 -0
  194. libraos/_sse.py +57 -0
  195. libraos/_sync.py +79 -0
  196. libraos/_version.py +2 -0
  197. libraos/anthropic_compat.py +77 -0
  198. libraos/callbacks.py +177 -0
  199. libraos/client.py +282 -0
  200. libraos/errors.py +249 -0
  201. libraos/integrations/__init__.py +2 -0
  202. libraos/integrations/aws_lambda.py +45 -0
  203. libraos/integrations/fastapi.py +48 -0
  204. libraos/integrations/flask.py +37 -0
  205. libraos/resources/__init__.py +1 -0
  206. libraos/resources/_base.py +15 -0
  207. libraos/resources/agents.py +103 -0
  208. libraos/resources/documents.py +82 -0
  209. libraos/resources/employees.py +68 -0
  210. libraos/resources/filesystem.py +104 -0
  211. libraos/resources/hooks.py +74 -0
  212. libraos/resources/jobs.py +71 -0
  213. libraos/resources/knowledge.py +65 -0
  214. libraos/resources/messages.py +107 -0
  215. libraos/resources/personas.py +56 -0
  216. libraos/resources/sessions.py +39 -0
  217. libraos/resources/settings.py +38 -0
  218. libraos/resources/users.py +45 -0
  219. libraos/simulator/__init__.py +70 -0
  220. libraos/simulator/_loop.py +606 -0
  221. libraos/simulator/_signals.py +83 -0
  222. libraos/simulator/_wiring.py +133 -0
  223. libraos/simulator/archetype.py +260 -0
  224. libraos/simulator/archetype.schema.json +76 -0
  225. libraos/simulator/errors.py +83 -0
  226. libraos/simulator/prompt.py +235 -0
  227. libraos/simulator/simulate.py +467 -0
  228. libraos/simulator/types.py +152 -0
  229. libraos/streaming.py +130 -0
  230. libraos_sdk-1.0.1.dist-info/METADATA +246 -0
  231. libraos_sdk-1.0.1.dist-info/RECORD +233 -0
  232. libraos_sdk-1.0.1.dist-info/WHEEL +5 -0
  233. libraos_sdk-1.0.1.dist-info/top_level.txt +1 -0
libraos/__init__.py ADDED
@@ -0,0 +1,55 @@
1
+ """LibraOS SDK — partner integration for LibraOS.
2
+
3
+ See https://github.com/libraos/sdk for documentation.
4
+ """
5
+
6
+ from libraos._version import __version__, OPENAPI_VERSION
7
+ from libraos.client import Client
8
+ from libraos.anthropic_compat import AnthropicCompatClient
9
+ from libraos.errors import (
10
+ NovaOSError,
11
+ AuthenticationError,
12
+ PermissionError,
13
+ NotFoundError,
14
+ RateLimitedError,
15
+ BillingError,
16
+ UpstreamError,
17
+ VertexSchemaError,
18
+ ModelNotFoundError,
19
+ InternalError,
20
+ PersonaNotFound,
21
+ )
22
+ from libraos.callbacks import WebhookRouter
23
+ from libraos.streaming import MessageStream
24
+ from libraos.simulator import (
25
+ Archetype,
26
+ ArchetypeValidationError,
27
+ SimulationResult,
28
+ Turn,
29
+ simulate,
30
+ )
31
+
32
+ __all__ = [
33
+ "__version__",
34
+ "OPENAPI_VERSION",
35
+ "Client",
36
+ "AnthropicCompatClient",
37
+ "NovaOSError",
38
+ "AuthenticationError",
39
+ "PermissionError",
40
+ "NotFoundError",
41
+ "RateLimitedError",
42
+ "BillingError",
43
+ "UpstreamError",
44
+ "VertexSchemaError",
45
+ "ModelNotFoundError",
46
+ "InternalError",
47
+ "PersonaNotFound",
48
+ "WebhookRouter",
49
+ "MessageStream",
50
+ "Archetype",
51
+ "ArchetypeValidationError",
52
+ "SimulationResult",
53
+ "Turn",
54
+ "simulate",
55
+ ]
@@ -0,0 +1,8 @@
1
+ """A client library for accessing Nova OS Partner API"""
2
+
3
+ from .client import AuthenticatedClient, Client
4
+
5
+ __all__ = (
6
+ "AuthenticatedClient",
7
+ "Client",
8
+ )
@@ -0,0 +1 @@
1
+ """Contains methods for accessing the API"""
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""
@@ -0,0 +1,177 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.agent import Agent
9
+ from ...models.agent_create import AgentCreate
10
+ from ...models.error import Error
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs(
15
+ *,
16
+ body: AgentCreate,
17
+ ) -> dict[str, Any]:
18
+ headers: dict[str, Any] = {}
19
+
20
+ _kwargs: dict[str, Any] = {
21
+ "method": "post",
22
+ "url": "/v1/agents",
23
+ }
24
+
25
+ _kwargs["json"] = body.to_dict()
26
+
27
+ headers["Content-Type"] = "application/json"
28
+
29
+ _kwargs["headers"] = headers
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Agent | Error | None:
34
+ if response.status_code == 201:
35
+ response_201 = Agent.from_dict(response.json())
36
+
37
+ return response_201
38
+
39
+ if response.status_code == 400:
40
+ response_400 = Error.from_dict(response.json())
41
+
42
+ return response_400
43
+
44
+ if response.status_code == 401:
45
+ response_401 = Error.from_dict(response.json())
46
+
47
+ return response_401
48
+
49
+ if response.status_code == 403:
50
+ response_403 = Error.from_dict(response.json())
51
+
52
+ return response_403
53
+
54
+ if response.status_code == 429:
55
+ response_429 = Error.from_dict(response.json())
56
+
57
+ return response_429
58
+
59
+ if client.raise_on_unexpected_status:
60
+ raise errors.UnexpectedStatus(response.status_code, response.content)
61
+ else:
62
+ return None
63
+
64
+
65
+ def _build_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Response[Agent | Error]:
66
+ return Response(
67
+ status_code=HTTPStatus(response.status_code),
68
+ content=response.content,
69
+ headers=response.headers,
70
+ parsed=_parse_response(client=client, response=response),
71
+ )
72
+
73
+
74
+ def sync_detailed(
75
+ *,
76
+ client: AuthenticatedClient | Client,
77
+ body: AgentCreate,
78
+ ) -> Response[Agent | Error]:
79
+ """Create an agent
80
+
81
+ Args:
82
+ body (AgentCreate):
83
+
84
+ Raises:
85
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
86
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
87
+
88
+ Returns:
89
+ Response[Agent | Error]
90
+ """
91
+
92
+ kwargs = _get_kwargs(
93
+ body=body,
94
+ )
95
+
96
+ response = client.get_httpx_client().request(
97
+ **kwargs,
98
+ )
99
+
100
+ return _build_response(client=client, response=response)
101
+
102
+
103
+ def sync(
104
+ *,
105
+ client: AuthenticatedClient | Client,
106
+ body: AgentCreate,
107
+ ) -> Agent | Error | None:
108
+ """Create an agent
109
+
110
+ Args:
111
+ body (AgentCreate):
112
+
113
+ Raises:
114
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
115
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
116
+
117
+ Returns:
118
+ Agent | Error
119
+ """
120
+
121
+ return sync_detailed(
122
+ client=client,
123
+ body=body,
124
+ ).parsed
125
+
126
+
127
+ async def asyncio_detailed(
128
+ *,
129
+ client: AuthenticatedClient | Client,
130
+ body: AgentCreate,
131
+ ) -> Response[Agent | Error]:
132
+ """Create an agent
133
+
134
+ Args:
135
+ body (AgentCreate):
136
+
137
+ Raises:
138
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
139
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
140
+
141
+ Returns:
142
+ Response[Agent | Error]
143
+ """
144
+
145
+ kwargs = _get_kwargs(
146
+ body=body,
147
+ )
148
+
149
+ response = await client.get_async_httpx_client().request(**kwargs)
150
+
151
+ return _build_response(client=client, response=response)
152
+
153
+
154
+ async def asyncio(
155
+ *,
156
+ client: AuthenticatedClient | Client,
157
+ body: AgentCreate,
158
+ ) -> Agent | Error | None:
159
+ """Create an agent
160
+
161
+ Args:
162
+ body (AgentCreate):
163
+
164
+ Raises:
165
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
166
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
167
+
168
+ Returns:
169
+ Agent | Error
170
+ """
171
+
172
+ return (
173
+ await asyncio_detailed(
174
+ client=client,
175
+ body=body,
176
+ )
177
+ ).parsed
@@ -0,0 +1,160 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, cast
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.error import Error
10
+ from ...types import Response
11
+
12
+
13
+ def _get_kwargs(
14
+ agent_id: str,
15
+ ) -> dict[str, Any]:
16
+
17
+ _kwargs: dict[str, Any] = {
18
+ "method": "delete",
19
+ "url": "/v1/agents/{agent_id}".format(
20
+ agent_id=quote(str(agent_id), safe=""),
21
+ ),
22
+ }
23
+
24
+ return _kwargs
25
+
26
+
27
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Any | Error | None:
28
+ if response.status_code == 204:
29
+ response_204 = cast(Any, None)
30
+ return response_204
31
+
32
+ if response.status_code == 401:
33
+ response_401 = Error.from_dict(response.json())
34
+
35
+ return response_401
36
+
37
+ if response.status_code == 404:
38
+ response_404 = Error.from_dict(response.json())
39
+
40
+ return response_404
41
+
42
+ if client.raise_on_unexpected_status:
43
+ raise errors.UnexpectedStatus(response.status_code, response.content)
44
+ else:
45
+ return None
46
+
47
+
48
+ def _build_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Response[Any | Error]:
49
+ return Response(
50
+ status_code=HTTPStatus(response.status_code),
51
+ content=response.content,
52
+ headers=response.headers,
53
+ parsed=_parse_response(client=client, response=response),
54
+ )
55
+
56
+
57
+ def sync_detailed(
58
+ agent_id: str,
59
+ *,
60
+ client: AuthenticatedClient | Client,
61
+ ) -> Response[Any | Error]:
62
+ """Delete an agent
63
+
64
+ Args:
65
+ agent_id (str):
66
+
67
+ Raises:
68
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
69
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
70
+
71
+ Returns:
72
+ Response[Any | Error]
73
+ """
74
+
75
+ kwargs = _get_kwargs(
76
+ agent_id=agent_id,
77
+ )
78
+
79
+ response = client.get_httpx_client().request(
80
+ **kwargs,
81
+ )
82
+
83
+ return _build_response(client=client, response=response)
84
+
85
+
86
+ def sync(
87
+ agent_id: str,
88
+ *,
89
+ client: AuthenticatedClient | Client,
90
+ ) -> Any | Error | None:
91
+ """Delete an agent
92
+
93
+ Args:
94
+ agent_id (str):
95
+
96
+ Raises:
97
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
98
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
99
+
100
+ Returns:
101
+ Any | Error
102
+ """
103
+
104
+ return sync_detailed(
105
+ agent_id=agent_id,
106
+ client=client,
107
+ ).parsed
108
+
109
+
110
+ async def asyncio_detailed(
111
+ agent_id: str,
112
+ *,
113
+ client: AuthenticatedClient | Client,
114
+ ) -> Response[Any | Error]:
115
+ """Delete an agent
116
+
117
+ Args:
118
+ agent_id (str):
119
+
120
+ Raises:
121
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
122
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
123
+
124
+ Returns:
125
+ Response[Any | Error]
126
+ """
127
+
128
+ kwargs = _get_kwargs(
129
+ agent_id=agent_id,
130
+ )
131
+
132
+ response = await client.get_async_httpx_client().request(**kwargs)
133
+
134
+ return _build_response(client=client, response=response)
135
+
136
+
137
+ async def asyncio(
138
+ agent_id: str,
139
+ *,
140
+ client: AuthenticatedClient | Client,
141
+ ) -> Any | Error | None:
142
+ """Delete an agent
143
+
144
+ Args:
145
+ agent_id (str):
146
+
147
+ Raises:
148
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
149
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
150
+
151
+ Returns:
152
+ Any | Error
153
+ """
154
+
155
+ return (
156
+ await asyncio_detailed(
157
+ agent_id=agent_id,
158
+ client=client,
159
+ )
160
+ ).parsed
@@ -0,0 +1,162 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.agent import Agent
10
+ from ...models.error import Error
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs(
15
+ agent_id: str,
16
+ ) -> dict[str, Any]:
17
+
18
+ _kwargs: dict[str, Any] = {
19
+ "method": "get",
20
+ "url": "/v1/agents/{agent_id}".format(
21
+ agent_id=quote(str(agent_id), safe=""),
22
+ ),
23
+ }
24
+
25
+ return _kwargs
26
+
27
+
28
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Agent | Error | None:
29
+ if response.status_code == 200:
30
+ response_200 = Agent.from_dict(response.json())
31
+
32
+ return response_200
33
+
34
+ if response.status_code == 401:
35
+ response_401 = Error.from_dict(response.json())
36
+
37
+ return response_401
38
+
39
+ if response.status_code == 404:
40
+ response_404 = Error.from_dict(response.json())
41
+
42
+ return response_404
43
+
44
+ if client.raise_on_unexpected_status:
45
+ raise errors.UnexpectedStatus(response.status_code, response.content)
46
+ else:
47
+ return None
48
+
49
+
50
+ def _build_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> Response[Agent | Error]:
51
+ return Response(
52
+ status_code=HTTPStatus(response.status_code),
53
+ content=response.content,
54
+ headers=response.headers,
55
+ parsed=_parse_response(client=client, response=response),
56
+ )
57
+
58
+
59
+ def sync_detailed(
60
+ agent_id: str,
61
+ *,
62
+ client: AuthenticatedClient | Client,
63
+ ) -> Response[Agent | Error]:
64
+ """Get an agent
65
+
66
+ Args:
67
+ agent_id (str):
68
+
69
+ Raises:
70
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
71
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
72
+
73
+ Returns:
74
+ Response[Agent | Error]
75
+ """
76
+
77
+ kwargs = _get_kwargs(
78
+ agent_id=agent_id,
79
+ )
80
+
81
+ response = client.get_httpx_client().request(
82
+ **kwargs,
83
+ )
84
+
85
+ return _build_response(client=client, response=response)
86
+
87
+
88
+ def sync(
89
+ agent_id: str,
90
+ *,
91
+ client: AuthenticatedClient | Client,
92
+ ) -> Agent | Error | None:
93
+ """Get an agent
94
+
95
+ Args:
96
+ agent_id (str):
97
+
98
+ Raises:
99
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
100
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
101
+
102
+ Returns:
103
+ Agent | Error
104
+ """
105
+
106
+ return sync_detailed(
107
+ agent_id=agent_id,
108
+ client=client,
109
+ ).parsed
110
+
111
+
112
+ async def asyncio_detailed(
113
+ agent_id: str,
114
+ *,
115
+ client: AuthenticatedClient | Client,
116
+ ) -> Response[Agent | Error]:
117
+ """Get an agent
118
+
119
+ Args:
120
+ agent_id (str):
121
+
122
+ Raises:
123
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
124
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
125
+
126
+ Returns:
127
+ Response[Agent | Error]
128
+ """
129
+
130
+ kwargs = _get_kwargs(
131
+ agent_id=agent_id,
132
+ )
133
+
134
+ response = await client.get_async_httpx_client().request(**kwargs)
135
+
136
+ return _build_response(client=client, response=response)
137
+
138
+
139
+ async def asyncio(
140
+ agent_id: str,
141
+ *,
142
+ client: AuthenticatedClient | Client,
143
+ ) -> Agent | Error | None:
144
+ """Get an agent
145
+
146
+ Args:
147
+ agent_id (str):
148
+
149
+ Raises:
150
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
151
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
152
+
153
+ Returns:
154
+ Agent | Error
155
+ """
156
+
157
+ return (
158
+ await asyncio_detailed(
159
+ agent_id=agent_id,
160
+ client=client,
161
+ )
162
+ ).parsed
@@ -0,0 +1,144 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.error import Error
9
+ from ...models.get_agent_schema_response_200 import GetAgentSchemaResponse200
10
+ from ...types import Response
11
+
12
+
13
+ def _get_kwargs() -> dict[str, Any]:
14
+
15
+ _kwargs: dict[str, Any] = {
16
+ "method": "get",
17
+ "url": "/v1/agents/schema",
18
+ }
19
+
20
+ return _kwargs
21
+
22
+
23
+ def _parse_response(
24
+ *, client: AuthenticatedClient | Client, response: httpx.Response
25
+ ) -> Error | GetAgentSchemaResponse200 | None:
26
+ if response.status_code == 200:
27
+ response_200 = GetAgentSchemaResponse200.from_dict(response.json())
28
+
29
+ return response_200
30
+
31
+ if response.status_code == 401:
32
+ response_401 = Error.from_dict(response.json())
33
+
34
+ return response_401
35
+
36
+ if response.status_code == 403:
37
+ response_403 = Error.from_dict(response.json())
38
+
39
+ return response_403
40
+
41
+ if response.status_code == 426:
42
+ response_426 = Error.from_dict(response.json())
43
+
44
+ return response_426
45
+
46
+ if client.raise_on_unexpected_status:
47
+ raise errors.UnexpectedStatus(response.status_code, response.content)
48
+ else:
49
+ return None
50
+
51
+
52
+ def _build_response(
53
+ *, client: AuthenticatedClient | Client, response: httpx.Response
54
+ ) -> Response[Error | GetAgentSchemaResponse200]:
55
+ return Response(
56
+ status_code=HTTPStatus(response.status_code),
57
+ content=response.content,
58
+ headers=response.headers,
59
+ parsed=_parse_response(client=client, response=response),
60
+ )
61
+
62
+
63
+ def sync_detailed(
64
+ *,
65
+ client: AuthenticatedClient | Client,
66
+ ) -> Response[Error | GetAgentSchemaResponse200]:
67
+ """Get the AgentDef JSON Schema
68
+
69
+ Raises:
70
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
71
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
72
+
73
+ Returns:
74
+ Response[Error | GetAgentSchemaResponse200]
75
+ """
76
+
77
+ kwargs = _get_kwargs()
78
+
79
+ response = client.get_httpx_client().request(
80
+ **kwargs,
81
+ )
82
+
83
+ return _build_response(client=client, response=response)
84
+
85
+
86
+ def sync(
87
+ *,
88
+ client: AuthenticatedClient | Client,
89
+ ) -> Error | GetAgentSchemaResponse200 | None:
90
+ """Get the AgentDef JSON Schema
91
+
92
+ Raises:
93
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
94
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
95
+
96
+ Returns:
97
+ Error | GetAgentSchemaResponse200
98
+ """
99
+
100
+ return sync_detailed(
101
+ client=client,
102
+ ).parsed
103
+
104
+
105
+ async def asyncio_detailed(
106
+ *,
107
+ client: AuthenticatedClient | Client,
108
+ ) -> Response[Error | GetAgentSchemaResponse200]:
109
+ """Get the AgentDef JSON Schema
110
+
111
+ Raises:
112
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
113
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
114
+
115
+ Returns:
116
+ Response[Error | GetAgentSchemaResponse200]
117
+ """
118
+
119
+ kwargs = _get_kwargs()
120
+
121
+ response = await client.get_async_httpx_client().request(**kwargs)
122
+
123
+ return _build_response(client=client, response=response)
124
+
125
+
126
+ async def asyncio(
127
+ *,
128
+ client: AuthenticatedClient | Client,
129
+ ) -> Error | GetAgentSchemaResponse200 | None:
130
+ """Get the AgentDef JSON Schema
131
+
132
+ Raises:
133
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
134
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
135
+
136
+ Returns:
137
+ Error | GetAgentSchemaResponse200
138
+ """
139
+
140
+ return (
141
+ await asyncio_detailed(
142
+ client=client,
143
+ )
144
+ ).parsed