casedev 0.2.0__py3-none-any.whl → 0.4.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.
- casedev/_base_client.py +5 -2
- casedev/_client.py +275 -1
- casedev/_compat.py +3 -3
- casedev/_utils/_json.py +35 -0
- casedev/_version.py +1 -1
- casedev/resources/__init__.py +98 -0
- casedev/resources/applications/__init__.py +33 -0
- casedev/resources/applications/applications.py +102 -0
- casedev/resources/applications/v1/__init__.py +61 -0
- casedev/resources/applications/v1/deployments.py +867 -0
- casedev/resources/applications/v1/projects.py +1377 -0
- casedev/resources/applications/v1/v1.py +166 -0
- casedev/resources/applications/v1/workflows.py +182 -0
- casedev/resources/compute/v1/__init__.py +28 -0
- casedev/resources/compute/v1/instance_types.py +145 -0
- casedev/resources/compute/v1/instances.py +448 -0
- casedev/resources/compute/v1/v1.py +64 -0
- casedev/resources/database/__init__.py +33 -0
- casedev/resources/database/database.py +102 -0
- casedev/resources/database/v1/__init__.py +33 -0
- casedev/resources/database/v1/projects.py +771 -0
- casedev/resources/database/v1/v1.py +175 -0
- casedev/resources/legal/__init__.py +33 -0
- casedev/resources/legal/legal.py +102 -0
- casedev/resources/legal/v1.py +924 -0
- casedev/resources/memory/__init__.py +33 -0
- casedev/resources/memory/memory.py +102 -0
- casedev/resources/memory/v1.py +1100 -0
- casedev/resources/ocr/v1.py +2 -2
- casedev/resources/privilege/__init__.py +33 -0
- casedev/resources/privilege/privilege.py +102 -0
- casedev/resources/privilege/v1.py +260 -0
- casedev/resources/superdoc/__init__.py +33 -0
- casedev/resources/superdoc/superdoc.py +102 -0
- casedev/resources/superdoc/v1.py +349 -0
- casedev/resources/translate/__init__.py +33 -0
- casedev/resources/translate/translate.py +102 -0
- casedev/resources/translate/v1.py +418 -0
- casedev/resources/vault/__init__.py +14 -0
- casedev/resources/vault/graphrag.py +91 -0
- casedev/resources/vault/multipart.py +549 -0
- casedev/resources/vault/objects.py +481 -1
- casedev/resources/vault/vault.py +264 -5
- casedev/resources/voice/streaming.py +2 -2
- casedev/types/__init__.py +4 -0
- casedev/types/applications/v1/__init__.py +20 -0
- casedev/types/applications/v1/deployment_cancel_params.py +14 -0
- casedev/types/applications/v1/deployment_create_params.py +20 -0
- casedev/types/applications/v1/deployment_get_logs_params.py +14 -0
- casedev/types/applications/v1/deployment_list_params.py +23 -0
- casedev/types/applications/v1/deployment_retrieve_params.py +17 -0
- casedev/types/applications/v1/deployment_stream_params.py +17 -0
- casedev/types/applications/v1/project_create_deployment_params.py +29 -0
- casedev/types/applications/v1/project_create_domain_params.py +17 -0
- casedev/types/applications/v1/project_create_env_params.py +27 -0
- casedev/types/applications/v1/project_create_params.py +53 -0
- casedev/types/applications/v1/project_delete_params.py +14 -0
- casedev/types/applications/v1/project_get_runtime_logs_params.py +12 -0
- casedev/types/applications/v1/project_list_deployments_params.py +18 -0
- casedev/types/applications/v1/project_list_env_params.py +12 -0
- casedev/types/applications/v1/project_list_response.py +45 -0
- casedev/types/applications/v1/workflow_get_status_params.py +14 -0
- casedev/types/compute/v1/__init__.py +6 -0
- casedev/types/compute/v1/instance_create_params.py +28 -0
- casedev/types/compute/v1/instance_create_response.py +35 -0
- casedev/types/compute/v1/instance_delete_response.py +23 -0
- casedev/types/compute/v1/instance_list_response.py +45 -0
- casedev/types/compute/v1/instance_retrieve_response.py +55 -0
- casedev/types/compute/v1/instance_type_list_response.py +46 -0
- casedev/types/database/__init__.py +5 -0
- casedev/types/database/v1/__init__.py +14 -0
- casedev/types/database/v1/project_create_branch_params.py +17 -0
- casedev/types/database/v1/project_create_branch_response.py +30 -0
- casedev/types/database/v1/project_create_params.py +27 -0
- casedev/types/database/v1/project_create_response.py +47 -0
- casedev/types/database/v1/project_delete_response.py +13 -0
- casedev/types/database/v1/project_get_connection_params.py +15 -0
- casedev/types/database/v1/project_get_connection_response.py +18 -0
- casedev/types/database/v1/project_list_branches_response.py +37 -0
- casedev/types/database/v1/project_list_response.py +64 -0
- casedev/types/database/v1/project_retrieve_response.py +100 -0
- casedev/types/database/v1_get_usage_response.py +116 -0
- casedev/types/legal/__init__.py +20 -0
- casedev/types/legal/v1_find_params.py +23 -0
- casedev/types/legal/v1_find_response.py +37 -0
- casedev/types/legal/v1_get_citations_from_url_params.py +12 -0
- casedev/types/legal/v1_get_citations_from_url_response.py +69 -0
- casedev/types/legal/v1_get_citations_params.py +16 -0
- casedev/types/legal/v1_get_citations_response.py +60 -0
- casedev/types/legal/v1_get_full_text_params.py +23 -0
- casedev/types/legal/v1_get_full_text_response.py +35 -0
- casedev/types/legal/v1_list_jurisdictions_params.py +12 -0
- casedev/types/legal/v1_list_jurisdictions_response.py +35 -0
- casedev/types/legal/v1_research_params.py +27 -0
- casedev/types/legal/v1_research_response.py +51 -0
- casedev/types/legal/v1_similar_params.py +25 -0
- casedev/types/legal/v1_similar_response.py +42 -0
- casedev/types/legal/v1_verify_params.py +16 -0
- casedev/types/legal/v1_verify_response.py +92 -0
- casedev/types/memory/__init__.py +14 -0
- casedev/types/memory/v1_create_params.py +69 -0
- casedev/types/memory/v1_create_response.py +23 -0
- casedev/types/memory/v1_delete_all_params.py +45 -0
- casedev/types/memory/v1_delete_all_response.py +12 -0
- casedev/types/memory/v1_delete_response.py +13 -0
- casedev/types/memory/v1_list_params.py +54 -0
- casedev/types/memory/v1_list_response.py +29 -0
- casedev/types/memory/v1_retrieve_response.py +23 -0
- casedev/types/memory/v1_search_params.py +54 -0
- casedev/types/memory/v1_search_response.py +61 -0
- casedev/types/ocr/v1_process_params.py +21 -13
- casedev/types/ocr/v1_retrieve_response.py +7 -7
- casedev/types/privilege/__init__.py +6 -0
- casedev/types/privilege/v1_detect_params.py +34 -0
- casedev/types/privilege/v1_detect_response.py +41 -0
- casedev/types/superdoc/__init__.py +6 -0
- casedev/types/superdoc/v1_annotate_params.py +56 -0
- casedev/types/superdoc/v1_convert_params.py +23 -0
- casedev/types/translate/__init__.py +10 -0
- casedev/types/translate/v1_detect_params.py +18 -0
- casedev/types/translate/v1_detect_response.py +28 -0
- casedev/types/translate/v1_list_languages_params.py +18 -0
- casedev/types/translate/v1_list_languages_response.py +23 -0
- casedev/types/translate/v1_translate_params.py +30 -0
- casedev/types/translate/v1_translate_response.py +28 -0
- casedev/types/vault/__init__.py +14 -0
- casedev/types/vault/graphrag_process_object_response.py +45 -0
- casedev/types/vault/multipart_abort_params.py +15 -0
- casedev/types/vault/multipart_complete_params.py +26 -0
- casedev/types/vault/multipart_get_part_urls_params.py +24 -0
- casedev/types/vault/multipart_get_part_urls_response.py +19 -0
- casedev/types/vault/multipart_init_params.py +32 -0
- casedev/types/vault/multipart_init_response.py +23 -0
- casedev/types/vault/object_create_presigned_url_params.py +6 -0
- casedev/types/vault/object_delete_params.py +17 -0
- casedev/types/vault/object_delete_response.py +29 -0
- casedev/types/vault/object_get_ocr_words_params.py +28 -0
- casedev/types/vault/object_get_ocr_words_response.py +48 -0
- casedev/types/vault/object_get_summarize_job_response.py +40 -0
- casedev/types/vault/object_get_text_response.py +10 -10
- casedev/types/vault/object_list_response.py +13 -13
- casedev/types/vault/object_retrieve_response.py +13 -13
- casedev/types/vault/object_update_params.py +24 -0
- casedev/types/vault/object_update_response.py +39 -0
- casedev/types/vault_delete_params.py +17 -0
- casedev/types/vault_delete_response.py +30 -0
- casedev/types/vault_retrieve_response.py +13 -13
- casedev/types/vault_search_response.py +14 -0
- casedev/types/vault_update_params.py +21 -0
- casedev/types/vault_update_response.py +60 -0
- casedev/types/vault_upload_params.py +5 -2
- {casedev-0.2.0.dist-info → casedev-0.4.0.dist-info}/METADATA +1 -1
- casedev-0.4.0.dist-info/RECORD +275 -0
- casedev-0.2.0.dist-info/RECORD +0 -149
- /casedev/types/{webhooks → applications}/__init__.py +0 -0
- {casedev-0.2.0.dist-info → casedev-0.4.0.dist-info}/WHEEL +0 -0
- {casedev-0.2.0.dist-info → casedev-0.4.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
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__ = ["ObjectDeleteParams"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ObjectDeleteParams(TypedDict, total=False):
|
|
11
|
+
id: Required[str]
|
|
12
|
+
|
|
13
|
+
force: Literal["true"]
|
|
14
|
+
"""Force delete a stuck document that is still in 'processing' state.
|
|
15
|
+
|
|
16
|
+
Use this if a document got stuck during ingestion (e.g., OCR timeout).
|
|
17
|
+
"""
|
|
@@ -0,0 +1,29 @@
|
|
|
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__ = ["ObjectDeleteResponse", "DeletedObject"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class DeletedObject(BaseModel):
|
|
13
|
+
id: Optional[str] = None
|
|
14
|
+
"""Deleted object ID"""
|
|
15
|
+
|
|
16
|
+
filename: Optional[str] = None
|
|
17
|
+
"""Original filename"""
|
|
18
|
+
|
|
19
|
+
size_bytes: Optional[int] = FieldInfo(alias="sizeBytes", default=None)
|
|
20
|
+
"""Size of deleted file in bytes"""
|
|
21
|
+
|
|
22
|
+
vectors_deleted: Optional[int] = FieldInfo(alias="vectorsDeleted", default=None)
|
|
23
|
+
"""Number of vectors deleted"""
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class ObjectDeleteResponse(BaseModel):
|
|
27
|
+
deleted_object: Optional[DeletedObject] = FieldInfo(alias="deletedObject", default=None)
|
|
28
|
+
|
|
29
|
+
success: Optional[bool] = None
|
|
@@ -0,0 +1,28 @@
|
|
|
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__ = ["ObjectGetOcrWordsParams"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class ObjectGetOcrWordsParams(TypedDict, total=False):
|
|
13
|
+
id: Required[str]
|
|
14
|
+
|
|
15
|
+
page: int
|
|
16
|
+
"""Filter to a specific page number (1-indexed). If omitted, returns all pages."""
|
|
17
|
+
|
|
18
|
+
word_end: Annotated[int, PropertyInfo(alias="wordEnd")]
|
|
19
|
+
"""Filter to words ending at this index (inclusive).
|
|
20
|
+
|
|
21
|
+
Useful for retrieving words for a specific chunk.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
word_start: Annotated[int, PropertyInfo(alias="wordStart")]
|
|
25
|
+
"""Filter to words starting at this index (inclusive).
|
|
26
|
+
|
|
27
|
+
Useful for retrieving words for a specific chunk.
|
|
28
|
+
"""
|
|
@@ -0,0 +1,48 @@
|
|
|
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__ = ["ObjectGetOcrWordsResponse", "Page", "PageWord"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class PageWord(BaseModel):
|
|
14
|
+
bbox: Optional[List[float]] = None
|
|
15
|
+
"""Bounding box [x0, y0, x1, y1] normalized to 0-1 range"""
|
|
16
|
+
|
|
17
|
+
confidence: Optional[float] = None
|
|
18
|
+
"""OCR confidence score (0-1)"""
|
|
19
|
+
|
|
20
|
+
text: Optional[str] = None
|
|
21
|
+
"""The word text"""
|
|
22
|
+
|
|
23
|
+
word_index: Optional[int] = FieldInfo(alias="wordIndex", default=None)
|
|
24
|
+
"""Global word index across the entire document (0-based)"""
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class Page(BaseModel):
|
|
28
|
+
page: Optional[int] = None
|
|
29
|
+
"""Page number (1-indexed)"""
|
|
30
|
+
|
|
31
|
+
words: Optional[List[PageWord]] = None
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class ObjectGetOcrWordsResponse(BaseModel):
|
|
35
|
+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
|
|
36
|
+
"""When the OCR data was extracted"""
|
|
37
|
+
|
|
38
|
+
object_id: Optional[str] = FieldInfo(alias="objectId", default=None)
|
|
39
|
+
"""The object ID"""
|
|
40
|
+
|
|
41
|
+
page_count: Optional[int] = FieldInfo(alias="pageCount", default=None)
|
|
42
|
+
"""Total number of pages in the document"""
|
|
43
|
+
|
|
44
|
+
pages: Optional[List[Page]] = None
|
|
45
|
+
"""Per-page word data with bounding boxes"""
|
|
46
|
+
|
|
47
|
+
total_words: Optional[int] = FieldInfo(alias="totalWords", default=None)
|
|
48
|
+
"""Total number of words extracted from the document"""
|
|
@@ -0,0 +1,40 @@
|
|
|
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
|
+
from typing_extensions import Literal
|
|
6
|
+
|
|
7
|
+
from pydantic import Field as FieldInfo
|
|
8
|
+
|
|
9
|
+
from ..._models import BaseModel
|
|
10
|
+
|
|
11
|
+
__all__ = ["ObjectGetSummarizeJobResponse"]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class ObjectGetSummarizeJobResponse(BaseModel):
|
|
15
|
+
completed_at: Optional[datetime] = FieldInfo(alias="completedAt", default=None)
|
|
16
|
+
"""When the job completed"""
|
|
17
|
+
|
|
18
|
+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
|
|
19
|
+
"""When the job was created"""
|
|
20
|
+
|
|
21
|
+
error: Optional[str] = None
|
|
22
|
+
"""Error message (if failed)"""
|
|
23
|
+
|
|
24
|
+
job_id: Optional[str] = FieldInfo(alias="jobId", default=None)
|
|
25
|
+
"""Case.dev job ID"""
|
|
26
|
+
|
|
27
|
+
result_filename: Optional[str] = FieldInfo(alias="resultFilename", default=None)
|
|
28
|
+
"""Filename of the result document (if completed)"""
|
|
29
|
+
|
|
30
|
+
result_object_id: Optional[str] = FieldInfo(alias="resultObjectId", default=None)
|
|
31
|
+
"""ID of the result document (if completed)"""
|
|
32
|
+
|
|
33
|
+
source_object_id: Optional[str] = FieldInfo(alias="sourceObjectId", default=None)
|
|
34
|
+
"""ID of the source document"""
|
|
35
|
+
|
|
36
|
+
status: Optional[Literal["pending", "processing", "completed", "failed"]] = None
|
|
37
|
+
"""Current job status"""
|
|
38
|
+
|
|
39
|
+
workflow_type: Optional[str] = FieldInfo(alias="workflowType", default=None)
|
|
40
|
+
"""Type of workflow being executed"""
|
|
@@ -9,27 +9,27 @@ __all__ = ["ObjectGetTextResponse", "Metadata"]
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class Metadata(BaseModel):
|
|
12
|
-
chunk_count:
|
|
12
|
+
chunk_count: int
|
|
13
13
|
"""Number of text chunks the document was split into"""
|
|
14
14
|
|
|
15
|
-
filename:
|
|
15
|
+
filename: str
|
|
16
16
|
"""Original filename of the document"""
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
"""When the document processing completed"""
|
|
20
|
-
|
|
21
|
-
length: Optional[int] = None
|
|
18
|
+
length: int
|
|
22
19
|
"""Total character count of the extracted text"""
|
|
23
20
|
|
|
24
|
-
object_id:
|
|
21
|
+
object_id: str
|
|
25
22
|
"""The object ID"""
|
|
26
23
|
|
|
27
|
-
vault_id:
|
|
24
|
+
vault_id: str
|
|
28
25
|
"""The vault ID"""
|
|
29
26
|
|
|
27
|
+
ingestion_completed_at: Optional[datetime] = None
|
|
28
|
+
"""When the document processing completed"""
|
|
29
|
+
|
|
30
30
|
|
|
31
31
|
class ObjectGetTextResponse(BaseModel):
|
|
32
|
-
metadata:
|
|
32
|
+
metadata: Metadata
|
|
33
33
|
|
|
34
|
-
text:
|
|
34
|
+
text: str
|
|
35
35
|
"""Full concatenated text content from all chunks"""
|
|
@@ -11,27 +11,27 @@ __all__ = ["ObjectListResponse", "Object"]
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class Object(BaseModel):
|
|
14
|
-
id:
|
|
14
|
+
id: str
|
|
15
15
|
"""Unique object identifier"""
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
"""Number of text chunks created for vectorization"""
|
|
19
|
-
|
|
20
|
-
content_type: Optional[str] = FieldInfo(alias="contentType", default=None)
|
|
17
|
+
content_type: str = FieldInfo(alias="contentType")
|
|
21
18
|
"""MIME type of the document"""
|
|
22
19
|
|
|
23
|
-
created_at:
|
|
20
|
+
created_at: datetime = FieldInfo(alias="createdAt")
|
|
24
21
|
"""Document upload timestamp"""
|
|
25
22
|
|
|
26
|
-
filename:
|
|
23
|
+
filename: str
|
|
27
24
|
"""Original filename of the uploaded document"""
|
|
28
25
|
|
|
26
|
+
ingestion_status: str = FieldInfo(alias="ingestionStatus")
|
|
27
|
+
"""Processing status of the document"""
|
|
28
|
+
|
|
29
|
+
chunk_count: Optional[float] = FieldInfo(alias="chunkCount", default=None)
|
|
30
|
+
"""Number of text chunks created for vectorization"""
|
|
31
|
+
|
|
29
32
|
ingestion_completed_at: Optional[datetime] = FieldInfo(alias="ingestionCompletedAt", default=None)
|
|
30
33
|
"""Processing completion timestamp"""
|
|
31
34
|
|
|
32
|
-
ingestion_status: Optional[str] = FieldInfo(alias="ingestionStatus", default=None)
|
|
33
|
-
"""Processing status of the document"""
|
|
34
|
-
|
|
35
35
|
metadata: Optional[object] = None
|
|
36
36
|
"""Custom metadata associated with the document"""
|
|
37
37
|
|
|
@@ -55,10 +55,10 @@ class Object(BaseModel):
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
class ObjectListResponse(BaseModel):
|
|
58
|
-
count:
|
|
58
|
+
count: float
|
|
59
59
|
"""Total number of objects in the vault"""
|
|
60
60
|
|
|
61
|
-
objects:
|
|
61
|
+
objects: List[Object]
|
|
62
62
|
|
|
63
|
-
vault_id:
|
|
63
|
+
vault_id: str = FieldInfo(alias="vaultId")
|
|
64
64
|
"""The ID of the vault"""
|
|
@@ -11,30 +11,33 @@ __all__ = ["ObjectRetrieveResponse"]
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class ObjectRetrieveResponse(BaseModel):
|
|
14
|
-
id:
|
|
14
|
+
id: str
|
|
15
15
|
"""Object ID"""
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
"""Number of text chunks created"""
|
|
19
|
-
|
|
20
|
-
content_type: Optional[str] = FieldInfo(alias="contentType", default=None)
|
|
17
|
+
content_type: str = FieldInfo(alias="contentType")
|
|
21
18
|
"""MIME type"""
|
|
22
19
|
|
|
23
|
-
created_at:
|
|
20
|
+
created_at: datetime = FieldInfo(alias="createdAt")
|
|
24
21
|
"""Upload timestamp"""
|
|
25
22
|
|
|
26
|
-
download_url:
|
|
23
|
+
download_url: str = FieldInfo(alias="downloadUrl")
|
|
27
24
|
"""Presigned S3 download URL"""
|
|
28
25
|
|
|
29
|
-
expires_in:
|
|
26
|
+
expires_in: int = FieldInfo(alias="expiresIn")
|
|
30
27
|
"""URL expiration time in seconds"""
|
|
31
28
|
|
|
32
|
-
filename:
|
|
29
|
+
filename: str
|
|
33
30
|
"""Original filename"""
|
|
34
31
|
|
|
35
|
-
ingestion_status:
|
|
32
|
+
ingestion_status: str = FieldInfo(alias="ingestionStatus")
|
|
36
33
|
"""Processing status (pending, processing, completed, failed)"""
|
|
37
34
|
|
|
35
|
+
vault_id: str = FieldInfo(alias="vaultId")
|
|
36
|
+
"""Vault ID"""
|
|
37
|
+
|
|
38
|
+
chunk_count: Optional[int] = FieldInfo(alias="chunkCount", default=None)
|
|
39
|
+
"""Number of text chunks created"""
|
|
40
|
+
|
|
38
41
|
metadata: Optional[object] = None
|
|
39
42
|
"""Additional metadata"""
|
|
40
43
|
|
|
@@ -50,8 +53,5 @@ class ObjectRetrieveResponse(BaseModel):
|
|
|
50
53
|
text_length: Optional[int] = FieldInfo(alias="textLength", default=None)
|
|
51
54
|
"""Length of extracted text"""
|
|
52
55
|
|
|
53
|
-
vault_id: Optional[str] = FieldInfo(alias="vaultId", default=None)
|
|
54
|
-
"""Vault ID"""
|
|
55
|
-
|
|
56
56
|
vector_count: Optional[int] = FieldInfo(alias="vectorCount", default=None)
|
|
57
57
|
"""Number of embedding vectors generated"""
|
|
@@ -0,0 +1,24 @@
|
|
|
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 Optional
|
|
6
|
+
from typing_extensions import Required, TypedDict
|
|
7
|
+
|
|
8
|
+
__all__ = ["ObjectUpdateParams"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class ObjectUpdateParams(TypedDict, total=False):
|
|
12
|
+
id: Required[str]
|
|
13
|
+
|
|
14
|
+
filename: str
|
|
15
|
+
"""New filename for the document (affects display name and downloads)"""
|
|
16
|
+
|
|
17
|
+
metadata: object
|
|
18
|
+
"""Additional metadata to merge with existing metadata"""
|
|
19
|
+
|
|
20
|
+
path: Optional[str]
|
|
21
|
+
"""Folder path for hierarchy preservation (e.g., '/Discovery/Depositions').
|
|
22
|
+
|
|
23
|
+
Set to null or empty string to remove.
|
|
24
|
+
"""
|
|
@@ -0,0 +1,39 @@
|
|
|
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__ = ["ObjectUpdateResponse"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class ObjectUpdateResponse(BaseModel):
|
|
14
|
+
id: Optional[str] = None
|
|
15
|
+
"""Object ID"""
|
|
16
|
+
|
|
17
|
+
content_type: Optional[str] = FieldInfo(alias="contentType", default=None)
|
|
18
|
+
"""MIME type"""
|
|
19
|
+
|
|
20
|
+
filename: Optional[str] = None
|
|
21
|
+
"""Updated filename"""
|
|
22
|
+
|
|
23
|
+
ingestion_status: Optional[str] = FieldInfo(alias="ingestionStatus", default=None)
|
|
24
|
+
"""Processing status"""
|
|
25
|
+
|
|
26
|
+
metadata: Optional[object] = None
|
|
27
|
+
"""Full metadata object"""
|
|
28
|
+
|
|
29
|
+
path: Optional[str] = None
|
|
30
|
+
"""Folder path for hierarchy preservation"""
|
|
31
|
+
|
|
32
|
+
size_bytes: Optional[int] = FieldInfo(alias="sizeBytes", default=None)
|
|
33
|
+
"""File size in bytes"""
|
|
34
|
+
|
|
35
|
+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
|
|
36
|
+
"""Last update timestamp"""
|
|
37
|
+
|
|
38
|
+
vault_id: Optional[str] = FieldInfo(alias="vaultId", default=None)
|
|
39
|
+
"""Vault ID"""
|
|
@@ -0,0 +1,17 @@
|
|
|
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 Annotated, TypedDict
|
|
6
|
+
|
|
7
|
+
from .._utils import PropertyInfo
|
|
8
|
+
|
|
9
|
+
__all__ = ["VaultDeleteParams"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class VaultDeleteParams(TypedDict, total=False):
|
|
13
|
+
async_: Annotated[bool, PropertyInfo(alias="async")]
|
|
14
|
+
"""
|
|
15
|
+
If true and vault has many objects, queue deletion in background and return
|
|
16
|
+
immediately
|
|
17
|
+
"""
|
|
@@ -0,0 +1,30 @@
|
|
|
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__ = ["VaultDeleteResponse", "DeletedVault"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class DeletedVault(BaseModel):
|
|
13
|
+
id: Optional[str] = None
|
|
14
|
+
|
|
15
|
+
bytes_freed: Optional[int] = FieldInfo(alias="bytesFreed", default=None)
|
|
16
|
+
|
|
17
|
+
name: Optional[str] = None
|
|
18
|
+
|
|
19
|
+
objects_deleted: Optional[int] = FieldInfo(alias="objectsDeleted", default=None)
|
|
20
|
+
|
|
21
|
+
vectors_deleted: Optional[int] = FieldInfo(alias="vectorsDeleted", default=None)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class VaultDeleteResponse(BaseModel):
|
|
25
|
+
deleted_vault: Optional[DeletedVault] = FieldInfo(alias="deletedVault", default=None)
|
|
26
|
+
|
|
27
|
+
status: Optional[str] = None
|
|
28
|
+
"""Either 'deleted' or 'deletion_queued'"""
|
|
29
|
+
|
|
30
|
+
success: Optional[bool] = None
|
|
@@ -27,24 +27,30 @@ class ChunkStrategy(BaseModel):
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
class VaultRetrieveResponse(BaseModel):
|
|
30
|
-
id:
|
|
30
|
+
id: str
|
|
31
31
|
"""Vault identifier"""
|
|
32
32
|
|
|
33
|
+
created_at: datetime = FieldInfo(alias="createdAt")
|
|
34
|
+
"""Vault creation timestamp"""
|
|
35
|
+
|
|
36
|
+
files_bucket: str = FieldInfo(alias="filesBucket")
|
|
37
|
+
"""S3 bucket for document storage"""
|
|
38
|
+
|
|
39
|
+
name: str
|
|
40
|
+
"""Vault name"""
|
|
41
|
+
|
|
42
|
+
region: str
|
|
43
|
+
"""AWS region"""
|
|
44
|
+
|
|
33
45
|
chunk_strategy: Optional[ChunkStrategy] = FieldInfo(alias="chunkStrategy", default=None)
|
|
34
46
|
"""Document chunking strategy configuration"""
|
|
35
47
|
|
|
36
|
-
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
|
|
37
|
-
"""Vault creation timestamp"""
|
|
38
|
-
|
|
39
48
|
description: Optional[str] = None
|
|
40
49
|
"""Vault description"""
|
|
41
50
|
|
|
42
51
|
enable_graph: Optional[bool] = FieldInfo(alias="enableGraph", default=None)
|
|
43
52
|
"""Whether GraphRAG is enabled"""
|
|
44
53
|
|
|
45
|
-
files_bucket: Optional[str] = FieldInfo(alias="filesBucket", default=None)
|
|
46
|
-
"""S3 bucket for document storage"""
|
|
47
|
-
|
|
48
54
|
index_name: Optional[str] = FieldInfo(alias="indexName", default=None)
|
|
49
55
|
"""Search index name"""
|
|
50
56
|
|
|
@@ -54,12 +60,6 @@ class VaultRetrieveResponse(BaseModel):
|
|
|
54
60
|
metadata: Optional[object] = None
|
|
55
61
|
"""Additional vault metadata"""
|
|
56
62
|
|
|
57
|
-
name: Optional[str] = None
|
|
58
|
-
"""Vault name"""
|
|
59
|
-
|
|
60
|
-
region: Optional[str] = None
|
|
61
|
-
"""AWS region"""
|
|
62
|
-
|
|
63
63
|
total_bytes: Optional[int] = FieldInfo(alias="totalBytes", default=None)
|
|
64
64
|
"""Total storage size in bytes"""
|
|
65
65
|
|
|
@@ -41,6 +41,20 @@ class Chunk(BaseModel):
|
|
|
41
41
|
text: Optional[str] = None
|
|
42
42
|
"""Preview of the chunk text (up to 500 characters)"""
|
|
43
43
|
|
|
44
|
+
word_end_index: Optional[int] = None
|
|
45
|
+
"""Ending word index (0-based) in the OCR word list.
|
|
46
|
+
|
|
47
|
+
Use with GET /vault/:id/objects/:objectId/ocr-words to retrieve bounding boxes
|
|
48
|
+
for highlighting.
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
word_start_index: Optional[int] = None
|
|
52
|
+
"""Starting word index (0-based) in the OCR word list.
|
|
53
|
+
|
|
54
|
+
Use with GET /vault/:id/objects/:objectId/ocr-words to retrieve bounding boxes
|
|
55
|
+
for highlighting.
|
|
56
|
+
"""
|
|
57
|
+
|
|
44
58
|
|
|
45
59
|
class Source(BaseModel):
|
|
46
60
|
id: Optional[str] = None
|
|
@@ -0,0 +1,21 @@
|
|
|
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 Optional
|
|
6
|
+
from typing_extensions import Annotated, TypedDict
|
|
7
|
+
|
|
8
|
+
from .._utils import PropertyInfo
|
|
9
|
+
|
|
10
|
+
__all__ = ["VaultUpdateParams"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class VaultUpdateParams(TypedDict, total=False):
|
|
14
|
+
description: Optional[str]
|
|
15
|
+
"""New description for the vault. Set to null to remove."""
|
|
16
|
+
|
|
17
|
+
enable_graph: Annotated[bool, PropertyInfo(alias="enableGraph")]
|
|
18
|
+
"""Whether to enable GraphRAG for future document uploads"""
|
|
19
|
+
|
|
20
|
+
name: str
|
|
21
|
+
"""New name for the vault"""
|
|
@@ -0,0 +1,60 @@
|
|
|
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__ = ["VaultUpdateResponse"]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class VaultUpdateResponse(BaseModel):
|
|
14
|
+
id: Optional[str] = None
|
|
15
|
+
"""Vault identifier"""
|
|
16
|
+
|
|
17
|
+
chunk_strategy: Optional[object] = FieldInfo(alias="chunkStrategy", default=None)
|
|
18
|
+
"""Document chunking strategy configuration"""
|
|
19
|
+
|
|
20
|
+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
|
|
21
|
+
"""Vault creation timestamp"""
|
|
22
|
+
|
|
23
|
+
description: Optional[str] = None
|
|
24
|
+
"""Vault description"""
|
|
25
|
+
|
|
26
|
+
enable_graph: Optional[bool] = FieldInfo(alias="enableGraph", default=None)
|
|
27
|
+
"""Whether GraphRAG is enabled for future uploads"""
|
|
28
|
+
|
|
29
|
+
files_bucket: Optional[str] = FieldInfo(alias="filesBucket", default=None)
|
|
30
|
+
"""S3 bucket for document storage"""
|
|
31
|
+
|
|
32
|
+
index_name: Optional[str] = FieldInfo(alias="indexName", default=None)
|
|
33
|
+
"""Search index name"""
|
|
34
|
+
|
|
35
|
+
kms_key_id: Optional[str] = FieldInfo(alias="kmsKeyId", default=None)
|
|
36
|
+
"""KMS key for encryption"""
|
|
37
|
+
|
|
38
|
+
metadata: Optional[object] = None
|
|
39
|
+
"""Additional vault metadata"""
|
|
40
|
+
|
|
41
|
+
name: Optional[str] = None
|
|
42
|
+
"""Vault name"""
|
|
43
|
+
|
|
44
|
+
region: Optional[str] = None
|
|
45
|
+
"""AWS region"""
|
|
46
|
+
|
|
47
|
+
total_bytes: Optional[int] = FieldInfo(alias="totalBytes", default=None)
|
|
48
|
+
"""Total storage size in bytes"""
|
|
49
|
+
|
|
50
|
+
total_objects: Optional[int] = FieldInfo(alias="totalObjects", default=None)
|
|
51
|
+
"""Number of stored documents"""
|
|
52
|
+
|
|
53
|
+
total_vectors: Optional[int] = FieldInfo(alias="totalVectors", default=None)
|
|
54
|
+
"""Number of vector embeddings"""
|
|
55
|
+
|
|
56
|
+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
|
|
57
|
+
"""Last update timestamp"""
|
|
58
|
+
|
|
59
|
+
vector_bucket: Optional[str] = FieldInfo(alias="vectorBucket", default=None)
|
|
60
|
+
"""S3 bucket for vector embeddings"""
|
|
@@ -29,5 +29,8 @@ class VaultUploadParams(TypedDict, total=False):
|
|
|
29
29
|
NetDocs, Clio, or Smokeball. Example: '/Discovery/Depositions/2024'
|
|
30
30
|
"""
|
|
31
31
|
|
|
32
|
-
size_bytes: Annotated[
|
|
33
|
-
"""
|
|
32
|
+
size_bytes: Annotated[int, PropertyInfo(alias="sizeBytes")]
|
|
33
|
+
"""File size in bytes (optional, max 5GB for single PUT uploads).
|
|
34
|
+
|
|
35
|
+
When provided, enforces exact file size at S3 level.
|
|
36
|
+
"""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: casedev
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: The official Python library for the casedev API
|
|
5
5
|
Project-URL: Homepage, https://github.com/CaseMark/casedev-python
|
|
6
6
|
Project-URL: Repository, https://github.com/CaseMark/casedev-python
|