groundx 2.3.0__tar.gz → 2.3.3__tar.gz

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 (90) hide show
  1. {groundx-2.3.0 → groundx-2.3.3}/PKG-INFO +1 -1
  2. {groundx-2.3.0 → groundx-2.3.3}/pyproject.toml +1 -1
  3. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/__init__.py +14 -16
  4. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/client_wrapper.py +1 -1
  5. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/documents/client.py +26 -13
  6. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/ingest.py +2 -2
  7. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/search/client.py +22 -2
  8. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/__init__.py +14 -16
  9. groundx-2.3.3/src/groundx/types/bucket_list_response.py +34 -0
  10. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_detail.py +5 -0
  11. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_lookup_response.py +5 -0
  12. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/group_list_response.py +15 -1
  13. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/ingest_local_document_metadata.py +5 -0
  14. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/ingest_remote_document.py +6 -1
  15. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/ingest_response.py +2 -2
  16. groundx-2.3.0/src/groundx/types/process_status_response_ingest.py → groundx-2.3.3/src/groundx/types/ingest_status.py +5 -4
  17. groundx-2.3.0/src/groundx/types/ingest_response_ingest.py → groundx-2.3.3/src/groundx/types/ingest_status_light.py +4 -2
  18. groundx-2.3.3/src/groundx/types/ingest_status_progress.py +26 -0
  19. groundx-2.3.0/src/groundx/types/process_status_response_ingest_progress_errors.py → groundx-2.3.3/src/groundx/types/ingest_status_progress_cancelled.py +1 -1
  20. groundx-2.3.0/src/groundx/types/process_status_response_ingest_progress_complete.py → groundx-2.3.3/src/groundx/types/ingest_status_progress_complete.py +1 -1
  21. groundx-2.3.0/src/groundx/types/process_status_response_ingest_progress_cancelled.py → groundx-2.3.3/src/groundx/types/ingest_status_progress_errors.py +1 -1
  22. groundx-2.3.0/src/groundx/types/process_status_response_ingest_progress_processing.py → groundx-2.3.3/src/groundx/types/ingest_status_progress_processing.py +1 -1
  23. groundx-2.3.0/src/groundx/types/bucket_list_response.py → groundx-2.3.3/src/groundx/types/processes_status_response.py +7 -4
  24. groundx-2.3.0/src/groundx/types/process_status_response.py +0 -20
  25. groundx-2.3.0/src/groundx/types/process_status_response_ingest_progress.py +0 -26
  26. groundx-2.3.0/src/groundx/types/processes_status_response.py +0 -6
  27. {groundx-2.3.0 → groundx-2.3.3}/LICENSE +0 -0
  28. {groundx-2.3.0 → groundx-2.3.3}/README.md +0 -0
  29. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/buckets/__init__.py +0 -0
  30. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/buckets/client.py +0 -0
  31. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/client.py +0 -0
  32. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/__init__.py +0 -0
  33. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/api_error.py +0 -0
  34. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/datetime_utils.py +0 -0
  35. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/file.py +0 -0
  36. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/http_client.py +0 -0
  37. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/jsonable_encoder.py +0 -0
  38. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/pydantic_utilities.py +0 -0
  39. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/query_encoder.py +0 -0
  40. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/remove_none_from_dict.py +0 -0
  41. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/request_options.py +0 -0
  42. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/core/serialization.py +0 -0
  43. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/csv_splitter.py +0 -0
  44. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/customer/__init__.py +0 -0
  45. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/customer/client.py +0 -0
  46. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/documents/__init__.py +0 -0
  47. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/environment.py +0 -0
  48. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/errors/__init__.py +0 -0
  49. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/errors/bad_request_error.py +0 -0
  50. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/errors/unauthorized_error.py +0 -0
  51. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/groups/__init__.py +0 -0
  52. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/groups/client.py +0 -0
  53. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/health/__init__.py +0 -0
  54. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/health/client.py +0 -0
  55. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/py.typed +0 -0
  56. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/search/__init__.py +0 -0
  57. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/search/types/__init__.py +0 -0
  58. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/search/types/search_content_request_id.py +0 -0
  59. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/bounding_box_detail.py +0 -0
  60. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/bucket_detail.py +0 -0
  61. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/bucket_response.py +0 -0
  62. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/bucket_update_detail.py +0 -0
  63. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/bucket_update_response.py +0 -0
  64. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/customer_detail.py +0 -0
  65. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/customer_response.py +0 -0
  66. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document.py +0 -0
  67. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_list_response.py +0 -0
  68. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_local_ingest_request.py +0 -0
  69. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_response.py +0 -0
  70. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/document_type.py +0 -0
  71. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/group_detail.py +0 -0
  72. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/group_response.py +0 -0
  73. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/health_response.py +0 -0
  74. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/health_response_health.py +0 -0
  75. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/health_service.py +0 -0
  76. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/health_service_status.py +0 -0
  77. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/ingest_local_document.py +0 -0
  78. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/message_response.py +0 -0
  79. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/meter_detail.py +0 -0
  80. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/process_level.py +0 -0
  81. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/processing_status.py +0 -0
  82. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/search_response.py +0 -0
  83. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/search_response_search.py +0 -0
  84. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/search_result_item.py +0 -0
  85. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/sort.py +0 -0
  86. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/sort_order.py +0 -0
  87. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/subscription_detail.py +0 -0
  88. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/subscription_detail_meters.py +0 -0
  89. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/types/website_source.py +0 -0
  90. {groundx-2.3.0 → groundx-2.3.3}/src/groundx/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: groundx
3
- Version: 2.3.0
3
+ Version: 2.3.3
4
4
  Summary:
5
5
  License: MIT
6
6
  Requires-Python: >=3.8,<4.0
@@ -3,7 +3,7 @@ name = "groundx"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "groundx"
6
- version = "2.3.0"
6
+ version = "2.3.3"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -27,17 +27,16 @@ from .types import (
27
27
  IngestLocalDocumentMetadata,
28
28
  IngestRemoteDocument,
29
29
  IngestResponse,
30
- IngestResponseIngest,
30
+ IngestStatus,
31
+ IngestStatusLight,
32
+ IngestStatusProgress,
33
+ IngestStatusProgressCancelled,
34
+ IngestStatusProgressComplete,
35
+ IngestStatusProgressErrors,
36
+ IngestStatusProgressProcessing,
31
37
  MessageResponse,
32
38
  MeterDetail,
33
39
  ProcessLevel,
34
- ProcessStatusResponse,
35
- ProcessStatusResponseIngest,
36
- ProcessStatusResponseIngestProgress,
37
- ProcessStatusResponseIngestProgressCancelled,
38
- ProcessStatusResponseIngestProgressComplete,
39
- ProcessStatusResponseIngestProgressErrors,
40
- ProcessStatusResponseIngestProgressProcessing,
41
40
  ProcessesStatusResponse,
42
41
  ProcessingStatus,
43
42
  SearchResponse,
@@ -87,17 +86,16 @@ __all__ = [
87
86
  "IngestLocalDocumentMetadata",
88
87
  "IngestRemoteDocument",
89
88
  "IngestResponse",
90
- "IngestResponseIngest",
89
+ "IngestStatus",
90
+ "IngestStatusLight",
91
+ "IngestStatusProgress",
92
+ "IngestStatusProgressCancelled",
93
+ "IngestStatusProgressComplete",
94
+ "IngestStatusProgressErrors",
95
+ "IngestStatusProgressProcessing",
91
96
  "MessageResponse",
92
97
  "MeterDetail",
93
98
  "ProcessLevel",
94
- "ProcessStatusResponse",
95
- "ProcessStatusResponseIngest",
96
- "ProcessStatusResponseIngestProgress",
97
- "ProcessStatusResponseIngestProgressCancelled",
98
- "ProcessStatusResponseIngestProgressComplete",
99
- "ProcessStatusResponseIngestProgressErrors",
100
- "ProcessStatusResponseIngestProgressProcessing",
101
99
  "ProcessesStatusResponse",
102
100
  "ProcessingStatus",
103
101
  "SearchContentRequestId",
@@ -16,7 +16,7 @@ class BaseClientWrapper:
16
16
  headers: typing.Dict[str, str] = {
17
17
  "X-Fern-Language": "Python",
18
18
  "X-Fern-SDK-Name": "groundx",
19
- "X-Fern-SDK-Version": "2.3.0",
19
+ "X-Fern-SDK-Version": "2.3.3",
20
20
  }
21
21
  headers["X-API-Key"] = self.api_key
22
22
  return headers
@@ -17,7 +17,6 @@ from ..types.sort import Sort
17
17
  from ..types.sort_order import SortOrder
18
18
  from ..types.processing_status import ProcessingStatus
19
19
  from ..types.document_list_response import DocumentListResponse
20
- from ..types.process_status_response import ProcessStatusResponse
21
20
  from ..core.jsonable_encoder import jsonable_encoder
22
21
  from ..types.document_lookup_response import DocumentLookupResponse
23
22
  from ..types.document_response import DocumentResponse
@@ -41,6 +40,8 @@ class DocumentsClient:
41
40
  """
42
41
  Ingest documents hosted on public URLs into a GroundX bucket.
43
42
 
43
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
44
+
44
45
  Parameters
45
46
  ----------
46
47
  documents : typing.Sequence[IngestRemoteDocument]
@@ -125,6 +126,8 @@ class DocumentsClient:
125
126
  """
126
127
  Upload documents hosted on a local file system into a GroundX bucket.
127
128
 
129
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
130
+
128
131
  Parameters
129
132
  ----------
130
133
  request : DocumentLocalIngestRequest
@@ -205,9 +208,12 @@ class DocumentsClient:
205
208
  ) -> IngestResponse:
206
209
  """
207
210
  Upload the content of a publicly accessible website for ingestion into a GroundX bucket. This is done by following links within a specified URL, recursively, up to a specified depth or number of pages.
211
+
208
212
  Note1: This endpoint is currently not supported for on-prem deployments.
209
213
  Note2: The `source_url` must include the protocol, http:// or https://.
210
214
 
215
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
216
+
211
217
  Parameters
212
218
  ----------
213
219
  websites : typing.Sequence[WebsiteSource]
@@ -442,7 +448,7 @@ class DocumentsClient:
442
448
 
443
449
  def get_processing_status_by_id(
444
450
  self, process_id: str, *, request_options: typing.Optional[RequestOptions] = None
445
- ) -> ProcessStatusResponse:
451
+ ) -> IngestResponse:
446
452
  """
447
453
  Get the current status of an ingest, initiated with documents.ingest_remote, documents.ingest_local, or documents.crawl_website, by specifying the processId (the processId is included in the response of the documents.ingest functions).
448
454
 
@@ -456,7 +462,7 @@ class DocumentsClient:
456
462
 
457
463
  Returns
458
464
  -------
459
- ProcessStatusResponse
465
+ IngestResponse
460
466
  Look up success
461
467
 
462
468
  Examples
@@ -478,9 +484,9 @@ class DocumentsClient:
478
484
  try:
479
485
  if 200 <= _response.status_code < 300:
480
486
  return typing.cast(
481
- ProcessStatusResponse,
487
+ IngestResponse,
482
488
  parse_obj_as(
483
- type_=ProcessStatusResponse, # type: ignore
489
+ type_=IngestResponse, # type: ignore
484
490
  object_=_response.json(),
485
491
  ),
486
492
  )
@@ -522,12 +528,12 @@ class DocumentsClient:
522
528
  request_options: typing.Optional[RequestOptions] = None,
523
529
  ) -> DocumentLookupResponse:
524
530
  """
525
- lookup the document(s) associated with a processId, bucketId, groupId, or projectId.
531
+ lookup the document(s) associated with a processId, bucketId, or groupId.
526
532
 
527
533
  Parameters
528
534
  ----------
529
535
  id : int
530
- a processId, bucketId, groupId, or projectId
536
+ a processId, bucketId, or groupId
531
537
 
532
538
  n : typing.Optional[int]
533
539
  The maximum number of returned documents. Accepts 1-100 with a default of 20.
@@ -821,6 +827,8 @@ class AsyncDocumentsClient:
821
827
  """
822
828
  Ingest documents hosted on public URLs into a GroundX bucket.
823
829
 
830
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
831
+
824
832
  Parameters
825
833
  ----------
826
834
  documents : typing.Sequence[IngestRemoteDocument]
@@ -913,6 +921,8 @@ class AsyncDocumentsClient:
913
921
  """
914
922
  Upload documents hosted on a local file system into a GroundX bucket.
915
923
 
924
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
925
+
916
926
  Parameters
917
927
  ----------
918
928
  request : DocumentLocalIngestRequest
@@ -1005,9 +1015,12 @@ class AsyncDocumentsClient:
1005
1015
  ) -> IngestResponse:
1006
1016
  """
1007
1017
  Upload the content of a publicly accessible website for ingestion into a GroundX bucket. This is done by following links within a specified URL, recursively, up to a specified depth or number of pages.
1018
+
1008
1019
  Note1: This endpoint is currently not supported for on-prem deployments.
1009
1020
  Note2: The `source_url` must include the protocol, http:// or https://.
1010
1021
 
1022
+ [Supported Document Types and Ingest Capacities](https://docs.eyelevel.ai/documentation/fundamentals/document-types-and-ingest-capacities)
1023
+
1011
1024
  Parameters
1012
1025
  ----------
1013
1026
  websites : typing.Sequence[WebsiteSource]
@@ -1266,7 +1279,7 @@ class AsyncDocumentsClient:
1266
1279
 
1267
1280
  async def get_processing_status_by_id(
1268
1281
  self, process_id: str, *, request_options: typing.Optional[RequestOptions] = None
1269
- ) -> ProcessStatusResponse:
1282
+ ) -> IngestResponse:
1270
1283
  """
1271
1284
  Get the current status of an ingest, initiated with documents.ingest_remote, documents.ingest_local, or documents.crawl_website, by specifying the processId (the processId is included in the response of the documents.ingest functions).
1272
1285
 
@@ -1280,7 +1293,7 @@ class AsyncDocumentsClient:
1280
1293
 
1281
1294
  Returns
1282
1295
  -------
1283
- ProcessStatusResponse
1296
+ IngestResponse
1284
1297
  Look up success
1285
1298
 
1286
1299
  Examples
@@ -1310,9 +1323,9 @@ class AsyncDocumentsClient:
1310
1323
  try:
1311
1324
  if 200 <= _response.status_code < 300:
1312
1325
  return typing.cast(
1313
- ProcessStatusResponse,
1326
+ IngestResponse,
1314
1327
  parse_obj_as(
1315
- type_=ProcessStatusResponse, # type: ignore
1328
+ type_=IngestResponse, # type: ignore
1316
1329
  object_=_response.json(),
1317
1330
  ),
1318
1331
  )
@@ -1354,12 +1367,12 @@ class AsyncDocumentsClient:
1354
1367
  request_options: typing.Optional[RequestOptions] = None,
1355
1368
  ) -> DocumentLookupResponse:
1356
1369
  """
1357
- lookup the document(s) associated with a processId, bucketId, groupId, or projectId.
1370
+ lookup the document(s) associated with a processId, bucketId, or groupId.
1358
1371
 
1359
1372
  Parameters
1360
1373
  ----------
1361
1374
  id : int
1362
- a processId, bucketId, groupId, or projectId
1375
+ a processId, bucketId, or groupId
1363
1376
 
1364
1377
  n : typing.Optional[int]
1365
1378
  The maximum number of returned documents. Accepts 1-100 with a default of 20.
@@ -9,7 +9,7 @@ from .csv_splitter import CSVSplitter
9
9
  from .types.document import Document
10
10
  from .types.ingest_remote_document import IngestRemoteDocument
11
11
  from .types.ingest_response import IngestResponse
12
- from .types.ingest_response_ingest import IngestResponseIngest
12
+ from .types.ingest_status import IngestStatus
13
13
 
14
14
  # this is used as the default value for optional parameters
15
15
  OMIT = typing.cast(typing.Any, ...)
@@ -201,7 +201,7 @@ class GroundX(GroundXBase):
201
201
  n = max(MIN_BATCH_SIZE, min(batch_size or MIN_BATCH_SIZE, MAX_BATCH_SIZE))
202
202
 
203
203
  remote_batch: typing.List[IngestRemoteDocument] = []
204
- ingest = IngestResponse(ingest=IngestResponseIngest(process_id="",status="queued"))
204
+ ingest = IngestResponse(ingest=IngestStatus(process_id="",status="queued"))
205
205
 
206
206
  progress = float(len(remote_documents))
207
207
  for rd in remote_documents:
@@ -29,6 +29,7 @@ class SearchClient:
29
29
  n: typing.Optional[int] = None,
30
30
  next_token: typing.Optional[str] = None,
31
31
  verbosity: typing.Optional[int] = None,
32
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
32
33
  relevance: typing.Optional[float] = OMIT,
33
34
  request_options: typing.Optional[RequestOptions] = None,
34
35
  ) -> SearchResponse:
@@ -39,7 +40,7 @@ class SearchClient:
39
40
  Parameters
40
41
  ----------
41
42
  id : SearchContentRequestId
42
- The bucketId, groupId, projectId, or documentId to be searched. The document or documents within the specified container will be compared to the query, and relevant information will be extracted.
43
+ The bucketId, groupId, or documentId to be searched. The document or documents within the specified container will be compared to the query, and relevant information will be extracted.
43
44
 
44
45
  query : str
45
46
  The search query to be used to find relevant documentation.
@@ -53,6 +54,9 @@ class SearchClient:
53
54
  verbosity : typing.Optional[int]
54
55
  The amount of data returned with each search result. 0 == no search results, only the recommended context. 1 == search results but no searchData. 2 == search results and searchData.
55
56
 
57
+ filter : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
58
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
59
+
56
60
  relevance : typing.Optional[float]
57
61
  The minimum search relevance score required to include the result. By default, this is 10.0.
58
62
 
@@ -87,6 +91,7 @@ class SearchClient:
87
91
  },
88
92
  json={
89
93
  "query": query,
94
+ "filter": filter,
90
95
  "relevance": relevance,
91
96
  },
92
97
  headers={
@@ -137,6 +142,7 @@ class SearchClient:
137
142
  n: typing.Optional[int] = None,
138
143
  next_token: typing.Optional[str] = None,
139
144
  verbosity: typing.Optional[int] = None,
145
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
140
146
  relevance: typing.Optional[float] = OMIT,
141
147
  request_options: typing.Optional[RequestOptions] = None,
142
148
  ) -> SearchResponse:
@@ -161,6 +167,9 @@ class SearchClient:
161
167
  verbosity : typing.Optional[int]
162
168
  The amount of data returned with each search result. 0 == no search results, only the recommended context. 1 == search results but no searchData. 2 == search results and searchData.
163
169
 
170
+ filter : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
171
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
172
+
164
173
  relevance : typing.Optional[float]
165
174
  The minimum search relevance score required to include the result. By default, this is 10.0.
166
175
 
@@ -196,6 +205,7 @@ class SearchClient:
196
205
  json={
197
206
  "query": query,
198
207
  "documentIds": document_ids,
208
+ "filter": filter,
199
209
  "relevance": relevance,
200
210
  },
201
211
  headers={
@@ -251,6 +261,7 @@ class AsyncSearchClient:
251
261
  n: typing.Optional[int] = None,
252
262
  next_token: typing.Optional[str] = None,
253
263
  verbosity: typing.Optional[int] = None,
264
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
254
265
  relevance: typing.Optional[float] = OMIT,
255
266
  request_options: typing.Optional[RequestOptions] = None,
256
267
  ) -> SearchResponse:
@@ -261,7 +272,7 @@ class AsyncSearchClient:
261
272
  Parameters
262
273
  ----------
263
274
  id : SearchContentRequestId
264
- The bucketId, groupId, projectId, or documentId to be searched. The document or documents within the specified container will be compared to the query, and relevant information will be extracted.
275
+ The bucketId, groupId, or documentId to be searched. The document or documents within the specified container will be compared to the query, and relevant information will be extracted.
265
276
 
266
277
  query : str
267
278
  The search query to be used to find relevant documentation.
@@ -275,6 +286,9 @@ class AsyncSearchClient:
275
286
  verbosity : typing.Optional[int]
276
287
  The amount of data returned with each search result. 0 == no search results, only the recommended context. 1 == search results but no searchData. 2 == search results and searchData.
277
288
 
289
+ filter : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
290
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
291
+
278
292
  relevance : typing.Optional[float]
279
293
  The minimum search relevance score required to include the result. By default, this is 10.0.
280
294
 
@@ -317,6 +331,7 @@ class AsyncSearchClient:
317
331
  },
318
332
  json={
319
333
  "query": query,
334
+ "filter": filter,
320
335
  "relevance": relevance,
321
336
  },
322
337
  headers={
@@ -367,6 +382,7 @@ class AsyncSearchClient:
367
382
  n: typing.Optional[int] = None,
368
383
  next_token: typing.Optional[str] = None,
369
384
  verbosity: typing.Optional[int] = None,
385
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
370
386
  relevance: typing.Optional[float] = OMIT,
371
387
  request_options: typing.Optional[RequestOptions] = None,
372
388
  ) -> SearchResponse:
@@ -391,6 +407,9 @@ class AsyncSearchClient:
391
407
  verbosity : typing.Optional[int]
392
408
  The amount of data returned with each search result. 0 == no search results, only the recommended context. 1 == search results but no searchData. 2 == search results and searchData.
393
409
 
410
+ filter : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
411
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
412
+
394
413
  relevance : typing.Optional[float]
395
414
  The minimum search relevance score required to include the result. By default, this is 10.0.
396
415
 
@@ -434,6 +453,7 @@ class AsyncSearchClient:
434
453
  json={
435
454
  "query": query,
436
455
  "documentIds": document_ids,
456
+ "filter": filter,
437
457
  "relevance": relevance,
438
458
  },
439
459
  headers={
@@ -26,17 +26,16 @@ from .ingest_local_document import IngestLocalDocument
26
26
  from .ingest_local_document_metadata import IngestLocalDocumentMetadata
27
27
  from .ingest_remote_document import IngestRemoteDocument
28
28
  from .ingest_response import IngestResponse
29
- from .ingest_response_ingest import IngestResponseIngest
29
+ from .ingest_status import IngestStatus
30
+ from .ingest_status_light import IngestStatusLight
31
+ from .ingest_status_progress import IngestStatusProgress
32
+ from .ingest_status_progress_cancelled import IngestStatusProgressCancelled
33
+ from .ingest_status_progress_complete import IngestStatusProgressComplete
34
+ from .ingest_status_progress_errors import IngestStatusProgressErrors
35
+ from .ingest_status_progress_processing import IngestStatusProgressProcessing
30
36
  from .message_response import MessageResponse
31
37
  from .meter_detail import MeterDetail
32
38
  from .process_level import ProcessLevel
33
- from .process_status_response import ProcessStatusResponse
34
- from .process_status_response_ingest import ProcessStatusResponseIngest
35
- from .process_status_response_ingest_progress import ProcessStatusResponseIngestProgress
36
- from .process_status_response_ingest_progress_cancelled import ProcessStatusResponseIngestProgressCancelled
37
- from .process_status_response_ingest_progress_complete import ProcessStatusResponseIngestProgressComplete
38
- from .process_status_response_ingest_progress_errors import ProcessStatusResponseIngestProgressErrors
39
- from .process_status_response_ingest_progress_processing import ProcessStatusResponseIngestProgressProcessing
40
39
  from .processes_status_response import ProcessesStatusResponse
41
40
  from .processing_status import ProcessingStatus
42
41
  from .search_response import SearchResponse
@@ -75,17 +74,16 @@ __all__ = [
75
74
  "IngestLocalDocumentMetadata",
76
75
  "IngestRemoteDocument",
77
76
  "IngestResponse",
78
- "IngestResponseIngest",
77
+ "IngestStatus",
78
+ "IngestStatusLight",
79
+ "IngestStatusProgress",
80
+ "IngestStatusProgressCancelled",
81
+ "IngestStatusProgressComplete",
82
+ "IngestStatusProgressErrors",
83
+ "IngestStatusProgressProcessing",
79
84
  "MessageResponse",
80
85
  "MeterDetail",
81
86
  "ProcessLevel",
82
- "ProcessStatusResponse",
83
- "ProcessStatusResponseIngest",
84
- "ProcessStatusResponseIngestProgress",
85
- "ProcessStatusResponseIngestProgressCancelled",
86
- "ProcessStatusResponseIngestProgressComplete",
87
- "ProcessStatusResponseIngestProgressErrors",
88
- "ProcessStatusResponseIngestProgressProcessing",
89
87
  "ProcessesStatusResponse",
90
88
  "ProcessingStatus",
91
89
  "SearchResponse",
@@ -0,0 +1,34 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .bucket_detail import BucketDetail
6
+ import pydantic
7
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
8
+
9
+
10
+ class BucketListResponse(UniversalBaseModel):
11
+ buckets: typing.Optional[typing.List[BucketDetail]] = None
12
+ count: typing.Optional[int] = pydantic.Field(default=None)
13
+ """
14
+ The number of buckets returned in the current response
15
+ """
16
+
17
+ remaining: typing.Optional[int] = pydantic.Field(default=None)
18
+ """
19
+ The number of buckets that have not been returned yet, will be null if there are no remaining buckets
20
+ """
21
+
22
+ total: typing.Optional[int] = pydantic.Field(default=None)
23
+ """
24
+ The total number of buckets found
25
+ """
26
+
27
+ if IS_PYDANTIC_V2:
28
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
29
+ else:
30
+
31
+ class Config:
32
+ frozen = True
33
+ smart_union = True
34
+ extra = pydantic.Extra.allow
@@ -26,6 +26,11 @@ class DocumentDetail(UniversalBaseModel):
26
26
  """
27
27
 
28
28
  file_type: typing_extensions.Annotated[typing.Optional[DocumentType], FieldMetadata(alias="fileType")] = None
29
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
30
+ """
31
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
32
+ """
33
+
29
34
  process_id: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="processId")] = pydantic.Field(
30
35
  default=None
31
36
  )
@@ -17,6 +17,11 @@ class DocumentLookupResponse(UniversalBaseModel):
17
17
 
18
18
  documents: typing.Optional[typing.List[DocumentDetail]] = None
19
19
  next_token: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="nextToken")] = None
20
+ remaining: typing.Optional[int] = pydantic.Field(default=None)
21
+ """
22
+ The number of results that have not been returned yet. Will be null if there are no remaining results.
23
+ """
24
+
20
25
  total: typing.Optional[int] = pydantic.Field(default=None)
21
26
  """
22
27
  The total number of results found
@@ -3,12 +3,26 @@
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
4
  import typing
5
5
  from .group_detail import GroupDetail
6
- from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
6
  import pydantic
7
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
8
8
 
9
9
 
10
10
  class GroupListResponse(UniversalBaseModel):
11
11
  groups: typing.Optional[typing.List[GroupDetail]] = None
12
+ count: typing.Optional[int] = pydantic.Field(default=None)
13
+ """
14
+ The number of groups returned in the current response
15
+ """
16
+
17
+ remaining: typing.Optional[int] = pydantic.Field(default=None)
18
+ """
19
+ The number of groups that have not been returned yet, will be null if there are no remaining groups
20
+ """
21
+
22
+ total: typing.Optional[int] = pydantic.Field(default=None)
23
+ """
24
+ The total number of groups found
25
+ """
12
26
 
13
27
  if IS_PYDANTIC_V2:
14
28
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -26,6 +26,11 @@ class IngestLocalDocumentMetadata(UniversalBaseModel):
26
26
  """
27
27
 
28
28
  file_type: typing_extensions.Annotated[typing.Optional[DocumentType], FieldMetadata(alias="fileType")] = None
29
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
30
+ """
31
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
32
+ """
33
+
29
34
  process_level: typing_extensions.Annotated[typing.Optional[ProcessLevel], FieldMetadata(alias="processLevel")] = (
30
35
  None
31
36
  )
@@ -20,10 +20,15 @@ class IngestRemoteDocument(UniversalBaseModel):
20
20
  default=None
21
21
  )
22
22
  """
23
- The name of the file being ingested
23
+ The name of the file being ingested.
24
24
  """
25
25
 
26
26
  file_type: typing_extensions.Annotated[typing.Optional[DocumentType], FieldMetadata(alias="fileType")] = None
27
+ filter: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
28
+ """
29
+ A dictionary of key-value pairs that can be used to pre-filter documents prior to a search.
30
+ """
31
+
27
32
  process_level: typing_extensions.Annotated[typing.Optional[ProcessLevel], FieldMetadata(alias="processLevel")] = (
28
33
  None
29
34
  )
@@ -1,14 +1,14 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
- from .ingest_response_ingest import IngestResponseIngest
4
+ from .ingest_status import IngestStatus
5
5
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
6
  import typing
7
7
  import pydantic
8
8
 
9
9
 
10
10
  class IngestResponse(UniversalBaseModel):
11
- ingest: IngestResponseIngest
11
+ ingest: IngestStatus
12
12
 
13
13
  if IS_PYDANTIC_V2:
14
14
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -1,18 +1,19 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
4
5
  import typing_extensions
5
6
  from ..core.serialization import FieldMetadata
6
- import typing
7
- from .process_status_response_ingest_progress import ProcessStatusResponseIngestProgress
7
+ from .ingest_status_progress import IngestStatusProgress
8
8
  from .processing_status import ProcessingStatus
9
9
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
10
  import pydantic
11
11
 
12
12
 
13
- class ProcessStatusResponseIngest(UniversalBaseModel):
13
+ class IngestStatus(UniversalBaseModel):
14
+ id: typing.Optional[int] = None
14
15
  process_id: typing_extensions.Annotated[str, FieldMetadata(alias="processId")]
15
- progress: typing.Optional[ProcessStatusResponseIngestProgress] = None
16
+ progress: typing.Optional[IngestStatusProgress] = None
16
17
  status: ProcessingStatus
17
18
  status_message: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="statusMessage")] = None
18
19
 
@@ -1,17 +1,19 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
4
5
  import typing_extensions
5
6
  from ..core.serialization import FieldMetadata
6
7
  from .processing_status import ProcessingStatus
7
8
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
8
- import typing
9
9
  import pydantic
10
10
 
11
11
 
12
- class IngestResponseIngest(UniversalBaseModel):
12
+ class IngestStatusLight(UniversalBaseModel):
13
+ id: typing.Optional[int] = None
13
14
  process_id: typing_extensions.Annotated[str, FieldMetadata(alias="processId")]
14
15
  status: ProcessingStatus
16
+ status_message: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="statusMessage")] = None
15
17
 
16
18
  if IS_PYDANTIC_V2:
17
19
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -0,0 +1,26 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .ingest_status_progress_cancelled import IngestStatusProgressCancelled
6
+ from .ingest_status_progress_complete import IngestStatusProgressComplete
7
+ from .ingest_status_progress_errors import IngestStatusProgressErrors
8
+ from .ingest_status_progress_processing import IngestStatusProgressProcessing
9
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
+ import pydantic
11
+
12
+
13
+ class IngestStatusProgress(UniversalBaseModel):
14
+ cancelled: typing.Optional[IngestStatusProgressCancelled] = None
15
+ complete: typing.Optional[IngestStatusProgressComplete] = None
16
+ errors: typing.Optional[IngestStatusProgressErrors] = None
17
+ processing: typing.Optional[IngestStatusProgressProcessing] = None
18
+
19
+ if IS_PYDANTIC_V2:
20
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
21
+ else:
22
+
23
+ class Config:
24
+ frozen = True
25
+ smart_union = True
26
+ extra = pydantic.Extra.allow
@@ -7,7 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
7
  import pydantic
8
8
 
9
9
 
10
- class ProcessStatusResponseIngestProgressErrors(UniversalBaseModel):
10
+ class IngestStatusProgressCancelled(UniversalBaseModel):
11
11
  documents: typing.Optional[typing.List[DocumentDetail]] = None
12
12
  total: typing.Optional[int] = None
13
13
 
@@ -7,7 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
7
  import pydantic
8
8
 
9
9
 
10
- class ProcessStatusResponseIngestProgressComplete(UniversalBaseModel):
10
+ class IngestStatusProgressComplete(UniversalBaseModel):
11
11
  documents: typing.Optional[typing.List[DocumentDetail]] = None
12
12
  total: typing.Optional[int] = None
13
13
 
@@ -7,7 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
7
  import pydantic
8
8
 
9
9
 
10
- class ProcessStatusResponseIngestProgressCancelled(UniversalBaseModel):
10
+ class IngestStatusProgressErrors(UniversalBaseModel):
11
11
  documents: typing.Optional[typing.List[DocumentDetail]] = None
12
12
  total: typing.Optional[int] = None
13
13
 
@@ -7,7 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
7
  import pydantic
8
8
 
9
9
 
10
- class ProcessStatusResponseIngestProgressProcessing(UniversalBaseModel):
10
+ class IngestStatusProgressProcessing(UniversalBaseModel):
11
11
  documents: typing.Optional[typing.List[DocumentDetail]] = None
12
12
  total: typing.Optional[int] = None
13
13
 
@@ -2,13 +2,16 @@
2
2
 
3
3
  from ..core.pydantic_utilities import UniversalBaseModel
4
4
  import typing
5
- from .bucket_detail import BucketDetail
6
- from ..core.pydantic_utilities import IS_PYDANTIC_V2
5
+ from .ingest_status_light import IngestStatusLight
7
6
  import pydantic
7
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
8
8
 
9
9
 
10
- class BucketListResponse(UniversalBaseModel):
11
- buckets: typing.Optional[typing.List[BucketDetail]] = None
10
+ class ProcessesStatusResponse(UniversalBaseModel):
11
+ processes: typing.List[IngestStatusLight] = pydantic.Field()
12
+ """
13
+ Processes
14
+ """
12
15
 
13
16
  if IS_PYDANTIC_V2:
14
17
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -1,20 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from ..core.pydantic_utilities import UniversalBaseModel
4
- from .process_status_response_ingest import ProcessStatusResponseIngest
5
- from ..core.pydantic_utilities import IS_PYDANTIC_V2
6
- import typing
7
- import pydantic
8
-
9
-
10
- class ProcessStatusResponse(UniversalBaseModel):
11
- ingest: ProcessStatusResponseIngest
12
-
13
- if IS_PYDANTIC_V2:
14
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
15
- else:
16
-
17
- class Config:
18
- frozen = True
19
- smart_union = True
20
- extra = pydantic.Extra.allow
@@ -1,26 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from ..core.pydantic_utilities import UniversalBaseModel
4
- import typing
5
- from .process_status_response_ingest_progress_cancelled import ProcessStatusResponseIngestProgressCancelled
6
- from .process_status_response_ingest_progress_complete import ProcessStatusResponseIngestProgressComplete
7
- from .process_status_response_ingest_progress_errors import ProcessStatusResponseIngestProgressErrors
8
- from .process_status_response_ingest_progress_processing import ProcessStatusResponseIngestProgressProcessing
9
- from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
- import pydantic
11
-
12
-
13
- class ProcessStatusResponseIngestProgress(UniversalBaseModel):
14
- cancelled: typing.Optional[ProcessStatusResponseIngestProgressCancelled] = None
15
- complete: typing.Optional[ProcessStatusResponseIngestProgressComplete] = None
16
- errors: typing.Optional[ProcessStatusResponseIngestProgressErrors] = None
17
- processing: typing.Optional[ProcessStatusResponseIngestProgressProcessing] = None
18
-
19
- if IS_PYDANTIC_V2:
20
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
21
- else:
22
-
23
- class Config:
24
- frozen = True
25
- smart_union = True
26
- extra = pydantic.Extra.allow
@@ -1,6 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
- from .process_status_response import ProcessStatusResponse
5
-
6
- ProcessesStatusResponse = typing.List[ProcessStatusResponse]
File without changes
File without changes
File without changes
File without changes
File without changes