letta-client 1.0.0a10__py3-none-any.whl → 1.0.0a12__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 (76) hide show
  1. letta_client/_client.py +28 -1
  2. letta_client/_streaming.py +44 -8
  3. letta_client/_version.py +1 -1
  4. letta_client/resources/__init__.py +14 -0
  5. letta_client/resources/agents/agents.py +0 -8
  6. letta_client/resources/agents/blocks.py +15 -17
  7. letta_client/resources/agents/files.py +10 -13
  8. letta_client/resources/agents/folders.py +10 -13
  9. letta_client/resources/agents/messages.py +14 -4
  10. letta_client/resources/agents/tools.py +10 -13
  11. letta_client/resources/archives.py +10 -12
  12. letta_client/resources/batches/batches.py +10 -12
  13. letta_client/resources/batches/messages.py +11 -14
  14. letta_client/resources/blocks/blocks.py +19 -22
  15. letta_client/resources/folders/agents.py +10 -13
  16. letta_client/resources/folders/files.py +9 -12
  17. letta_client/resources/folders/folders.py +10 -12
  18. letta_client/resources/groups/groups.py +1 -17
  19. letta_client/resources/identities/blocks.py +7 -7
  20. letta_client/resources/identities/identities.py +11 -29
  21. letta_client/resources/mcp_servers/__init__.py +47 -0
  22. letta_client/resources/mcp_servers/mcp_servers.py +1165 -0
  23. letta_client/resources/mcp_servers/refresh.py +192 -0
  24. letta_client/resources/mcp_servers/tools.py +351 -0
  25. letta_client/resources/runs/runs.py +11 -13
  26. letta_client/resources/steps/steps.py +1 -9
  27. letta_client/resources/tags.py +10 -13
  28. letta_client/resources/tools.py +14 -16
  29. letta_client/types/__init__.py +13 -4
  30. letta_client/types/agent_create_params.py +1 -5
  31. letta_client/types/agents/__init__.py +2 -3
  32. letta_client/types/agents/file_list_response.py +14 -3
  33. letta_client/types/agents/folder_list_response.py +7 -3
  34. letta_client/types/agents/letta_streaming_response.py +70 -0
  35. letta_client/types/agents/tool_list_response.py +10 -0
  36. letta_client/types/archive_list_response.py +10 -0
  37. letta_client/types/batch_list_response.py +10 -0
  38. letta_client/types/batches/__init__.py +1 -0
  39. letta_client/types/batches/message_list_response.py +12 -0
  40. letta_client/types/{block_list_response.py → block_response.py} +5 -5
  41. letta_client/types/folder_list_response.py +10 -0
  42. letta_client/types/folders/agent_list_response.py +2 -1
  43. letta_client/types/folders/file_list_response.py +7 -4
  44. letta_client/types/group_create_params.py +1 -5
  45. letta_client/types/group_modify_params.py +1 -5
  46. letta_client/types/identities/__init__.py +0 -1
  47. letta_client/types/identity_create_params.py +1 -5
  48. letta_client/types/identity_list_response.py +10 -0
  49. letta_client/types/identity_upsert_params.py +1 -5
  50. letta_client/types/mcp_server_create_params.py +67 -0
  51. letta_client/types/mcp_server_create_response.py +74 -0
  52. letta_client/types/mcp_server_list_response.py +86 -0
  53. letta_client/types/mcp_server_modify_params.py +76 -0
  54. letta_client/types/mcp_server_modify_response.py +74 -0
  55. letta_client/types/mcp_server_retrieve_response.py +74 -0
  56. letta_client/types/mcp_servers/__init__.py +8 -0
  57. letta_client/types/mcp_servers/refresh_trigger_params.py +12 -0
  58. letta_client/types/mcp_servers/tool_list_response.py +10 -0
  59. letta_client/types/mcp_servers/tool_run_params.py +15 -0
  60. letta_client/types/mcp_servers/tool_run_response.py +43 -0
  61. letta_client/types/run_list_response.py +10 -0
  62. letta_client/types/step_list_params.py +1 -5
  63. letta_client/types/tag_list_response.py +2 -1
  64. letta_client/types/tool.py +28 -28
  65. letta_client/types/tool_list_response.py +10 -0
  66. {letta_client-1.0.0a10.dist-info → letta_client-1.0.0a12.dist-info}/METADATA +1 -1
  67. {letta_client-1.0.0a10.dist-info → letta_client-1.0.0a12.dist-info}/RECORD +69 -52
  68. letta_client/types/agents/block_list_response.py +0 -63
  69. letta_client/types/agents/block_modify_response.py +0 -63
  70. letta_client/types/agents/block_retrieve_response.py +0 -63
  71. letta_client/types/block_create_response.py +0 -63
  72. letta_client/types/block_modify_response.py +0 -63
  73. letta_client/types/block_retrieve_response.py +0 -63
  74. letta_client/types/identities/block_list_response.py +0 -63
  75. {letta_client-1.0.0a10.dist-info → letta_client-1.0.0a12.dist-info}/WHEEL +0 -0
  76. {letta_client-1.0.0a10.dist-info → letta_client-1.0.0a12.dist-info}/licenses/LICENSE +0 -0
@@ -17,8 +17,7 @@ from ..._response import (
17
17
  async_to_raw_response_wrapper,
18
18
  async_to_streamed_response_wrapper,
19
19
  )
20
- from ...pagination import SyncArrayPage, AsyncArrayPage
21
- from ..._base_client import AsyncPaginator, make_request_options
20
+ from ..._base_client import make_request_options
22
21
  from ...types.folders import file_list_params, file_upload_params
23
22
  from ...types.folders.file_list_response import FileListResponse
24
23
  from ...types.folders.file_upload_response import FileUploadResponse
@@ -62,7 +61,7 @@ class FilesResource(SyncAPIResource):
62
61
  extra_query: Query | None = None,
63
62
  extra_body: Body | None = None,
64
63
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
65
- ) -> SyncArrayPage[FileListResponse]:
64
+ ) -> FileListResponse:
66
65
  """
67
66
  List paginated files associated with a data folder.
68
67
 
@@ -94,9 +93,8 @@ class FilesResource(SyncAPIResource):
94
93
  """
95
94
  if not folder_id:
96
95
  raise ValueError(f"Expected a non-empty value for `folder_id` but received {folder_id!r}")
97
- return self._get_api_list(
96
+ return self._get(
98
97
  f"/v1/folders/{folder_id}/files",
99
- page=SyncArrayPage[FileListResponse],
100
98
  options=make_request_options(
101
99
  extra_headers=extra_headers,
102
100
  extra_query=extra_query,
@@ -114,7 +112,7 @@ class FilesResource(SyncAPIResource):
114
112
  file_list_params.FileListParams,
115
113
  ),
116
114
  ),
117
- model=FileListResponse,
115
+ cast_to=FileListResponse,
118
116
  )
119
117
 
120
118
  def delete(
@@ -239,7 +237,7 @@ class AsyncFilesResource(AsyncAPIResource):
239
237
  """
240
238
  return AsyncFilesResourceWithStreamingResponse(self)
241
239
 
242
- def list(
240
+ async def list(
243
241
  self,
244
242
  folder_id: str,
245
243
  *,
@@ -255,7 +253,7 @@ class AsyncFilesResource(AsyncAPIResource):
255
253
  extra_query: Query | None = None,
256
254
  extra_body: Body | None = None,
257
255
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
258
- ) -> AsyncPaginator[FileListResponse, AsyncArrayPage[FileListResponse]]:
256
+ ) -> FileListResponse:
259
257
  """
260
258
  List paginated files associated with a data folder.
261
259
 
@@ -287,15 +285,14 @@ class AsyncFilesResource(AsyncAPIResource):
287
285
  """
288
286
  if not folder_id:
289
287
  raise ValueError(f"Expected a non-empty value for `folder_id` but received {folder_id!r}")
290
- return self._get_api_list(
288
+ return await self._get(
291
289
  f"/v1/folders/{folder_id}/files",
292
- page=AsyncArrayPage[FileListResponse],
293
290
  options=make_request_options(
294
291
  extra_headers=extra_headers,
295
292
  extra_query=extra_query,
296
293
  extra_body=extra_body,
297
294
  timeout=timeout,
298
- query=maybe_transform(
295
+ query=await async_maybe_transform(
299
296
  {
300
297
  "after": after,
301
298
  "before": before,
@@ -307,7 +304,7 @@ class AsyncFilesResource(AsyncAPIResource):
307
304
  file_list_params.FileListParams,
308
305
  ),
309
306
  ),
310
- model=FileListResponse,
307
+ cast_to=FileListResponse,
311
308
  )
312
309
 
313
310
  async def delete(
@@ -34,9 +34,9 @@ from ..._response import (
34
34
  async_to_raw_response_wrapper,
35
35
  async_to_streamed_response_wrapper,
36
36
  )
37
- from ...pagination import SyncArrayPage, AsyncArrayPage
38
- from ..._base_client import AsyncPaginator, make_request_options
37
+ from ..._base_client import make_request_options
39
38
  from ...types.folder import Folder
39
+ from ...types.folder_list_response import FolderListResponse
40
40
  from ...types.folder_count_response import FolderCountResponse
41
41
  from ...types.embedding_config_param import EmbeddingConfigParam
42
42
 
@@ -184,7 +184,7 @@ class FoldersResource(SyncAPIResource):
184
184
  extra_query: Query | None = None,
185
185
  extra_body: Body | None = None,
186
186
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
187
- ) -> SyncArrayPage[Folder]:
187
+ ) -> FolderListResponse:
188
188
  """
189
189
  List all data folders created by a user.
190
190
 
@@ -212,9 +212,8 @@ class FoldersResource(SyncAPIResource):
212
212
 
213
213
  timeout: Override the client-level default timeout for this request, in seconds
214
214
  """
215
- return self._get_api_list(
215
+ return self._get(
216
216
  "/v1/folders/",
217
- page=SyncArrayPage[Folder],
218
217
  options=make_request_options(
219
218
  extra_headers=extra_headers,
220
219
  extra_query=extra_query,
@@ -232,7 +231,7 @@ class FoldersResource(SyncAPIResource):
232
231
  folder_list_params.FolderListParams,
233
232
  ),
234
233
  ),
235
- model=Folder,
234
+ cast_to=FolderListResponse,
236
235
  )
237
236
 
238
237
  def delete(
@@ -476,7 +475,7 @@ class AsyncFoldersResource(AsyncAPIResource):
476
475
  cast_to=Folder,
477
476
  )
478
477
 
479
- def list(
478
+ async def list(
480
479
  self,
481
480
  *,
482
481
  after: Optional[str] | Omit = omit,
@@ -491,7 +490,7 @@ class AsyncFoldersResource(AsyncAPIResource):
491
490
  extra_query: Query | None = None,
492
491
  extra_body: Body | None = None,
493
492
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
494
- ) -> AsyncPaginator[Folder, AsyncArrayPage[Folder]]:
493
+ ) -> FolderListResponse:
495
494
  """
496
495
  List all data folders created by a user.
497
496
 
@@ -519,15 +518,14 @@ class AsyncFoldersResource(AsyncAPIResource):
519
518
 
520
519
  timeout: Override the client-level default timeout for this request, in seconds
521
520
  """
522
- return self._get_api_list(
521
+ return await self._get(
523
522
  "/v1/folders/",
524
- page=AsyncArrayPage[Folder],
525
523
  options=make_request_options(
526
524
  extra_headers=extra_headers,
527
525
  extra_query=extra_query,
528
526
  extra_body=extra_body,
529
527
  timeout=timeout,
530
- query=maybe_transform(
528
+ query=await async_maybe_transform(
531
529
  {
532
530
  "after": after,
533
531
  "before": before,
@@ -539,7 +537,7 @@ class AsyncFoldersResource(AsyncAPIResource):
539
537
  folder_list_params.FolderListParams,
540
538
  ),
541
539
  ),
542
- model=Folder,
540
+ cast_to=FolderListResponse,
543
541
  )
544
542
 
545
543
  async def delete(
@@ -9,7 +9,7 @@ import httpx
9
9
 
10
10
  from ...types import ManagerType, group_list_params, group_create_params, group_modify_params
11
11
  from ..._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
12
- from ..._utils import maybe_transform, strip_not_given, async_maybe_transform
12
+ from ..._utils import maybe_transform, async_maybe_transform
13
13
  from .messages import (
14
14
  MessagesResource,
15
15
  AsyncMessagesResource,
@@ -68,7 +68,6 @@ class GroupsResource(SyncAPIResource):
68
68
  manager_config: group_create_params.ManagerConfig | Omit = omit,
69
69
  project_id: Optional[str] | Omit = omit,
70
70
  shared_block_ids: SequenceNotStr[str] | Omit = omit,
71
- x_project: str | Omit = omit,
72
71
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
73
72
  # The extra values given here take precedence over values defined on the client or passed to this method.
74
73
  extra_headers: Headers | None = None,
@@ -92,8 +91,6 @@ class GroupsResource(SyncAPIResource):
92
91
 
93
92
  shared_block_ids
94
93
 
95
- x_project: The project slug to associate with the group (cloud only).
96
-
97
94
  extra_headers: Send extra headers
98
95
 
99
96
  extra_query: Add additional query parameters to the request
@@ -102,7 +99,6 @@ class GroupsResource(SyncAPIResource):
102
99
 
103
100
  timeout: Override the client-level default timeout for this request, in seconds
104
101
  """
105
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
106
102
  return self._post(
107
103
  "/v1/groups/",
108
104
  body=maybe_transform(
@@ -290,7 +286,6 @@ class GroupsResource(SyncAPIResource):
290
286
  manager_config: Optional[group_modify_params.ManagerConfig] | Omit = omit,
291
287
  project_id: Optional[str] | Omit = omit,
292
288
  shared_block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
293
- x_project: str | Omit = omit,
294
289
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
295
290
  # The extra values given here take precedence over values defined on the client or passed to this method.
296
291
  extra_headers: Headers | None = None,
@@ -314,8 +309,6 @@ class GroupsResource(SyncAPIResource):
314
309
 
315
310
  shared_block_ids
316
311
 
317
- x_project: The project slug to associate with the group (cloud only).
318
-
319
312
  extra_headers: Send extra headers
320
313
 
321
314
  extra_query: Add additional query parameters to the request
@@ -326,7 +319,6 @@ class GroupsResource(SyncAPIResource):
326
319
  """
327
320
  if not group_id:
328
321
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
329
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
330
322
  return self._patch(
331
323
  f"/v1/groups/{group_id}",
332
324
  body=maybe_transform(
@@ -379,7 +371,6 @@ class AsyncGroupsResource(AsyncAPIResource):
379
371
  manager_config: group_create_params.ManagerConfig | Omit = omit,
380
372
  project_id: Optional[str] | Omit = omit,
381
373
  shared_block_ids: SequenceNotStr[str] | Omit = omit,
382
- x_project: str | Omit = omit,
383
374
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
384
375
  # The extra values given here take precedence over values defined on the client or passed to this method.
385
376
  extra_headers: Headers | None = None,
@@ -403,8 +394,6 @@ class AsyncGroupsResource(AsyncAPIResource):
403
394
 
404
395
  shared_block_ids
405
396
 
406
- x_project: The project slug to associate with the group (cloud only).
407
-
408
397
  extra_headers: Send extra headers
409
398
 
410
399
  extra_query: Add additional query parameters to the request
@@ -413,7 +402,6 @@ class AsyncGroupsResource(AsyncAPIResource):
413
402
 
414
403
  timeout: Override the client-level default timeout for this request, in seconds
415
404
  """
416
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
417
405
  return await self._post(
418
406
  "/v1/groups/",
419
407
  body=await async_maybe_transform(
@@ -601,7 +589,6 @@ class AsyncGroupsResource(AsyncAPIResource):
601
589
  manager_config: Optional[group_modify_params.ManagerConfig] | Omit = omit,
602
590
  project_id: Optional[str] | Omit = omit,
603
591
  shared_block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
604
- x_project: str | Omit = omit,
605
592
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
606
593
  # The extra values given here take precedence over values defined on the client or passed to this method.
607
594
  extra_headers: Headers | None = None,
@@ -625,8 +612,6 @@ class AsyncGroupsResource(AsyncAPIResource):
625
612
 
626
613
  shared_block_ids
627
614
 
628
- x_project: The project slug to associate with the group (cloud only).
629
-
630
615
  extra_headers: Send extra headers
631
616
 
632
617
  extra_query: Add additional query parameters to the request
@@ -637,7 +622,6 @@ class AsyncGroupsResource(AsyncAPIResource):
637
622
  """
638
623
  if not group_id:
639
624
  raise ValueError(f"Expected a non-empty value for `group_id` but received {group_id!r}")
640
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
641
625
  return await self._patch(
642
626
  f"/v1/groups/{group_id}",
643
627
  body=await async_maybe_transform(
@@ -20,7 +20,7 @@ from ..._response import (
20
20
  from ...pagination import SyncArrayPage, AsyncArrayPage
21
21
  from ..._base_client import AsyncPaginator, make_request_options
22
22
  from ...types.identities import block_list_params
23
- from ...types.identities.block_list_response import BlockListResponse
23
+ from ...types.block_response import BlockResponse
24
24
 
25
25
  __all__ = ["BlocksResource", "AsyncBlocksResource"]
26
26
 
@@ -60,7 +60,7 @@ class BlocksResource(SyncAPIResource):
60
60
  extra_query: Query | None = None,
61
61
  extra_body: Body | None = None,
62
62
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
63
- ) -> SyncArrayPage[BlockListResponse]:
63
+ ) -> SyncArrayPage[BlockResponse]:
64
64
  """
65
65
  Get all blocks associated with the specified identity.
66
66
 
@@ -92,7 +92,7 @@ class BlocksResource(SyncAPIResource):
92
92
  raise ValueError(f"Expected a non-empty value for `identity_id` but received {identity_id!r}")
93
93
  return self._get_api_list(
94
94
  f"/v1/identities/{identity_id}/blocks",
95
- page=SyncArrayPage[BlockListResponse],
95
+ page=SyncArrayPage[BlockResponse],
96
96
  options=make_request_options(
97
97
  extra_headers=extra_headers,
98
98
  extra_query=extra_query,
@@ -109,7 +109,7 @@ class BlocksResource(SyncAPIResource):
109
109
  block_list_params.BlockListParams,
110
110
  ),
111
111
  ),
112
- model=BlockListResponse,
112
+ model=BlockResponse,
113
113
  )
114
114
 
115
115
 
@@ -148,7 +148,7 @@ class AsyncBlocksResource(AsyncAPIResource):
148
148
  extra_query: Query | None = None,
149
149
  extra_body: Body | None = None,
150
150
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
151
- ) -> AsyncPaginator[BlockListResponse, AsyncArrayPage[BlockListResponse]]:
151
+ ) -> AsyncPaginator[BlockResponse, AsyncArrayPage[BlockResponse]]:
152
152
  """
153
153
  Get all blocks associated with the specified identity.
154
154
 
@@ -180,7 +180,7 @@ class AsyncBlocksResource(AsyncAPIResource):
180
180
  raise ValueError(f"Expected a non-empty value for `identity_id` but received {identity_id!r}")
181
181
  return self._get_api_list(
182
182
  f"/v1/identities/{identity_id}/blocks",
183
- page=AsyncArrayPage[BlockListResponse],
183
+ page=AsyncArrayPage[BlockResponse],
184
184
  options=make_request_options(
185
185
  extra_headers=extra_headers,
186
186
  extra_query=extra_query,
@@ -197,7 +197,7 @@ class AsyncBlocksResource(AsyncAPIResource):
197
197
  block_list_params.BlockListParams,
198
198
  ),
199
199
  ),
200
- model=BlockListResponse,
200
+ model=BlockResponse,
201
201
  )
202
202
 
203
203
 
@@ -31,7 +31,7 @@ from ...types import (
31
31
  identity_upsert_params,
32
32
  )
33
33
  from ..._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
34
- from ..._utils import maybe_transform, strip_not_given, async_maybe_transform
34
+ from ..._utils import maybe_transform, async_maybe_transform
35
35
  from ..._compat import cached_property
36
36
  from .properties import (
37
37
  PropertiesResource,
@@ -48,10 +48,10 @@ from ..._response import (
48
48
  async_to_raw_response_wrapper,
49
49
  async_to_streamed_response_wrapper,
50
50
  )
51
- from ...pagination import SyncArrayPage, AsyncArrayPage
52
- from ..._base_client import AsyncPaginator, make_request_options
51
+ from ..._base_client import make_request_options
53
52
  from ...types.identity import Identity
54
53
  from ...types.identity_type import IdentityType
54
+ from ...types.identity_list_response import IdentityListResponse
55
55
  from ...types.identity_count_response import IdentityCountResponse
56
56
  from ...types.identity_property_param import IdentityPropertyParam
57
57
 
@@ -100,7 +100,6 @@ class IdentitiesResource(SyncAPIResource):
100
100
  block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
101
101
  project_id: Optional[str] | Omit = omit,
102
102
  properties: Optional[Iterable[IdentityPropertyParam]] | Omit = omit,
103
- x_project: str | Omit = omit,
104
103
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
105
104
  # The extra values given here take precedence over values defined on the client or passed to this method.
106
105
  extra_headers: Headers | None = None,
@@ -126,8 +125,6 @@ class IdentitiesResource(SyncAPIResource):
126
125
 
127
126
  properties: List of properties associated with the identity.
128
127
 
129
- x_project: The project slug to associate with the identity (cloud only).
130
-
131
128
  extra_headers: Send extra headers
132
129
 
133
130
  extra_query: Add additional query parameters to the request
@@ -136,7 +133,6 @@ class IdentitiesResource(SyncAPIResource):
136
133
 
137
134
  timeout: Override the client-level default timeout for this request, in seconds
138
135
  """
139
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
140
136
  return self._post(
141
137
  "/v1/identities/",
142
138
  body=maybe_transform(
@@ -210,7 +206,7 @@ class IdentitiesResource(SyncAPIResource):
210
206
  extra_query: Query | None = None,
211
207
  extra_body: Body | None = None,
212
208
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
213
- ) -> SyncArrayPage[Identity]:
209
+ ) -> IdentityListResponse:
214
210
  """
215
211
  Get a list of all identities in the database
216
212
 
@@ -238,9 +234,8 @@ class IdentitiesResource(SyncAPIResource):
238
234
 
239
235
  timeout: Override the client-level default timeout for this request, in seconds
240
236
  """
241
- return self._get_api_list(
237
+ return self._get(
242
238
  "/v1/identities/",
243
- page=SyncArrayPage[Identity],
244
239
  options=make_request_options(
245
240
  extra_headers=extra_headers,
246
241
  extra_query=extra_query,
@@ -261,7 +256,7 @@ class IdentitiesResource(SyncAPIResource):
261
256
  identity_list_params.IdentityListParams,
262
257
  ),
263
258
  ),
264
- model=Identity,
259
+ cast_to=IdentityListResponse,
265
260
  )
266
261
 
267
262
  def delete(
@@ -392,7 +387,6 @@ class IdentitiesResource(SyncAPIResource):
392
387
  block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
393
388
  project_id: Optional[str] | Omit = omit,
394
389
  properties: Optional[Iterable[IdentityPropertyParam]] | Omit = omit,
395
- x_project: str | Omit = omit,
396
390
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
397
391
  # The extra values given here take precedence over values defined on the client or passed to this method.
398
392
  extra_headers: Headers | None = None,
@@ -418,8 +412,6 @@ class IdentitiesResource(SyncAPIResource):
418
412
 
419
413
  properties: List of properties associated with the identity.
420
414
 
421
- x_project: The project slug to associate with the identity (cloud only).
422
-
423
415
  extra_headers: Send extra headers
424
416
 
425
417
  extra_query: Add additional query parameters to the request
@@ -428,7 +420,6 @@ class IdentitiesResource(SyncAPIResource):
428
420
 
429
421
  timeout: Override the client-level default timeout for this request, in seconds
430
422
  """
431
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
432
423
  return self._put(
433
424
  "/v1/identities/",
434
425
  body=maybe_transform(
@@ -492,7 +483,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
492
483
  block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
493
484
  project_id: Optional[str] | Omit = omit,
494
485
  properties: Optional[Iterable[IdentityPropertyParam]] | Omit = omit,
495
- x_project: str | Omit = omit,
496
486
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
497
487
  # The extra values given here take precedence over values defined on the client or passed to this method.
498
488
  extra_headers: Headers | None = None,
@@ -518,8 +508,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
518
508
 
519
509
  properties: List of properties associated with the identity.
520
510
 
521
- x_project: The project slug to associate with the identity (cloud only).
522
-
523
511
  extra_headers: Send extra headers
524
512
 
525
513
  extra_query: Add additional query parameters to the request
@@ -528,7 +516,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
528
516
 
529
517
  timeout: Override the client-level default timeout for this request, in seconds
530
518
  """
531
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
532
519
  return await self._post(
533
520
  "/v1/identities/",
534
521
  body=await async_maybe_transform(
@@ -584,7 +571,7 @@ class AsyncIdentitiesResource(AsyncAPIResource):
584
571
  cast_to=Identity,
585
572
  )
586
573
 
587
- def list(
574
+ async def list(
588
575
  self,
589
576
  *,
590
577
  after: Optional[str] | Omit = omit,
@@ -602,7 +589,7 @@ class AsyncIdentitiesResource(AsyncAPIResource):
602
589
  extra_query: Query | None = None,
603
590
  extra_body: Body | None = None,
604
591
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
605
- ) -> AsyncPaginator[Identity, AsyncArrayPage[Identity]]:
592
+ ) -> IdentityListResponse:
606
593
  """
607
594
  Get a list of all identities in the database
608
595
 
@@ -630,15 +617,14 @@ class AsyncIdentitiesResource(AsyncAPIResource):
630
617
 
631
618
  timeout: Override the client-level default timeout for this request, in seconds
632
619
  """
633
- return self._get_api_list(
620
+ return await self._get(
634
621
  "/v1/identities/",
635
- page=AsyncArrayPage[Identity],
636
622
  options=make_request_options(
637
623
  extra_headers=extra_headers,
638
624
  extra_query=extra_query,
639
625
  extra_body=extra_body,
640
626
  timeout=timeout,
641
- query=maybe_transform(
627
+ query=await async_maybe_transform(
642
628
  {
643
629
  "after": after,
644
630
  "before": before,
@@ -653,7 +639,7 @@ class AsyncIdentitiesResource(AsyncAPIResource):
653
639
  identity_list_params.IdentityListParams,
654
640
  ),
655
641
  ),
656
- model=Identity,
642
+ cast_to=IdentityListResponse,
657
643
  )
658
644
 
659
645
  async def delete(
@@ -784,7 +770,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
784
770
  block_ids: Optional[SequenceNotStr[str]] | Omit = omit,
785
771
  project_id: Optional[str] | Omit = omit,
786
772
  properties: Optional[Iterable[IdentityPropertyParam]] | Omit = omit,
787
- x_project: str | Omit = omit,
788
773
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
789
774
  # The extra values given here take precedence over values defined on the client or passed to this method.
790
775
  extra_headers: Headers | None = None,
@@ -810,8 +795,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
810
795
 
811
796
  properties: List of properties associated with the identity.
812
797
 
813
- x_project: The project slug to associate with the identity (cloud only).
814
-
815
798
  extra_headers: Send extra headers
816
799
 
817
800
  extra_query: Add additional query parameters to the request
@@ -820,7 +803,6 @@ class AsyncIdentitiesResource(AsyncAPIResource):
820
803
 
821
804
  timeout: Override the client-level default timeout for this request, in seconds
822
805
  """
823
- extra_headers = {**strip_not_given({"X-Project": x_project}), **(extra_headers or {})}
824
806
  return await self._put(
825
807
  "/v1/identities/",
826
808
  body=await async_maybe_transform(
@@ -0,0 +1,47 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .tools import (
4
+ ToolsResource,
5
+ AsyncToolsResource,
6
+ ToolsResourceWithRawResponse,
7
+ AsyncToolsResourceWithRawResponse,
8
+ ToolsResourceWithStreamingResponse,
9
+ AsyncToolsResourceWithStreamingResponse,
10
+ )
11
+ from .refresh import (
12
+ RefreshResource,
13
+ AsyncRefreshResource,
14
+ RefreshResourceWithRawResponse,
15
+ AsyncRefreshResourceWithRawResponse,
16
+ RefreshResourceWithStreamingResponse,
17
+ AsyncRefreshResourceWithStreamingResponse,
18
+ )
19
+ from .mcp_servers import (
20
+ McpServersResource,
21
+ AsyncMcpServersResource,
22
+ McpServersResourceWithRawResponse,
23
+ AsyncMcpServersResourceWithRawResponse,
24
+ McpServersResourceWithStreamingResponse,
25
+ AsyncMcpServersResourceWithStreamingResponse,
26
+ )
27
+
28
+ __all__ = [
29
+ "ToolsResource",
30
+ "AsyncToolsResource",
31
+ "ToolsResourceWithRawResponse",
32
+ "AsyncToolsResourceWithRawResponse",
33
+ "ToolsResourceWithStreamingResponse",
34
+ "AsyncToolsResourceWithStreamingResponse",
35
+ "RefreshResource",
36
+ "AsyncRefreshResource",
37
+ "RefreshResourceWithRawResponse",
38
+ "AsyncRefreshResourceWithRawResponse",
39
+ "RefreshResourceWithStreamingResponse",
40
+ "AsyncRefreshResourceWithStreamingResponse",
41
+ "McpServersResource",
42
+ "AsyncMcpServersResource",
43
+ "McpServersResourceWithRawResponse",
44
+ "AsyncMcpServersResourceWithRawResponse",
45
+ "McpServersResourceWithStreamingResponse",
46
+ "AsyncMcpServersResourceWithStreamingResponse",
47
+ ]