diff --git a/.fern/metadata.json b/.fern/metadata.json index d6c4b56..0a7f52c 100644 --- a/.fern/metadata.json +++ b/.fern/metadata.json @@ -7,9 +7,9 @@ "client_class_name": "CloudPDFClient", "environment_class_name": "CloudPDFEnvironment" }, - "originGitCommit": "20cebe429411ef5019c9e31fc7841d72b7fb98a8", + "originGitCommit": "e5cd0731cb3a1f2ed5821f8d60191bd58934c3dd", "originGitCommitIsDirty": false, "invokedBy": "ci", - "requestedVersion": "3.0.0a8", + "requestedVersion": "3.0.0a9", "ciProvider": "github" } \ No newline at end of file diff --git a/cloudpdf-generation.json b/cloudpdf-generation.json index 15c8e49..7aad528 100644 --- a/cloudpdf-generation.json +++ b/cloudpdf-generation.json @@ -1,12 +1,12 @@ { "language": "python", - "canonicalVersion": "3.0.0-next.8", - "sdkVersion": "3.0.0a8", + "canonicalVersion": "3.0.0-next.9", + "sdkVersion": "3.0.0a9", "source": { "repository": "embedpdf/embed-pdf-viewer", "openapi": "cloudpdf/contract/openapi.json", - "openapiSha256": "e997d51317662fe0666e6582916ded9b17a8bcd225c178548e1ff226e4d01c6d", - "gitCommit": "20cebe429411ef5019c9e31fc7841d72b7fb98a8", + "openapiSha256": "4ee27900dbb0b13408ce00a0e80d606444ab81e9d5a76186fa984c8c8dfe09fe", + "gitCommit": "e5cd0731cb3a1f2ed5821f8d60191bd58934c3dd", "gitCommitIsDirty": false }, "fern": { diff --git a/pyproject.toml b/pyproject.toml index 77cf6e8..24afbbe 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ dynamic = ["version"] [tool.poetry] name = "cloudpdf" -version = "3.0.0a8" +version = "3.0.0a9" description = "The official Python SDK for the CloudPDF API." readme = "README.md" authors = ["CloudPDF "] diff --git a/reference.md b/reference.md index e6a4a4d..59c12e6 100644 --- a/reference.md +++ b/reference.md @@ -3403,6 +3403,106 @@ client.doc.pages.delete( + + + + +
client.doc.pages.extract(...) -> typing.Iterator[bytes] +
+
+ +#### 📝 Description + +
+
+ +
+
+ +A read, not a mutation: the source document is untouched and no event is published. Body is `{"pageObjectNumbers": number[]}`; the response body is the new PDF. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from cloudpdf import CloudPDFClient + +client = CloudPDFClient( + token="", + base_url="https://yourhost.com/path/to/api", +) + +client.doc.pages.extract( + doc_id="docId", + layer_name="layerName", + request={ + "string": {"key": "value"} + }, +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**doc_id:** `str` + +
+
+ +
+
+ +**layer_name:** `str` + +
+
+ +
+
+ +**request:** `DocPagesExtractRequest` + +
+
+ +
+
+ +**document_password:** `typing.Optional[str]` — Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
@@ -3489,6 +3589,204 @@ client.doc.pages.flatten( + + + + +
client.doc.pages.insert(...) -> DocPagesInsert200Response +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Multipart mutation envelope: a `body` field holding `{"destIndex"?: number}` (omitted → append) plus a `resource:source` file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from cloudpdf import CloudPDFClient + +client = CloudPDFClient( + token="", + base_url="https://yourhost.com/path/to/api", +) + +client.doc.pages.insert( + doc_id="docId", + layer_name="layerName", + file="example_file", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**doc_id:** `str` + +
+
+ +
+
+ +**layer_name:** `str` + +
+
+ +
+
+ +**file:** `core.File` + +
+
+ +
+
+ +**document_password:** `typing.Optional[str]` — Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + +
+
+
+ +
client.doc.pages.insert_blank(...) -> DocPagesInsertBlank200Response +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Body is `{"size": {"width", "height"}, "count"?, "destIndex"?}` — size in PDF points, count in [1, 100], destIndex omitted → append. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from cloudpdf import CloudPDFClient + +client = CloudPDFClient( + token="", + base_url="https://yourhost.com/path/to/api", +) + +client.doc.pages.insert_blank( + doc_id="docId", + layer_name="layerName", + request={ + "key": "value" + }, +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**doc_id:** `str` + +
+
+ +
+
+ +**layer_name:** `str` + +
+
+ +
+
+ +**request:** `DocPagesInsertBlankRequest` + +
+
+ +
+
+ +**document_password:** `typing.Optional[str]` — Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
diff --git a/src/cloudpdf/__init__.py b/src/cloudpdf/__init__.py index 422f2ab..3fa4fe2 100644 --- a/src/cloudpdf/__init__.py +++ b/src/cloudpdf/__init__.py @@ -1982,6 +1982,13 @@ DocPagesDelete404ResponseCode, DocPagesDelete404ResponseName, DocPagesDeleteRequest, + DocPagesExtract400Response, + DocPagesExtract400ResponseCode, + DocPagesExtract400ResponseName, + DocPagesExtract404Response, + DocPagesExtract404ResponseCode, + DocPagesExtract404ResponseName, + DocPagesExtractRequest, DocPagesFlatten200Response, DocPagesFlatten200ResponseMeta, DocPagesFlatten200ResponseMetaAffectedPagesItem, @@ -2001,6 +2008,43 @@ DocPagesFlatten404ResponseCode, DocPagesFlatten404ResponseName, DocPagesFlattenRequest, + DocPagesInsert200Response, + DocPagesInsert200ResponseMeta, + DocPagesInsert200ResponseMetaAffectedPagesItem, + DocPagesInsert200ResponseMetaAffectedPagesItemRevision, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + DocPagesInsert200ResponseMetaCacheDelta, + DocPagesInsert200ResponseMetaCacheDeltaPagesItem, + DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache, + DocPagesInsert400Response, + DocPagesInsert400ResponseCode, + DocPagesInsert400ResponseName, + DocPagesInsert404Response, + DocPagesInsert404ResponseCode, + DocPagesInsert404ResponseName, + DocPagesInsertBlank200Response, + DocPagesInsertBlank200ResponseMeta, + DocPagesInsertBlank200ResponseMetaAffectedPagesItem, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + DocPagesInsertBlank200ResponseMetaCacheDelta, + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem, + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache, + DocPagesInsertBlank400Response, + DocPagesInsertBlank400ResponseCode, + DocPagesInsertBlank400ResponseName, + DocPagesInsertBlank404Response, + DocPagesInsertBlank404ResponseCode, + DocPagesInsertBlank404ResponseName, + DocPagesInsertBlankRequest, DocPagesMove200Response, DocPagesMove200ResponseMeta, DocPagesMove200ResponseMetaAffectedPagesItem, @@ -4242,6 +4286,13 @@ "DocPagesDelete404ResponseCode": ".types", "DocPagesDelete404ResponseName": ".types", "DocPagesDeleteRequest": ".types", + "DocPagesExtract400Response": ".types", + "DocPagesExtract400ResponseCode": ".types", + "DocPagesExtract400ResponseName": ".types", + "DocPagesExtract404Response": ".types", + "DocPagesExtract404ResponseCode": ".types", + "DocPagesExtract404ResponseName": ".types", + "DocPagesExtractRequest": ".types", "DocPagesFlatten200Response": ".types", "DocPagesFlatten200ResponseMeta": ".types", "DocPagesFlatten200ResponseMetaAffectedPagesItem": ".types", @@ -4261,6 +4312,43 @@ "DocPagesFlatten404ResponseCode": ".types", "DocPagesFlatten404ResponseName": ".types", "DocPagesFlattenRequest": ".types", + "DocPagesInsert200Response": ".types", + "DocPagesInsert200ResponseMeta": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItem": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemRevision": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known": ".types", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown": ".types", + "DocPagesInsert200ResponseMetaCacheDelta": ".types", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItem": ".types", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache": ".types", + "DocPagesInsert400Response": ".types", + "DocPagesInsert400ResponseCode": ".types", + "DocPagesInsert400ResponseName": ".types", + "DocPagesInsert404Response": ".types", + "DocPagesInsert404ResponseCode": ".types", + "DocPagesInsert404ResponseName": ".types", + "DocPagesInsertBlank200Response": ".types", + "DocPagesInsertBlank200ResponseMeta": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItem": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known": ".types", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown": ".types", + "DocPagesInsertBlank200ResponseMetaCacheDelta": ".types", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem": ".types", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache": ".types", + "DocPagesInsertBlank400Response": ".types", + "DocPagesInsertBlank400ResponseCode": ".types", + "DocPagesInsertBlank400ResponseName": ".types", + "DocPagesInsertBlank404Response": ".types", + "DocPagesInsertBlank404ResponseCode": ".types", + "DocPagesInsertBlank404ResponseName": ".types", + "DocPagesInsertBlankRequest": ".types", "DocPagesMove200Response": ".types", "DocPagesMove200ResponseMeta": ".types", "DocPagesMove200ResponseMetaAffectedPagesItem": ".types", @@ -6521,6 +6609,13 @@ def __dir__(): "DocPagesDelete404ResponseCode", "DocPagesDelete404ResponseName", "DocPagesDeleteRequest", + "DocPagesExtract400Response", + "DocPagesExtract400ResponseCode", + "DocPagesExtract400ResponseName", + "DocPagesExtract404Response", + "DocPagesExtract404ResponseCode", + "DocPagesExtract404ResponseName", + "DocPagesExtractRequest", "DocPagesFlatten200Response", "DocPagesFlatten200ResponseMeta", "DocPagesFlatten200ResponseMetaAffectedPagesItem", @@ -6540,6 +6635,43 @@ def __dir__(): "DocPagesFlatten404ResponseCode", "DocPagesFlatten404ResponseName", "DocPagesFlattenRequest", + "DocPagesInsert200Response", + "DocPagesInsert200ResponseMeta", + "DocPagesInsert200ResponseMetaAffectedPagesItem", + "DocPagesInsert200ResponseMetaAffectedPagesItemRevision", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown", + "DocPagesInsert200ResponseMetaCacheDelta", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItem", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache", + "DocPagesInsert400Response", + "DocPagesInsert400ResponseCode", + "DocPagesInsert400ResponseName", + "DocPagesInsert404Response", + "DocPagesInsert404ResponseCode", + "DocPagesInsert404ResponseName", + "DocPagesInsertBlank200Response", + "DocPagesInsertBlank200ResponseMeta", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItem", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown", + "DocPagesInsertBlank200ResponseMetaCacheDelta", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache", + "DocPagesInsertBlank400Response", + "DocPagesInsertBlank400ResponseCode", + "DocPagesInsertBlank400ResponseName", + "DocPagesInsertBlank404Response", + "DocPagesInsertBlank404ResponseCode", + "DocPagesInsertBlank404ResponseName", + "DocPagesInsertBlankRequest", "DocPagesMove200Response", "DocPagesMove200ResponseMeta", "DocPagesMove200ResponseMetaAffectedPagesItem", diff --git a/src/cloudpdf/core/client_wrapper.py b/src/cloudpdf/core/client_wrapper.py index e5b47b1..e1ff655 100644 --- a/src/cloudpdf/core/client_wrapper.py +++ b/src/cloudpdf/core/client_wrapper.py @@ -33,12 +33,12 @@ def get_headers(self) -> typing.Dict[str, str]: import platform headers: typing.Dict[str, str] = { - "User-Agent": "cloudpdf/3.0.0a8", + "User-Agent": "cloudpdf/3.0.0a9", "X-Fern-Language": "Python", "X-Fern-Runtime": f"python/{platform.python_version()}", "X-Fern-Platform": f"{platform.system().lower()}/{platform.release()}", "X-Fern-SDK-Name": "cloudpdf", - "X-Fern-SDK-Version": "3.0.0a8", + "X-Fern-SDK-Version": "3.0.0a9", **(self.get_custom_headers() or {}), } token = self._get_token() diff --git a/src/cloudpdf/doc/pages/client.py b/src/cloudpdf/doc/pages/client.py index 911c01c..72a889e 100644 --- a/src/cloudpdf/doc/pages/client.py +++ b/src/cloudpdf/doc/pages/client.py @@ -2,12 +2,17 @@ import typing +from ... import core from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ...core.request_options import RequestOptions from ...types.doc_pages_delete200response import DocPagesDelete200Response from ...types.doc_pages_delete_request import DocPagesDeleteRequest +from ...types.doc_pages_extract_request import DocPagesExtractRequest from ...types.doc_pages_flatten200response import DocPagesFlatten200Response from ...types.doc_pages_flatten_request import DocPagesFlattenRequest +from ...types.doc_pages_insert200response import DocPagesInsert200Response +from ...types.doc_pages_insert_blank200response import DocPagesInsertBlank200Response +from ...types.doc_pages_insert_blank_request import DocPagesInsertBlankRequest from ...types.doc_pages_move200response import DocPagesMove200Response from ...types.doc_pages_move_request import DocPagesMoveRequest from ...types.doc_pages_rotate200response import DocPagesRotate200Response @@ -81,6 +86,56 @@ def delete( ) return _response.data + def extract( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesExtractRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[bytes]: + """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pageObjectNumbers": number[]}`; the response body is the new PDF. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesExtractRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. + + Returns + ------- + typing.Iterator[bytes] + OK + + Examples + -------- + from cloudpdf import CloudPDFClient + + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + client.doc.pages.extract( + doc_id="docId", + layer_name="layerName", + request={"string": {"key": "value"}}, + ) + """ + with self._raw_client.extract( + doc_id, layer_name, request=request, document_password=document_password, request_options=request_options + ) as r: + yield from r.data + def flatten( self, doc_id: str, @@ -129,6 +184,106 @@ def flatten( ) return _response.data + def insert( + self, + doc_id: str, + layer_name: str, + *, + file: core.File, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocPagesInsert200Response: + """ + Multipart mutation envelope: a `body` field holding `{"destIndex"?: number}` (omitted → append) plus a `resource:source` file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order. + + Parameters + ---------- + doc_id : str + + layer_name : str + + file : core.File + See core.File for more documentation + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DocPagesInsert200Response + OK + + Examples + -------- + from cloudpdf import CloudPDFClient + + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + client.doc.pages.insert( + doc_id="docId", + layer_name="layerName", + ) + """ + _response = self._raw_client.insert( + doc_id, layer_name, file=file, document_password=document_password, request_options=request_options + ) + return _response.data + + def insert_blank( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesInsertBlankRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocPagesInsertBlank200Response: + """ + Body is `{"size": {"width", "height"}, "count"?, "destIndex"?}` — size in PDF points, count in [1, 100], destIndex omitted → append. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesInsertBlankRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DocPagesInsertBlank200Response + OK + + Examples + -------- + from cloudpdf import CloudPDFClient + + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + client.doc.pages.insert_blank( + doc_id="docId", + layer_name="layerName", + request={"key": "value"}, + ) + """ + _response = self._raw_client.insert_blank( + doc_id, layer_name, request=request, document_password=document_password, request_options=request_options + ) + return _response.data + def move( self, doc_id: str, @@ -297,6 +452,65 @@ async def main() -> None: ) return _response.data + async def extract( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesExtractRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[bytes]: + """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pageObjectNumbers": number[]}`; the response body is the new PDF. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesExtractRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. + + Returns + ------- + typing.AsyncIterator[bytes] + OK + + Examples + -------- + import asyncio + + from cloudpdf import AsyncCloudPDFClient + + client = AsyncCloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + + + async def main() -> None: + await client.doc.pages.extract( + doc_id="docId", + layer_name="layerName", + request={"string": {"key": "value"}}, + ) + + + asyncio.run(main()) + """ + async with self._raw_client.extract( + doc_id, layer_name, request=request, document_password=document_password, request_options=request_options + ) as r: + async for _chunk in r.data: + yield _chunk + async def flatten( self, doc_id: str, @@ -353,6 +567,122 @@ async def main() -> None: ) return _response.data + async def insert( + self, + doc_id: str, + layer_name: str, + *, + file: core.File, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocPagesInsert200Response: + """ + Multipart mutation envelope: a `body` field holding `{"destIndex"?: number}` (omitted → append) plus a `resource:source` file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order. + + Parameters + ---------- + doc_id : str + + layer_name : str + + file : core.File + See core.File for more documentation + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DocPagesInsert200Response + OK + + Examples + -------- + import asyncio + + from cloudpdf import AsyncCloudPDFClient + + client = AsyncCloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + + + async def main() -> None: + await client.doc.pages.insert( + doc_id="docId", + layer_name="layerName", + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.insert( + doc_id, layer_name, file=file, document_password=document_password, request_options=request_options + ) + return _response.data + + async def insert_blank( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesInsertBlankRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocPagesInsertBlank200Response: + """ + Body is `{"size": {"width", "height"}, "count"?, "destIndex"?}` — size in PDF points, count in [1, 100], destIndex omitted → append. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesInsertBlankRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DocPagesInsertBlank200Response + OK + + Examples + -------- + import asyncio + + from cloudpdf import AsyncCloudPDFClient + + client = AsyncCloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + + + async def main() -> None: + await client.doc.pages.insert_blank( + doc_id="docId", + layer_name="layerName", + request={"key": "value"}, + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.insert_blank( + doc_id, layer_name, request=request, document_password=document_password, request_options=request_options + ) + return _response.data + async def move( self, doc_id: str, diff --git a/src/cloudpdf/doc/pages/raw_client.py b/src/cloudpdf/doc/pages/raw_client.py index e300f54..ad61562 100644 --- a/src/cloudpdf/doc/pages/raw_client.py +++ b/src/cloudpdf/doc/pages/raw_client.py @@ -1,8 +1,10 @@ # This file was auto-generated by Fern from our API Definition. +import contextlib import typing from json.decoder import JSONDecodeError +from ... import core from ...core.api_error import ApiError from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ...core.http_response import AsyncHttpResponse, HttpResponse @@ -14,8 +16,12 @@ from ...errors.not_found_error import NotFoundError from ...types.doc_pages_delete200response import DocPagesDelete200Response from ...types.doc_pages_delete_request import DocPagesDeleteRequest +from ...types.doc_pages_extract_request import DocPagesExtractRequest from ...types.doc_pages_flatten200response import DocPagesFlatten200Response from ...types.doc_pages_flatten_request import DocPagesFlattenRequest +from ...types.doc_pages_insert200response import DocPagesInsert200Response +from ...types.doc_pages_insert_blank200response import DocPagesInsertBlank200Response +from ...types.doc_pages_insert_blank_request import DocPagesInsertBlankRequest from ...types.doc_pages_move200response import DocPagesMove200Response from ...types.doc_pages_move_request import DocPagesMoveRequest from ...types.doc_pages_rotate200response import DocPagesRotate200Response @@ -111,6 +117,96 @@ def delete( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + @contextlib.contextmanager + def extract( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesExtractRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[HttpResponse[typing.Iterator[bytes]]]: + """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pageObjectNumbers": number[]}`; the response body is the new PDF. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesExtractRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. + + Returns + ------- + typing.Iterator[HttpResponse[typing.Iterator[bytes]]] + OK + """ + with self._client_wrapper.httpx_client.stream( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/extract", + method="POST", + json=request, + headers={ + "content-type": "application/json", + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + ) as _response: + + def _stream() -> HttpResponse[typing.Iterator[bytes]]: + try: + if 200 <= _response.status_code < 300: + _chunk_size = request_options.get("chunk_size", None) if request_options is not None else None + return HttpResponse( + response=_response, data=(_chunk for _chunk in _response.iter_bytes(chunk_size=_chunk_size)) + ) + _response.read() + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, + headers=dict(_response.headers), + body=_response.json(), + cause=e, + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + + yield _stream() + def flatten( self, doc_id: str, @@ -192,6 +288,176 @@ def flatten( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + def insert( + self, + doc_id: str, + layer_name: str, + *, + file: core.File, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[DocPagesInsert200Response]: + """ + Multipart mutation envelope: a `body` field holding `{"destIndex"?: number}` (omitted → append) plus a `resource:source` file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order. + + Parameters + ---------- + doc_id : str + + layer_name : str + + file : core.File + See core.File for more documentation + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + HttpResponse[DocPagesInsert200Response] + OK + """ + _response = self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/insert", + method="POST", + data={}, + files={ + "file": file, + }, + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + force_multipart=True, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocPagesInsert200Response, + parse_obj_as( + type_=DocPagesInsert200Response, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + + def insert_blank( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesInsertBlankRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[DocPagesInsertBlank200Response]: + """ + Body is `{"size": {"width", "height"}, "count"?, "destIndex"?}` — size in PDF points, count in [1, 100], destIndex omitted → append. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesInsertBlankRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + HttpResponse[DocPagesInsertBlank200Response] + OK + """ + _response = self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/insert-blank", + method="POST", + json=request, + headers={ + "content-type": "application/json", + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocPagesInsertBlank200Response, + parse_obj_as( + type_=DocPagesInsertBlank200Response, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + def move( self, doc_id: str, @@ -440,6 +706,97 @@ async def delete( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + @contextlib.asynccontextmanager + async def extract( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesExtractRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]]: + """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pageObjectNumbers": number[]}`; the response body is the new PDF. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesExtractRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. + + Returns + ------- + typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]] + OK + """ + async with self._client_wrapper.httpx_client.stream( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/extract", + method="POST", + json=request, + headers={ + "content-type": "application/json", + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + ) as _response: + + async def _stream() -> AsyncHttpResponse[typing.AsyncIterator[bytes]]: + try: + if 200 <= _response.status_code < 300: + _chunk_size = request_options.get("chunk_size", None) if request_options is not None else None + return AsyncHttpResponse( + response=_response, + data=(_chunk async for _chunk in _response.aiter_bytes(chunk_size=_chunk_size)), + ) + await _response.aread() + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, + headers=dict(_response.headers), + body=_response.json(), + cause=e, + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + + yield await _stream() + async def flatten( self, doc_id: str, @@ -521,6 +878,176 @@ async def flatten( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + async def insert( + self, + doc_id: str, + layer_name: str, + *, + file: core.File, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[DocPagesInsert200Response]: + """ + Multipart mutation envelope: a `body` field holding `{"destIndex"?: number}` (omitted → append) plus a `resource:source` file part carrying the standalone PDF whose pages are copied in. The inserted copies get fresh page object numbers, returned in insertion order. + + Parameters + ---------- + doc_id : str + + layer_name : str + + file : core.File + See core.File for more documentation + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + AsyncHttpResponse[DocPagesInsert200Response] + OK + """ + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/insert", + method="POST", + data={}, + files={ + "file": file, + }, + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + force_multipart=True, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocPagesInsert200Response, + parse_obj_as( + type_=DocPagesInsert200Response, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + + async def insert_blank( + self, + doc_id: str, + layer_name: str, + *, + request: DocPagesInsertBlankRequest, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[DocPagesInsertBlank200Response]: + """ + Body is `{"size": {"width", "height"}, "count"?, "destIndex"?}` — size in PDF points, count in [1, 100], destIndex omitted → append. + + Parameters + ---------- + doc_id : str + + layer_name : str + + request : DocPagesInsertBlankRequest + + document_password : typing.Optional[str] + Base64-encoded password for an encrypted document. Valid only with the API token (403 anywhere else). An encrypted document answers 422 DocPasswordRequired when the header is absent. Viewer doc JWTs use the SDK password-session flow instead. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + AsyncHttpResponse[DocPagesInsertBlank200Response] + OK + """ + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/insert-blank", + method="POST", + json=request, + headers={ + "content-type": "application/json", + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocPagesInsertBlank200Response, + parse_obj_as( + type_=DocPagesInsertBlank200Response, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + typing.Any, + parse_obj_as( + type_=typing.Any, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text) + except ValidationError as e: + raise ParsingError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e + ) + raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) + async def move( self, doc_id: str, diff --git a/src/cloudpdf/types/__init__.py b/src/cloudpdf/types/__init__.py index 8d5bcfc..c691453 100644 --- a/src/cloudpdf/types/__init__.py +++ b/src/cloudpdf/types/__init__.py @@ -5099,6 +5099,13 @@ from .doc_pages_delete404response_code import DocPagesDelete404ResponseCode from .doc_pages_delete404response_name import DocPagesDelete404ResponseName from .doc_pages_delete_request import DocPagesDeleteRequest + from .doc_pages_extract400response import DocPagesExtract400Response + from .doc_pages_extract400response_code import DocPagesExtract400ResponseCode + from .doc_pages_extract400response_name import DocPagesExtract400ResponseName + from .doc_pages_extract404response import DocPagesExtract404Response + from .doc_pages_extract404response_code import DocPagesExtract404ResponseCode + from .doc_pages_extract404response_name import DocPagesExtract404ResponseName + from .doc_pages_extract_request import DocPagesExtractRequest from .doc_pages_flatten200response import DocPagesFlatten200Response from .doc_pages_flatten200response_meta import DocPagesFlatten200ResponseMeta from .doc_pages_flatten200response_meta_affected_pages_item import DocPagesFlatten200ResponseMetaAffectedPagesItem @@ -5130,6 +5137,69 @@ from .doc_pages_flatten404response_code import DocPagesFlatten404ResponseCode from .doc_pages_flatten404response_name import DocPagesFlatten404ResponseName from .doc_pages_flatten_request import DocPagesFlattenRequest + from .doc_pages_insert200response import DocPagesInsert200Response + from .doc_pages_insert200response_meta import DocPagesInsert200ResponseMeta + from .doc_pages_insert200response_meta_affected_pages_item import DocPagesInsert200ResponseMetaAffectedPagesItem + from .doc_pages_insert200response_meta_affected_pages_item_revision import ( + DocPagesInsert200ResponseMetaAffectedPagesItemRevision, + ) + from .doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state import ( + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + ) + from .doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_known import ( + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown, + ) + from .doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_unknown import ( + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown, + ) + from .doc_pages_insert200response_meta_cache_delta import DocPagesInsert200ResponseMetaCacheDelta + from .doc_pages_insert200response_meta_cache_delta_pages_item import ( + DocPagesInsert200ResponseMetaCacheDeltaPagesItem, + ) + from .doc_pages_insert200response_meta_cache_delta_pages_item_cache import ( + DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache, + ) + from .doc_pages_insert400response import DocPagesInsert400Response + from .doc_pages_insert400response_code import DocPagesInsert400ResponseCode + from .doc_pages_insert400response_name import DocPagesInsert400ResponseName + from .doc_pages_insert404response import DocPagesInsert404Response + from .doc_pages_insert404response_code import DocPagesInsert404ResponseCode + from .doc_pages_insert404response_name import DocPagesInsert404ResponseName + from .doc_pages_insert_blank200response import DocPagesInsertBlank200Response + from .doc_pages_insert_blank200response_meta import DocPagesInsertBlank200ResponseMeta + from .doc_pages_insert_blank200response_meta_affected_pages_item import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItem, + ) + from .doc_pages_insert_blank200response_meta_affected_pages_item_revision import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision, + ) + from .doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + ) + from .doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_known import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown, + ) + from .doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_unknown import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown, + ) + from .doc_pages_insert_blank200response_meta_cache_delta import DocPagesInsertBlank200ResponseMetaCacheDelta + from .doc_pages_insert_blank200response_meta_cache_delta_pages_item import ( + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem, + ) + from .doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache import ( + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache, + ) + from .doc_pages_insert_blank400response import DocPagesInsertBlank400Response + from .doc_pages_insert_blank400response_code import DocPagesInsertBlank400ResponseCode + from .doc_pages_insert_blank400response_name import DocPagesInsertBlank400ResponseName + from .doc_pages_insert_blank404response import DocPagesInsertBlank404Response + from .doc_pages_insert_blank404response_code import DocPagesInsertBlank404ResponseCode + from .doc_pages_insert_blank404response_name import DocPagesInsertBlank404ResponseName + from .doc_pages_insert_blank_request import DocPagesInsertBlankRequest from .doc_pages_move200response import DocPagesMove200Response from .doc_pages_move200response_meta import DocPagesMove200ResponseMeta from .doc_pages_move200response_meta_affected_pages_item import DocPagesMove200ResponseMetaAffectedPagesItem @@ -7397,6 +7467,13 @@ "DocPagesDelete404ResponseCode": ".doc_pages_delete404response_code", "DocPagesDelete404ResponseName": ".doc_pages_delete404response_name", "DocPagesDeleteRequest": ".doc_pages_delete_request", + "DocPagesExtract400Response": ".doc_pages_extract400response", + "DocPagesExtract400ResponseCode": ".doc_pages_extract400response_code", + "DocPagesExtract400ResponseName": ".doc_pages_extract400response_name", + "DocPagesExtract404Response": ".doc_pages_extract404response", + "DocPagesExtract404ResponseCode": ".doc_pages_extract404response_code", + "DocPagesExtract404ResponseName": ".doc_pages_extract404response_name", + "DocPagesExtractRequest": ".doc_pages_extract_request", "DocPagesFlatten200Response": ".doc_pages_flatten200response", "DocPagesFlatten200ResponseMeta": ".doc_pages_flatten200response_meta", "DocPagesFlatten200ResponseMetaAffectedPagesItem": ".doc_pages_flatten200response_meta_affected_pages_item", @@ -7416,6 +7493,43 @@ "DocPagesFlatten404ResponseCode": ".doc_pages_flatten404response_code", "DocPagesFlatten404ResponseName": ".doc_pages_flatten404response_name", "DocPagesFlattenRequest": ".doc_pages_flatten_request", + "DocPagesInsert200Response": ".doc_pages_insert200response", + "DocPagesInsert200ResponseMeta": ".doc_pages_insert200response_meta", + "DocPagesInsert200ResponseMetaAffectedPagesItem": ".doc_pages_insert200response_meta_affected_pages_item", + "DocPagesInsert200ResponseMetaAffectedPagesItemRevision": ".doc_pages_insert200response_meta_affected_pages_item_revision", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState": ".doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown": ".doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_known", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown": ".doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_unknown", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known": ".doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown": ".doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsert200ResponseMetaCacheDelta": ".doc_pages_insert200response_meta_cache_delta", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItem": ".doc_pages_insert200response_meta_cache_delta_pages_item", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache": ".doc_pages_insert200response_meta_cache_delta_pages_item_cache", + "DocPagesInsert400Response": ".doc_pages_insert400response", + "DocPagesInsert400ResponseCode": ".doc_pages_insert400response_code", + "DocPagesInsert400ResponseName": ".doc_pages_insert400response_name", + "DocPagesInsert404Response": ".doc_pages_insert404response", + "DocPagesInsert404ResponseCode": ".doc_pages_insert404response_code", + "DocPagesInsert404ResponseName": ".doc_pages_insert404response_name", + "DocPagesInsertBlank200Response": ".doc_pages_insert_blank200response", + "DocPagesInsertBlank200ResponseMeta": ".doc_pages_insert_blank200response_meta", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItem": ".doc_pages_insert_blank200response_meta_affected_pages_item", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision": ".doc_pages_insert_blank200response_meta_affected_pages_item_revision", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState": ".doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown": ".doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_known", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown": ".doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_unknown", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known": ".doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown": ".doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state", + "DocPagesInsertBlank200ResponseMetaCacheDelta": ".doc_pages_insert_blank200response_meta_cache_delta", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem": ".doc_pages_insert_blank200response_meta_cache_delta_pages_item", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache": ".doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache", + "DocPagesInsertBlank400Response": ".doc_pages_insert_blank400response", + "DocPagesInsertBlank400ResponseCode": ".doc_pages_insert_blank400response_code", + "DocPagesInsertBlank400ResponseName": ".doc_pages_insert_blank400response_name", + "DocPagesInsertBlank404Response": ".doc_pages_insert_blank404response", + "DocPagesInsertBlank404ResponseCode": ".doc_pages_insert_blank404response_code", + "DocPagesInsertBlank404ResponseName": ".doc_pages_insert_blank404response_name", + "DocPagesInsertBlankRequest": ".doc_pages_insert_blank_request", "DocPagesMove200Response": ".doc_pages_move200response", "DocPagesMove200ResponseMeta": ".doc_pages_move200response_meta", "DocPagesMove200ResponseMetaAffectedPagesItem": ".doc_pages_move200response_meta_affected_pages_item", @@ -9647,6 +9761,13 @@ def __dir__(): "DocPagesDelete404ResponseCode", "DocPagesDelete404ResponseName", "DocPagesDeleteRequest", + "DocPagesExtract400Response", + "DocPagesExtract400ResponseCode", + "DocPagesExtract400ResponseName", + "DocPagesExtract404Response", + "DocPagesExtract404ResponseCode", + "DocPagesExtract404ResponseName", + "DocPagesExtractRequest", "DocPagesFlatten200Response", "DocPagesFlatten200ResponseMeta", "DocPagesFlatten200ResponseMetaAffectedPagesItem", @@ -9666,6 +9787,43 @@ def __dir__(): "DocPagesFlatten404ResponseCode", "DocPagesFlatten404ResponseName", "DocPagesFlattenRequest", + "DocPagesInsert200Response", + "DocPagesInsert200ResponseMeta", + "DocPagesInsert200ResponseMetaAffectedPagesItem", + "DocPagesInsert200ResponseMetaAffectedPagesItemRevision", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known", + "DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown", + "DocPagesInsert200ResponseMetaCacheDelta", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItem", + "DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache", + "DocPagesInsert400Response", + "DocPagesInsert400ResponseCode", + "DocPagesInsert400ResponseName", + "DocPagesInsert404Response", + "DocPagesInsert404ResponseCode", + "DocPagesInsert404ResponseName", + "DocPagesInsertBlank200Response", + "DocPagesInsertBlank200ResponseMeta", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItem", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known", + "DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown", + "DocPagesInsertBlank200ResponseMetaCacheDelta", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem", + "DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache", + "DocPagesInsertBlank400Response", + "DocPagesInsertBlank400ResponseCode", + "DocPagesInsertBlank400ResponseName", + "DocPagesInsertBlank404Response", + "DocPagesInsertBlank404ResponseCode", + "DocPagesInsertBlank404ResponseName", + "DocPagesInsertBlankRequest", "DocPagesMove200Response", "DocPagesMove200ResponseMeta", "DocPagesMove200ResponseMetaAffectedPagesItem", diff --git a/src/cloudpdf/types/doc_pages_extract400response.py b/src/cloudpdf/types/doc_pages_extract400response.py new file mode 100644 index 0000000..28a666f --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract400response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_extract400response_code import DocPagesExtract400ResponseCode +from .doc_pages_extract400response_name import DocPagesExtract400ResponseName + + +class DocPagesExtract400Response(UniversalBaseModel): + name: DocPagesExtract400ResponseName + code: DocPagesExtract400ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_extract400response_code.py b/src/cloudpdf/types/doc_pages_extract400response_code.py new file mode 100644 index 0000000..4afa3a2 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract400response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesExtract400ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_extract400response_name.py b/src/cloudpdf/types/doc_pages_extract400response_name.py new file mode 100644 index 0000000..44c2335 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract400response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesExtract400ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_extract404response.py b/src/cloudpdf/types/doc_pages_extract404response.py new file mode 100644 index 0000000..da0ac70 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract404response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_extract404response_code import DocPagesExtract404ResponseCode +from .doc_pages_extract404response_name import DocPagesExtract404ResponseName + + +class DocPagesExtract404Response(UniversalBaseModel): + name: DocPagesExtract404ResponseName + code: DocPagesExtract404ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_extract404response_code.py b/src/cloudpdf/types/doc_pages_extract404response_code.py new file mode 100644 index 0000000..c2472ae --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract404response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesExtract404ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_extract404response_name.py b/src/cloudpdf/types/doc_pages_extract404response_name.py new file mode 100644 index 0000000..cfff129 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract404response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesExtract404ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_extract_request.py b/src/cloudpdf/types/doc_pages_extract_request.py new file mode 100644 index 0000000..0ea0a88 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_extract_request.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesExtractRequest = typing.Dict[str, typing.Any] diff --git a/src/cloudpdf/types/doc_pages_insert200response.py b/src/cloudpdf/types/doc_pages_insert200response.py new file mode 100644 index 0000000..fce0265 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response.py @@ -0,0 +1,20 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert200response_meta import DocPagesInsert200ResponseMeta + + +class DocPagesInsert200Response(UniversalBaseModel): + meta: DocPagesInsert200ResponseMeta + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta.py b/src/cloudpdf/types/doc_pages_insert200response_meta.py new file mode 100644 index 0000000..4a71c75 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta.py @@ -0,0 +1,32 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert200response_meta_affected_pages_item import DocPagesInsert200ResponseMetaAffectedPagesItem +from .doc_pages_insert200response_meta_cache_delta import DocPagesInsert200ResponseMetaCacheDelta + + +class DocPagesInsert200ResponseMeta(UniversalBaseModel): + affected_pages: typing_extensions.Annotated[ + typing.List[DocPagesInsert200ResponseMetaAffectedPagesItem], + FieldMetadata(alias="affectedPages"), + pydantic.Field(alias="affectedPages"), + ] + cache_delta: typing_extensions.Annotated[ + typing.Optional[DocPagesInsert200ResponseMetaCacheDelta], + FieldMetadata(alias="cacheDelta"), + pydantic.Field(alias="cacheDelta"), + ] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item.py b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item.py new file mode 100644 index 0000000..082d072 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item.py @@ -0,0 +1,35 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert200response_meta_affected_pages_item_revision import ( + DocPagesInsert200ResponseMetaAffectedPagesItemRevision, +) +from .doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state import ( + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState, +) + + +class DocPagesInsert200ResponseMetaAffectedPagesItem(UniversalBaseModel): + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + revision: DocPagesInsert200ResponseMetaAffectedPagesItemRevision + weak_annotation_state: typing_extensions.Annotated[ + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState, + FieldMetadata(alias="weakAnnotationState"), + pydantic.Field(alias="weakAnnotationState"), + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_revision.py b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_revision.py new file mode 100644 index 0000000..e2a8f9d --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_revision.py @@ -0,0 +1,27 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsert200ResponseMetaAffectedPagesItemRevision(UniversalBaseModel): + doc_session_id: typing_extensions.Annotated[ + str, FieldMetadata(alias="docSessionId"), pydantic.Field(alias="docSessionId") + ] + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + generation: int + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state.py b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state.py new file mode 100644 index 0000000..1556e8e --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state.py @@ -0,0 +1,48 @@ +# This file was auto-generated by Fern from our API Definition. + +from __future__ import annotations + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown(UniversalBaseModel): + kind: typing.Literal["unknown"] = "unknown" + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow + + +class DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known(UniversalBaseModel): + kind: typing.Literal["known"] = "known" + has_any_weak_annotations: typing_extensions.Annotated[ + bool, FieldMetadata(alias="hasAnyWeakAnnotations"), pydantic.Field(alias="hasAnyWeakAnnotations") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow + + +DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState = typing_extensions.Annotated[ + typing.Union[ + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + ], + pydantic.Field(discriminator="kind"), +] diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_known.py b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_known.py new file mode 100644 index 0000000..07dd910 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_known.py @@ -0,0 +1,23 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown(UniversalBaseModel): + has_any_weak_annotations: typing_extensions.Annotated[ + bool, FieldMetadata(alias="hasAnyWeakAnnotations"), pydantic.Field(alias="hasAnyWeakAnnotations") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_unknown.py b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_unknown.py new file mode 100644 index 0000000..bd59dc9 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_affected_pages_item_weak_annotation_state_unknown.py @@ -0,0 +1,17 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class DocPagesInsert200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown(UniversalBaseModel): + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta.py b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta.py new file mode 100644 index 0000000..32237af --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta.py @@ -0,0 +1,26 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert200response_meta_cache_delta_pages_item import DocPagesInsert200ResponseMetaCacheDeltaPagesItem + + +class DocPagesInsert200ResponseMetaCacheDelta(UniversalBaseModel): + previous_doc_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="previousDocVersion"), pydantic.Field(alias="previousDocVersion") + ] + doc_version: typing_extensions.Annotated[int, FieldMetadata(alias="docVersion"), pydantic.Field(alias="docVersion")] + pages: typing.List[DocPagesInsert200ResponseMetaCacheDeltaPagesItem] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item.py b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item.py new file mode 100644 index 0000000..dcc1bbc --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item.py @@ -0,0 +1,27 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert200response_meta_cache_delta_pages_item_cache import ( + DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache, +) + + +class DocPagesInsert200ResponseMetaCacheDeltaPagesItem(UniversalBaseModel): + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + cache: DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item_cache.py b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item_cache.py new file mode 100644 index 0000000..f75c7c4 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert200response_meta_cache_delta_pages_item_cache.py @@ -0,0 +1,26 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsert200ResponseMetaCacheDeltaPagesItemCache(UniversalBaseModel): + content_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="contentVersion"), pydantic.Field(alias="contentVersion") + ] + annotation_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="annotationVersion"), pydantic.Field(alias="annotationVersion") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert400response.py b/src/cloudpdf/types/doc_pages_insert400response.py new file mode 100644 index 0000000..bcd147d --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert400response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert400response_code import DocPagesInsert400ResponseCode +from .doc_pages_insert400response_name import DocPagesInsert400ResponseName + + +class DocPagesInsert400Response(UniversalBaseModel): + name: DocPagesInsert400ResponseName + code: DocPagesInsert400ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert400response_code.py b/src/cloudpdf/types/doc_pages_insert400response_code.py new file mode 100644 index 0000000..415cb20 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert400response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsert400ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_insert400response_name.py b/src/cloudpdf/types/doc_pages_insert400response_name.py new file mode 100644 index 0000000..cb09df9 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert400response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsert400ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_insert404response.py b/src/cloudpdf/types/doc_pages_insert404response.py new file mode 100644 index 0000000..c530aa3 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert404response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert404response_code import DocPagesInsert404ResponseCode +from .doc_pages_insert404response_name import DocPagesInsert404ResponseName + + +class DocPagesInsert404Response(UniversalBaseModel): + name: DocPagesInsert404ResponseName + code: DocPagesInsert404ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert404response_code.py b/src/cloudpdf/types/doc_pages_insert404response_code.py new file mode 100644 index 0000000..5781d3a --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert404response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsert404ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_insert404response_name.py b/src/cloudpdf/types/doc_pages_insert404response_name.py new file mode 100644 index 0000000..8fc22ed --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert404response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsert404ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response.py b/src/cloudpdf/types/doc_pages_insert_blank200response.py new file mode 100644 index 0000000..42eb440 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response.py @@ -0,0 +1,20 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert_blank200response_meta import DocPagesInsertBlank200ResponseMeta + + +class DocPagesInsertBlank200Response(UniversalBaseModel): + meta: DocPagesInsertBlank200ResponseMeta + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta.py new file mode 100644 index 0000000..aee5599 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta.py @@ -0,0 +1,34 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert_blank200response_meta_affected_pages_item import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItem, +) +from .doc_pages_insert_blank200response_meta_cache_delta import DocPagesInsertBlank200ResponseMetaCacheDelta + + +class DocPagesInsertBlank200ResponseMeta(UniversalBaseModel): + affected_pages: typing_extensions.Annotated[ + typing.List[DocPagesInsertBlank200ResponseMetaAffectedPagesItem], + FieldMetadata(alias="affectedPages"), + pydantic.Field(alias="affectedPages"), + ] + cache_delta: typing_extensions.Annotated[ + typing.Optional[DocPagesInsertBlank200ResponseMetaCacheDelta], + FieldMetadata(alias="cacheDelta"), + pydantic.Field(alias="cacheDelta"), + ] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item.py new file mode 100644 index 0000000..c49357a --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item.py @@ -0,0 +1,35 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert_blank200response_meta_affected_pages_item_revision import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision, +) +from .doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state import ( + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState, +) + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItem(UniversalBaseModel): + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + revision: DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision + weak_annotation_state: typing_extensions.Annotated[ + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState, + FieldMetadata(alias="weakAnnotationState"), + pydantic.Field(alias="weakAnnotationState"), + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_revision.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_revision.py new file mode 100644 index 0000000..2031159 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_revision.py @@ -0,0 +1,27 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItemRevision(UniversalBaseModel): + doc_session_id: typing_extensions.Annotated[ + str, FieldMetadata(alias="docSessionId"), pydantic.Field(alias="docSessionId") + ] + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + generation: int + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state.py new file mode 100644 index 0000000..a91b440 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state.py @@ -0,0 +1,48 @@ +# This file was auto-generated by Fern from our API Definition. + +from __future__ import annotations + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown(UniversalBaseModel): + kind: typing.Literal["unknown"] = "unknown" + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known(UniversalBaseModel): + kind: typing.Literal["known"] = "known" + has_any_weak_annotations: typing_extensions.Annotated[ + bool, FieldMetadata(alias="hasAnyWeakAnnotations"), pydantic.Field(alias="hasAnyWeakAnnotations") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow + + +DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState = typing_extensions.Annotated[ + typing.Union[ + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Unknown, + DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationState_Known, + ], + pydantic.Field(discriminator="kind"), +] diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_known.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_known.py new file mode 100644 index 0000000..c0df3ae --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_known.py @@ -0,0 +1,23 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateKnown(UniversalBaseModel): + has_any_weak_annotations: typing_extensions.Annotated[ + bool, FieldMetadata(alias="hasAnyWeakAnnotations"), pydantic.Field(alias="hasAnyWeakAnnotations") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_unknown.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_unknown.py new file mode 100644 index 0000000..1b44a28 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_affected_pages_item_weak_annotation_state_unknown.py @@ -0,0 +1,17 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class DocPagesInsertBlank200ResponseMetaAffectedPagesItemWeakAnnotationStateUnknown(UniversalBaseModel): + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta.py new file mode 100644 index 0000000..52c1326 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert_blank200response_meta_cache_delta_pages_item import ( + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem, +) + + +class DocPagesInsertBlank200ResponseMetaCacheDelta(UniversalBaseModel): + previous_doc_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="previousDocVersion"), pydantic.Field(alias="previousDocVersion") + ] + doc_version: typing_extensions.Annotated[int, FieldMetadata(alias="docVersion"), pydantic.Field(alias="docVersion")] + pages: typing.List[DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item.py new file mode 100644 index 0000000..10fecaa --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item.py @@ -0,0 +1,27 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache import ( + DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache, +) + + +class DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItem(UniversalBaseModel): + page_object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="pageObjectNumber"), pydantic.Field(alias="pageObjectNumber") + ] + cache: DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache.py b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache.py new file mode 100644 index 0000000..fd98f48 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank200response_meta_cache_delta_pages_item_cache.py @@ -0,0 +1,26 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata + + +class DocPagesInsertBlank200ResponseMetaCacheDeltaPagesItemCache(UniversalBaseModel): + content_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="contentVersion"), pydantic.Field(alias="contentVersion") + ] + annotation_version: typing_extensions.Annotated[ + int, FieldMetadata(alias="annotationVersion"), pydantic.Field(alias="annotationVersion") + ] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank400response.py b/src/cloudpdf/types/doc_pages_insert_blank400response.py new file mode 100644 index 0000000..632c80f --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank400response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert_blank400response_code import DocPagesInsertBlank400ResponseCode +from .doc_pages_insert_blank400response_name import DocPagesInsertBlank400ResponseName + + +class DocPagesInsertBlank400Response(UniversalBaseModel): + name: DocPagesInsertBlank400ResponseName + code: DocPagesInsertBlank400ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank400response_code.py b/src/cloudpdf/types/doc_pages_insert_blank400response_code.py new file mode 100644 index 0000000..c151d05 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank400response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsertBlank400ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_insert_blank400response_name.py b/src/cloudpdf/types/doc_pages_insert_blank400response_name.py new file mode 100644 index 0000000..ec3cd48 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank400response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsertBlank400ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_insert_blank404response.py b/src/cloudpdf/types/doc_pages_insert_blank404response.py new file mode 100644 index 0000000..7d9d147 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank404response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .doc_pages_insert_blank404response_code import DocPagesInsertBlank404ResponseCode +from .doc_pages_insert_blank404response_name import DocPagesInsertBlank404ResponseName + + +class DocPagesInsertBlank404Response(UniversalBaseModel): + name: DocPagesInsertBlank404ResponseName + code: DocPagesInsertBlank404ResponseCode + message: str + details: typing.Optional[typing.Dict[str, typing.Any]] = None + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/cloudpdf/types/doc_pages_insert_blank404response_code.py b/src/cloudpdf/types/doc_pages_insert_blank404response_code.py new file mode 100644 index 0000000..4aaf463 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank404response_code.py @@ -0,0 +1,28 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsertBlank404ResponseCode = typing.Union[ + typing.Literal[ + "Unknown", + "InvalidArg", + "DocNotOpen", + "DocOpenFailed", + "DocPasswordRequired", + "DocPasswordIncorrect", + "SharePasswordRequired", + "Aborted", + "Network", + "Unauthenticated", + "Forbidden", + "NotFound", + "WireFormat", + "RuntimeUnavailable", + "InvalidReference", + "WeakAnnotationSessionConflict", + "LayerVersionConflict", + "NotImplemented", + "MalformedPdf", + ], + typing.Any, +] diff --git a/src/cloudpdf/types/doc_pages_insert_blank404response_name.py b/src/cloudpdf/types/doc_pages_insert_blank404response_name.py new file mode 100644 index 0000000..5aec230 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank404response_name.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsertBlank404ResponseName = typing.Union[typing.Literal["EngineError"], typing.Any] diff --git a/src/cloudpdf/types/doc_pages_insert_blank_request.py b/src/cloudpdf/types/doc_pages_insert_blank_request.py new file mode 100644 index 0000000..71c1ac9 --- /dev/null +++ b/src/cloudpdf/types/doc_pages_insert_blank_request.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocPagesInsertBlankRequest = typing.Dict[str, typing.Any]