mixpeek 0.20.20__py3-none-any.whl → 0.21.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 (228) hide show
  1. mixpeek/_version.py +3 -3
  2. mixpeek/{assets.py → bucket_objects.py} +309 -793
  3. mixpeek/buckets.py +1292 -0
  4. mixpeek/clusters.py +306 -0
  5. mixpeek/collection_cache.py +820 -0
  6. mixpeek/{taxonomyentities.py → collection_documents.py} +305 -559
  7. mixpeek/collections.py +122 -996
  8. mixpeek/features.py +45 -991
  9. mixpeek/models/__init__.py +625 -570
  10. mixpeek/models/aggregationtype.py +13 -0
  11. mixpeek/models/apikeyupdate.py +1 -1
  12. mixpeek/models/attributebasedconfig.py +21 -0
  13. mixpeek/models/automaticnaming.py +29 -0
  14. mixpeek/models/basicfeatureextractor.py +35 -0
  15. mixpeek/models/{classify_features_v1_entities_taxonomies_taxonomy_classify_postop.py → batch_delete_documents_v1_collections_collection_identifier_documents_batch_deleteop.py} +17 -15
  16. mixpeek/models/{update_collection_v1_collections_collection_putop.py → batch_update_documents_v1_collections_collection_identifier_documents_batch_putop.py} +29 -19
  17. mixpeek/models/blobdetails.py +72 -0
  18. mixpeek/models/blobmodel.py +107 -0
  19. mixpeek/models/bucketcreaterequest.py +75 -0
  20. mixpeek/models/bucketresponse.py +90 -0
  21. mixpeek/models/bucketschema_input.py +37 -0
  22. mixpeek/models/bucketschema_output.py +37 -0
  23. mixpeek/models/{featureresponse.py → bucketschemafield_input.py} +45 -18
  24. mixpeek/models/bucketschemafield_output.py +101 -0
  25. mixpeek/models/bucketschemafieldtype.py +29 -0
  26. mixpeek/models/bucketupdaterequest.py +68 -0
  27. mixpeek/models/cachestats.py +40 -0
  28. mixpeek/models/{list_collections_v1_collections_getop.py → cleanup_cache_v1_collections_cache_cleanup_postop.py} +23 -12
  29. mixpeek/models/{inputtype.py → clusteringmethod.py} +3 -5
  30. mixpeek/models/clustertype.py +9 -0
  31. mixpeek/models/collectioncacheconfig_input.py +92 -0
  32. mixpeek/models/collectioncacheconfig_output.py +92 -0
  33. mixpeek/models/collectionconfig.py +32 -0
  34. mixpeek/models/collectionmodel.py +79 -8
  35. mixpeek/models/{create_taxonomy_v1_entities_taxonomies_postop.py → create_bucket_v1_buckets_create_postop.py} +7 -7
  36. mixpeek/models/{search_assets_v1_assets_search_postop.py → create_cluster_v1_clusters_postop.py} +7 -7
  37. mixpeek/models/{create_collection_v1_collections_postop.py → create_collection_v1_collections_create_postop.py} +3 -3
  38. mixpeek/models/{ingest_video_url_v1_ingest_videos_url_postop.py → create_interaction_v1_retrievers_interactions_postop.py} +7 -7
  39. mixpeek/models/{partial_asset_update_v1_assets_asset_id_patchop.py → create_object_v1_buckets_bucket_identifier_objects_create_postop.py} +11 -9
  40. mixpeek/models/{ingest_text_v1_ingest_text_postop.py → create_retriever_v1_retrievers_retrievers_postop.py} +10 -7
  41. mixpeek/models/{ingest_image_url_v1_ingest_images_url_postop.py → create_taxonomy_v1_taxonomies_postop.py} +7 -7
  42. mixpeek/models/createblobrequest.py +80 -0
  43. mixpeek/models/createclusterrequest.py +74 -0
  44. mixpeek/models/createcollectionrequest.py +72 -3
  45. mixpeek/models/createnamespacerequest.py +14 -8
  46. mixpeek/models/createobjectrequest.py +75 -0
  47. mixpeek/models/createretrieverrequest.py +90 -0
  48. mixpeek/models/{taxonomyupdate.py → createtaxonomyrequest.py} +15 -13
  49. mixpeek/models/{delete_asset_v1_assets_asset_id_deleteop.py → delete_bucket_v1_buckets_bucket_identifier_deleteop.py} +5 -5
  50. mixpeek/models/{delete_classifications_v1_entities_taxonomies_taxonomy_classifications_classification_id_deleteop.py → delete_document_v1_collections_collection_identifier_documents_document_id_deleteop.py} +11 -11
  51. mixpeek/models/{get_taxonomy_v1_entities_taxonomies_taxonomy_getop.py → delete_interaction_v1_retrievers_interactions_interaction_id_deleteop.py} +7 -7
  52. mixpeek/models/delete_object_v1_buckets_bucket_identifier_objects_object_identifier_deleteop.py +70 -0
  53. mixpeek/models/{featureextractionembeddingrequest.py → documenthandlingconfig.py} +12 -15
  54. mixpeek/models/documentinputhandling.py +11 -0
  55. mixpeek/models/{jsontextoutputsettings.py → documentlistresponse.py} +15 -14
  56. mixpeek/models/documentoutputhandling.py +10 -0
  57. mixpeek/models/documentoutputtype.py +11 -0
  58. mixpeek/models/documentresponse.py +87 -0
  59. mixpeek/models/{nodeupdate.py → documentupdate.py} +22 -13
  60. mixpeek/models/enrichmentfield.py +25 -0
  61. mixpeek/models/errordetail.py +1 -1
  62. mixpeek/models/{update_node_v1_entities_taxonomies_nodes_node_patchop.py → execute_retriever_v1_retrievers_retrievers_retriever_id_execute_postop.py} +11 -11
  63. mixpeek/models/featureextractorconfig.py +116 -0
  64. mixpeek/models/featureextractordefinition.py +192 -0
  65. mixpeek/models/filtercondition.py +25 -25
  66. mixpeek/models/filteroperator.py +24 -0
  67. mixpeek/models/generativemodels.py +10 -0
  68. mixpeek/models/{delete_feature_v1_features_feature_id_deleteop.py → get_bucket_v1_buckets_bucket_identifier_getop.py} +5 -5
  69. mixpeek/models/{list_taxonomies_v1_entities_taxonomies_getop.py → get_cache_stats_v1_collections_cache_stats_getop.py} +16 -14
  70. mixpeek/models/get_collection_v1_collections_collection_id_getop.py +59 -0
  71. mixpeek/models/get_document_v1_collections_collection_identifier_documents_document_id_getop.py +70 -0
  72. mixpeek/models/get_feature_extractor_v1_features_extractors_feature_id_getop.py +16 -0
  73. mixpeek/models/get_interaction_v1_retrievers_interactions_interaction_id_getop.py +57 -0
  74. mixpeek/models/{delete_collection_v1_collections_collection_deleteop.py → get_object_v1_buckets_bucket_identifier_objects_object_identifier_getop.py} +16 -7
  75. mixpeek/models/get_research_v1_research_getop.py +52 -0
  76. mixpeek/models/get_retriever_stages_v1_retrievers_stages_getop.py +52 -0
  77. mixpeek/models/{delete_taxonomy_v1_entities_taxonomies_taxonomy_deleteop.py → get_retriever_v1_retrievers_retrievers_retriever_id_getop.py} +5 -7
  78. mixpeek/models/get_task_v1_tasks_task_id_getop.py +1 -1
  79. mixpeek/models/getusagerequestmodel.py +91 -0
  80. mixpeek/models/hdbscanparameters.py +26 -0
  81. mixpeek/models/interactionresponse.py +86 -0
  82. mixpeek/models/interactiontype.py +22 -0
  83. mixpeek/models/{search_features_v1_features_search_postop.py → invalidate_cache_v1_collections_cache_invalidate_postop.py} +60 -34
  84. mixpeek/models/invalidationevent.py +67 -0
  85. mixpeek/models/invalidationstrategy.py +12 -0
  86. mixpeek/models/kill_task_v1_tasks_task_id_deleteop.py +1 -1
  87. mixpeek/models/list_active_tasks_v1_tasks_getop.py +1 -1
  88. mixpeek/models/{list_assets_v1_assets_postop.py → list_buckets_v1_buckets_postop.py} +18 -18
  89. mixpeek/models/{list_features_v1_features_postop.py → list_documents_v1_collections_collection_identifier_documents_getop.py} +54 -19
  90. mixpeek/models/list_interactions_v1_retrievers_interactions_getop.py +96 -0
  91. mixpeek/models/{list_classifications_v1_entities_taxonomies_taxonomy_classifications_postop.py → list_objects_v1_buckets_bucket_identifier_objects_postop.py} +22 -29
  92. mixpeek/models/{groupbyoptionsasset.py → listbucketsrequest.py} +19 -28
  93. mixpeek/models/listbucketsresponse.py +23 -0
  94. mixpeek/models/{groupbyoptions.py → listobjectsrequest.py} +19 -28
  95. mixpeek/models/listobjectsresponse.py +25 -0
  96. mixpeek/models/listtasksresponse.py +3 -6
  97. mixpeek/models/{logicaloperator.py → logicaloperator_input.py} +42 -24
  98. mixpeek/models/logicaloperator_output.py +121 -0
  99. mixpeek/models/multivectorindex.py +25 -0
  100. mixpeek/models/namespaceresponse.py +1 -1
  101. mixpeek/models/namespaceusage.py +45 -0
  102. mixpeek/models/namingmethod.py +8 -0
  103. mixpeek/models/objectresponse.py +124 -0
  104. mixpeek/models/{db_model_paginationresponse.py → paginationresponse.py} +3 -3
  105. mixpeek/models/payloadindexconfig.py +1 -1
  106. mixpeek/models/plan.py +82 -0
  107. mixpeek/models/recomputestrategy.py +12 -0
  108. mixpeek/models/resourcetotals.py +39 -0
  109. mixpeek/models/{jsonvideooutputsettings.py → retrieverbinding.py} +19 -11
  110. mixpeek/models/{logodetectsettings.py → retrievercacheconfig.py} +20 -11
  111. mixpeek/models/retrievermodel.py +95 -0
  112. mixpeek/models/retrieverqueryrequest.py +114 -0
  113. mixpeek/models/retrieverresponse.py +24 -0
  114. mixpeek/models/searchinteraction.py +81 -0
  115. mixpeek/models/singlelineageentry.py +99 -0
  116. mixpeek/models/sortdirection.py +11 -0
  117. mixpeek/models/sortoption.py +20 -12
  118. mixpeek/models/sourceconfig_input.py +72 -0
  119. mixpeek/models/sourceconfig_output.py +75 -0
  120. mixpeek/models/sourcetype.py +11 -0
  121. mixpeek/models/stageconfig_input.py +111 -0
  122. mixpeek/models/stageconfig_output.py +114 -0
  123. mixpeek/models/stagedefinition.py +110 -0
  124. mixpeek/models/{jsonimageoutputsettings.py → stageresponse.py} +21 -11
  125. mixpeek/models/taskresponse.py +1 -1
  126. mixpeek/models/taskstatus.py +1 -0
  127. mixpeek/models/{assetfeatures.py → taxonomyapplicationconfig.py} +23 -15
  128. mixpeek/models/taxonomyconfig.py +19 -0
  129. mixpeek/models/timeseriesdatapoint.py +25 -0
  130. mixpeek/models/timeseriesusage.py +36 -0
  131. mixpeek/models/{full_asset_update_v1_assets_asset_id_putop.py → update_bucket_v1_buckets_bucket_identifier_putop.py} +9 -9
  132. mixpeek/models/{update_taxonomy_v1_entities_taxonomies_taxonomy_patchop.py → update_document_v1_collections_collection_identifier_documents_document_id_putop.py} +25 -13
  133. mixpeek/models/{full_feature_update_v1_features_feature_id_putop.py → update_object_v1_buckets_bucket_identifier_objects_object_identifier_putop.py} +20 -9
  134. mixpeek/models/updatenamespacerequest.py +1 -1
  135. mixpeek/models/updateobjectrequest.py +75 -0
  136. mixpeek/models/usageresponse.py +86 -0
  137. mixpeek/models/usagesummary.py +39 -0
  138. mixpeek/models/usagetimerange.py +16 -0
  139. mixpeek/models/usermodel_input.py +3 -0
  140. mixpeek/models/usermodel_output.py +3 -0
  141. mixpeek/models/vectorbasedconfig.py +60 -0
  142. mixpeek/models/{collectionresult.py → vectorindex.py} +20 -15
  143. mixpeek/models/vectorindexdefinition.py +43 -0
  144. mixpeek/models/vectortype.py +4 -1
  145. mixpeek/namespaces.py +26 -480
  146. mixpeek/organization_notifications.py +214 -0
  147. mixpeek/organizations.py +6 -210
  148. mixpeek/{featureextractors.py → organizations_usage.py} +31 -39
  149. mixpeek/research.py +228 -0
  150. mixpeek/retriever_interactions.py +1036 -0
  151. mixpeek/retriever_stages.py +232 -0
  152. mixpeek/{ingestassets.py → retrievers.py} +209 -271
  153. mixpeek/sdk.py +40 -23
  154. mixpeek/taxonomies.py +43 -513
  155. mixpeek/types/basemodel.py +3 -3
  156. mixpeek/utils/enums.py +67 -27
  157. {mixpeek-0.20.20.dist-info → mixpeek-0.21.1.dist-info}/METADATA +68 -50
  158. mixpeek-0.21.1.dist-info/RECORD +216 -0
  159. {mixpeek-0.20.20.dist-info → mixpeek-0.21.1.dist-info}/WHEEL +1 -1
  160. mixpeek/models/actionusage.py +0 -16
  161. mixpeek/models/assetresponse.py +0 -166
  162. mixpeek/models/assets_model_searchquery.py +0 -21
  163. mixpeek/models/assetupdate.py +0 -28
  164. mixpeek/models/assignmentconfig.py +0 -67
  165. mixpeek/models/assignmentmode.py +0 -11
  166. mixpeek/models/availablemodels.py +0 -16
  167. mixpeek/models/availablemodelsresponse.py +0 -27
  168. mixpeek/models/classificationmatch.py +0 -77
  169. mixpeek/models/classificationwithfeature.py +0 -73
  170. mixpeek/models/collectiondetailsresponse.py +0 -83
  171. mixpeek/models/dateusage.py +0 -22
  172. mixpeek/models/denseembedding.py +0 -16
  173. mixpeek/models/discoverrequest.py +0 -64
  174. mixpeek/models/embeddingconfig.py +0 -33
  175. mixpeek/models/embeddingrequest.py +0 -92
  176. mixpeek/models/embeddingresponse.py +0 -64
  177. mixpeek/models/entitysettings.py +0 -50
  178. mixpeek/models/featureoptions.py +0 -25
  179. mixpeek/models/features_model_paginationresponse.py +0 -59
  180. mixpeek/models/featureupdaterequest.py +0 -21
  181. mixpeek/models/get_asset_v1_assets_asset_id_getop.py +0 -73
  182. mixpeek/models/get_asset_with_features_v1_assets_asset_id_features_getop.py +0 -73
  183. mixpeek/models/get_collection_details_v1_collections_collection_details_getop.py +0 -59
  184. mixpeek/models/get_collection_details_v1_collections_collection_getop.py +0 -59
  185. mixpeek/models/get_feature_v1_features_feature_id_getop.py +0 -70
  186. mixpeek/models/get_taxonomy_node_v1_entities_taxonomies_nodes_node_getop.py +0 -59
  187. mixpeek/models/groupedassetdata.py +0 -18
  188. mixpeek/models/imagedescribesettings.py +0 -82
  189. mixpeek/models/imagedetectsettings.py +0 -47
  190. mixpeek/models/imagereadsettings.py +0 -71
  191. mixpeek/models/imagesettings.py +0 -92
  192. mixpeek/models/listassetsrequest.py +0 -75
  193. mixpeek/models/listassetsresponse.py +0 -22
  194. mixpeek/models/listclassificationsrequest.py +0 -69
  195. mixpeek/models/listclassificationsresponse.py +0 -31
  196. mixpeek/models/listcollectionsresponse.py +0 -22
  197. mixpeek/models/listfeaturesrequest.py +0 -77
  198. mixpeek/models/listfeaturesresponse.py +0 -22
  199. mixpeek/models/listtaxonomiesresponse.py +0 -24
  200. mixpeek/models/modality.py +0 -13
  201. mixpeek/models/modeldetails.py +0 -61
  202. mixpeek/models/nodeoptions.py +0 -16
  203. mixpeek/models/patch_namespace_v1_namespaces_namespace_patchop.py +0 -28
  204. mixpeek/models/payloadindextype.py +0 -17
  205. mixpeek/models/processimageurlinput.py +0 -87
  206. mixpeek/models/processtextinput.py +0 -82
  207. mixpeek/models/processvideourlinput.py +0 -87
  208. mixpeek/models/querysettings.py +0 -56
  209. mixpeek/models/rerankingoptions.py +0 -47
  210. mixpeek/models/search_model_searchquery.py +0 -76
  211. mixpeek/models/searchassetsrequest.py +0 -78
  212. mixpeek/models/searchrequestfeatures.py +0 -153
  213. mixpeek/models/sparseembedding.py +0 -21
  214. mixpeek/models/taxonomycreate.py +0 -20
  215. mixpeek/models/taxonomyextractionconfig.py +0 -26
  216. mixpeek/models/taxonomymodel.py +0 -27
  217. mixpeek/models/taxonomynode.py +0 -101
  218. mixpeek/models/taxonomynodecreate.py +0 -63
  219. mixpeek/models/textsettings.py +0 -67
  220. mixpeek/models/updateassetrequest.py +0 -60
  221. mixpeek/models/usage.py +0 -18
  222. mixpeek/models/vectormodel.py +0 -15
  223. mixpeek/models/videodescribesettings.py +0 -82
  224. mixpeek/models/videodetectsettings.py +0 -47
  225. mixpeek/models/videoreadsettings.py +0 -71
  226. mixpeek/models/videosettings.py +0 -115
  227. mixpeek/models/videotranscriptionsettings.py +0 -69
  228. mixpeek-0.20.20.dist-info/RECORD +0 -201
@@ -3,34 +3,33 @@
3
3
  from .basesdk import BaseSDK
4
4
  from mixpeek import models, utils
5
5
  from mixpeek._hooks import HookContext
6
- from mixpeek.types import OptionalNullable, UNSET
6
+ from mixpeek.types import Nullable, OptionalNullable, UNSET
7
7
  from mixpeek.utils import get_security_from_env
8
- from typing import Any, List, Mapping, Optional, Union
8
+ from typing import Any, Dict, List, Mapping, Optional, Union
9
9
 
10
10
 
11
- class TaxonomyEntities(BaseSDK):
12
- def create(
11
+ class CollectionDocuments(BaseSDK):
12
+ def get_document_v1_collections_collection_identifier_documents_document_id_get(
13
13
  self,
14
14
  *,
15
- taxonomy_name: str,
16
- nodes: Union[
17
- List[models.TaxonomyNodeCreate], List[models.TaxonomyNodeCreateTypedDict]
18
- ],
15
+ collection_identifier: str,
16
+ document_id: str,
19
17
  x_namespace: OptionalNullable[str] = UNSET,
20
18
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
21
19
  server_url: Optional[str] = None,
22
20
  timeout_ms: Optional[int] = None,
23
21
  http_headers: Optional[Mapping[str, str]] = None,
24
- ) -> models.TaskResponse:
25
- r"""Create Taxonomy
22
+ ) -> models.DocumentResponse:
23
+ r"""Get Document
24
+
25
+ Get a document by ID.
26
26
 
27
- Register new taxonomies with their descriptions
28
27
 
29
28
  **Requirements:**
30
- - Required permissions: write
29
+ - Required permissions: read
31
30
 
32
- :param taxonomy_name: Taxonomy name (must not contain spaces or special characters)
33
- :param nodes:
31
+ :param collection_identifier: The ID of the collection
32
+ :param document_id: The ID of the document to retrieve
34
33
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
35
34
  :param retries: Override the default retry configuration for this method
36
35
  :param server_url: Override the default server URL for this method
@@ -47,30 +46,25 @@ class TaxonomyEntities(BaseSDK):
47
46
  else:
48
47
  base_url = self._get_url(base_url, url_variables)
49
48
 
50
- request = models.CreateTaxonomyV1EntitiesTaxonomiesPostRequest(
49
+ request = models.GetDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDGetRequest(
50
+ collection_identifier=collection_identifier,
51
+ document_id=document_id,
51
52
  x_namespace=x_namespace,
52
- taxonomy_create=models.TaxonomyCreate(
53
- taxonomy_name=taxonomy_name,
54
- nodes=utils.get_pydantic_model(nodes, List[models.TaxonomyNodeCreate]),
55
- ),
56
53
  )
57
54
 
58
55
  req = self._build_request(
59
- method="POST",
60
- path="/v1/entities/taxonomies",
56
+ method="GET",
57
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
61
58
  base_url=base_url,
62
59
  url_variables=url_variables,
63
60
  request=request,
64
- request_body_required=True,
65
- request_has_path_params=False,
61
+ request_body_required=False,
62
+ request_has_path_params=True,
66
63
  request_has_query_params=True,
67
64
  user_agent_header="user-agent",
68
65
  accept_header_value="application/json",
69
66
  http_headers=http_headers,
70
67
  security=self.sdk_configuration.security,
71
- get_serialized_body=lambda: utils.serialize_request_body(
72
- request.taxonomy_create, False, False, "json", models.TaxonomyCreate
73
- ),
74
68
  timeout_ms=timeout_ms,
75
69
  )
76
70
 
@@ -85,7 +79,7 @@ class TaxonomyEntities(BaseSDK):
85
79
  http_res = self.do_request(
86
80
  hook_ctx=HookContext(
87
81
  base_url=base_url or "",
88
- operation_id="create_taxonomy_v1_entities_taxonomies_post",
82
+ operation_id="get_document_v1_collections__collection_identifier__documents__document_id__get",
89
83
  oauth2_scopes=[],
90
84
  security_source=get_security_from_env(
91
85
  self.sdk_configuration.security, models.Security
@@ -98,7 +92,7 @@ class TaxonomyEntities(BaseSDK):
98
92
 
99
93
  response_data: Any = None
100
94
  if utils.match_response(http_res, "200", "application/json"):
101
- return utils.unmarshal_json(http_res.text, models.TaskResponse)
95
+ return utils.unmarshal_json(http_res.text, models.DocumentResponse)
102
96
  if utils.match_response(
103
97
  http_res, ["400", "401", "403", "404"], "application/json"
104
98
  ):
@@ -136,28 +130,27 @@ class TaxonomyEntities(BaseSDK):
136
130
  http_res,
137
131
  )
138
132
 
139
- async def create_async(
133
+ async def get_document_v1_collections_collection_identifier_documents_document_id_get_async(
140
134
  self,
141
135
  *,
142
- taxonomy_name: str,
143
- nodes: Union[
144
- List[models.TaxonomyNodeCreate], List[models.TaxonomyNodeCreateTypedDict]
145
- ],
136
+ collection_identifier: str,
137
+ document_id: str,
146
138
  x_namespace: OptionalNullable[str] = UNSET,
147
139
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
148
140
  server_url: Optional[str] = None,
149
141
  timeout_ms: Optional[int] = None,
150
142
  http_headers: Optional[Mapping[str, str]] = None,
151
- ) -> models.TaskResponse:
152
- r"""Create Taxonomy
143
+ ) -> models.DocumentResponse:
144
+ r"""Get Document
145
+
146
+ Get a document by ID.
153
147
 
154
- Register new taxonomies with their descriptions
155
148
 
156
149
  **Requirements:**
157
- - Required permissions: write
150
+ - Required permissions: read
158
151
 
159
- :param taxonomy_name: Taxonomy name (must not contain spaces or special characters)
160
- :param nodes:
152
+ :param collection_identifier: The ID of the collection
153
+ :param document_id: The ID of the document to retrieve
161
154
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
162
155
  :param retries: Override the default retry configuration for this method
163
156
  :param server_url: Override the default server URL for this method
@@ -174,30 +167,25 @@ class TaxonomyEntities(BaseSDK):
174
167
  else:
175
168
  base_url = self._get_url(base_url, url_variables)
176
169
 
177
- request = models.CreateTaxonomyV1EntitiesTaxonomiesPostRequest(
170
+ request = models.GetDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDGetRequest(
171
+ collection_identifier=collection_identifier,
172
+ document_id=document_id,
178
173
  x_namespace=x_namespace,
179
- taxonomy_create=models.TaxonomyCreate(
180
- taxonomy_name=taxonomy_name,
181
- nodes=utils.get_pydantic_model(nodes, List[models.TaxonomyNodeCreate]),
182
- ),
183
174
  )
184
175
 
185
176
  req = self._build_request_async(
186
- method="POST",
187
- path="/v1/entities/taxonomies",
177
+ method="GET",
178
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
188
179
  base_url=base_url,
189
180
  url_variables=url_variables,
190
181
  request=request,
191
- request_body_required=True,
192
- request_has_path_params=False,
182
+ request_body_required=False,
183
+ request_has_path_params=True,
193
184
  request_has_query_params=True,
194
185
  user_agent_header="user-agent",
195
186
  accept_header_value="application/json",
196
187
  http_headers=http_headers,
197
188
  security=self.sdk_configuration.security,
198
- get_serialized_body=lambda: utils.serialize_request_body(
199
- request.taxonomy_create, False, False, "json", models.TaxonomyCreate
200
- ),
201
189
  timeout_ms=timeout_ms,
202
190
  )
203
191
 
@@ -212,7 +200,7 @@ class TaxonomyEntities(BaseSDK):
212
200
  http_res = await self.do_request_async(
213
201
  hook_ctx=HookContext(
214
202
  base_url=base_url or "",
215
- operation_id="create_taxonomy_v1_entities_taxonomies_post",
203
+ operation_id="get_document_v1_collections__collection_identifier__documents__document_id__get",
216
204
  oauth2_scopes=[],
217
205
  security_source=get_security_from_env(
218
206
  self.sdk_configuration.security, models.Security
@@ -225,7 +213,7 @@ class TaxonomyEntities(BaseSDK):
225
213
 
226
214
  response_data: Any = None
227
215
  if utils.match_response(http_res, "200", "application/json"):
228
- return utils.unmarshal_json(http_res.text, models.TaskResponse)
216
+ return utils.unmarshal_json(http_res.text, models.DocumentResponse)
229
217
  if utils.match_response(
230
218
  http_res, ["400", "401", "403", "404"], "application/json"
231
219
  ):
@@ -263,141 +251,34 @@ class TaxonomyEntities(BaseSDK):
263
251
  http_res,
264
252
  )
265
253
 
266
- def list(
254
+ def update_document_v1_collections_collection_identifier_documents_document_id_put(
267
255
  self,
268
256
  *,
269
- offset_id: OptionalNullable[str] = UNSET,
270
- page_size: Optional[int] = 10,
257
+ collection_identifier: str,
258
+ document_id: str,
271
259
  x_namespace: OptionalNullable[str] = UNSET,
260
+ metadata: OptionalNullable[
261
+ Union[models.DocumentUpdateMetadata, models.DocumentUpdateMetadataTypedDict]
262
+ ] = UNSET,
263
+ vectors: OptionalNullable[Dict[str, List[float]]] = UNSET,
272
264
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
273
265
  server_url: Optional[str] = None,
274
266
  timeout_ms: Optional[int] = None,
275
267
  http_headers: Optional[Mapping[str, str]] = None,
276
- ) -> models.ListTaxonomiesResponse:
277
- r"""List Taxonomies
278
-
279
- Get all taxonomies for the current namespace
280
-
281
- :param offset_id: The offset id to start returning results from. Used for pagination
282
- :param page_size:
283
- :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
284
- :param retries: Override the default retry configuration for this method
285
- :param server_url: Override the default server URL for this method
286
- :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
287
- :param http_headers: Additional headers to set or replace on requests.
288
- """
289
- base_url = None
290
- url_variables = None
291
- if timeout_ms is None:
292
- timeout_ms = self.sdk_configuration.timeout_ms
293
-
294
- if server_url is not None:
295
- base_url = server_url
296
- else:
297
- base_url = self._get_url(base_url, url_variables)
298
-
299
- request = models.ListTaxonomiesV1EntitiesTaxonomiesGetRequest(
300
- offset_id=offset_id,
301
- page_size=page_size,
302
- x_namespace=x_namespace,
303
- )
304
-
305
- req = self._build_request(
306
- method="GET",
307
- path="/v1/entities/taxonomies",
308
- base_url=base_url,
309
- url_variables=url_variables,
310
- request=request,
311
- request_body_required=False,
312
- request_has_path_params=False,
313
- request_has_query_params=True,
314
- user_agent_header="user-agent",
315
- accept_header_value="application/json",
316
- http_headers=http_headers,
317
- security=self.sdk_configuration.security,
318
- timeout_ms=timeout_ms,
319
- )
320
-
321
- if retries == UNSET:
322
- if self.sdk_configuration.retry_config is not UNSET:
323
- retries = self.sdk_configuration.retry_config
324
-
325
- retry_config = None
326
- if isinstance(retries, utils.RetryConfig):
327
- retry_config = (retries, ["429", "500", "502", "503", "504"])
328
-
329
- http_res = self.do_request(
330
- hook_ctx=HookContext(
331
- base_url=base_url or "",
332
- operation_id="list_taxonomies_v1_entities_taxonomies_get",
333
- oauth2_scopes=[],
334
- security_source=get_security_from_env(
335
- self.sdk_configuration.security, models.Security
336
- ),
337
- ),
338
- request=req,
339
- error_status_codes=["400", "401", "403", "404", "422", "4XX", "500", "5XX"],
340
- retry_config=retry_config,
341
- )
342
-
343
- response_data: Any = None
344
- if utils.match_response(http_res, "200", "application/json"):
345
- return utils.unmarshal_json(http_res.text, models.ListTaxonomiesResponse)
346
- if utils.match_response(
347
- http_res, ["400", "401", "403", "404"], "application/json"
348
- ):
349
- response_data = utils.unmarshal_json(
350
- http_res.text, models.ErrorResponseData
351
- )
352
- raise models.ErrorResponse(data=response_data)
353
- if utils.match_response(http_res, "422", "application/json"):
354
- response_data = utils.unmarshal_json(
355
- http_res.text, models.HTTPValidationErrorData
356
- )
357
- raise models.HTTPValidationError(data=response_data)
358
- if utils.match_response(http_res, "500", "application/json"):
359
- response_data = utils.unmarshal_json(
360
- http_res.text, models.ErrorResponseData
361
- )
362
- raise models.ErrorResponse(data=response_data)
363
- if utils.match_response(http_res, "4XX", "*"):
364
- http_res_text = utils.stream_to_text(http_res)
365
- raise models.APIError(
366
- "API error occurred", http_res.status_code, http_res_text, http_res
367
- )
368
- if utils.match_response(http_res, "5XX", "*"):
369
- http_res_text = utils.stream_to_text(http_res)
370
- raise models.APIError(
371
- "API error occurred", http_res.status_code, http_res_text, http_res
372
- )
268
+ ) -> models.DocumentResponse:
269
+ r"""Update Document
373
270
 
374
- content_type = http_res.headers.get("Content-Type")
375
- http_res_text = utils.stream_to_text(http_res)
376
- raise models.APIError(
377
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
378
- http_res.status_code,
379
- http_res_text,
380
- http_res,
381
- )
271
+ Update an existing document.
382
272
 
383
- async def list_async(
384
- self,
385
- *,
386
- offset_id: OptionalNullable[str] = UNSET,
387
- page_size: Optional[int] = 10,
388
- x_namespace: OptionalNullable[str] = UNSET,
389
- retries: OptionalNullable[utils.RetryConfig] = UNSET,
390
- server_url: Optional[str] = None,
391
- timeout_ms: Optional[int] = None,
392
- http_headers: Optional[Mapping[str, str]] = None,
393
- ) -> models.ListTaxonomiesResponse:
394
- r"""List Taxonomies
395
273
 
396
- Get all taxonomies for the current namespace
274
+ **Requirements:**
275
+ - Required permissions: write
397
276
 
398
- :param offset_id: The offset id to start returning results from. Used for pagination
399
- :param page_size:
277
+ :param collection_identifier: The ID of the collection
278
+ :param document_id: The ID of the document to update
400
279
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
280
+ :param metadata:
281
+ :param vectors:
401
282
  :param retries: Override the default retry configuration for this method
402
283
  :param server_url: Override the default server URL for this method
403
284
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -413,129 +294,21 @@ class TaxonomyEntities(BaseSDK):
413
294
  else:
414
295
  base_url = self._get_url(base_url, url_variables)
415
296
 
416
- request = models.ListTaxonomiesV1EntitiesTaxonomiesGetRequest(
417
- offset_id=offset_id,
418
- page_size=page_size,
297
+ request = models.UpdateDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDPutRequest(
298
+ collection_identifier=collection_identifier,
299
+ document_id=document_id,
419
300
  x_namespace=x_namespace,
420
- )
421
-
422
- req = self._build_request_async(
423
- method="GET",
424
- path="/v1/entities/taxonomies",
425
- base_url=base_url,
426
- url_variables=url_variables,
427
- request=request,
428
- request_body_required=False,
429
- request_has_path_params=False,
430
- request_has_query_params=True,
431
- user_agent_header="user-agent",
432
- accept_header_value="application/json",
433
- http_headers=http_headers,
434
- security=self.sdk_configuration.security,
435
- timeout_ms=timeout_ms,
436
- )
437
-
438
- if retries == UNSET:
439
- if self.sdk_configuration.retry_config is not UNSET:
440
- retries = self.sdk_configuration.retry_config
441
-
442
- retry_config = None
443
- if isinstance(retries, utils.RetryConfig):
444
- retry_config = (retries, ["429", "500", "502", "503", "504"])
445
-
446
- http_res = await self.do_request_async(
447
- hook_ctx=HookContext(
448
- base_url=base_url or "",
449
- operation_id="list_taxonomies_v1_entities_taxonomies_get",
450
- oauth2_scopes=[],
451
- security_source=get_security_from_env(
452
- self.sdk_configuration.security, models.Security
301
+ document_update=models.DocumentUpdate(
302
+ metadata=utils.get_pydantic_model(
303
+ metadata, OptionalNullable[models.DocumentUpdateMetadata]
453
304
  ),
305
+ vectors=vectors,
454
306
  ),
455
- request=req,
456
- error_status_codes=["400", "401", "403", "404", "422", "4XX", "500", "5XX"],
457
- retry_config=retry_config,
458
- )
459
-
460
- response_data: Any = None
461
- if utils.match_response(http_res, "200", "application/json"):
462
- return utils.unmarshal_json(http_res.text, models.ListTaxonomiesResponse)
463
- if utils.match_response(
464
- http_res, ["400", "401", "403", "404"], "application/json"
465
- ):
466
- response_data = utils.unmarshal_json(
467
- http_res.text, models.ErrorResponseData
468
- )
469
- raise models.ErrorResponse(data=response_data)
470
- if utils.match_response(http_res, "422", "application/json"):
471
- response_data = utils.unmarshal_json(
472
- http_res.text, models.HTTPValidationErrorData
473
- )
474
- raise models.HTTPValidationError(data=response_data)
475
- if utils.match_response(http_res, "500", "application/json"):
476
- response_data = utils.unmarshal_json(
477
- http_res.text, models.ErrorResponseData
478
- )
479
- raise models.ErrorResponse(data=response_data)
480
- if utils.match_response(http_res, "4XX", "*"):
481
- http_res_text = await utils.stream_to_text_async(http_res)
482
- raise models.APIError(
483
- "API error occurred", http_res.status_code, http_res_text, http_res
484
- )
485
- if utils.match_response(http_res, "5XX", "*"):
486
- http_res_text = await utils.stream_to_text_async(http_res)
487
- raise models.APIError(
488
- "API error occurred", http_res.status_code, http_res_text, http_res
489
- )
490
-
491
- content_type = http_res.headers.get("Content-Type")
492
- http_res_text = await utils.stream_to_text_async(http_res)
493
- raise models.APIError(
494
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
495
- http_res.status_code,
496
- http_res_text,
497
- http_res,
498
- )
499
-
500
- def get_node(
501
- self,
502
- *,
503
- node: str,
504
- x_namespace: OptionalNullable[str] = UNSET,
505
- retries: OptionalNullable[utils.RetryConfig] = UNSET,
506
- server_url: Optional[str] = None,
507
- timeout_ms: Optional[int] = None,
508
- http_headers: Optional[Mapping[str, str]] = None,
509
- ) -> models.TaxonomyNode:
510
- r"""Get Taxonomy Node
511
-
512
- Get the complete taxonomy that contains the specified node
513
-
514
- :param node: The ID or name of the node to find the taxonomy for
515
- :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
516
- :param retries: Override the default retry configuration for this method
517
- :param server_url: Override the default server URL for this method
518
- :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
519
- :param http_headers: Additional headers to set or replace on requests.
520
- """
521
- base_url = None
522
- url_variables = None
523
- if timeout_ms is None:
524
- timeout_ms = self.sdk_configuration.timeout_ms
525
-
526
- if server_url is not None:
527
- base_url = server_url
528
- else:
529
- base_url = self._get_url(base_url, url_variables)
530
-
531
- request = models.GetTaxonomyNodeV1EntitiesTaxonomiesNodesNodeGetRequest(
532
- node=node,
533
- x_namespace=x_namespace,
534
307
  )
535
308
 
536
309
  req = self._build_request(
537
- method="GET",
538
- path="/v1/entities/taxonomies/nodes/{node}",
310
+ method="PUT",
311
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
539
312
  base_url=base_url,
540
313
  url_variables=url_variables,
541
314
  request=request,
@@ -546,6 +319,13 @@ class TaxonomyEntities(BaseSDK):
546
319
  accept_header_value="application/json",
547
320
  http_headers=http_headers,
548
321
  security=self.sdk_configuration.security,
322
+ get_serialized_body=lambda: utils.serialize_request_body(
323
+ request.document_update,
324
+ False,
325
+ True,
326
+ "json",
327
+ Optional[models.DocumentUpdate],
328
+ ),
549
329
  timeout_ms=timeout_ms,
550
330
  )
551
331
 
@@ -560,7 +340,7 @@ class TaxonomyEntities(BaseSDK):
560
340
  http_res = self.do_request(
561
341
  hook_ctx=HookContext(
562
342
  base_url=base_url or "",
563
- operation_id="get_taxonomy_node_v1_entities_taxonomies_nodes__node__get",
343
+ operation_id="update_document_v1_collections__collection_identifier__documents__document_id__put",
564
344
  oauth2_scopes=[],
565
345
  security_source=get_security_from_env(
566
346
  self.sdk_configuration.security, models.Security
@@ -573,7 +353,7 @@ class TaxonomyEntities(BaseSDK):
573
353
 
574
354
  response_data: Any = None
575
355
  if utils.match_response(http_res, "200", "application/json"):
576
- return utils.unmarshal_json(http_res.text, models.TaxonomyNode)
356
+ return utils.unmarshal_json(http_res.text, models.DocumentResponse)
577
357
  if utils.match_response(
578
358
  http_res, ["400", "401", "403", "404"], "application/json"
579
359
  ):
@@ -611,22 +391,34 @@ class TaxonomyEntities(BaseSDK):
611
391
  http_res,
612
392
  )
613
393
 
614
- async def get_node_async(
394
+ async def update_document_v1_collections_collection_identifier_documents_document_id_put_async(
615
395
  self,
616
396
  *,
617
- node: str,
397
+ collection_identifier: str,
398
+ document_id: str,
618
399
  x_namespace: OptionalNullable[str] = UNSET,
400
+ metadata: OptionalNullable[
401
+ Union[models.DocumentUpdateMetadata, models.DocumentUpdateMetadataTypedDict]
402
+ ] = UNSET,
403
+ vectors: OptionalNullable[Dict[str, List[float]]] = UNSET,
619
404
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
620
405
  server_url: Optional[str] = None,
621
406
  timeout_ms: Optional[int] = None,
622
407
  http_headers: Optional[Mapping[str, str]] = None,
623
- ) -> models.TaxonomyNode:
624
- r"""Get Taxonomy Node
408
+ ) -> models.DocumentResponse:
409
+ r"""Update Document
410
+
411
+ Update an existing document.
625
412
 
626
- Get the complete taxonomy that contains the specified node
627
413
 
628
- :param node: The ID or name of the node to find the taxonomy for
414
+ **Requirements:**
415
+ - Required permissions: write
416
+
417
+ :param collection_identifier: The ID of the collection
418
+ :param document_id: The ID of the document to update
629
419
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
420
+ :param metadata:
421
+ :param vectors:
630
422
  :param retries: Override the default retry configuration for this method
631
423
  :param server_url: Override the default server URL for this method
632
424
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -642,14 +434,21 @@ class TaxonomyEntities(BaseSDK):
642
434
  else:
643
435
  base_url = self._get_url(base_url, url_variables)
644
436
 
645
- request = models.GetTaxonomyNodeV1EntitiesTaxonomiesNodesNodeGetRequest(
646
- node=node,
437
+ request = models.UpdateDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDPutRequest(
438
+ collection_identifier=collection_identifier,
439
+ document_id=document_id,
647
440
  x_namespace=x_namespace,
441
+ document_update=models.DocumentUpdate(
442
+ metadata=utils.get_pydantic_model(
443
+ metadata, OptionalNullable[models.DocumentUpdateMetadata]
444
+ ),
445
+ vectors=vectors,
446
+ ),
648
447
  )
649
448
 
650
449
  req = self._build_request_async(
651
- method="GET",
652
- path="/v1/entities/taxonomies/nodes/{node}",
450
+ method="PUT",
451
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
653
452
  base_url=base_url,
654
453
  url_variables=url_variables,
655
454
  request=request,
@@ -660,6 +459,13 @@ class TaxonomyEntities(BaseSDK):
660
459
  accept_header_value="application/json",
661
460
  http_headers=http_headers,
662
461
  security=self.sdk_configuration.security,
462
+ get_serialized_body=lambda: utils.serialize_request_body(
463
+ request.document_update,
464
+ False,
465
+ True,
466
+ "json",
467
+ Optional[models.DocumentUpdate],
468
+ ),
663
469
  timeout_ms=timeout_ms,
664
470
  )
665
471
 
@@ -674,7 +480,7 @@ class TaxonomyEntities(BaseSDK):
674
480
  http_res = await self.do_request_async(
675
481
  hook_ctx=HookContext(
676
482
  base_url=base_url or "",
677
- operation_id="get_taxonomy_node_v1_entities_taxonomies_nodes__node__get",
483
+ operation_id="update_document_v1_collections__collection_identifier__documents__document_id__put",
678
484
  oauth2_scopes=[],
679
485
  security_source=get_security_from_env(
680
486
  self.sdk_configuration.security, models.Security
@@ -687,7 +493,7 @@ class TaxonomyEntities(BaseSDK):
687
493
 
688
494
  response_data: Any = None
689
495
  if utils.match_response(http_res, "200", "application/json"):
690
- return utils.unmarshal_json(http_res.text, models.TaxonomyNode)
496
+ return utils.unmarshal_json(http_res.text, models.DocumentResponse)
691
497
  if utils.match_response(
692
498
  http_res, ["400", "401", "403", "404"], "application/json"
693
499
  ):
@@ -725,29 +531,28 @@ class TaxonomyEntities(BaseSDK):
725
531
  http_res,
726
532
  )
727
533
 
728
- def update_node(
534
+ def delete_document_v1_collections_collection_identifier_documents_document_id_delete(
729
535
  self,
730
536
  *,
731
- node: str,
732
- node_name: str,
537
+ collection_identifier: str,
538
+ document_id: str,
733
539
  x_namespace: OptionalNullable[str] = UNSET,
734
- node_description: OptionalNullable[str] = UNSET,
735
540
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
736
541
  server_url: Optional[str] = None,
737
542
  timeout_ms: Optional[int] = None,
738
543
  http_headers: Optional[Mapping[str, str]] = None,
739
- ) -> models.TaxonomyNode:
740
- r"""Update Node
544
+ ) -> models.GenericSuccessResponse:
545
+ r"""Delete Document
546
+
547
+ Delete a document.
741
548
 
742
- Update an existing taxonomy node
743
549
 
744
550
  **Requirements:**
745
551
  - Required permissions: write
746
552
 
747
- :param node: The ID or name of the node to update
748
- :param node_name: Name of the taxonomy node (must be lowercase without spaces)
553
+ :param collection_identifier: The ID of the collection
554
+ :param document_id: The ID of the document to delete
749
555
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
750
- :param node_description: Optional description of what this node represents
751
556
  :param retries: Override the default retry configuration for this method
752
557
  :param server_url: Override the default server URL for this method
753
558
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -763,31 +568,25 @@ class TaxonomyEntities(BaseSDK):
763
568
  else:
764
569
  base_url = self._get_url(base_url, url_variables)
765
570
 
766
- request = models.UpdateNodeV1EntitiesTaxonomiesNodesNodePatchRequest(
767
- node=node,
571
+ request = models.DeleteDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDDeleteRequest(
572
+ collection_identifier=collection_identifier,
573
+ document_id=document_id,
768
574
  x_namespace=x_namespace,
769
- node_update=models.NodeUpdate(
770
- node_name=node_name,
771
- node_description=node_description,
772
- ),
773
575
  )
774
576
 
775
577
  req = self._build_request(
776
- method="PATCH",
777
- path="/v1/entities/taxonomies/nodes/{node}",
578
+ method="DELETE",
579
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
778
580
  base_url=base_url,
779
581
  url_variables=url_variables,
780
582
  request=request,
781
- request_body_required=True,
583
+ request_body_required=False,
782
584
  request_has_path_params=True,
783
585
  request_has_query_params=True,
784
586
  user_agent_header="user-agent",
785
587
  accept_header_value="application/json",
786
588
  http_headers=http_headers,
787
589
  security=self.sdk_configuration.security,
788
- get_serialized_body=lambda: utils.serialize_request_body(
789
- request.node_update, False, False, "json", models.NodeUpdate
790
- ),
791
590
  timeout_ms=timeout_ms,
792
591
  )
793
592
 
@@ -802,7 +601,7 @@ class TaxonomyEntities(BaseSDK):
802
601
  http_res = self.do_request(
803
602
  hook_ctx=HookContext(
804
603
  base_url=base_url or "",
805
- operation_id="update_node_v1_entities_taxonomies_nodes__node__patch",
604
+ operation_id="delete_document_v1_collections__collection_identifier__documents__document_id__delete",
806
605
  oauth2_scopes=[],
807
606
  security_source=get_security_from_env(
808
607
  self.sdk_configuration.security, models.Security
@@ -815,7 +614,7 @@ class TaxonomyEntities(BaseSDK):
815
614
 
816
615
  response_data: Any = None
817
616
  if utils.match_response(http_res, "200", "application/json"):
818
- return utils.unmarshal_json(http_res.text, models.TaxonomyNode)
617
+ return utils.unmarshal_json(http_res.text, models.GenericSuccessResponse)
819
618
  if utils.match_response(
820
619
  http_res, ["400", "401", "403", "404"], "application/json"
821
620
  ):
@@ -853,29 +652,28 @@ class TaxonomyEntities(BaseSDK):
853
652
  http_res,
854
653
  )
855
654
 
856
- async def update_node_async(
655
+ async def delete_document_v1_collections_collection_identifier_documents_document_id_delete_async(
857
656
  self,
858
657
  *,
859
- node: str,
860
- node_name: str,
658
+ collection_identifier: str,
659
+ document_id: str,
861
660
  x_namespace: OptionalNullable[str] = UNSET,
862
- node_description: OptionalNullable[str] = UNSET,
863
661
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
864
662
  server_url: Optional[str] = None,
865
663
  timeout_ms: Optional[int] = None,
866
664
  http_headers: Optional[Mapping[str, str]] = None,
867
- ) -> models.TaxonomyNode:
868
- r"""Update Node
665
+ ) -> models.GenericSuccessResponse:
666
+ r"""Delete Document
667
+
668
+ Delete a document.
869
669
 
870
- Update an existing taxonomy node
871
670
 
872
671
  **Requirements:**
873
672
  - Required permissions: write
874
673
 
875
- :param node: The ID or name of the node to update
876
- :param node_name: Name of the taxonomy node (must be lowercase without spaces)
674
+ :param collection_identifier: The ID of the collection
675
+ :param document_id: The ID of the document to delete
877
676
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
878
- :param node_description: Optional description of what this node represents
879
677
  :param retries: Override the default retry configuration for this method
880
678
  :param server_url: Override the default server URL for this method
881
679
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -891,31 +689,25 @@ class TaxonomyEntities(BaseSDK):
891
689
  else:
892
690
  base_url = self._get_url(base_url, url_variables)
893
691
 
894
- request = models.UpdateNodeV1EntitiesTaxonomiesNodesNodePatchRequest(
895
- node=node,
692
+ request = models.DeleteDocumentV1CollectionsCollectionIdentifierDocumentsDocumentIDDeleteRequest(
693
+ collection_identifier=collection_identifier,
694
+ document_id=document_id,
896
695
  x_namespace=x_namespace,
897
- node_update=models.NodeUpdate(
898
- node_name=node_name,
899
- node_description=node_description,
900
- ),
901
696
  )
902
697
 
903
698
  req = self._build_request_async(
904
- method="PATCH",
905
- path="/v1/entities/taxonomies/nodes/{node}",
699
+ method="DELETE",
700
+ path="/v1/collections/{collection_identifier}/documents/{document_id}",
906
701
  base_url=base_url,
907
702
  url_variables=url_variables,
908
703
  request=request,
909
- request_body_required=True,
704
+ request_body_required=False,
910
705
  request_has_path_params=True,
911
706
  request_has_query_params=True,
912
707
  user_agent_header="user-agent",
913
708
  accept_header_value="application/json",
914
709
  http_headers=http_headers,
915
710
  security=self.sdk_configuration.security,
916
- get_serialized_body=lambda: utils.serialize_request_body(
917
- request.node_update, False, False, "json", models.NodeUpdate
918
- ),
919
711
  timeout_ms=timeout_ms,
920
712
  )
921
713
 
@@ -930,7 +722,7 @@ class TaxonomyEntities(BaseSDK):
930
722
  http_res = await self.do_request_async(
931
723
  hook_ctx=HookContext(
932
724
  base_url=base_url or "",
933
- operation_id="update_node_v1_entities_taxonomies_nodes__node__patch",
725
+ operation_id="delete_document_v1_collections__collection_identifier__documents__document_id__delete",
934
726
  oauth2_scopes=[],
935
727
  security_source=get_security_from_env(
936
728
  self.sdk_configuration.security, models.Security
@@ -943,7 +735,7 @@ class TaxonomyEntities(BaseSDK):
943
735
 
944
736
  response_data: Any = None
945
737
  if utils.match_response(http_res, "200", "application/json"):
946
- return utils.unmarshal_json(http_res.text, models.TaxonomyNode)
738
+ return utils.unmarshal_json(http_res.text, models.GenericSuccessResponse)
947
739
  if utils.match_response(
948
740
  http_res, ["400", "401", "403", "404"], "application/json"
949
741
  ):
@@ -981,34 +773,36 @@ class TaxonomyEntities(BaseSDK):
981
773
  http_res,
982
774
  )
983
775
 
984
- def classify_features(
776
+ def list_documents_v1_collections_collection_identifier_documents_get(
985
777
  self,
986
778
  *,
987
- taxonomy: str,
988
- collections: List[str],
779
+ collection_identifier: str,
780
+ limit: Optional[int] = 10,
781
+ offset_id: OptionalNullable[str] = UNSET,
782
+ sort: OptionalNullable[str] = UNSET,
783
+ filters: OptionalNullable[str] = UNSET,
784
+ select: OptionalNullable[str] = UNSET,
989
785
  x_namespace: OptionalNullable[str] = UNSET,
990
- filters: OptionalNullable[
991
- Union[models.LogicalOperator, models.LogicalOperatorTypedDict]
992
- ] = UNSET,
993
- assignment: Optional[
994
- Union[models.AssignmentConfig, models.AssignmentConfigTypedDict]
995
- ] = None,
996
- limit: OptionalNullable[int] = UNSET,
997
786
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
998
787
  server_url: Optional[str] = None,
999
788
  timeout_ms: Optional[int] = None,
1000
789
  http_headers: Optional[Mapping[str, str]] = None,
1001
- ) -> models.TaskResponse:
1002
- r"""Classify Features against Taxonomy
790
+ ) -> models.DocumentListResponse:
791
+ r"""List Documents
1003
792
 
1004
- Starts an asynchronous task to classify features within collections for a given taxonomy.
793
+ List documents with pagination and filtering.
1005
794
 
1006
- :param taxonomy: The name or id of the taxonomy to use for discovery
1007
- :param collections: List of collection names or ids to search for features
795
+
796
+ **Requirements:**
797
+ - Required permissions: read
798
+
799
+ :param collection_identifier: The ID of the collection
800
+ :param limit: Number of documents to return per page
801
+ :param offset_id: ID of the document to start pagination from
802
+ :param sort: Field to sort by
803
+ :param filters: Filter criteria
804
+ :param select: Fields to select
1008
805
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1009
- :param filters: Filters to apply to the discovery task
1010
- :param assignment: Configuration for how classifications should be assigned to features
1011
- :param limit: Number of feature samples to process, if None, all features that match the filters are processed
1012
806
  :param retries: Override the default retry configuration for this method
1013
807
  :param server_url: Override the default server URL for this method
1014
808
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1025,38 +819,30 @@ class TaxonomyEntities(BaseSDK):
1025
819
  base_url = self._get_url(base_url, url_variables)
1026
820
 
1027
821
  request = (
1028
- models.ClassifyFeaturesV1EntitiesTaxonomiesTaxonomyClassifyPostRequest(
1029
- taxonomy=taxonomy,
822
+ models.ListDocumentsV1CollectionsCollectionIdentifierDocumentsGetRequest(
823
+ collection_identifier=collection_identifier,
824
+ limit=limit,
825
+ offset_id=offset_id,
826
+ sort=sort,
827
+ filters=filters,
828
+ select=select,
1030
829
  x_namespace=x_namespace,
1031
- discover_request=models.DiscoverRequest(
1032
- collections=collections,
1033
- filters=utils.get_pydantic_model(
1034
- filters, OptionalNullable[models.LogicalOperator]
1035
- ),
1036
- assignment=utils.get_pydantic_model(
1037
- assignment, Optional[models.AssignmentConfig]
1038
- ),
1039
- limit=limit,
1040
- ),
1041
830
  )
1042
831
  )
1043
832
 
1044
833
  req = self._build_request(
1045
- method="POST",
1046
- path="/v1/entities/taxonomies/{taxonomy}/classify",
834
+ method="GET",
835
+ path="/v1/collections/{collection_identifier}/documents",
1047
836
  base_url=base_url,
1048
837
  url_variables=url_variables,
1049
838
  request=request,
1050
- request_body_required=True,
839
+ request_body_required=False,
1051
840
  request_has_path_params=True,
1052
841
  request_has_query_params=True,
1053
842
  user_agent_header="user-agent",
1054
843
  accept_header_value="application/json",
1055
844
  http_headers=http_headers,
1056
845
  security=self.sdk_configuration.security,
1057
- get_serialized_body=lambda: utils.serialize_request_body(
1058
- request.discover_request, False, False, "json", models.DiscoverRequest
1059
- ),
1060
846
  timeout_ms=timeout_ms,
1061
847
  )
1062
848
 
@@ -1071,7 +857,7 @@ class TaxonomyEntities(BaseSDK):
1071
857
  http_res = self.do_request(
1072
858
  hook_ctx=HookContext(
1073
859
  base_url=base_url or "",
1074
- operation_id="classify_features_v1_entities_taxonomies__taxonomy__classify_post",
860
+ operation_id="list_documents_v1_collections__collection_identifier__documents_get",
1075
861
  oauth2_scopes=[],
1076
862
  security_source=get_security_from_env(
1077
863
  self.sdk_configuration.security, models.Security
@@ -1084,7 +870,7 @@ class TaxonomyEntities(BaseSDK):
1084
870
 
1085
871
  response_data: Any = None
1086
872
  if utils.match_response(http_res, "200", "application/json"):
1087
- return utils.unmarshal_json(http_res.text, models.TaskResponse)
873
+ return utils.unmarshal_json(http_res.text, models.DocumentListResponse)
1088
874
  if utils.match_response(
1089
875
  http_res, ["400", "401", "403", "404"], "application/json"
1090
876
  ):
@@ -1122,34 +908,36 @@ class TaxonomyEntities(BaseSDK):
1122
908
  http_res,
1123
909
  )
1124
910
 
1125
- async def classify_features_async(
911
+ async def list_documents_v1_collections_collection_identifier_documents_get_async(
1126
912
  self,
1127
913
  *,
1128
- taxonomy: str,
1129
- collections: List[str],
914
+ collection_identifier: str,
915
+ limit: Optional[int] = 10,
916
+ offset_id: OptionalNullable[str] = UNSET,
917
+ sort: OptionalNullable[str] = UNSET,
918
+ filters: OptionalNullable[str] = UNSET,
919
+ select: OptionalNullable[str] = UNSET,
1130
920
  x_namespace: OptionalNullable[str] = UNSET,
1131
- filters: OptionalNullable[
1132
- Union[models.LogicalOperator, models.LogicalOperatorTypedDict]
1133
- ] = UNSET,
1134
- assignment: Optional[
1135
- Union[models.AssignmentConfig, models.AssignmentConfigTypedDict]
1136
- ] = None,
1137
- limit: OptionalNullable[int] = UNSET,
1138
921
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
1139
922
  server_url: Optional[str] = None,
1140
923
  timeout_ms: Optional[int] = None,
1141
924
  http_headers: Optional[Mapping[str, str]] = None,
1142
- ) -> models.TaskResponse:
1143
- r"""Classify Features against Taxonomy
925
+ ) -> models.DocumentListResponse:
926
+ r"""List Documents
1144
927
 
1145
- Starts an asynchronous task to classify features within collections for a given taxonomy.
928
+ List documents with pagination and filtering.
1146
929
 
1147
- :param taxonomy: The name or id of the taxonomy to use for discovery
1148
- :param collections: List of collection names or ids to search for features
930
+
931
+ **Requirements:**
932
+ - Required permissions: read
933
+
934
+ :param collection_identifier: The ID of the collection
935
+ :param limit: Number of documents to return per page
936
+ :param offset_id: ID of the document to start pagination from
937
+ :param sort: Field to sort by
938
+ :param filters: Filter criteria
939
+ :param select: Fields to select
1149
940
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1150
- :param filters: Filters to apply to the discovery task
1151
- :param assignment: Configuration for how classifications should be assigned to features
1152
- :param limit: Number of feature samples to process, if None, all features that match the filters are processed
1153
941
  :param retries: Override the default retry configuration for this method
1154
942
  :param server_url: Override the default server URL for this method
1155
943
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1166,38 +954,30 @@ class TaxonomyEntities(BaseSDK):
1166
954
  base_url = self._get_url(base_url, url_variables)
1167
955
 
1168
956
  request = (
1169
- models.ClassifyFeaturesV1EntitiesTaxonomiesTaxonomyClassifyPostRequest(
1170
- taxonomy=taxonomy,
957
+ models.ListDocumentsV1CollectionsCollectionIdentifierDocumentsGetRequest(
958
+ collection_identifier=collection_identifier,
959
+ limit=limit,
960
+ offset_id=offset_id,
961
+ sort=sort,
962
+ filters=filters,
963
+ select=select,
1171
964
  x_namespace=x_namespace,
1172
- discover_request=models.DiscoverRequest(
1173
- collections=collections,
1174
- filters=utils.get_pydantic_model(
1175
- filters, OptionalNullable[models.LogicalOperator]
1176
- ),
1177
- assignment=utils.get_pydantic_model(
1178
- assignment, Optional[models.AssignmentConfig]
1179
- ),
1180
- limit=limit,
1181
- ),
1182
965
  )
1183
966
  )
1184
967
 
1185
968
  req = self._build_request_async(
1186
- method="POST",
1187
- path="/v1/entities/taxonomies/{taxonomy}/classify",
969
+ method="GET",
970
+ path="/v1/collections/{collection_identifier}/documents",
1188
971
  base_url=base_url,
1189
972
  url_variables=url_variables,
1190
973
  request=request,
1191
- request_body_required=True,
974
+ request_body_required=False,
1192
975
  request_has_path_params=True,
1193
976
  request_has_query_params=True,
1194
977
  user_agent_header="user-agent",
1195
978
  accept_header_value="application/json",
1196
979
  http_headers=http_headers,
1197
980
  security=self.sdk_configuration.security,
1198
- get_serialized_body=lambda: utils.serialize_request_body(
1199
- request.discover_request, False, False, "json", models.DiscoverRequest
1200
- ),
1201
981
  timeout_ms=timeout_ms,
1202
982
  )
1203
983
 
@@ -1212,7 +992,7 @@ class TaxonomyEntities(BaseSDK):
1212
992
  http_res = await self.do_request_async(
1213
993
  hook_ctx=HookContext(
1214
994
  base_url=base_url or "",
1215
- operation_id="classify_features_v1_entities_taxonomies__taxonomy__classify_post",
995
+ operation_id="list_documents_v1_collections__collection_identifier__documents_get",
1216
996
  oauth2_scopes=[],
1217
997
  security_source=get_security_from_env(
1218
998
  self.sdk_configuration.security, models.Security
@@ -1225,7 +1005,7 @@ class TaxonomyEntities(BaseSDK):
1225
1005
 
1226
1006
  response_data: Any = None
1227
1007
  if utils.match_response(http_res, "200", "application/json"):
1228
- return utils.unmarshal_json(http_res.text, models.TaskResponse)
1008
+ return utils.unmarshal_json(http_res.text, models.DocumentListResponse)
1229
1009
  if utils.match_response(
1230
1010
  http_res, ["400", "401", "403", "404"], "application/json"
1231
1011
  ):
@@ -1263,42 +1043,32 @@ class TaxonomyEntities(BaseSDK):
1263
1043
  http_res,
1264
1044
  )
1265
1045
 
1266
- def list_classifications(
1046
+ def batch_update_documents_v1_collections_collection_identifier_documents_batch_put(
1267
1047
  self,
1268
1048
  *,
1269
- taxonomy: str,
1270
- page: OptionalNullable[int] = UNSET,
1271
- page_size: Optional[int] = 10,
1049
+ collection_identifier: str,
1272
1050
  x_namespace: OptionalNullable[str] = UNSET,
1273
- filters: OptionalNullable[
1274
- Union[models.LogicalOperator, models.LogicalOperatorTypedDict]
1275
- ] = UNSET,
1276
- sort: OptionalNullable[
1277
- Union[models.SortOption, models.SortOptionTypedDict]
1278
- ] = UNSET,
1279
- feature_options: OptionalNullable[
1280
- Union[models.FeatureOptions, models.FeatureOptionsTypedDict]
1281
- ] = UNSET,
1282
- node_options: OptionalNullable[
1283
- Union[models.NodeOptions, models.NodeOptionsTypedDict]
1284
- ] = UNSET,
1051
+ request_body: Optional[
1052
+ Union[
1053
+ List[List[models.RequestBody]], List[List[models.RequestBodyTypedDict]]
1054
+ ]
1055
+ ] = None,
1285
1056
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
1286
1057
  server_url: Optional[str] = None,
1287
1058
  timeout_ms: Optional[int] = None,
1288
1059
  http_headers: Optional[Mapping[str, str]] = None,
1289
- ) -> models.ListClassificationsResponse:
1290
- r"""List Taxonomy Classifications
1060
+ ) -> List[Nullable[models.DocumentResponse]]:
1061
+ r"""Batch Update Documents
1062
+
1063
+ Update multiple documents in a batch.
1291
1064
 
1292
- Retrieves a paginated list of classification entries with optional filtering.
1293
1065
 
1294
- :param taxonomy: The ID or name of the taxonomy
1295
- :param page:
1296
- :param page_size:
1066
+ **Requirements:**
1067
+ - Required permissions: write
1068
+
1069
+ :param collection_identifier: The ID of the collection
1297
1070
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1298
- :param filters: Complex nested query filters for classifications
1299
- :param sort: Sort options for ordering classifications
1300
- :param feature_options: Controls what feature data to include in the response. Note: Including additional data increases response latency.
1301
- :param node_options: Controls what node data to include in the response. Note: Including additional data increases response latency.
1071
+ :param request_body:
1302
1072
  :param retries: Override the default retry configuration for this method
1303
1073
  :param server_url: Override the default server URL for this method
1304
1074
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1314,34 +1084,21 @@ class TaxonomyEntities(BaseSDK):
1314
1084
  else:
1315
1085
  base_url = self._get_url(base_url, url_variables)
1316
1086
 
1317
- request = models.ListClassificationsV1EntitiesTaxonomiesTaxonomyClassificationsPostRequest(
1318
- taxonomy=taxonomy,
1319
- page=page,
1320
- page_size=page_size,
1087
+ request = models.BatchUpdateDocumentsV1CollectionsCollectionIdentifierDocumentsBatchPutRequest(
1088
+ collection_identifier=collection_identifier,
1321
1089
  x_namespace=x_namespace,
1322
- list_classifications_request=models.ListClassificationsRequest(
1323
- filters=utils.get_pydantic_model(
1324
- filters, OptionalNullable[models.LogicalOperator]
1325
- ),
1326
- sort=utils.get_pydantic_model(
1327
- sort, OptionalNullable[models.SortOption]
1328
- ),
1329
- feature_options=utils.get_pydantic_model(
1330
- feature_options, OptionalNullable[models.FeatureOptions]
1331
- ),
1332
- node_options=utils.get_pydantic_model(
1333
- node_options, OptionalNullable[models.NodeOptions]
1334
- ),
1090
+ request_body=utils.get_pydantic_model(
1091
+ request_body, Optional[List[List[models.RequestBody]]]
1335
1092
  ),
1336
1093
  )
1337
1094
 
1338
1095
  req = self._build_request(
1339
- method="POST",
1340
- path="/v1/entities/taxonomies/{taxonomy}/classifications",
1096
+ method="PUT",
1097
+ path="/v1/collections/{collection_identifier}/documents/batch",
1341
1098
  base_url=base_url,
1342
1099
  url_variables=url_variables,
1343
1100
  request=request,
1344
- request_body_required=True,
1101
+ request_body_required=False,
1345
1102
  request_has_path_params=True,
1346
1103
  request_has_query_params=True,
1347
1104
  user_agent_header="user-agent",
@@ -1349,11 +1106,11 @@ class TaxonomyEntities(BaseSDK):
1349
1106
  http_headers=http_headers,
1350
1107
  security=self.sdk_configuration.security,
1351
1108
  get_serialized_body=lambda: utils.serialize_request_body(
1352
- request.list_classifications_request,
1353
- False,
1109
+ request.request_body,
1354
1110
  False,
1111
+ True,
1355
1112
  "json",
1356
- models.ListClassificationsRequest,
1113
+ Optional[List[List[models.RequestBody]]],
1357
1114
  ),
1358
1115
  timeout_ms=timeout_ms,
1359
1116
  )
@@ -1369,7 +1126,7 @@ class TaxonomyEntities(BaseSDK):
1369
1126
  http_res = self.do_request(
1370
1127
  hook_ctx=HookContext(
1371
1128
  base_url=base_url or "",
1372
- operation_id="list_classifications_v1_entities_taxonomies__taxonomy__classifications_post",
1129
+ operation_id="batch_update_documents_v1_collections__collection_identifier__documents_batch_put",
1373
1130
  oauth2_scopes=[],
1374
1131
  security_source=get_security_from_env(
1375
1132
  self.sdk_configuration.security, models.Security
@@ -1383,7 +1140,7 @@ class TaxonomyEntities(BaseSDK):
1383
1140
  response_data: Any = None
1384
1141
  if utils.match_response(http_res, "200", "application/json"):
1385
1142
  return utils.unmarshal_json(
1386
- http_res.text, models.ListClassificationsResponse
1143
+ http_res.text, List[Nullable[models.DocumentResponse]]
1387
1144
  )
1388
1145
  if utils.match_response(
1389
1146
  http_res, ["400", "401", "403", "404"], "application/json"
@@ -1422,42 +1179,32 @@ class TaxonomyEntities(BaseSDK):
1422
1179
  http_res,
1423
1180
  )
1424
1181
 
1425
- async def list_classifications_async(
1182
+ async def batch_update_documents_v1_collections_collection_identifier_documents_batch_put_async(
1426
1183
  self,
1427
1184
  *,
1428
- taxonomy: str,
1429
- page: OptionalNullable[int] = UNSET,
1430
- page_size: Optional[int] = 10,
1185
+ collection_identifier: str,
1431
1186
  x_namespace: OptionalNullable[str] = UNSET,
1432
- filters: OptionalNullable[
1433
- Union[models.LogicalOperator, models.LogicalOperatorTypedDict]
1434
- ] = UNSET,
1435
- sort: OptionalNullable[
1436
- Union[models.SortOption, models.SortOptionTypedDict]
1437
- ] = UNSET,
1438
- feature_options: OptionalNullable[
1439
- Union[models.FeatureOptions, models.FeatureOptionsTypedDict]
1440
- ] = UNSET,
1441
- node_options: OptionalNullable[
1442
- Union[models.NodeOptions, models.NodeOptionsTypedDict]
1443
- ] = UNSET,
1187
+ request_body: Optional[
1188
+ Union[
1189
+ List[List[models.RequestBody]], List[List[models.RequestBodyTypedDict]]
1190
+ ]
1191
+ ] = None,
1444
1192
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
1445
1193
  server_url: Optional[str] = None,
1446
1194
  timeout_ms: Optional[int] = None,
1447
1195
  http_headers: Optional[Mapping[str, str]] = None,
1448
- ) -> models.ListClassificationsResponse:
1449
- r"""List Taxonomy Classifications
1196
+ ) -> List[Nullable[models.DocumentResponse]]:
1197
+ r"""Batch Update Documents
1198
+
1199
+ Update multiple documents in a batch.
1450
1200
 
1451
- Retrieves a paginated list of classification entries with optional filtering.
1452
1201
 
1453
- :param taxonomy: The ID or name of the taxonomy
1454
- :param page:
1455
- :param page_size:
1202
+ **Requirements:**
1203
+ - Required permissions: write
1204
+
1205
+ :param collection_identifier: The ID of the collection
1456
1206
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1457
- :param filters: Complex nested query filters for classifications
1458
- :param sort: Sort options for ordering classifications
1459
- :param feature_options: Controls what feature data to include in the response. Note: Including additional data increases response latency.
1460
- :param node_options: Controls what node data to include in the response. Note: Including additional data increases response latency.
1207
+ :param request_body:
1461
1208
  :param retries: Override the default retry configuration for this method
1462
1209
  :param server_url: Override the default server URL for this method
1463
1210
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1473,34 +1220,21 @@ class TaxonomyEntities(BaseSDK):
1473
1220
  else:
1474
1221
  base_url = self._get_url(base_url, url_variables)
1475
1222
 
1476
- request = models.ListClassificationsV1EntitiesTaxonomiesTaxonomyClassificationsPostRequest(
1477
- taxonomy=taxonomy,
1478
- page=page,
1479
- page_size=page_size,
1223
+ request = models.BatchUpdateDocumentsV1CollectionsCollectionIdentifierDocumentsBatchPutRequest(
1224
+ collection_identifier=collection_identifier,
1480
1225
  x_namespace=x_namespace,
1481
- list_classifications_request=models.ListClassificationsRequest(
1482
- filters=utils.get_pydantic_model(
1483
- filters, OptionalNullable[models.LogicalOperator]
1484
- ),
1485
- sort=utils.get_pydantic_model(
1486
- sort, OptionalNullable[models.SortOption]
1487
- ),
1488
- feature_options=utils.get_pydantic_model(
1489
- feature_options, OptionalNullable[models.FeatureOptions]
1490
- ),
1491
- node_options=utils.get_pydantic_model(
1492
- node_options, OptionalNullable[models.NodeOptions]
1493
- ),
1226
+ request_body=utils.get_pydantic_model(
1227
+ request_body, Optional[List[List[models.RequestBody]]]
1494
1228
  ),
1495
1229
  )
1496
1230
 
1497
1231
  req = self._build_request_async(
1498
- method="POST",
1499
- path="/v1/entities/taxonomies/{taxonomy}/classifications",
1232
+ method="PUT",
1233
+ path="/v1/collections/{collection_identifier}/documents/batch",
1500
1234
  base_url=base_url,
1501
1235
  url_variables=url_variables,
1502
1236
  request=request,
1503
- request_body_required=True,
1237
+ request_body_required=False,
1504
1238
  request_has_path_params=True,
1505
1239
  request_has_query_params=True,
1506
1240
  user_agent_header="user-agent",
@@ -1508,11 +1242,11 @@ class TaxonomyEntities(BaseSDK):
1508
1242
  http_headers=http_headers,
1509
1243
  security=self.sdk_configuration.security,
1510
1244
  get_serialized_body=lambda: utils.serialize_request_body(
1511
- request.list_classifications_request,
1512
- False,
1245
+ request.request_body,
1513
1246
  False,
1247
+ True,
1514
1248
  "json",
1515
- models.ListClassificationsRequest,
1249
+ Optional[List[List[models.RequestBody]]],
1516
1250
  ),
1517
1251
  timeout_ms=timeout_ms,
1518
1252
  )
@@ -1528,7 +1262,7 @@ class TaxonomyEntities(BaseSDK):
1528
1262
  http_res = await self.do_request_async(
1529
1263
  hook_ctx=HookContext(
1530
1264
  base_url=base_url or "",
1531
- operation_id="list_classifications_v1_entities_taxonomies__taxonomy__classifications_post",
1265
+ operation_id="batch_update_documents_v1_collections__collection_identifier__documents_batch_put",
1532
1266
  oauth2_scopes=[],
1533
1267
  security_source=get_security_from_env(
1534
1268
  self.sdk_configuration.security, models.Security
@@ -1542,7 +1276,7 @@ class TaxonomyEntities(BaseSDK):
1542
1276
  response_data: Any = None
1543
1277
  if utils.match_response(http_res, "200", "application/json"):
1544
1278
  return utils.unmarshal_json(
1545
- http_res.text, models.ListClassificationsResponse
1279
+ http_res.text, List[Nullable[models.DocumentResponse]]
1546
1280
  )
1547
1281
  if utils.match_response(
1548
1282
  http_res, ["400", "401", "403", "404"], "application/json"
@@ -1581,25 +1315,28 @@ class TaxonomyEntities(BaseSDK):
1581
1315
  http_res,
1582
1316
  )
1583
1317
 
1584
- def delete_classification(
1318
+ def batch_delete_documents_v1_collections_collection_identifier_documents_batch_delete(
1585
1319
  self,
1586
1320
  *,
1587
- taxonomy: str,
1588
- classification_id: str,
1321
+ collection_identifier: str,
1589
1322
  x_namespace: OptionalNullable[str] = UNSET,
1323
+ request_body: Optional[List[str]] = None,
1590
1324
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
1591
1325
  server_url: Optional[str] = None,
1592
1326
  timeout_ms: Optional[int] = None,
1593
1327
  http_headers: Optional[Mapping[str, str]] = None,
1594
- ) -> models.GenericSuccessResponse:
1595
- r"""Delete Classifications
1328
+ ) -> Any:
1329
+ r"""Batch Delete Documents
1330
+
1331
+ Delete multiple documents in a batch.
1332
+
1596
1333
 
1597
1334
  **Requirements:**
1598
1335
  - Required permissions: write
1599
1336
 
1600
- :param taxonomy: The id or name of the taxonomy
1601
- :param classification_id: The id of the classification to delete
1337
+ :param collection_identifier: The ID of the collection
1602
1338
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1339
+ :param request_body:
1603
1340
  :param retries: Override the default retry configuration for this method
1604
1341
  :param server_url: Override the default server URL for this method
1605
1342
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1615,15 +1352,15 @@ class TaxonomyEntities(BaseSDK):
1615
1352
  else:
1616
1353
  base_url = self._get_url(base_url, url_variables)
1617
1354
 
1618
- request = models.DeleteClassificationsV1EntitiesTaxonomiesTaxonomyClassificationsClassificationIDDeleteRequest(
1619
- taxonomy=taxonomy,
1620
- classification_id=classification_id,
1355
+ request = models.BatchDeleteDocumentsV1CollectionsCollectionIdentifierDocumentsBatchDeleteRequest(
1356
+ collection_identifier=collection_identifier,
1621
1357
  x_namespace=x_namespace,
1358
+ request_body=request_body,
1622
1359
  )
1623
1360
 
1624
1361
  req = self._build_request(
1625
1362
  method="DELETE",
1626
- path="/v1/entities/taxonomies/{taxonomy}/classifications/{classification_id}",
1363
+ path="/v1/collections/{collection_identifier}/documents/batch",
1627
1364
  base_url=base_url,
1628
1365
  url_variables=url_variables,
1629
1366
  request=request,
@@ -1634,6 +1371,9 @@ class TaxonomyEntities(BaseSDK):
1634
1371
  accept_header_value="application/json",
1635
1372
  http_headers=http_headers,
1636
1373
  security=self.sdk_configuration.security,
1374
+ get_serialized_body=lambda: utils.serialize_request_body(
1375
+ request.request_body, False, True, "json", Optional[List[str]]
1376
+ ),
1637
1377
  timeout_ms=timeout_ms,
1638
1378
  )
1639
1379
 
@@ -1648,7 +1388,7 @@ class TaxonomyEntities(BaseSDK):
1648
1388
  http_res = self.do_request(
1649
1389
  hook_ctx=HookContext(
1650
1390
  base_url=base_url or "",
1651
- operation_id="delete_classifications_v1_entities_taxonomies__taxonomy__classifications__classification_id__delete",
1391
+ operation_id="batch_delete_documents_v1_collections__collection_identifier__documents_batch_delete",
1652
1392
  oauth2_scopes=[],
1653
1393
  security_source=get_security_from_env(
1654
1394
  self.sdk_configuration.security, models.Security
@@ -1661,7 +1401,7 @@ class TaxonomyEntities(BaseSDK):
1661
1401
 
1662
1402
  response_data: Any = None
1663
1403
  if utils.match_response(http_res, "200", "application/json"):
1664
- return utils.unmarshal_json(http_res.text, models.GenericSuccessResponse)
1404
+ return utils.unmarshal_json(http_res.text, Any)
1665
1405
  if utils.match_response(
1666
1406
  http_res, ["400", "401", "403", "404"], "application/json"
1667
1407
  ):
@@ -1699,25 +1439,28 @@ class TaxonomyEntities(BaseSDK):
1699
1439
  http_res,
1700
1440
  )
1701
1441
 
1702
- async def delete_classification_async(
1442
+ async def batch_delete_documents_v1_collections_collection_identifier_documents_batch_delete_async(
1703
1443
  self,
1704
1444
  *,
1705
- taxonomy: str,
1706
- classification_id: str,
1445
+ collection_identifier: str,
1707
1446
  x_namespace: OptionalNullable[str] = UNSET,
1447
+ request_body: Optional[List[str]] = None,
1708
1448
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
1709
1449
  server_url: Optional[str] = None,
1710
1450
  timeout_ms: Optional[int] = None,
1711
1451
  http_headers: Optional[Mapping[str, str]] = None,
1712
- ) -> models.GenericSuccessResponse:
1713
- r"""Delete Classifications
1452
+ ) -> Any:
1453
+ r"""Batch Delete Documents
1454
+
1455
+ Delete multiple documents in a batch.
1456
+
1714
1457
 
1715
1458
  **Requirements:**
1716
1459
  - Required permissions: write
1717
1460
 
1718
- :param taxonomy: The id or name of the taxonomy
1719
- :param classification_id: The id of the classification to delete
1461
+ :param collection_identifier: The ID of the collection
1720
1462
  :param x_namespace: Optional namespace for data isolation. This can be a namespace name or namespace ID. Example: 'netflix_prod' or 'ns_1234567890'. To create a namespace, use the /namespaces endpoint.
1463
+ :param request_body:
1721
1464
  :param retries: Override the default retry configuration for this method
1722
1465
  :param server_url: Override the default server URL for this method
1723
1466
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -1733,15 +1476,15 @@ class TaxonomyEntities(BaseSDK):
1733
1476
  else:
1734
1477
  base_url = self._get_url(base_url, url_variables)
1735
1478
 
1736
- request = models.DeleteClassificationsV1EntitiesTaxonomiesTaxonomyClassificationsClassificationIDDeleteRequest(
1737
- taxonomy=taxonomy,
1738
- classification_id=classification_id,
1479
+ request = models.BatchDeleteDocumentsV1CollectionsCollectionIdentifierDocumentsBatchDeleteRequest(
1480
+ collection_identifier=collection_identifier,
1739
1481
  x_namespace=x_namespace,
1482
+ request_body=request_body,
1740
1483
  )
1741
1484
 
1742
1485
  req = self._build_request_async(
1743
1486
  method="DELETE",
1744
- path="/v1/entities/taxonomies/{taxonomy}/classifications/{classification_id}",
1487
+ path="/v1/collections/{collection_identifier}/documents/batch",
1745
1488
  base_url=base_url,
1746
1489
  url_variables=url_variables,
1747
1490
  request=request,
@@ -1752,6 +1495,9 @@ class TaxonomyEntities(BaseSDK):
1752
1495
  accept_header_value="application/json",
1753
1496
  http_headers=http_headers,
1754
1497
  security=self.sdk_configuration.security,
1498
+ get_serialized_body=lambda: utils.serialize_request_body(
1499
+ request.request_body, False, True, "json", Optional[List[str]]
1500
+ ),
1755
1501
  timeout_ms=timeout_ms,
1756
1502
  )
1757
1503
 
@@ -1766,7 +1512,7 @@ class TaxonomyEntities(BaseSDK):
1766
1512
  http_res = await self.do_request_async(
1767
1513
  hook_ctx=HookContext(
1768
1514
  base_url=base_url or "",
1769
- operation_id="delete_classifications_v1_entities_taxonomies__taxonomy__classifications__classification_id__delete",
1515
+ operation_id="batch_delete_documents_v1_collections__collection_identifier__documents_batch_delete",
1770
1516
  oauth2_scopes=[],
1771
1517
  security_source=get_security_from_env(
1772
1518
  self.sdk_configuration.security, models.Security
@@ -1779,7 +1525,7 @@ class TaxonomyEntities(BaseSDK):
1779
1525
 
1780
1526
  response_data: Any = None
1781
1527
  if utils.match_response(http_res, "200", "application/json"):
1782
- return utils.unmarshal_json(http_res.text, models.GenericSuccessResponse)
1528
+ return utils.unmarshal_json(http_res.text, Any)
1783
1529
  if utils.match_response(
1784
1530
  http_res, ["400", "401", "403", "404"], "application/json"
1785
1531
  ):