casedev 0.1.0__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 (185) hide show
  1. casedev/__init__.py +104 -0
  2. casedev/_base_client.py +1995 -0
  3. casedev/_client.py +560 -0
  4. casedev/_compat.py +219 -0
  5. casedev/_constants.py +14 -0
  6. casedev/_exceptions.py +108 -0
  7. casedev/_files.py +123 -0
  8. casedev/_models.py +857 -0
  9. casedev/_qs.py +150 -0
  10. casedev/_resource.py +43 -0
  11. casedev/_response.py +830 -0
  12. casedev/_streaming.py +333 -0
  13. casedev/_types.py +260 -0
  14. casedev/_utils/__init__.py +64 -0
  15. casedev/_utils/_compat.py +45 -0
  16. casedev/_utils/_datetime_parse.py +136 -0
  17. casedev/_utils/_logs.py +25 -0
  18. casedev/_utils/_proxy.py +65 -0
  19. casedev/_utils/_reflection.py +42 -0
  20. casedev/_utils/_resources_proxy.py +24 -0
  21. casedev/_utils/_streams.py +12 -0
  22. casedev/_utils/_sync.py +58 -0
  23. casedev/_utils/_transform.py +457 -0
  24. casedev/_utils/_typing.py +156 -0
  25. casedev/_utils/_utils.py +421 -0
  26. casedev/_version.py +4 -0
  27. casedev/lib/.keep +4 -0
  28. casedev/py.typed +0 -0
  29. casedev/resources/__init__.py +173 -0
  30. casedev/resources/actions/__init__.py +33 -0
  31. casedev/resources/actions/actions.py +102 -0
  32. casedev/resources/actions/v1.py +640 -0
  33. casedev/resources/compute/__init__.py +33 -0
  34. casedev/resources/compute/compute.py +102 -0
  35. casedev/resources/compute/v1/__init__.py +89 -0
  36. casedev/resources/compute/v1/environments.py +492 -0
  37. casedev/resources/compute/v1/functions.py +278 -0
  38. casedev/resources/compute/v1/invoke.py +216 -0
  39. casedev/resources/compute/v1/runs.py +290 -0
  40. casedev/resources/compute/v1/secrets.py +655 -0
  41. casedev/resources/compute/v1/v1.py +583 -0
  42. casedev/resources/convert/__init__.py +33 -0
  43. casedev/resources/convert/convert.py +102 -0
  44. casedev/resources/convert/v1/__init__.py +33 -0
  45. casedev/resources/convert/v1/jobs.py +254 -0
  46. casedev/resources/convert/v1/v1.py +450 -0
  47. casedev/resources/format/__init__.py +33 -0
  48. casedev/resources/format/format.py +102 -0
  49. casedev/resources/format/v1/__init__.py +33 -0
  50. casedev/resources/format/v1/templates.py +419 -0
  51. casedev/resources/format/v1/v1.py +244 -0
  52. casedev/resources/llm/__init__.py +33 -0
  53. casedev/resources/llm/llm.py +192 -0
  54. casedev/resources/llm/v1/__init__.py +33 -0
  55. casedev/resources/llm/v1/chat.py +243 -0
  56. casedev/resources/llm/v1/v1.py +317 -0
  57. casedev/resources/ocr/__init__.py +33 -0
  58. casedev/resources/ocr/ocr.py +102 -0
  59. casedev/resources/ocr/v1.py +407 -0
  60. casedev/resources/search/__init__.py +33 -0
  61. casedev/resources/search/search.py +102 -0
  62. casedev/resources/search/v1.py +1052 -0
  63. casedev/resources/templates/__init__.py +33 -0
  64. casedev/resources/templates/templates.py +102 -0
  65. casedev/resources/templates/v1.py +633 -0
  66. casedev/resources/vault/__init__.py +47 -0
  67. casedev/resources/vault/graphrag.py +256 -0
  68. casedev/resources/vault/objects.py +571 -0
  69. casedev/resources/vault/vault.py +764 -0
  70. casedev/resources/voice/__init__.py +61 -0
  71. casedev/resources/voice/streaming.py +160 -0
  72. casedev/resources/voice/transcription.py +327 -0
  73. casedev/resources/voice/v1/__init__.py +33 -0
  74. casedev/resources/voice/v1/speak.py +478 -0
  75. casedev/resources/voice/v1/v1.py +290 -0
  76. casedev/resources/voice/voice.py +166 -0
  77. casedev/resources/webhooks/__init__.py +33 -0
  78. casedev/resources/webhooks/v1.py +447 -0
  79. casedev/resources/webhooks/webhooks.py +102 -0
  80. casedev/resources/workflows/__init__.py +33 -0
  81. casedev/resources/workflows/v1.py +1053 -0
  82. casedev/resources/workflows/workflows.py +102 -0
  83. casedev/types/__init__.py +12 -0
  84. casedev/types/actions/__init__.py +8 -0
  85. casedev/types/actions/v1_create_params.py +22 -0
  86. casedev/types/actions/v1_create_response.py +33 -0
  87. casedev/types/actions/v1_execute_params.py +16 -0
  88. casedev/types/actions/v1_execute_response.py +31 -0
  89. casedev/types/compute/__init__.py +7 -0
  90. casedev/types/compute/v1/__init__.py +18 -0
  91. casedev/types/compute/v1/environment_create_params.py +12 -0
  92. casedev/types/compute/v1/environment_create_response.py +34 -0
  93. casedev/types/compute/v1/environment_delete_response.py +11 -0
  94. casedev/types/compute/v1/function_get_logs_params.py +12 -0
  95. casedev/types/compute/v1/function_list_params.py +12 -0
  96. casedev/types/compute/v1/invoke_run_params.py +21 -0
  97. casedev/types/compute/v1/invoke_run_response.py +39 -0
  98. casedev/types/compute/v1/run_list_params.py +18 -0
  99. casedev/types/compute/v1/secret_create_params.py +24 -0
  100. casedev/types/compute/v1/secret_create_response.py +24 -0
  101. casedev/types/compute/v1/secret_delete_group_params.py +18 -0
  102. casedev/types/compute/v1/secret_list_params.py +15 -0
  103. casedev/types/compute/v1/secret_retrieve_group_params.py +12 -0
  104. casedev/types/compute/v1/secret_update_group_params.py +16 -0
  105. casedev/types/compute/v1_deploy_params.py +114 -0
  106. casedev/types/compute/v1_deploy_response.py +30 -0
  107. casedev/types/compute/v1_get_usage_params.py +15 -0
  108. casedev/types/convert/__init__.py +8 -0
  109. casedev/types/convert/v1/__init__.py +3 -0
  110. casedev/types/convert/v1_process_params.py +15 -0
  111. casedev/types/convert/v1_process_response.py +19 -0
  112. casedev/types/convert/v1_webhook_params.py +32 -0
  113. casedev/types/convert/v1_webhook_response.py +13 -0
  114. casedev/types/format/__init__.py +5 -0
  115. casedev/types/format/v1/__init__.py +7 -0
  116. casedev/types/format/v1/template_create_params.py +32 -0
  117. casedev/types/format/v1/template_create_response.py +27 -0
  118. casedev/types/format/v1/template_list_params.py +12 -0
  119. casedev/types/format/v1_create_document_params.py +42 -0
  120. casedev/types/llm/__init__.py +5 -0
  121. casedev/types/llm/v1/__init__.py +6 -0
  122. casedev/types/llm/v1/chat_create_completion_params.py +42 -0
  123. casedev/types/llm/v1/chat_create_completion_response.py +49 -0
  124. casedev/types/llm/v1_create_embedding_params.py +27 -0
  125. casedev/types/ocr/__init__.py +6 -0
  126. casedev/types/ocr/v1_process_params.py +44 -0
  127. casedev/types/ocr/v1_process_response.py +32 -0
  128. casedev/types/search/__init__.py +15 -0
  129. casedev/types/search/v1_answer_params.py +45 -0
  130. casedev/types/search/v1_answer_response.py +35 -0
  131. casedev/types/search/v1_contents_params.py +42 -0
  132. casedev/types/search/v1_contents_response.py +31 -0
  133. casedev/types/search/v1_research_params.py +23 -0
  134. casedev/types/search/v1_research_response.py +20 -0
  135. casedev/types/search/v1_retrieve_research_params.py +15 -0
  136. casedev/types/search/v1_search_params.py +56 -0
  137. casedev/types/search/v1_search_response.py +38 -0
  138. casedev/types/search/v1_similar_params.py +44 -0
  139. casedev/types/search/v1_similar_response.py +33 -0
  140. casedev/types/templates/__init__.py +8 -0
  141. casedev/types/templates/v1_execute_params.py +22 -0
  142. casedev/types/templates/v1_execute_response.py +31 -0
  143. casedev/types/templates/v1_list_params.py +32 -0
  144. casedev/types/templates/v1_search_params.py +18 -0
  145. casedev/types/vault/__init__.py +6 -0
  146. casedev/types/vault/object_create_presigned_url_params.py +22 -0
  147. casedev/types/vault/object_create_presigned_url_response.py +51 -0
  148. casedev/types/vault_create_params.py +20 -0
  149. casedev/types/vault_create_response.py +36 -0
  150. casedev/types/vault_ingest_response.py +26 -0
  151. casedev/types/vault_list_response.py +40 -0
  152. casedev/types/vault_search_params.py +27 -0
  153. casedev/types/vault_search_response.py +53 -0
  154. casedev/types/vault_upload_params.py +26 -0
  155. casedev/types/vault_upload_response.py +39 -0
  156. casedev/types/voice/__init__.py +7 -0
  157. casedev/types/voice/transcription_create_params.py +36 -0
  158. casedev/types/voice/transcription_retrieve_response.py +41 -0
  159. casedev/types/voice/v1/__init__.py +6 -0
  160. casedev/types/voice/v1/speak_create_params.py +59 -0
  161. casedev/types/voice/v1/speak_stream_params.py +58 -0
  162. casedev/types/voice/v1_list_voices_params.py +36 -0
  163. casedev/types/webhooks/__init__.py +6 -0
  164. casedev/types/webhooks/v1_create_params.py +20 -0
  165. casedev/types/webhooks/v1_create_response.py +33 -0
  166. casedev/types/workflows/__init__.py +19 -0
  167. casedev/types/workflows/v1_create_params.py +32 -0
  168. casedev/types/workflows/v1_create_response.py +29 -0
  169. casedev/types/workflows/v1_delete_response.py +13 -0
  170. casedev/types/workflows/v1_deploy_response.py +20 -0
  171. casedev/types/workflows/v1_execute_params.py +12 -0
  172. casedev/types/workflows/v1_execute_response.py +22 -0
  173. casedev/types/workflows/v1_list_executions_params.py +13 -0
  174. casedev/types/workflows/v1_list_executions_response.py +27 -0
  175. casedev/types/workflows/v1_list_params.py +18 -0
  176. casedev/types/workflows/v1_list_response.py +37 -0
  177. casedev/types/workflows/v1_retrieve_execution_response.py +31 -0
  178. casedev/types/workflows/v1_retrieve_response.py +35 -0
  179. casedev/types/workflows/v1_undeploy_response.py +13 -0
  180. casedev/types/workflows/v1_update_params.py +26 -0
  181. casedev/types/workflows/v1_update_response.py +17 -0
  182. casedev-0.1.0.dist-info/METADATA +454 -0
  183. casedev-0.1.0.dist-info/RECORD +185 -0
  184. casedev-0.1.0.dist-info/WHEEL +4 -0
  185. casedev-0.1.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,31 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["V1ContentsResponse", "Result"]
8
+
9
+
10
+ class Result(BaseModel):
11
+ highlights: Optional[List[str]] = None
12
+ """Content highlights if requested"""
13
+
14
+ metadata: Optional[object] = None
15
+ """Additional metadata about the content"""
16
+
17
+ summary: Optional[str] = None
18
+ """Content summary if requested"""
19
+
20
+ text: Optional[str] = None
21
+ """Extracted text content"""
22
+
23
+ title: Optional[str] = None
24
+ """Page title"""
25
+
26
+ url: Optional[str] = None
27
+ """Source URL"""
28
+
29
+
30
+ class V1ContentsResponse(BaseModel):
31
+ results: Optional[List[Result]] = None
@@ -0,0 +1,23 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, Annotated, TypedDict
6
+
7
+ from ..._utils import PropertyInfo
8
+
9
+ __all__ = ["V1ResearchParams"]
10
+
11
+
12
+ class V1ResearchParams(TypedDict, total=False):
13
+ instructions: Required[str]
14
+ """Research instructions or query"""
15
+
16
+ model: Literal["fast", "normal", "pro"]
17
+ """Research quality level - fast (quick), normal (balanced), pro (comprehensive)"""
18
+
19
+ output_schema: Annotated[object, PropertyInfo(alias="outputSchema")]
20
+ """Optional JSON schema to structure the research output"""
21
+
22
+ query: str
23
+ """Alias for instructions (for convenience)"""
@@ -0,0 +1,20 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from ..._models import BaseModel
8
+
9
+ __all__ = ["V1ResearchResponse"]
10
+
11
+
12
+ class V1ResearchResponse(BaseModel):
13
+ model: Optional[str] = None
14
+ """Model used for research"""
15
+
16
+ research_id: Optional[str] = FieldInfo(alias="researchId", default=None)
17
+ """Unique identifier for this research"""
18
+
19
+ results: Optional[object] = None
20
+ """Research findings and analysis"""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["V1RetrieveResearchParams"]
8
+
9
+
10
+ class V1RetrieveResearchParams(TypedDict, total=False):
11
+ events: str
12
+ """Filter specific event types for streaming"""
13
+
14
+ stream: bool
15
+ """Enable streaming for real-time updates"""
@@ -0,0 +1,56 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union
6
+ from datetime import date
7
+ from typing_extensions import Literal, Required, Annotated, TypedDict
8
+
9
+ from ..._types import SequenceNotStr
10
+ from ..._utils import PropertyInfo
11
+
12
+ __all__ = ["V1SearchParams"]
13
+
14
+
15
+ class V1SearchParams(TypedDict, total=False):
16
+ query: Required[str]
17
+ """Primary search query"""
18
+
19
+ additional_queries: Annotated[SequenceNotStr[str], PropertyInfo(alias="additionalQueries")]
20
+ """Additional related search queries to enhance results"""
21
+
22
+ category: str
23
+ """Category filter for search results"""
24
+
25
+ contents: str
26
+ """Specific content type to search for"""
27
+
28
+ end_crawl_date: Annotated[Union[str, date], PropertyInfo(alias="endCrawlDate", format="iso8601")]
29
+ """End date for crawl date filtering"""
30
+
31
+ end_published_date: Annotated[Union[str, date], PropertyInfo(alias="endPublishedDate", format="iso8601")]
32
+ """End date for published date filtering"""
33
+
34
+ exclude_domains: Annotated[SequenceNotStr[str], PropertyInfo(alias="excludeDomains")]
35
+ """Domains to exclude from search results"""
36
+
37
+ include_domains: Annotated[SequenceNotStr[str], PropertyInfo(alias="includeDomains")]
38
+ """Domains to include in search results"""
39
+
40
+ include_text: Annotated[bool, PropertyInfo(alias="includeText")]
41
+ """Whether to include full text content in results"""
42
+
43
+ num_results: Annotated[int, PropertyInfo(alias="numResults")]
44
+ """Number of search results to return"""
45
+
46
+ start_crawl_date: Annotated[Union[str, date], PropertyInfo(alias="startCrawlDate", format="iso8601")]
47
+ """Start date for crawl date filtering"""
48
+
49
+ start_published_date: Annotated[Union[str, date], PropertyInfo(alias="startPublishedDate", format="iso8601")]
50
+ """Start date for published date filtering"""
51
+
52
+ type: Literal["auto", "search", "news"]
53
+ """Type of search to perform"""
54
+
55
+ user_location: Annotated[str, PropertyInfo(alias="userLocation")]
56
+ """Geographic location for localized results"""
@@ -0,0 +1,38 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from pydantic import Field as FieldInfo
7
+
8
+ from ..._models import BaseModel
9
+
10
+ __all__ = ["V1SearchResponse", "Result"]
11
+
12
+
13
+ class Result(BaseModel):
14
+ domain: Optional[str] = None
15
+ """Domain of the source"""
16
+
17
+ published_date: Optional[datetime] = FieldInfo(alias="publishedDate", default=None)
18
+ """Publication date of the content"""
19
+
20
+ snippet: Optional[str] = None
21
+ """Brief excerpt from the content"""
22
+
23
+ title: Optional[str] = None
24
+ """Title of the search result"""
25
+
26
+ url: Optional[str] = None
27
+ """URL of the search result"""
28
+
29
+
30
+ class V1SearchResponse(BaseModel):
31
+ query: Optional[str] = None
32
+ """Original search query"""
33
+
34
+ results: Optional[List[Result]] = None
35
+ """Array of search results"""
36
+
37
+ total_results: Optional[int] = FieldInfo(alias="totalResults", default=None)
38
+ """Total number of results found"""
@@ -0,0 +1,44 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union
6
+ from datetime import date
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from ..._types import SequenceNotStr
10
+ from ..._utils import PropertyInfo
11
+
12
+ __all__ = ["V1SimilarParams"]
13
+
14
+
15
+ class V1SimilarParams(TypedDict, total=False):
16
+ url: Required[str]
17
+ """The URL to find similar content for"""
18
+
19
+ contents: str
20
+ """Additional content to consider for similarity matching"""
21
+
22
+ end_crawl_date: Annotated[Union[str, date], PropertyInfo(alias="endCrawlDate", format="iso8601")]
23
+ """Only include pages crawled before this date"""
24
+
25
+ end_published_date: Annotated[Union[str, date], PropertyInfo(alias="endPublishedDate", format="iso8601")]
26
+ """Only include pages published before this date"""
27
+
28
+ exclude_domains: Annotated[SequenceNotStr[str], PropertyInfo(alias="excludeDomains")]
29
+ """Exclude results from these domains"""
30
+
31
+ include_domains: Annotated[SequenceNotStr[str], PropertyInfo(alias="includeDomains")]
32
+ """Only search within these domains"""
33
+
34
+ include_text: Annotated[bool, PropertyInfo(alias="includeText")]
35
+ """Whether to include extracted text content in results"""
36
+
37
+ num_results: Annotated[int, PropertyInfo(alias="numResults")]
38
+ """Number of similar results to return"""
39
+
40
+ start_crawl_date: Annotated[Union[str, date], PropertyInfo(alias="startCrawlDate", format="iso8601")]
41
+ """Only include pages crawled after this date"""
42
+
43
+ start_published_date: Annotated[Union[str, date], PropertyInfo(alias="startPublishedDate", format="iso8601")]
44
+ """Only include pages published after this date"""
@@ -0,0 +1,33 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from ..._models import BaseModel
8
+
9
+ __all__ = ["V1SimilarResponse", "Result"]
10
+
11
+
12
+ class Result(BaseModel):
13
+ domain: Optional[str] = None
14
+
15
+ published_date: Optional[str] = FieldInfo(alias="publishedDate", default=None)
16
+
17
+ similarity_score: Optional[float] = FieldInfo(alias="similarityScore", default=None)
18
+
19
+ snippet: Optional[str] = None
20
+
21
+ text: Optional[str] = None
22
+
23
+ title: Optional[str] = None
24
+
25
+ url: Optional[str] = None
26
+
27
+
28
+ class V1SimilarResponse(BaseModel):
29
+ processing_time: Optional[float] = FieldInfo(alias="processingTime", default=None)
30
+
31
+ results: Optional[List[Result]] = None
32
+
33
+ total_results: Optional[int] = FieldInfo(alias="totalResults", default=None)
@@ -0,0 +1,8 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .v1_list_params import V1ListParams as V1ListParams
6
+ from .v1_search_params import V1SearchParams as V1SearchParams
7
+ from .v1_execute_params import V1ExecuteParams as V1ExecuteParams
8
+ from .v1_execute_response import V1ExecuteResponse as V1ExecuteResponse
@@ -0,0 +1,22 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, TypedDict
6
+
7
+ __all__ = ["V1ExecuteParams", "Options"]
8
+
9
+
10
+ class V1ExecuteParams(TypedDict, total=False):
11
+ input: Required[object]
12
+ """Input data for the workflow (structure varies by workflow type)"""
13
+
14
+ options: Options
15
+
16
+
17
+ class Options(TypedDict, total=False):
18
+ format: Literal["json", "text"]
19
+ """Output format preference"""
20
+
21
+ model: str
22
+ """LLM model to use for processing"""
@@ -0,0 +1,31 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["V1ExecuteResponse", "Usage"]
9
+
10
+
11
+ class Usage(BaseModel):
12
+ completion_tokens: Optional[int] = None
13
+
14
+ cost: Optional[float] = None
15
+ """Total cost in USD"""
16
+
17
+ prompt_tokens: Optional[int] = None
18
+
19
+ total_tokens: Optional[int] = None
20
+
21
+
22
+ class V1ExecuteResponse(BaseModel):
23
+ result: Optional[object] = None
24
+ """Workflow output (structure varies by workflow type)"""
25
+
26
+ status: Optional[Literal["completed", "failed"]] = None
27
+
28
+ usage: Optional[Usage] = None
29
+
30
+ workflow_name: Optional[str] = None
31
+ """Name of the executed workflow"""
@@ -0,0 +1,32 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["V1ListParams"]
8
+
9
+
10
+ class V1ListParams(TypedDict, total=False):
11
+ category: str
12
+ """Filter workflows by category (e.g., 'legal', 'compliance', 'contract')"""
13
+
14
+ limit: int
15
+ """Maximum number of workflows to return"""
16
+
17
+ offset: int
18
+ """Number of workflows to skip for pagination"""
19
+
20
+ published: bool
21
+ """Include only published workflows"""
22
+
23
+ sub_category: str
24
+ """
25
+ Filter workflows by subcategory (e.g., 'due-diligence', 'litigation', 'mergers')
26
+ """
27
+
28
+ type: str
29
+ """
30
+ Filter workflows by type (e.g., 'document-review', 'contract-analysis',
31
+ 'compliance-check')
32
+ """
@@ -0,0 +1,18 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Required, TypedDict
6
+
7
+ __all__ = ["V1SearchParams"]
8
+
9
+
10
+ class V1SearchParams(TypedDict, total=False):
11
+ query: Required[str]
12
+ """Search query to find relevant workflows"""
13
+
14
+ category: str
15
+ """Optional category filter to narrow results"""
16
+
17
+ limit: int
18
+ """Maximum number of results to return (default: 10, max: 50)"""
@@ -0,0 +1,6 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .object_create_presigned_url_params import ObjectCreatePresignedURLParams as ObjectCreatePresignedURLParams
6
+ from .object_create_presigned_url_response import ObjectCreatePresignedURLResponse as ObjectCreatePresignedURLResponse
@@ -0,0 +1,22 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, Annotated, TypedDict
6
+
7
+ from ..._utils import PropertyInfo
8
+
9
+ __all__ = ["ObjectCreatePresignedURLParams"]
10
+
11
+
12
+ class ObjectCreatePresignedURLParams(TypedDict, total=False):
13
+ id: Required[str]
14
+
15
+ content_type: Annotated[str, PropertyInfo(alias="contentType")]
16
+ """Content type for PUT operations (optional, defaults to object's content type)"""
17
+
18
+ expires_in: Annotated[int, PropertyInfo(alias="expiresIn")]
19
+ """URL expiration time in seconds (1 minute to 7 days)"""
20
+
21
+ operation: Literal["GET", "PUT", "DELETE", "HEAD"]
22
+ """The S3 operation to generate URL for"""
@@ -0,0 +1,51 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from pydantic import Field as FieldInfo
7
+
8
+ from ..._models import BaseModel
9
+
10
+ __all__ = ["ObjectCreatePresignedURLResponse", "Metadata"]
11
+
12
+
13
+ class Metadata(BaseModel):
14
+ bucket: Optional[str] = None
15
+
16
+ content_type: Optional[str] = FieldInfo(alias="contentType", default=None)
17
+
18
+ region: Optional[str] = None
19
+
20
+ size_bytes: Optional[int] = FieldInfo(alias="sizeBytes", default=None)
21
+
22
+
23
+ class ObjectCreatePresignedURLResponse(BaseModel):
24
+ expires_at: Optional[datetime] = FieldInfo(alias="expiresAt", default=None)
25
+ """URL expiration timestamp"""
26
+
27
+ expires_in: Optional[int] = FieldInfo(alias="expiresIn", default=None)
28
+ """URL expiration time in seconds"""
29
+
30
+ filename: Optional[str] = None
31
+ """Original filename"""
32
+
33
+ instructions: Optional[object] = None
34
+ """Usage instructions and examples"""
35
+
36
+ metadata: Optional[Metadata] = None
37
+
38
+ object_id: Optional[str] = FieldInfo(alias="objectId", default=None)
39
+ """The object identifier"""
40
+
41
+ operation: Optional[str] = None
42
+ """The operation type"""
43
+
44
+ presigned_url: Optional[str] = FieldInfo(alias="presignedUrl", default=None)
45
+ """The presigned URL for direct S3 access"""
46
+
47
+ s3_key: Optional[str] = FieldInfo(alias="s3Key", default=None)
48
+ """S3 object key"""
49
+
50
+ vault_id: Optional[str] = FieldInfo(alias="vaultId", default=None)
51
+ """The vault identifier"""
@@ -0,0 +1,20 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Required, Annotated, TypedDict
6
+
7
+ from .._utils import PropertyInfo
8
+
9
+ __all__ = ["VaultCreateParams"]
10
+
11
+
12
+ class VaultCreateParams(TypedDict, total=False):
13
+ name: Required[str]
14
+ """Display name for the vault"""
15
+
16
+ description: str
17
+ """Optional description of the vault's purpose"""
18
+
19
+ enable_graph: Annotated[bool, PropertyInfo(alias="enableGraph")]
20
+ """Enable knowledge graph for entity relationship mapping"""
@@ -0,0 +1,36 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from pydantic import Field as FieldInfo
7
+
8
+ from .._models import BaseModel
9
+
10
+ __all__ = ["VaultCreateResponse"]
11
+
12
+
13
+ class VaultCreateResponse(BaseModel):
14
+ id: Optional[str] = None
15
+ """Unique vault identifier"""
16
+
17
+ created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
18
+ """Vault creation timestamp"""
19
+
20
+ description: Optional[str] = None
21
+ """Vault description"""
22
+
23
+ files_bucket: Optional[str] = FieldInfo(alias="filesBucket", default=None)
24
+ """S3 bucket name for document storage"""
25
+
26
+ index_name: Optional[str] = FieldInfo(alias="indexName", default=None)
27
+ """Vector search index name"""
28
+
29
+ name: Optional[str] = None
30
+ """Vault display name"""
31
+
32
+ region: Optional[str] = None
33
+ """AWS region for storage"""
34
+
35
+ vector_bucket: Optional[str] = FieldInfo(alias="vectorBucket", default=None)
36
+ """S3 bucket name for vector embeddings"""
@@ -0,0 +1,26 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["VaultIngestResponse"]
10
+
11
+
12
+ class VaultIngestResponse(BaseModel):
13
+ enable_graph_rag: bool = FieldInfo(alias="enableGraphRAG")
14
+ """Whether GraphRAG is enabled for this vault"""
15
+
16
+ message: str
17
+ """Human-readable status message"""
18
+
19
+ object_id: str = FieldInfo(alias="objectId")
20
+ """ID of the vault object being processed"""
21
+
22
+ status: Literal["processing"]
23
+ """Current ingestion status"""
24
+
25
+ workflow_id: str = FieldInfo(alias="workflowId")
26
+ """Workflow run ID for tracking progress"""
@@ -0,0 +1,40 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from pydantic import Field as FieldInfo
7
+
8
+ from .._models import BaseModel
9
+
10
+ __all__ = ["VaultListResponse", "Vault"]
11
+
12
+
13
+ class Vault(BaseModel):
14
+ id: Optional[str] = None
15
+ """Vault identifier"""
16
+
17
+ created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
18
+ """Vault creation timestamp"""
19
+
20
+ description: Optional[str] = None
21
+ """Vault description"""
22
+
23
+ enable_graph: Optional[bool] = FieldInfo(alias="enableGraph", default=None)
24
+ """Whether GraphRAG is enabled"""
25
+
26
+ name: Optional[str] = None
27
+ """Vault name"""
28
+
29
+ total_bytes: Optional[int] = FieldInfo(alias="totalBytes", default=None)
30
+ """Total storage size in bytes"""
31
+
32
+ total_objects: Optional[int] = FieldInfo(alias="totalObjects", default=None)
33
+ """Number of stored documents"""
34
+
35
+
36
+ class VaultListResponse(BaseModel):
37
+ total: Optional[int] = None
38
+ """Total number of vaults"""
39
+
40
+ vaults: Optional[List[Vault]] = None
@@ -0,0 +1,27 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+ from typing_extensions import Literal, Required, Annotated, TypedDict
7
+
8
+ from .._utils import PropertyInfo
9
+
10
+ __all__ = ["VaultSearchParams"]
11
+
12
+
13
+ class VaultSearchParams(TypedDict, total=False):
14
+ query: Required[str]
15
+ """Search query or question to find relevant documents"""
16
+
17
+ filters: Dict[str, object]
18
+ """Additional filters to apply to search results"""
19
+
20
+ method: Literal["vector", "graph", "hybrid", "global", "local", "fast", "entity"]
21
+ """
22
+ Search method: 'global' for comprehensive questions, 'entity' for specific
23
+ entities, 'fast' for quick similarity search, 'hybrid' for combined approach
24
+ """
25
+
26
+ top_k: Annotated[int, PropertyInfo(alias="topK")]
27
+ """Maximum number of results to return"""