diff --git a/.fern/metadata.json b/.fern/metadata.json index ac94380..b61ffa4 100644 --- a/.fern/metadata.json +++ b/.fern/metadata.json @@ -7,9 +7,9 @@ "client_class_name": "CloudPDFClient", "environment_class_name": "CloudPDFEnvironment" }, - "originGitCommit": "c6f87eecf9636e7ef367946a7fd7f3729401ce90", + "originGitCommit": "7ded7de29f4cc0dc9da18042fca6afd5c9557bfc", "originGitCommitIsDirty": false, "invokedBy": "ci", - "requestedVersion": "3.0.0a15", + "requestedVersion": "3.0.0a16", "ciProvider": "github" } \ No newline at end of file diff --git a/cloudpdf-generation.json b/cloudpdf-generation.json index f6478d2..c8e0722 100644 --- a/cloudpdf-generation.json +++ b/cloudpdf-generation.json @@ -1,12 +1,12 @@ { "language": "python", - "canonicalVersion": "3.0.0-next.15", - "sdkVersion": "3.0.0a15", + "canonicalVersion": "3.0.0-next.16", + "sdkVersion": "3.0.0a16", "source": { "repository": "embedpdf/embed-pdf-viewer", "openapi": "cloudpdf/contract/openapi.json", - "openapiSha256": "9d70deca638cc7a80b0e670ec47fc45710d6603eb8f493d5fac95a38d7e5f8b3", - "gitCommit": "c6f87eecf9636e7ef367946a7fd7f3729401ce90", + "openapiSha256": "06543c26918bd79d426bf242c5a3091cdb7d298d3ac3296addabee2be80edb15", + "gitCommit": "7ded7de29f4cc0dc9da18042fca6afd5c9557bfc", "gitCommitIsDirty": false }, "fern": { diff --git a/pyproject.toml b/pyproject.toml index 6068b54..c93c7a5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ dynamic = ["version"] [tool.poetry] name = "cloudpdf" -version = "3.0.0a15" +version = "3.0.0a16" description = "The official Python SDK for the CloudPDF API." readme = "README.md" authors = ["CloudPDF "] diff --git a/reference.md b/reference.md index cc46d02..48ec97a 100644 --- a/reference.md +++ b/reference.md @@ -127,7 +127,7 @@ client.doc.head(
-Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. +Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`, outline `doc.outline.modify`, pages `doc.pages.assemble`, embedded files `doc.attachments.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork, a PDF whose pages come in) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change.
@@ -3129,10 +3129,24 @@ client.doc.annotations.read_appearance( -
client.doc.annotations.export_appearance(...) -> typing.Iterator[bytes] +
client.doc.annotations.read_file(...) -> typing.Iterator[bytes] +
+
+ +#### 📝 Description +
+
+
+ +A file that decodes past the server's limit is refused (PayloadTooLarge). +
+
+
+
+ #### 🔌 Usage
@@ -3149,13 +3163,11 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.annotations.export_appearance( +client.doc.annotations.read_file( doc_id="docId", layer_name="layerName", page_key="pageKey", - request={ - "string": {"key": "value"} - }, + annot_key="annotKey", ) ``` @@ -3196,7 +3208,7 @@ client.doc.annotations.export_appearance(
-**request:** `DocAnnotationsExportAppearanceRequest` +**annot_key:** `str` — The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life.
@@ -3224,7 +3236,7 @@ client.doc.annotations.export_appearance(
-
client.doc.annotations.flatten(...) -> DocAnnotationsFlatten200Response +
client.doc.annotations.export_appearance(...) -> typing.Iterator[bytes]
@@ -3244,12 +3256,12 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.annotations.flatten( +client.doc.annotations.export_appearance( doc_id="docId", layer_name="layerName", page_key="pageKey", request={ - "key": "value" + "string": {"key": "value"} }, ) @@ -3291,7 +3303,7 @@ client.doc.annotations.flatten(
-**request:** `DocAnnotationsFlattenRequest` +**request:** `DocAnnotationsExportAppearanceRequest`
@@ -3307,14 +3319,6 @@ client.doc.annotations.flatten(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -3327,7 +3331,7 @@ client.doc.annotations.flatten(
-
client.doc.annotations.reorder(...) -> DocAnnotationsReorder200Response +
client.doc.annotations.flatten(...) -> DocAnnotationsFlatten200Response
@@ -3340,27 +3344,20 @@ client.doc.annotations.flatten(
```python -from cloudpdf import CloudPDFClient, AnnotationRef_ObjectNumber, PageRef +from cloudpdf import CloudPDFClient client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.annotations.reorder( +client.doc.annotations.flatten( doc_id="docId", layer_name="layerName", page_key="pageKey", - refs=[ - AnnotationRef_ObjectNumber( - page=PageRef( - kind="objectNumber", - object_number=1, - ), - object_number=1, - ) - ], - position="start", + request={ + "key": "value" + }, ) ``` @@ -3401,15 +3398,7 @@ client.doc.annotations.reorder(
-**refs:** `typing.List[AnnotationRef]` - -
-
- -
-
- -**position:** `AnnotationPosition` +**request:** `DocAnnotationsFlattenRequest`
@@ -3445,8 +3434,7 @@ client.doc.annotations.reorder(
-## Doc Forms -
client.doc.forms.list(...) -> DocFormsList200Response +
client.doc.annotations.reorder(...) -> DocAnnotationsReorder200Response
@@ -3459,16 +3447,27 @@ client.doc.annotations.reorder(
```python -from cloudpdf import CloudPDFClient +from cloudpdf import CloudPDFClient, AnnotationRef_ObjectNumber, PageRef client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.list( +client.doc.annotations.reorder( doc_id="docId", layer_name="layerName", + page_key="pageKey", + refs=[ + AnnotationRef_ObjectNumber( + page=PageRef( + kind="objectNumber", + object_number=1, + ), + object_number=1, + ) + ], + position="start", ) ``` @@ -3501,7 +3500,7 @@ client.doc.forms.list(
-**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. +**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`.
@@ -3509,64 +3508,23 @@ client.doc.forms.list(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**refs:** `typing.List[AnnotationRef]`
-
-
- - - - -
- -
client.doc.forms.reorder_calculations(...) -> DocFormsReorderCalculations200Response -
-
- -#### 🔌 Usage
-
-
- -```python -from cloudpdf import CloudPDFClient, FormFieldRef_ObjectNumber - -client = CloudPDFClient( - token="", - base_url="https://yourhost.com/path/to/api", -) - -client.doc.forms.reorder_calculations( - doc_id="docId", - layer_name="layerName", - fields=[ - FormFieldRef_ObjectNumber( - object_number=1, - ) - ], - position="start", -) - -``` -
-
+**position:** `AnnotationPosition` +
-#### ⚙️ Parameters -
-
-
- -**doc_id:** `str` +**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.
@@ -3574,7 +3532,7 @@ client.doc.forms.reorder_calculations(
-**layer_name:** `str` +**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing.
@@ -3582,53 +3540,36 @@ client.doc.forms.reorder_calculations(
-**fields:** `typing.List[FormFieldRef]` +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**position:** `FieldPosition` -
+
+## Doc Attachments +
client.doc.attachments.download(...) -> typing.Iterator[bytes]
-**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. - -
-
+#### 📝 Description
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
-
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. - -
-
+A file that decodes past the server's limit is refused (PayloadTooLarge). - - -
- -
client.doc.forms.set_value(...) -> DocFormsSetValue200Response -
-
#### 🔌 Usage @@ -3646,13 +3587,10 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.set_value( +client.doc.attachments.download( doc_id="docId", layer_name="layerName", - field_key="fieldKey", - request={ - "key": "value" - }, + file_key="fileKey", ) ``` @@ -3685,15 +3623,7 @@ client.doc.forms.set_value(
-**field_key:** `str` - -
-
- -
-
- -**request:** `DocFormsSetValueRequest` +**file_key:** `str` — The embedded file's name-tree key (its `ref.key`), token-text encoded, as `fieldKey` is.
@@ -3709,14 +3639,6 @@ client.doc.forms.set_value(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -3729,10 +3651,24 @@ client.doc.forms.set_value(
-
client.doc.forms.reset(...) -> DocFormsReset200Response +
client.doc.attachments.list(...) -> DocAttachmentsList200Response +
+
+ +#### 📝 Description +
+
+
+ +A file-attachment annotation's file is listed with the annotation; read its bytes with `doc.annotations.readFile`. +
+
+
+
+ #### 🔌 Usage
@@ -3749,7 +3685,7 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.reset( +client.doc.attachments.list( doc_id="docId", layer_name="layerName", ) @@ -3792,22 +3728,6 @@ client.doc.forms.reset(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- -**refs:** `typing.Optional[typing.List[FormFieldRef]]` - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -3820,7 +3740,8 @@ client.doc.forms.reset(
-
client.doc.forms.delete_widget(...) -> DocFormsDeleteWidget200Response +## Doc Forms +
client.doc.forms.list(...) -> DocFormsList200Response
@@ -3840,11 +3761,9 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.delete_widget( +client.doc.forms.list( doc_id="docId", layer_name="layerName", - page_key="pageKey", - annot_key="annotKey", ) ``` @@ -3877,22 +3796,6 @@ client.doc.forms.delete_widget(
-**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - -
-
- -
-
- -**annot_key:** `str` — The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. - -
-
- -
-
- **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.
@@ -3901,14 +3804,6 @@ client.doc.forms.delete_widget(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -3921,7 +3816,7 @@ client.doc.forms.delete_widget(
-
client.doc.forms.update_widget(...) -> DocFormsUpdateWidget200Response +
client.doc.forms.reorder_calculations(...) -> DocFormsReorderCalculations200Response
@@ -3934,19 +3829,22 @@ client.doc.forms.delete_widget(
```python -from cloudpdf import CloudPDFClient, WidgetPatch +from cloudpdf import CloudPDFClient, FormFieldRef_ObjectNumber client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.update_widget( +client.doc.forms.reorder_calculations( doc_id="docId", layer_name="layerName", - page_key="pageKey", - annot_key="annotKey", - patch=WidgetPatch(), + fields=[ + FormFieldRef_ObjectNumber( + object_number=1, + ) + ], + position="start", ) ``` @@ -3979,15 +3877,7 @@ client.doc.forms.update_widget(
-**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - -
-
- -
-
- -**annot_key:** `str` — The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. +**fields:** `typing.List[FormFieldRef]`
@@ -3995,7 +3885,7 @@ client.doc.forms.update_widget(
-**patch:** `WidgetPatch` +**position:** `FieldPosition`
@@ -4031,7 +3921,7 @@ client.doc.forms.update_widget(
-
client.doc.forms.reorder_widgets(...) -> DocFormsReorderWidgets200Response +
client.doc.forms.set_value(...) -> DocFormsSetValue200Response
@@ -4044,27 +3934,20 @@ client.doc.forms.update_widget(
```python -from cloudpdf import CloudPDFClient, AnnotationRef_ObjectNumber, PageRef +from cloudpdf import CloudPDFClient client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.forms.reorder_widgets( +client.doc.forms.set_value( doc_id="docId", layer_name="layerName", - page_key="pageKey", - widgets=[ - AnnotationRef_ObjectNumber( - page=PageRef( - kind="objectNumber", - object_number=1, - ), - object_number=1, - ) - ], - position="start", + field_key="fieldKey", + request={ + "key": "value" + }, ) ``` @@ -4097,15 +3980,7 @@ client.doc.forms.reorder_widgets(
-**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - -
-
- -
-
- -**widgets:** `typing.List[AnnotationRef]` +**field_key:** `str`
@@ -4113,7 +3988,7 @@ client.doc.forms.reorder_widgets(
-**position:** `AnnotationPosition` +**request:** `DocFormsSetValueRequest`
@@ -4149,8 +4024,7 @@ client.doc.forms.reorder_widgets(
-## Doc Metadata -
client.doc.metadata.get(...) -> DocMetadataGet200Response +
client.doc.forms.reset(...) -> DocFormsReset200Response
@@ -4170,7 +4044,7 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.metadata.get( +client.doc.forms.reset( doc_id="docId", layer_name="layerName", ) @@ -4181,15 +4055,31 @@ client.doc.metadata.get(
-#### ⚙️ Parameters - +#### ⚙️ Parameters + +
+
+ +
+
+ +**doc_id:** `str` + +
+
+
+**layer_name:** `str` + +
+
+
-**doc_id:** `str` +**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.
@@ -4197,7 +4087,7 @@ client.doc.metadata.get(
-**layer_name:** `str` +**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing.
@@ -4205,7 +4095,7 @@ client.doc.metadata.get(
-**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. +**refs:** `typing.Optional[typing.List[FormFieldRef]]`
@@ -4225,8 +4115,7 @@ client.doc.metadata.get(
-## Doc Pages -
client.doc.pages.set_scale(...) -> DocPagesSetScale200Response +
client.doc.forms.delete_widget(...) -> DocFormsDeleteWidget200Response
@@ -4246,10 +4135,11 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.set_scale( +client.doc.forms.delete_widget( doc_id="docId", layer_name="layerName", page_key="pageKey", + annot_key="annotKey", ) ``` @@ -4290,7 +4180,7 @@ client.doc.pages.set_scale(
-**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. +**annot_key:** `str` — The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life.
@@ -4298,7 +4188,7 @@ client.doc.pages.set_scale(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. +**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.
@@ -4306,7 +4196,7 @@ client.doc.pages.set_scale(
-**measure:** `typing.Optional[DocPagesSetScaleRequestMeasure]` +**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing.
@@ -4326,7 +4216,7 @@ client.doc.pages.set_scale(
-
client.doc.pages.viewports(...) -> DocPagesViewports200Response +
client.doc.forms.update_widget(...) -> DocFormsUpdateWidget200Response
@@ -4339,17 +4229,19 @@ client.doc.pages.set_scale(
```python -from cloudpdf import CloudPDFClient +from cloudpdf import CloudPDFClient, WidgetPatch client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.viewports( +client.doc.forms.update_widget( doc_id="docId", layer_name="layerName", page_key="pageKey", + annot_key="annotKey", + patch=WidgetPatch(), ) ``` @@ -4390,6 +4282,22 @@ client.doc.pages.viewports(
+**annot_key:** `str` — The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. + +
+
+ +
+
+ +**patch:** `WidgetPatch` + +
+
+ +
+
+ **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.
@@ -4398,6 +4306,14 @@ client.doc.pages.viewports(
+**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -4410,7 +4326,7 @@ client.doc.pages.viewports(
-
client.doc.pages.delete(...) -> DocPagesDelete200Response +
client.doc.forms.reorder_widgets(...) -> DocFormsReorderWidgets200Response
@@ -4423,19 +4339,27 @@ client.doc.pages.viewports(
```python -from cloudpdf import CloudPDFClient +from cloudpdf import CloudPDFClient, AnnotationRef_ObjectNumber, PageRef client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.delete( +client.doc.forms.reorder_widgets( doc_id="docId", layer_name="layerName", - request={ - "key": "value" - }, + page_key="pageKey", + widgets=[ + AnnotationRef_ObjectNumber( + page=PageRef( + kind="objectNumber", + object_number=1, + ), + object_number=1, + ) + ], + position="start", ) ``` @@ -4468,7 +4392,23 @@ client.doc.pages.delete(
-**request:** `DocPagesDeleteRequest` +**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. + +
+
+ +
+
+ +**widgets:** `typing.List[AnnotationRef]` + +
+
+ +
+
+ +**position:** `AnnotationPosition`
@@ -4504,24 +4444,11 @@ client.doc.pages.delete(
-
client.doc.pages.extract(...) -> typing.Iterator[bytes] -
-
- -#### 📝 Description - -
-
- +## Doc Metadata +
client.doc.metadata.get(...) -> DocMetadataGet200Response
-A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[]}`; the response body is the new PDF. -
-
-
-
- #### 🔌 Usage
@@ -4538,12 +4465,9 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.extract( +client.doc.metadata.get( doc_id="docId", layer_name="layerName", - request={ - "string": {"key": "value"} - }, ) ``` @@ -4576,14 +4500,6 @@ client.doc.pages.extract(
-**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.
@@ -4604,7 +4520,8 @@ client.doc.pages.extract(
-
client.doc.pages.flatten(...) -> DocPagesFlatten200Response +## Doc Outline +
client.doc.outline.get(...) -> DocOutlineGet200Response
@@ -4624,12 +4541,9 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.flatten( +client.doc.outline.get( doc_id="docId", layer_name="layerName", - request={ - "key": "value" - }, ) ``` @@ -4662,14 +4576,6 @@ client.doc.pages.flatten(
-**request:** `DocPagesFlattenRequest` - -
-
- -
-
- **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.
@@ -4678,14 +4584,6 @@ client.doc.pages.flatten(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -4698,24 +4596,11 @@ client.doc.pages.flatten(
-
client.doc.pages.insert(...) -> DocPagesInsert200Response -
-
- -#### 📝 Description - -
-
- +## Doc Pages +
client.doc.pages.set_scale(...) -> DocPagesSetScale200Response
-Multipart: a JSON `body` part `{"position"?: PagePosition, "resources": {"source": ""}}` (position omitted → the end), and the standalone PDF whose pages are copied in as the part `resource:`. The inserted copies get fresh page object numbers, returned in insertion order. -
-
-
-
- #### 🔌 Usage
@@ -4732,10 +4617,10 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.insert( +client.doc.pages.set_scale( doc_id="docId", layer_name="layerName", - file="example_file", + page_key="pageKey", ) ``` @@ -4768,7 +4653,7 @@ client.doc.pages.insert(
-**file:** `core.File` +**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`.
@@ -4792,6 +4677,14 @@ client.doc.pages.insert(
+**measure:** `typing.Optional[DocPagesSetScaleRequestMeasure]` + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -4804,24 +4697,10 @@ client.doc.pages.insert(
-
client.doc.pages.insert_blank(...) -> DocPagesInsertBlank200Response -
-
- -#### 📝 Description - -
-
- +
client.doc.pages.viewports(...) -> DocPagesViewports200Response
-Body is `{"size": {"width", "height"}, "count"?, "position"?}` — size in PDF points, count in [1, 100], `position` a `PagePosition` (omitted → the end). -
-
-
-
- #### 🔌 Usage
@@ -4838,12 +4717,10 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.insert_blank( +client.doc.pages.viewports( doc_id="docId", layer_name="layerName", - request={ - "key": "value" - }, + page_key="pageKey", ) ``` @@ -4876,7 +4753,7 @@ client.doc.pages.insert_blank(
-**request:** `DocPagesInsertBlankRequest` +**page_key:** `str` — The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`.
@@ -4892,14 +4769,6 @@ client.doc.pages.insert_blank(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -4912,10 +4781,24 @@ client.doc.pages.insert_blank(
-
client.doc.pages.set_name(...) -> DocPagesSetName200Response +
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 `{"pages": PageRef[], "flatten"?: {"usage"?: "display" | "print"}, "includeAnnotations"?: boolean, "includeFormFields"?: boolean}`; the response body is the new PDF. With `flatten` the copy is the pages as they draw for `usage` (`"print"`: a print copy): the annotations and form fields painted in, nothing interactive left, layers in their state for the usage. A flattened copy takes `doc.download` or `doc.download.flattened`, and paints only what the caller may read; `includeAnnotations` and `includeFormFields` choose what it paints, and are refused without `flatten`. +
+
+
+
+ #### 🔌 Usage
@@ -4932,11 +4815,11 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.set_name( +client.doc.pages.extract( doc_id="docId", layer_name="layerName", request={ - "key": "value" + "string": {"key": "value"} }, ) @@ -4970,7 +4853,7 @@ client.doc.pages.set_name(
-**request:** `DocPagesSetNameRequest` +**request:** `DocPagesExtractRequest`
@@ -4986,14 +4869,6 @@ client.doc.pages.set_name(
-**idempotency_key:** `typing.Optional[str]` — Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -5006,7 +4881,7 @@ client.doc.pages.set_name(
-
client.doc.pages.remove_name(...) -> DocPagesRemoveName200Response +
client.doc.pages.flatten(...) -> DocPagesFlatten200Response
@@ -5026,7 +4901,7 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.remove_name( +client.doc.pages.flatten( doc_id="docId", layer_name="layerName", request={ @@ -5064,7 +4939,7 @@ client.doc.pages.remove_name(
-**request:** `DocPagesRemoveNameRequest` +**request:** `DocPagesFlattenRequest`
@@ -5100,7 +4975,7 @@ client.doc.pages.remove_name(
-
client.doc.pages.reorder(...) -> DocPagesReorder200Response +
client.doc.pages.set_name(...) -> DocPagesSetName200Response
@@ -5113,23 +4988,19 @@ client.doc.pages.remove_name(
```python -from cloudpdf import CloudPDFClient, PageRef +from cloudpdf import CloudPDFClient client = CloudPDFClient( token="", base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.reorder( +client.doc.pages.set_name( doc_id="docId", layer_name="layerName", - pages=[ - PageRef( - kind="objectNumber", - object_number=1, - ) - ], - position="start", + request={ + "key": "value" + }, ) ``` @@ -5162,15 +5033,7 @@ client.doc.pages.reorder(
-**pages:** `typing.List[PageRef]` - -
-
- -
-
- -**position:** `PagePosition` +**request:** `DocPagesSetNameRequest`
@@ -5206,7 +5069,7 @@ client.doc.pages.reorder(
-
client.doc.pages.rotate(...) -> DocPagesRotate200Response +
client.doc.pages.remove_name(...) -> DocPagesRemoveName200Response
@@ -5226,7 +5089,7 @@ client = CloudPDFClient( base_url="https://yourhost.com/path/to/api", ) -client.doc.pages.rotate( +client.doc.pages.remove_name( doc_id="docId", layer_name="layerName", request={ @@ -5264,7 +5127,7 @@ client.doc.pages.rotate(
-**request:** `DocPagesRotateRequest` +**request:** `DocPagesRemoveNameRequest`
diff --git a/src/cloudpdf/__init__.py b/src/cloudpdf/__init__.py index 4388d04..eddd196 100644 --- a/src/cloudpdf/__init__.py +++ b/src/cloudpdf/__init__.py @@ -313,7 +313,6 @@ AnnotationDraft_Widget, AnnotationFileAttachment, AnnotationFileAttachmentBlendMode, - AnnotationFileAttachmentFile, AnnotationFileAttachmentIcon, AnnotationFileAttachmentRect, AnnotationFileAttachmentReply, @@ -885,6 +884,13 @@ Annotation_Underline, Annotation_Unsupported, Annotation_Widget, + Attachment, + AttachmentFileBase, + AttachmentFileInfo, + AttachmentList, + AttachmentMutationMeta, + AttachmentRef, + AttachmentRefKind, CacheDelta, CacheDeltaPagesItem, CacheDeltaPagesItemCache, @@ -896,6 +902,9 @@ ChangeItemAnnotationsUpdate, ChangeItemAnnotationsUpdateAppearance, ChangeItemAnnotationsUpdateAppearanceAction, + ChangeItemAttachmentsCreate, + ChangeItemAttachmentsDelete, + ChangeItemAttachmentsRestore, ChangeItemFormsAddWidget, ChangeItemFormsCreate, ChangeItemFormsDelete, @@ -916,6 +925,131 @@ ChangeItemFormsUpdateWidgetAppearanceAction, ChangeItemMetadataUpdate, ChangeItemMetadataUpdateCustom, + ChangeItemOutlineCreate, + ChangeItemOutlineDelete, + ChangeItemOutlineMove, + ChangeItemOutlineRestore, + ChangeItemOutlineUpdate, + ChangeItemPagesDelete, + ChangeItemPagesDeleteLayout, + ChangeItemPagesDeleteLayoutNamedPagesItem, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget, + ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling, + ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage, + ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template, + ChangeItemPagesDeleteLayoutPagesItem, + ChangeItemPagesDeleteLayoutPagesItemBoxes, + ChangeItemPagesDeleteLayoutPagesItemBoxesArt, + ChangeItemPagesDeleteLayoutPagesItemBoxesBleed, + ChangeItemPagesDeleteLayoutPagesItemBoxesCrop, + ChangeItemPagesDeleteLayoutPagesItemBoxesMedia, + ChangeItemPagesDeleteLayoutPagesItemBoxesTrim, + ChangeItemPagesDeleteLayoutPagesItemPdfCropBox, + ChangeItemPagesDeleteLayoutPagesItemSize, + ChangeItemPagesDeleteLayoutPagesItemTabOrder, + ChangeItemPagesInsert, + ChangeItemPagesInsertBlank, + ChangeItemPagesInsertBlankLayout, + ChangeItemPagesInsertBlankLayoutNamedPagesItem, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template, + ChangeItemPagesInsertBlankLayoutPagesItem, + ChangeItemPagesInsertBlankLayoutPagesItemBoxes, + ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt, + ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed, + ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop, + ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia, + ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim, + ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox, + ChangeItemPagesInsertBlankLayoutPagesItemSize, + ChangeItemPagesInsertBlankLayoutPagesItemTabOrder, + ChangeItemPagesInsertLayout, + ChangeItemPagesInsertLayoutNamedPagesItem, + ChangeItemPagesInsertLayoutNamedPagesItemTarget, + ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling, + ChangeItemPagesInsertLayoutNamedPagesItemTargetPage, + ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template, + ChangeItemPagesInsertLayoutPagesItem, + ChangeItemPagesInsertLayoutPagesItemBoxes, + ChangeItemPagesInsertLayoutPagesItemBoxesArt, + ChangeItemPagesInsertLayoutPagesItemBoxesBleed, + ChangeItemPagesInsertLayoutPagesItemBoxesCrop, + ChangeItemPagesInsertLayoutPagesItemBoxesMedia, + ChangeItemPagesInsertLayoutPagesItemBoxesTrim, + ChangeItemPagesInsertLayoutPagesItemPdfCropBox, + ChangeItemPagesInsertLayoutPagesItemSize, + ChangeItemPagesInsertLayoutPagesItemTabOrder, + ChangeItemPagesReorder, + ChangeItemPagesReorderLayout, + ChangeItemPagesReorderLayoutNamedPagesItem, + ChangeItemPagesReorderLayoutNamedPagesItemTarget, + ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling, + ChangeItemPagesReorderLayoutNamedPagesItemTargetPage, + ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template, + ChangeItemPagesReorderLayoutPagesItem, + ChangeItemPagesReorderLayoutPagesItemBoxes, + ChangeItemPagesReorderLayoutPagesItemBoxesArt, + ChangeItemPagesReorderLayoutPagesItemBoxesBleed, + ChangeItemPagesReorderLayoutPagesItemBoxesCrop, + ChangeItemPagesReorderLayoutPagesItemBoxesMedia, + ChangeItemPagesReorderLayoutPagesItemBoxesTrim, + ChangeItemPagesReorderLayoutPagesItemPdfCropBox, + ChangeItemPagesReorderLayoutPagesItemSize, + ChangeItemPagesReorderLayoutPagesItemTabOrder, + ChangeItemPagesRestore, + ChangeItemPagesRestoreLayout, + ChangeItemPagesRestoreLayoutNamedPagesItem, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget, + ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling, + ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage, + ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template, + ChangeItemPagesRestoreLayoutPagesItem, + ChangeItemPagesRestoreLayoutPagesItemBoxes, + ChangeItemPagesRestoreLayoutPagesItemBoxesArt, + ChangeItemPagesRestoreLayoutPagesItemBoxesBleed, + ChangeItemPagesRestoreLayoutPagesItemBoxesCrop, + ChangeItemPagesRestoreLayoutPagesItemBoxesMedia, + ChangeItemPagesRestoreLayoutPagesItemBoxesTrim, + ChangeItemPagesRestoreLayoutPagesItemPdfCropBox, + ChangeItemPagesRestoreLayoutPagesItemSize, + ChangeItemPagesRestoreLayoutPagesItemTabOrder, + ChangeItemPagesRotate, + ChangeItemPagesRotateLayout, + ChangeItemPagesRotateLayoutNamedPagesItem, + ChangeItemPagesRotateLayoutNamedPagesItemTarget, + ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling, + ChangeItemPagesRotateLayoutNamedPagesItemTargetPage, + ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template, + ChangeItemPagesRotateLayoutPagesItem, + ChangeItemPagesRotateLayoutPagesItemBoxes, + ChangeItemPagesRotateLayoutPagesItemBoxesArt, + ChangeItemPagesRotateLayoutPagesItemBoxesBleed, + ChangeItemPagesRotateLayoutPagesItemBoxesCrop, + ChangeItemPagesRotateLayoutPagesItemBoxesMedia, + ChangeItemPagesRotateLayoutPagesItemBoxesTrim, + ChangeItemPagesRotateLayoutPagesItemPdfCropBox, + ChangeItemPagesRotateLayoutPagesItemSize, + ChangeItemPagesRotateLayoutPagesItemTabOrder, ChangeItemSkipped, ChangeItemSkippedOp, ChangeItem_AnnotationsCreate, @@ -923,6 +1057,9 @@ ChangeItem_AnnotationsReorder, ChangeItem_AnnotationsRestore, ChangeItem_AnnotationsUpdate, + ChangeItem_AttachmentsCreate, + ChangeItem_AttachmentsDelete, + ChangeItem_AttachmentsRestore, ChangeItem_FormsAddWidget, ChangeItem_FormsCreate, ChangeItem_FormsDelete, @@ -941,6 +1078,17 @@ ChangeItem_FormsUpdateWidget, ChangeItem_MetadataUpdate, ChangeItem_MetadataUpdateCustom, + ChangeItem_OutlineCreate, + ChangeItem_OutlineDelete, + ChangeItem_OutlineMove, + ChangeItem_OutlineRestore, + ChangeItem_OutlineUpdate, + ChangeItem_PagesDelete, + ChangeItem_PagesInsert, + ChangeItem_PagesInsertBlank, + ChangeItem_PagesReorder, + ChangeItem_PagesRestore, + ChangeItem_PagesRotate, ChangeItem_Skipped, ChangeOp, ChangeOpAnnotationsCreate, @@ -949,6 +1097,9 @@ ChangeOpAnnotationsReorder, ChangeOpAnnotationsUpdate, ChangeOpAnnotationsUpdateResources, + ChangeOpAttachmentsCreate, + ChangeOpAttachmentsCreateResources, + ChangeOpAttachmentsDelete, ChangeOpFormsAddWidget, ChangeOpFormsCreate, ChangeOpFormsDelete, @@ -967,10 +1118,24 @@ ChangeOpFormsUpdateWidget, ChangeOpMetadataUpdate, ChangeOpMetadataUpdateCustom, + ChangeOpOutlineCreate, + ChangeOpOutlineDelete, + ChangeOpOutlineMove, + ChangeOpOutlineUpdate, + ChangeOpPagesDelete, + ChangeOpPagesInsert, + ChangeOpPagesInsertBlank, + ChangeOpPagesInsertBlankSpec, + ChangeOpPagesInsertBlankSpecSize, + ChangeOpPagesInsertResources, + ChangeOpPagesReorder, + ChangeOpPagesRotate, ChangeOp_AnnotationsCreate, ChangeOp_AnnotationsDelete, ChangeOp_AnnotationsReorder, ChangeOp_AnnotationsUpdate, + ChangeOp_AttachmentsCreate, + ChangeOp_AttachmentsDelete, ChangeOp_FormsAddWidget, ChangeOp_FormsCreate, ChangeOp_FormsDelete, @@ -987,6 +1152,15 @@ ChangeOp_FormsUpdateWidget, ChangeOp_MetadataUpdate, ChangeOp_MetadataUpdateCustom, + ChangeOp_OutlineCreate, + ChangeOp_OutlineDelete, + ChangeOp_OutlineMove, + ChangeOp_OutlineUpdate, + ChangeOp_PagesDelete, + ChangeOp_PagesInsert, + ChangeOp_PagesInsertBlank, + ChangeOp_PagesReorder, + ChangeOp_PagesRotate, ChangeResult, DeploymentLicenseStatusResponse, DocAnnotationsCreate200Response, @@ -1012,6 +1186,9 @@ DocAnnotationsListAll409Response, DocAnnotationsReadAppearance400Response, DocAnnotationsReadAppearance404Response, + DocAnnotationsReadFile400Response, + DocAnnotationsReadFile404Response, + DocAnnotationsReadFile413Response, DocAnnotationsReorder200Response, DocAnnotationsReorder400Response, DocAnnotationsReorder404Response, @@ -1021,6 +1198,11 @@ DocAnnotationsUpdate400Response, DocAnnotationsUpdate404Response, DocAnnotationsUpdateRequest, + DocAttachmentsDownload400Response, + DocAttachmentsDownload404Response, + DocAttachmentsDownload413Response, + DocAttachmentsList200Response, + DocAttachmentsList404Response, DocChanges200Response, DocChanges200ResponseChangesItem, DocChanges200ResponseChangesItemApplied, @@ -1084,34 +1266,14 @@ DocManifest200ResponseScopesForms, DocManifest200ResponseScopesLayout, DocManifest200ResponseScopesMetadata, + DocManifest200ResponseScopesOutline, DocManifest404Response, DocMetadataCustomGet200Response, DocMetadataCustomGet404Response, DocMetadataGet200Response, DocMetadataGet404Response, - DocPagesDelete200Response, - DocPagesDelete200ResponseLayout, - DocPagesDelete200ResponseLayoutNamedPagesItem, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget, - DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling, - DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage, - DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesDelete200ResponseLayoutPagesItem, - DocPagesDelete200ResponseLayoutPagesItemBoxes, - DocPagesDelete200ResponseLayoutPagesItemBoxesArt, - DocPagesDelete200ResponseLayoutPagesItemBoxesBleed, - DocPagesDelete200ResponseLayoutPagesItemBoxesCrop, - DocPagesDelete200ResponseLayoutPagesItemBoxesMedia, - DocPagesDelete200ResponseLayoutPagesItemBoxesTrim, - DocPagesDelete200ResponseLayoutPagesItemPdfCropBox, - DocPagesDelete200ResponseLayoutPagesItemSize, - DocPagesDelete200ResponseLayoutPagesItemTabOrder, - DocPagesDelete400Response, - DocPagesDelete404Response, - DocPagesDeleteRequest, + DocOutlineGet200Response, + DocOutlineGet404Response, DocPagesExtract400Response, DocPagesExtract404Response, DocPagesExtractRequest, @@ -1122,51 +1284,6 @@ DocPagesFlatten400Response, DocPagesFlatten404Response, DocPagesFlattenRequest, - DocPagesInsert200Response, - DocPagesInsert200ResponseLayout, - DocPagesInsert200ResponseLayoutNamedPagesItem, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget, - DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling, - DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage, - DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesInsert200ResponseLayoutPagesItem, - DocPagesInsert200ResponseLayoutPagesItemBoxes, - DocPagesInsert200ResponseLayoutPagesItemBoxesArt, - DocPagesInsert200ResponseLayoutPagesItemBoxesBleed, - DocPagesInsert200ResponseLayoutPagesItemBoxesCrop, - DocPagesInsert200ResponseLayoutPagesItemBoxesMedia, - DocPagesInsert200ResponseLayoutPagesItemBoxesTrim, - DocPagesInsert200ResponseLayoutPagesItemPdfCropBox, - DocPagesInsert200ResponseLayoutPagesItemSize, - DocPagesInsert200ResponseLayoutPagesItemTabOrder, - DocPagesInsert400Response, - DocPagesInsert404Response, - DocPagesInsertBlank200Response, - DocPagesInsertBlank200ResponseLayout, - DocPagesInsertBlank200ResponseLayoutNamedPagesItem, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesInsertBlank200ResponseLayoutPagesItem, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxes, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia, - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim, - DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox, - DocPagesInsertBlank200ResponseLayoutPagesItemSize, - DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder, - DocPagesInsertBlank400Response, - DocPagesInsertBlank404Response, - DocPagesInsertBlankRequest, DocPagesRemoveName200Response, DocPagesRemoveName200ResponseLayout, DocPagesRemoveName200ResponseLayoutNamedPagesItem, @@ -1190,51 +1307,6 @@ DocPagesRemoveName400Response, DocPagesRemoveName404Response, DocPagesRemoveNameRequest, - DocPagesReorder200Response, - DocPagesReorder200ResponseLayout, - DocPagesReorder200ResponseLayoutNamedPagesItem, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget, - DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling, - DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage, - DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesReorder200ResponseLayoutPagesItem, - DocPagesReorder200ResponseLayoutPagesItemBoxes, - DocPagesReorder200ResponseLayoutPagesItemBoxesArt, - DocPagesReorder200ResponseLayoutPagesItemBoxesBleed, - DocPagesReorder200ResponseLayoutPagesItemBoxesCrop, - DocPagesReorder200ResponseLayoutPagesItemBoxesMedia, - DocPagesReorder200ResponseLayoutPagesItemBoxesTrim, - DocPagesReorder200ResponseLayoutPagesItemPdfCropBox, - DocPagesReorder200ResponseLayoutPagesItemSize, - DocPagesReorder200ResponseLayoutPagesItemTabOrder, - DocPagesReorder400Response, - DocPagesReorder404Response, - DocPagesRotate200Response, - DocPagesRotate200ResponseLayout, - DocPagesRotate200ResponseLayoutNamedPagesItem, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget, - DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling, - DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage, - DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesRotate200ResponseLayoutPagesItem, - DocPagesRotate200ResponseLayoutPagesItemBoxes, - DocPagesRotate200ResponseLayoutPagesItemBoxesArt, - DocPagesRotate200ResponseLayoutPagesItemBoxesBleed, - DocPagesRotate200ResponseLayoutPagesItemBoxesCrop, - DocPagesRotate200ResponseLayoutPagesItemBoxesMedia, - DocPagesRotate200ResponseLayoutPagesItemBoxesTrim, - DocPagesRotate200ResponseLayoutPagesItemPdfCropBox, - DocPagesRotate200ResponseLayoutPagesItemSize, - DocPagesRotate200ResponseLayoutPagesItemTabOrder, - DocPagesRotate400Response, - DocPagesRotate404Response, - DocPagesRotateRequest, DocPagesSetName200Response, DocPagesSetName200ResponseLayout, DocPagesSetName200ResponseLayoutNamedPagesItem, @@ -1425,6 +1497,7 @@ DocumentActionsSnapshotNameTreeScriptsItem, DocumentMetadata, DocumentMetadataTrapped, + DocumentOutline, DocumentsCommit200Response, DocumentsCommit200ResponseDocument, DocumentsCommit200ResponseDocumentState, @@ -1709,6 +1782,16 @@ MetadataPatch, MetadataPatchTrapped, MutationMeta, + OutlineItem, + OutlineItemDraft, + OutlineItemPatch, + OutlineItemRef, + OutlineItemRefKind, + OutlineMutationMeta, + OutlineOrder, + OutlinePosition, + OutlinePositionAfter, + OutlinePositionZero, PageDestination, PageDestinationFit, PageDestinationFitB, @@ -2242,7 +2325,6 @@ "AnnotationDraft_Widget": ".types", "AnnotationFileAttachment": ".types", "AnnotationFileAttachmentBlendMode": ".types", - "AnnotationFileAttachmentFile": ".types", "AnnotationFileAttachmentIcon": ".types", "AnnotationFileAttachmentRect": ".types", "AnnotationFileAttachmentReply": ".types", @@ -2815,6 +2897,13 @@ "Annotation_Unsupported": ".types", "Annotation_Widget": ".types", "AsyncCloudPDFClient": ".client", + "Attachment": ".types", + "AttachmentFileBase": ".types", + "AttachmentFileInfo": ".types", + "AttachmentList": ".types", + "AttachmentMutationMeta": ".types", + "AttachmentRef": ".types", + "AttachmentRefKind": ".types", "BadGatewayError": ".errors", "BadRequestError": ".errors", "CacheDelta": ".types", @@ -2828,6 +2917,9 @@ "ChangeItemAnnotationsUpdate": ".types", "ChangeItemAnnotationsUpdateAppearance": ".types", "ChangeItemAnnotationsUpdateAppearanceAction": ".types", + "ChangeItemAttachmentsCreate": ".types", + "ChangeItemAttachmentsDelete": ".types", + "ChangeItemAttachmentsRestore": ".types", "ChangeItemFormsAddWidget": ".types", "ChangeItemFormsCreate": ".types", "ChangeItemFormsDelete": ".types", @@ -2848,6 +2940,131 @@ "ChangeItemFormsUpdateWidgetAppearanceAction": ".types", "ChangeItemMetadataUpdate": ".types", "ChangeItemMetadataUpdateCustom": ".types", + "ChangeItemOutlineCreate": ".types", + "ChangeItemOutlineDelete": ".types", + "ChangeItemOutlineMove": ".types", + "ChangeItemOutlineRestore": ".types", + "ChangeItemOutlineUpdate": ".types", + "ChangeItemPagesDelete": ".types", + "ChangeItemPagesDeleteLayout": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItem": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesDeleteLayoutPagesItem": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxes": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesDeleteLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesDeleteLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesDeleteLayoutPagesItemSize": ".types", + "ChangeItemPagesDeleteLayoutPagesItemTabOrder": ".types", + "ChangeItemPagesInsert": ".types", + "ChangeItemPagesInsertBlank": ".types", + "ChangeItemPagesInsertBlankLayout": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItem": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItem": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxes": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemSize": ".types", + "ChangeItemPagesInsertBlankLayoutPagesItemTabOrder": ".types", + "ChangeItemPagesInsertLayout": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItem": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesInsertLayoutPagesItem": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxes": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesInsertLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesInsertLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesInsertLayoutPagesItemSize": ".types", + "ChangeItemPagesInsertLayoutPagesItemTabOrder": ".types", + "ChangeItemPagesReorder": ".types", + "ChangeItemPagesReorderLayout": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItem": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesReorderLayoutPagesItem": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxes": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesReorderLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesReorderLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesReorderLayoutPagesItemSize": ".types", + "ChangeItemPagesReorderLayoutPagesItemTabOrder": ".types", + "ChangeItemPagesRestore": ".types", + "ChangeItemPagesRestoreLayout": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItem": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesRestoreLayoutPagesItem": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxes": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesRestoreLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesRestoreLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesRestoreLayoutPagesItemSize": ".types", + "ChangeItemPagesRestoreLayoutPagesItemTabOrder": ".types", + "ChangeItemPagesRotate": ".types", + "ChangeItemPagesRotateLayout": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItem": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetPage": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page": ".types", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template": ".types", + "ChangeItemPagesRotateLayoutPagesItem": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxes": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxesArt": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxesBleed": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxesCrop": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxesMedia": ".types", + "ChangeItemPagesRotateLayoutPagesItemBoxesTrim": ".types", + "ChangeItemPagesRotateLayoutPagesItemPdfCropBox": ".types", + "ChangeItemPagesRotateLayoutPagesItemSize": ".types", + "ChangeItemPagesRotateLayoutPagesItemTabOrder": ".types", "ChangeItemSkipped": ".types", "ChangeItemSkippedOp": ".types", "ChangeItem_AnnotationsCreate": ".types", @@ -2855,6 +3072,9 @@ "ChangeItem_AnnotationsReorder": ".types", "ChangeItem_AnnotationsRestore": ".types", "ChangeItem_AnnotationsUpdate": ".types", + "ChangeItem_AttachmentsCreate": ".types", + "ChangeItem_AttachmentsDelete": ".types", + "ChangeItem_AttachmentsRestore": ".types", "ChangeItem_FormsAddWidget": ".types", "ChangeItem_FormsCreate": ".types", "ChangeItem_FormsDelete": ".types", @@ -2873,6 +3093,17 @@ "ChangeItem_FormsUpdateWidget": ".types", "ChangeItem_MetadataUpdate": ".types", "ChangeItem_MetadataUpdateCustom": ".types", + "ChangeItem_OutlineCreate": ".types", + "ChangeItem_OutlineDelete": ".types", + "ChangeItem_OutlineMove": ".types", + "ChangeItem_OutlineRestore": ".types", + "ChangeItem_OutlineUpdate": ".types", + "ChangeItem_PagesDelete": ".types", + "ChangeItem_PagesInsert": ".types", + "ChangeItem_PagesInsertBlank": ".types", + "ChangeItem_PagesReorder": ".types", + "ChangeItem_PagesRestore": ".types", + "ChangeItem_PagesRotate": ".types", "ChangeItem_Skipped": ".types", "ChangeOp": ".types", "ChangeOpAnnotationsCreate": ".types", @@ -2881,6 +3112,9 @@ "ChangeOpAnnotationsReorder": ".types", "ChangeOpAnnotationsUpdate": ".types", "ChangeOpAnnotationsUpdateResources": ".types", + "ChangeOpAttachmentsCreate": ".types", + "ChangeOpAttachmentsCreateResources": ".types", + "ChangeOpAttachmentsDelete": ".types", "ChangeOpFormsAddWidget": ".types", "ChangeOpFormsCreate": ".types", "ChangeOpFormsDelete": ".types", @@ -2899,10 +3133,24 @@ "ChangeOpFormsUpdateWidget": ".types", "ChangeOpMetadataUpdate": ".types", "ChangeOpMetadataUpdateCustom": ".types", + "ChangeOpOutlineCreate": ".types", + "ChangeOpOutlineDelete": ".types", + "ChangeOpOutlineMove": ".types", + "ChangeOpOutlineUpdate": ".types", + "ChangeOpPagesDelete": ".types", + "ChangeOpPagesInsert": ".types", + "ChangeOpPagesInsertBlank": ".types", + "ChangeOpPagesInsertBlankSpec": ".types", + "ChangeOpPagesInsertBlankSpecSize": ".types", + "ChangeOpPagesInsertResources": ".types", + "ChangeOpPagesReorder": ".types", + "ChangeOpPagesRotate": ".types", "ChangeOp_AnnotationsCreate": ".types", "ChangeOp_AnnotationsDelete": ".types", "ChangeOp_AnnotationsReorder": ".types", "ChangeOp_AnnotationsUpdate": ".types", + "ChangeOp_AttachmentsCreate": ".types", + "ChangeOp_AttachmentsDelete": ".types", "ChangeOp_FormsAddWidget": ".types", "ChangeOp_FormsCreate": ".types", "ChangeOp_FormsDelete": ".types", @@ -2919,6 +3167,15 @@ "ChangeOp_FormsUpdateWidget": ".types", "ChangeOp_MetadataUpdate": ".types", "ChangeOp_MetadataUpdateCustom": ".types", + "ChangeOp_OutlineCreate": ".types", + "ChangeOp_OutlineDelete": ".types", + "ChangeOp_OutlineMove": ".types", + "ChangeOp_OutlineUpdate": ".types", + "ChangeOp_PagesDelete": ".types", + "ChangeOp_PagesInsert": ".types", + "ChangeOp_PagesInsertBlank": ".types", + "ChangeOp_PagesReorder": ".types", + "ChangeOp_PagesRotate": ".types", "ChangeResult": ".types", "CloudPDFClient": ".client", "ConflictError": ".errors", @@ -2949,6 +3206,9 @@ "DocAnnotationsListAll409Response": ".types", "DocAnnotationsReadAppearance400Response": ".types", "DocAnnotationsReadAppearance404Response": ".types", + "DocAnnotationsReadFile400Response": ".types", + "DocAnnotationsReadFile404Response": ".types", + "DocAnnotationsReadFile413Response": ".types", "DocAnnotationsReorder200Response": ".types", "DocAnnotationsReorder400Response": ".types", "DocAnnotationsReorder404Response": ".types", @@ -2958,6 +3218,11 @@ "DocAnnotationsUpdate400Response": ".types", "DocAnnotationsUpdate404Response": ".types", "DocAnnotationsUpdateRequest": ".types", + "DocAttachmentsDownload400Response": ".types", + "DocAttachmentsDownload404Response": ".types", + "DocAttachmentsDownload413Response": ".types", + "DocAttachmentsList200Response": ".types", + "DocAttachmentsList404Response": ".types", "DocChanges200Response": ".types", "DocChanges200ResponseChangesItem": ".types", "DocChanges200ResponseChangesItemApplied": ".types", @@ -3022,34 +3287,14 @@ "DocManifest200ResponseScopesForms": ".types", "DocManifest200ResponseScopesLayout": ".types", "DocManifest200ResponseScopesMetadata": ".types", + "DocManifest200ResponseScopesOutline": ".types", "DocManifest404Response": ".types", "DocMetadataCustomGet200Response": ".types", "DocMetadataCustomGet404Response": ".types", "DocMetadataGet200Response": ".types", "DocMetadataGet404Response": ".types", - "DocPagesDelete200Response": ".types", - "DocPagesDelete200ResponseLayout": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItem": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page": ".types", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template": ".types", - "DocPagesDelete200ResponseLayoutPagesItem": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxes": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxesArt": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxesBleed": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxesCrop": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxesMedia": ".types", - "DocPagesDelete200ResponseLayoutPagesItemBoxesTrim": ".types", - "DocPagesDelete200ResponseLayoutPagesItemPdfCropBox": ".types", - "DocPagesDelete200ResponseLayoutPagesItemSize": ".types", - "DocPagesDelete200ResponseLayoutPagesItemTabOrder": ".types", - "DocPagesDelete400Response": ".types", - "DocPagesDelete404Response": ".types", - "DocPagesDeleteRequest": ".types", + "DocOutlineGet200Response": ".types", + "DocOutlineGet404Response": ".types", "DocPagesExtract400Response": ".types", "DocPagesExtract404Response": ".types", "DocPagesExtractRequest": ".types", @@ -3060,51 +3305,6 @@ "DocPagesFlatten400Response": ".types", "DocPagesFlatten404Response": ".types", "DocPagesFlattenRequest": ".types", - "DocPagesInsert200Response": ".types", - "DocPagesInsert200ResponseLayout": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItem": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page": ".types", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template": ".types", - "DocPagesInsert200ResponseLayoutPagesItem": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxes": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxesArt": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxesBleed": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxesCrop": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxesMedia": ".types", - "DocPagesInsert200ResponseLayoutPagesItemBoxesTrim": ".types", - "DocPagesInsert200ResponseLayoutPagesItemPdfCropBox": ".types", - "DocPagesInsert200ResponseLayoutPagesItemSize": ".types", - "DocPagesInsert200ResponseLayoutPagesItemTabOrder": ".types", - "DocPagesInsert400Response": ".types", - "DocPagesInsert404Response": ".types", - "DocPagesInsertBlank200Response": ".types", - "DocPagesInsertBlank200ResponseLayout": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItem": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page": ".types", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItem": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxes": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemSize": ".types", - "DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder": ".types", - "DocPagesInsertBlank400Response": ".types", - "DocPagesInsertBlank404Response": ".types", - "DocPagesInsertBlankRequest": ".types", "DocPagesRemoveName200Response": ".types", "DocPagesRemoveName200ResponseLayout": ".types", "DocPagesRemoveName200ResponseLayoutNamedPagesItem": ".types", @@ -3128,51 +3328,6 @@ "DocPagesRemoveName400Response": ".types", "DocPagesRemoveName404Response": ".types", "DocPagesRemoveNameRequest": ".types", - "DocPagesReorder200Response": ".types", - "DocPagesReorder200ResponseLayout": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItem": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page": ".types", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template": ".types", - "DocPagesReorder200ResponseLayoutPagesItem": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxes": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxesArt": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxesBleed": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxesCrop": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxesMedia": ".types", - "DocPagesReorder200ResponseLayoutPagesItemBoxesTrim": ".types", - "DocPagesReorder200ResponseLayoutPagesItemPdfCropBox": ".types", - "DocPagesReorder200ResponseLayoutPagesItemSize": ".types", - "DocPagesReorder200ResponseLayoutPagesItemTabOrder": ".types", - "DocPagesReorder400Response": ".types", - "DocPagesReorder404Response": ".types", - "DocPagesRotate200Response": ".types", - "DocPagesRotate200ResponseLayout": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItem": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page": ".types", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template": ".types", - "DocPagesRotate200ResponseLayoutPagesItem": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxes": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxesArt": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxesBleed": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxesCrop": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxesMedia": ".types", - "DocPagesRotate200ResponseLayoutPagesItemBoxesTrim": ".types", - "DocPagesRotate200ResponseLayoutPagesItemPdfCropBox": ".types", - "DocPagesRotate200ResponseLayoutPagesItemSize": ".types", - "DocPagesRotate200ResponseLayoutPagesItemTabOrder": ".types", - "DocPagesRotate400Response": ".types", - "DocPagesRotate404Response": ".types", - "DocPagesRotateRequest": ".types", "DocPagesSetName200Response": ".types", "DocPagesSetName200ResponseLayout": ".types", "DocPagesSetName200ResponseLayoutNamedPagesItem": ".types", @@ -3363,6 +3518,7 @@ "DocumentActionsSnapshotNameTreeScriptsItem": ".types", "DocumentMetadata": ".types", "DocumentMetadataTrapped": ".types", + "DocumentOutline": ".types", "DocumentsCommit200Response": ".types", "DocumentsCommit200ResponseDocument": ".types", "DocumentsCommit200ResponseDocumentState": ".types", @@ -3661,6 +3817,16 @@ "MetadataPatchTrapped": ".types", "MutationMeta": ".types", "NotFoundError": ".errors", + "OutlineItem": ".types", + "OutlineItemDraft": ".types", + "OutlineItemPatch": ".types", + "OutlineItemRef": ".types", + "OutlineItemRefKind": ".types", + "OutlineMutationMeta": ".types", + "OutlineOrder": ".types", + "OutlinePosition": ".types", + "OutlinePositionAfter": ".types", + "OutlinePositionZero": ".types", "PageDestination": ".types", "PageDestinationFit": ".types", "PageDestinationFitB": ".types", @@ -4197,7 +4363,6 @@ def __dir__(): "AnnotationDraft_Widget", "AnnotationFileAttachment", "AnnotationFileAttachmentBlendMode", - "AnnotationFileAttachmentFile", "AnnotationFileAttachmentIcon", "AnnotationFileAttachmentRect", "AnnotationFileAttachmentReply", @@ -4770,6 +4935,13 @@ def __dir__(): "Annotation_Unsupported", "Annotation_Widget", "AsyncCloudPDFClient", + "Attachment", + "AttachmentFileBase", + "AttachmentFileInfo", + "AttachmentList", + "AttachmentMutationMeta", + "AttachmentRef", + "AttachmentRefKind", "BadGatewayError", "BadRequestError", "CacheDelta", @@ -4783,6 +4955,9 @@ def __dir__(): "ChangeItemAnnotationsUpdate", "ChangeItemAnnotationsUpdateAppearance", "ChangeItemAnnotationsUpdateAppearanceAction", + "ChangeItemAttachmentsCreate", + "ChangeItemAttachmentsDelete", + "ChangeItemAttachmentsRestore", "ChangeItemFormsAddWidget", "ChangeItemFormsCreate", "ChangeItemFormsDelete", @@ -4803,6 +4978,131 @@ def __dir__(): "ChangeItemFormsUpdateWidgetAppearanceAction", "ChangeItemMetadataUpdate", "ChangeItemMetadataUpdateCustom", + "ChangeItemOutlineCreate", + "ChangeItemOutlineDelete", + "ChangeItemOutlineMove", + "ChangeItemOutlineRestore", + "ChangeItemOutlineUpdate", + "ChangeItemPagesDelete", + "ChangeItemPagesDeleteLayout", + "ChangeItemPagesDeleteLayoutNamedPagesItem", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesDeleteLayoutPagesItem", + "ChangeItemPagesDeleteLayoutPagesItemBoxes", + "ChangeItemPagesDeleteLayoutPagesItemBoxesArt", + "ChangeItemPagesDeleteLayoutPagesItemBoxesBleed", + "ChangeItemPagesDeleteLayoutPagesItemBoxesCrop", + "ChangeItemPagesDeleteLayoutPagesItemBoxesMedia", + "ChangeItemPagesDeleteLayoutPagesItemBoxesTrim", + "ChangeItemPagesDeleteLayoutPagesItemPdfCropBox", + "ChangeItemPagesDeleteLayoutPagesItemSize", + "ChangeItemPagesDeleteLayoutPagesItemTabOrder", + "ChangeItemPagesInsert", + "ChangeItemPagesInsertBlank", + "ChangeItemPagesInsertBlankLayout", + "ChangeItemPagesInsertBlankLayoutNamedPagesItem", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesInsertBlankLayoutPagesItem", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxes", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim", + "ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox", + "ChangeItemPagesInsertBlankLayoutPagesItemSize", + "ChangeItemPagesInsertBlankLayoutPagesItemTabOrder", + "ChangeItemPagesInsertLayout", + "ChangeItemPagesInsertLayoutNamedPagesItem", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetPage", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesInsertLayoutPagesItem", + "ChangeItemPagesInsertLayoutPagesItemBoxes", + "ChangeItemPagesInsertLayoutPagesItemBoxesArt", + "ChangeItemPagesInsertLayoutPagesItemBoxesBleed", + "ChangeItemPagesInsertLayoutPagesItemBoxesCrop", + "ChangeItemPagesInsertLayoutPagesItemBoxesMedia", + "ChangeItemPagesInsertLayoutPagesItemBoxesTrim", + "ChangeItemPagesInsertLayoutPagesItemPdfCropBox", + "ChangeItemPagesInsertLayoutPagesItemSize", + "ChangeItemPagesInsertLayoutPagesItemTabOrder", + "ChangeItemPagesReorder", + "ChangeItemPagesReorderLayout", + "ChangeItemPagesReorderLayoutNamedPagesItem", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetPage", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesReorderLayoutPagesItem", + "ChangeItemPagesReorderLayoutPagesItemBoxes", + "ChangeItemPagesReorderLayoutPagesItemBoxesArt", + "ChangeItemPagesReorderLayoutPagesItemBoxesBleed", + "ChangeItemPagesReorderLayoutPagesItemBoxesCrop", + "ChangeItemPagesReorderLayoutPagesItemBoxesMedia", + "ChangeItemPagesReorderLayoutPagesItemBoxesTrim", + "ChangeItemPagesReorderLayoutPagesItemPdfCropBox", + "ChangeItemPagesReorderLayoutPagesItemSize", + "ChangeItemPagesReorderLayoutPagesItemTabOrder", + "ChangeItemPagesRestore", + "ChangeItemPagesRestoreLayout", + "ChangeItemPagesRestoreLayoutNamedPagesItem", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesRestoreLayoutPagesItem", + "ChangeItemPagesRestoreLayoutPagesItemBoxes", + "ChangeItemPagesRestoreLayoutPagesItemBoxesArt", + "ChangeItemPagesRestoreLayoutPagesItemBoxesBleed", + "ChangeItemPagesRestoreLayoutPagesItemBoxesCrop", + "ChangeItemPagesRestoreLayoutPagesItemBoxesMedia", + "ChangeItemPagesRestoreLayoutPagesItemBoxesTrim", + "ChangeItemPagesRestoreLayoutPagesItemPdfCropBox", + "ChangeItemPagesRestoreLayoutPagesItemSize", + "ChangeItemPagesRestoreLayoutPagesItemTabOrder", + "ChangeItemPagesRotate", + "ChangeItemPagesRotateLayout", + "ChangeItemPagesRotateLayoutNamedPagesItem", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetPage", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesRotateLayoutPagesItem", + "ChangeItemPagesRotateLayoutPagesItemBoxes", + "ChangeItemPagesRotateLayoutPagesItemBoxesArt", + "ChangeItemPagesRotateLayoutPagesItemBoxesBleed", + "ChangeItemPagesRotateLayoutPagesItemBoxesCrop", + "ChangeItemPagesRotateLayoutPagesItemBoxesMedia", + "ChangeItemPagesRotateLayoutPagesItemBoxesTrim", + "ChangeItemPagesRotateLayoutPagesItemPdfCropBox", + "ChangeItemPagesRotateLayoutPagesItemSize", + "ChangeItemPagesRotateLayoutPagesItemTabOrder", "ChangeItemSkipped", "ChangeItemSkippedOp", "ChangeItem_AnnotationsCreate", @@ -4810,6 +5110,9 @@ def __dir__(): "ChangeItem_AnnotationsReorder", "ChangeItem_AnnotationsRestore", "ChangeItem_AnnotationsUpdate", + "ChangeItem_AttachmentsCreate", + "ChangeItem_AttachmentsDelete", + "ChangeItem_AttachmentsRestore", "ChangeItem_FormsAddWidget", "ChangeItem_FormsCreate", "ChangeItem_FormsDelete", @@ -4828,6 +5131,17 @@ def __dir__(): "ChangeItem_FormsUpdateWidget", "ChangeItem_MetadataUpdate", "ChangeItem_MetadataUpdateCustom", + "ChangeItem_OutlineCreate", + "ChangeItem_OutlineDelete", + "ChangeItem_OutlineMove", + "ChangeItem_OutlineRestore", + "ChangeItem_OutlineUpdate", + "ChangeItem_PagesDelete", + "ChangeItem_PagesInsert", + "ChangeItem_PagesInsertBlank", + "ChangeItem_PagesReorder", + "ChangeItem_PagesRestore", + "ChangeItem_PagesRotate", "ChangeItem_Skipped", "ChangeOp", "ChangeOpAnnotationsCreate", @@ -4836,6 +5150,9 @@ def __dir__(): "ChangeOpAnnotationsReorder", "ChangeOpAnnotationsUpdate", "ChangeOpAnnotationsUpdateResources", + "ChangeOpAttachmentsCreate", + "ChangeOpAttachmentsCreateResources", + "ChangeOpAttachmentsDelete", "ChangeOpFormsAddWidget", "ChangeOpFormsCreate", "ChangeOpFormsDelete", @@ -4854,10 +5171,24 @@ def __dir__(): "ChangeOpFormsUpdateWidget", "ChangeOpMetadataUpdate", "ChangeOpMetadataUpdateCustom", + "ChangeOpOutlineCreate", + "ChangeOpOutlineDelete", + "ChangeOpOutlineMove", + "ChangeOpOutlineUpdate", + "ChangeOpPagesDelete", + "ChangeOpPagesInsert", + "ChangeOpPagesInsertBlank", + "ChangeOpPagesInsertBlankSpec", + "ChangeOpPagesInsertBlankSpecSize", + "ChangeOpPagesInsertResources", + "ChangeOpPagesReorder", + "ChangeOpPagesRotate", "ChangeOp_AnnotationsCreate", "ChangeOp_AnnotationsDelete", "ChangeOp_AnnotationsReorder", "ChangeOp_AnnotationsUpdate", + "ChangeOp_AttachmentsCreate", + "ChangeOp_AttachmentsDelete", "ChangeOp_FormsAddWidget", "ChangeOp_FormsCreate", "ChangeOp_FormsDelete", @@ -4874,6 +5205,15 @@ def __dir__(): "ChangeOp_FormsUpdateWidget", "ChangeOp_MetadataUpdate", "ChangeOp_MetadataUpdateCustom", + "ChangeOp_OutlineCreate", + "ChangeOp_OutlineDelete", + "ChangeOp_OutlineMove", + "ChangeOp_OutlineUpdate", + "ChangeOp_PagesDelete", + "ChangeOp_PagesInsert", + "ChangeOp_PagesInsertBlank", + "ChangeOp_PagesReorder", + "ChangeOp_PagesRotate", "ChangeResult", "CloudPDFClient", "ConflictError", @@ -4904,6 +5244,9 @@ def __dir__(): "DocAnnotationsListAll409Response", "DocAnnotationsReadAppearance400Response", "DocAnnotationsReadAppearance404Response", + "DocAnnotationsReadFile400Response", + "DocAnnotationsReadFile404Response", + "DocAnnotationsReadFile413Response", "DocAnnotationsReorder200Response", "DocAnnotationsReorder400Response", "DocAnnotationsReorder404Response", @@ -4913,6 +5256,11 @@ def __dir__(): "DocAnnotationsUpdate400Response", "DocAnnotationsUpdate404Response", "DocAnnotationsUpdateRequest", + "DocAttachmentsDownload400Response", + "DocAttachmentsDownload404Response", + "DocAttachmentsDownload413Response", + "DocAttachmentsList200Response", + "DocAttachmentsList404Response", "DocChanges200Response", "DocChanges200ResponseChangesItem", "DocChanges200ResponseChangesItemApplied", @@ -4977,34 +5325,14 @@ def __dir__(): "DocManifest200ResponseScopesForms", "DocManifest200ResponseScopesLayout", "DocManifest200ResponseScopesMetadata", + "DocManifest200ResponseScopesOutline", "DocManifest404Response", "DocMetadataCustomGet200Response", "DocMetadataCustomGet404Response", "DocMetadataGet200Response", "DocMetadataGet404Response", - "DocPagesDelete200Response", - "DocPagesDelete200ResponseLayout", - "DocPagesDelete200ResponseLayoutNamedPagesItem", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesDelete200ResponseLayoutPagesItem", - "DocPagesDelete200ResponseLayoutPagesItemBoxes", - "DocPagesDelete200ResponseLayoutPagesItemBoxesArt", - "DocPagesDelete200ResponseLayoutPagesItemBoxesBleed", - "DocPagesDelete200ResponseLayoutPagesItemBoxesCrop", - "DocPagesDelete200ResponseLayoutPagesItemBoxesMedia", - "DocPagesDelete200ResponseLayoutPagesItemBoxesTrim", - "DocPagesDelete200ResponseLayoutPagesItemPdfCropBox", - "DocPagesDelete200ResponseLayoutPagesItemSize", - "DocPagesDelete200ResponseLayoutPagesItemTabOrder", - "DocPagesDelete400Response", - "DocPagesDelete404Response", - "DocPagesDeleteRequest", + "DocOutlineGet200Response", + "DocOutlineGet404Response", "DocPagesExtract400Response", "DocPagesExtract404Response", "DocPagesExtractRequest", @@ -5015,51 +5343,6 @@ def __dir__(): "DocPagesFlatten400Response", "DocPagesFlatten404Response", "DocPagesFlattenRequest", - "DocPagesInsert200Response", - "DocPagesInsert200ResponseLayout", - "DocPagesInsert200ResponseLayoutNamedPagesItem", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesInsert200ResponseLayoutPagesItem", - "DocPagesInsert200ResponseLayoutPagesItemBoxes", - "DocPagesInsert200ResponseLayoutPagesItemBoxesArt", - "DocPagesInsert200ResponseLayoutPagesItemBoxesBleed", - "DocPagesInsert200ResponseLayoutPagesItemBoxesCrop", - "DocPagesInsert200ResponseLayoutPagesItemBoxesMedia", - "DocPagesInsert200ResponseLayoutPagesItemBoxesTrim", - "DocPagesInsert200ResponseLayoutPagesItemPdfCropBox", - "DocPagesInsert200ResponseLayoutPagesItemSize", - "DocPagesInsert200ResponseLayoutPagesItemTabOrder", - "DocPagesInsert400Response", - "DocPagesInsert404Response", - "DocPagesInsertBlank200Response", - "DocPagesInsertBlank200ResponseLayout", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItem", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesInsertBlank200ResponseLayoutPagesItem", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxes", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim", - "DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox", - "DocPagesInsertBlank200ResponseLayoutPagesItemSize", - "DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder", - "DocPagesInsertBlank400Response", - "DocPagesInsertBlank404Response", - "DocPagesInsertBlankRequest", "DocPagesRemoveName200Response", "DocPagesRemoveName200ResponseLayout", "DocPagesRemoveName200ResponseLayoutNamedPagesItem", @@ -5083,51 +5366,6 @@ def __dir__(): "DocPagesRemoveName400Response", "DocPagesRemoveName404Response", "DocPagesRemoveNameRequest", - "DocPagesReorder200Response", - "DocPagesReorder200ResponseLayout", - "DocPagesReorder200ResponseLayoutNamedPagesItem", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesReorder200ResponseLayoutPagesItem", - "DocPagesReorder200ResponseLayoutPagesItemBoxes", - "DocPagesReorder200ResponseLayoutPagesItemBoxesArt", - "DocPagesReorder200ResponseLayoutPagesItemBoxesBleed", - "DocPagesReorder200ResponseLayoutPagesItemBoxesCrop", - "DocPagesReorder200ResponseLayoutPagesItemBoxesMedia", - "DocPagesReorder200ResponseLayoutPagesItemBoxesTrim", - "DocPagesReorder200ResponseLayoutPagesItemPdfCropBox", - "DocPagesReorder200ResponseLayoutPagesItemSize", - "DocPagesReorder200ResponseLayoutPagesItemTabOrder", - "DocPagesReorder400Response", - "DocPagesReorder404Response", - "DocPagesRotate200Response", - "DocPagesRotate200ResponseLayout", - "DocPagesRotate200ResponseLayoutNamedPagesItem", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesRotate200ResponseLayoutPagesItem", - "DocPagesRotate200ResponseLayoutPagesItemBoxes", - "DocPagesRotate200ResponseLayoutPagesItemBoxesArt", - "DocPagesRotate200ResponseLayoutPagesItemBoxesBleed", - "DocPagesRotate200ResponseLayoutPagesItemBoxesCrop", - "DocPagesRotate200ResponseLayoutPagesItemBoxesMedia", - "DocPagesRotate200ResponseLayoutPagesItemBoxesTrim", - "DocPagesRotate200ResponseLayoutPagesItemPdfCropBox", - "DocPagesRotate200ResponseLayoutPagesItemSize", - "DocPagesRotate200ResponseLayoutPagesItemTabOrder", - "DocPagesRotate400Response", - "DocPagesRotate404Response", - "DocPagesRotateRequest", "DocPagesSetName200Response", "DocPagesSetName200ResponseLayout", "DocPagesSetName200ResponseLayoutNamedPagesItem", @@ -5318,6 +5556,7 @@ def __dir__(): "DocumentActionsSnapshotNameTreeScriptsItem", "DocumentMetadata", "DocumentMetadataTrapped", + "DocumentOutline", "DocumentsCommit200Response", "DocumentsCommit200ResponseDocument", "DocumentsCommit200ResponseDocumentState", @@ -5616,6 +5855,16 @@ def __dir__(): "MetadataPatchTrapped", "MutationMeta", "NotFoundError", + "OutlineItem", + "OutlineItemDraft", + "OutlineItemPatch", + "OutlineItemRef", + "OutlineItemRefKind", + "OutlineMutationMeta", + "OutlineOrder", + "OutlinePosition", + "OutlinePositionAfter", + "OutlinePositionZero", "PageDestination", "PageDestinationFit", "PageDestinationFitB", diff --git a/src/cloudpdf/core/client_wrapper.py b/src/cloudpdf/core/client_wrapper.py index 6cdbe93..c01b1ec 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.0a15", + "User-Agent": "cloudpdf/3.0.0a16", "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.0a15", + "X-Fern-SDK-Version": "3.0.0a16", **(self.get_custom_headers() or {}), } token = self._get_token() diff --git a/src/cloudpdf/doc/__init__.py b/src/cloudpdf/doc/__init__.py index b9c7d95..8ddd863 100644 --- a/src/cloudpdf/doc/__init__.py +++ b/src/cloudpdf/doc/__init__.py @@ -7,7 +7,7 @@ if typing.TYPE_CHECKING: from .types import DocChangesRequestChangesItem - from . import annotations, forms, metadata, pages, redactions, signatures, versions + from . import annotations, attachments, forms, metadata, outline, pages, redactions, signatures, versions from .pages import ( DocPagesSetScaleRequestMeasure, DocPagesSetScaleRequestMeasureAngleItem, @@ -61,8 +61,10 @@ "DocSignaturesCompleteRequestExpectedVersion": ".signatures", "SignatureDigestVersionsRequestAlgorithm": ".versions", "annotations": ".annotations", + "attachments": ".attachments", "forms": ".forms", "metadata": ".metadata", + "outline": ".outline", "pages": ".pages", "redactions": ".redactions", "signatures": ".signatures", @@ -119,8 +121,10 @@ def __dir__(): "DocSignaturesCompleteRequestExpectedVersion", "SignatureDigestVersionsRequestAlgorithm", "annotations", + "attachments", "forms", "metadata", + "outline", "pages", "redactions", "signatures", diff --git a/src/cloudpdf/doc/annotations/client.py b/src/cloudpdf/doc/annotations/client.py index 5408199..99e38bf 100644 --- a/src/cloudpdf/doc/annotations/client.py +++ b/src/cloudpdf/doc/annotations/client.py @@ -390,6 +390,67 @@ def read_appearance( ) as r: yield from r.data + def read_file( + self, + doc_id: str, + layer_name: str, + page_key: str, + annot_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[bytes]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. + + annot_key : str + The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. + + 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.annotations.read_file( + doc_id="docId", + layer_name="layerName", + page_key="pageKey", + annot_key="annotKey", + ) + """ + with self._raw_client.read_file( + doc_id, + layer_name, + page_key, + annot_key, + document_password=document_password, + request_options=request_options, + ) as r: + yield from r.data + def export_appearance( self, doc_id: str, @@ -1004,6 +1065,76 @@ async def main() -> None: async for _chunk in r.data: yield _chunk + async def read_file( + self, + doc_id: str, + layer_name: str, + page_key: str, + annot_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[bytes]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. + + annot_key : str + The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. + + 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.annotations.read_file( + doc_id="docId", + layer_name="layerName", + page_key="pageKey", + annot_key="annotKey", + ) + + + asyncio.run(main()) + """ + async with self._raw_client.read_file( + doc_id, + layer_name, + page_key, + annot_key, + document_password=document_password, + request_options=request_options, + ) as r: + async for _chunk in r.data: + yield _chunk + async def export_appearance( self, doc_id: str, diff --git a/src/cloudpdf/doc/annotations/raw_client.py b/src/cloudpdf/doc/annotations/raw_client.py index d1e83a5..cdf56fd 100644 --- a/src/cloudpdf/doc/annotations/raw_client.py +++ b/src/cloudpdf/doc/annotations/raw_client.py @@ -14,6 +14,7 @@ from ...core.serialization import convert_and_respect_annotation_metadata from ...errors.bad_request_error import BadRequestError from ...errors.conflict_error import ConflictError +from ...errors.content_too_large_error import ContentTooLargeError from ...errors.not_found_error import NotFoundError from ...types.annotation_position import AnnotationPosition from ...types.annotation_ref import AnnotationRef @@ -536,6 +537,109 @@ def _stream() -> HttpResponse[typing.Iterator[bytes]]: yield _stream() + @contextlib.contextmanager + def read_file( + self, + doc_id: str, + layer_name: str, + page_key: str, + annot_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[HttpResponse[typing.Iterator[bytes]]]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. + + annot_key : str + The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. + + 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)}/annotations/pages/{encode_path_param(page_key)}/items/{encode_path_param(annot_key)}/resources/file", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) 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(), + ), + ), + ) + if _response.status_code == 413: + raise ContentTooLargeError( + 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() + @contextlib.contextmanager def export_appearance( self, @@ -1322,6 +1426,110 @@ async def _stream() -> AsyncHttpResponse[typing.AsyncIterator[bytes]]: yield await _stream() + @contextlib.asynccontextmanager + async def read_file( + self, + doc_id: str, + layer_name: str, + page_key: str, + annot_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. + + annot_key : str + The annotation's address on the page: `obj:N`, its indirect object number, or `base:N` for an annotation the uploaded file stored inline (without an object number of its own), the position it was born at in the page's /Annots. The name the annotation's `ref` carries for life. + + 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)}/annotations/pages/{encode_path_param(page_key)}/items/{encode_path_param(annot_key)}/resources/file", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) 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(), + ), + ), + ) + if _response.status_code == 413: + raise ContentTooLargeError( + 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() + @contextlib.asynccontextmanager async def export_appearance( self, diff --git a/src/cloudpdf/doc/attachments/__init__.py b/src/cloudpdf/doc/attachments/__init__.py new file mode 100644 index 0000000..5cde020 --- /dev/null +++ b/src/cloudpdf/doc/attachments/__init__.py @@ -0,0 +1,4 @@ +# This file was auto-generated by Fern from our API Definition. + +# isort: skip_file + diff --git a/src/cloudpdf/doc/attachments/client.py b/src/cloudpdf/doc/attachments/client.py new file mode 100644 index 0000000..675c19d --- /dev/null +++ b/src/cloudpdf/doc/attachments/client.py @@ -0,0 +1,251 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper +from ...core.request_options import RequestOptions +from ...types.doc_attachments_list200response import DocAttachmentsList200Response +from .raw_client import AsyncRawAttachmentsClient, RawAttachmentsClient + + +class AttachmentsClient: + def __init__(self, *, client_wrapper: SyncClientWrapper): + self._raw_client = RawAttachmentsClient(client_wrapper=client_wrapper) + + @property + def with_raw_response(self) -> RawAttachmentsClient: + """ + Retrieves a raw implementation of this client that returns raw responses. + + Returns + ------- + RawAttachmentsClient + """ + return self._raw_client + + def download( + self, + doc_id: str, + layer_name: str, + file_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[bytes]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + file_key : str + The embedded file's name-tree key (its `ref.key`), token-text encoded, as `fieldKey` is. + + 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.attachments.download( + doc_id="docId", + layer_name="layerName", + file_key="fileKey", + ) + """ + with self._raw_client.download( + doc_id, layer_name, file_key, document_password=document_password, request_options=request_options + ) as r: + yield from r.data + + def list( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocAttachmentsList200Response: + """ + A file-attachment annotation's file is listed with the annotation; read its bytes with `doc.annotations.readFile`. + + Parameters + ---------- + doc_id : str + + layer_name : str + + 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 + ------- + DocAttachmentsList200Response + OK + + Examples + -------- + from cloudpdf import CloudPDFClient + + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + client.doc.attachments.list( + doc_id="docId", + layer_name="layerName", + ) + """ + _response = self._raw_client.list( + doc_id, layer_name, document_password=document_password, request_options=request_options + ) + return _response.data + + +class AsyncAttachmentsClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._raw_client = AsyncRawAttachmentsClient(client_wrapper=client_wrapper) + + @property + def with_raw_response(self) -> AsyncRawAttachmentsClient: + """ + Retrieves a raw implementation of this client that returns raw responses. + + Returns + ------- + AsyncRawAttachmentsClient + """ + return self._raw_client + + async def download( + self, + doc_id: str, + layer_name: str, + file_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[bytes]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + file_key : str + The embedded file's name-tree key (its `ref.key`), token-text encoded, as `fieldKey` is. + + 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.attachments.download( + doc_id="docId", + layer_name="layerName", + file_key="fileKey", + ) + + + asyncio.run(main()) + """ + async with self._raw_client.download( + doc_id, layer_name, file_key, document_password=document_password, request_options=request_options + ) as r: + async for _chunk in r.data: + yield _chunk + + async def list( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocAttachmentsList200Response: + """ + A file-attachment annotation's file is listed with the annotation; read its bytes with `doc.annotations.readFile`. + + Parameters + ---------- + doc_id : str + + layer_name : str + + 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 + ------- + DocAttachmentsList200Response + 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.attachments.list( + doc_id="docId", + layer_name="layerName", + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.list( + doc_id, layer_name, document_password=document_password, request_options=request_options + ) + return _response.data diff --git a/src/cloudpdf/doc/attachments/raw_client.py b/src/cloudpdf/doc/attachments/raw_client.py new file mode 100644 index 0000000..33ffc25 --- /dev/null +++ b/src/cloudpdf/doc/attachments/raw_client.py @@ -0,0 +1,359 @@ +# This file was auto-generated by Fern from our API Definition. + +import contextlib +import typing +from json.decoder import JSONDecodeError + +from ...core.api_error import ApiError +from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper +from ...core.http_response import AsyncHttpResponse, HttpResponse +from ...core.jsonable_encoder import encode_path_param +from ...core.parse_error import ParsingError +from ...core.pydantic_utilities import parse_obj_as +from ...core.request_options import RequestOptions +from ...errors.bad_request_error import BadRequestError +from ...errors.content_too_large_error import ContentTooLargeError +from ...errors.not_found_error import NotFoundError +from ...types.doc_attachments_list200response import DocAttachmentsList200Response +from pydantic import ValidationError + + +class RawAttachmentsClient: + def __init__(self, *, client_wrapper: SyncClientWrapper): + self._client_wrapper = client_wrapper + + @contextlib.contextmanager + def download( + self, + doc_id: str, + layer_name: str, + file_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.Iterator[HttpResponse[typing.Iterator[bytes]]]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + file_key : str + The embedded file's name-tree key (its `ref.key`), token-text encoded, as `fieldKey` is. + + 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)}/attachment-files/{encode_path_param(file_key)}/data", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) 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(), + ), + ), + ) + if _response.status_code == 413: + raise ContentTooLargeError( + 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 list( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[DocAttachmentsList200Response]: + """ + A file-attachment annotation's file is listed with the annotation; read its bytes with `doc.annotations.readFile`. + + Parameters + ---------- + doc_id : str + + layer_name : str + + 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[DocAttachmentsList200Response] + OK + """ + _response = self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/attachments", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocAttachmentsList200Response, + parse_obj_as( + type_=DocAttachmentsList200Response, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + 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) + + +class AsyncRawAttachmentsClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._client_wrapper = client_wrapper + + @contextlib.asynccontextmanager + async def download( + self, + doc_id: str, + layer_name: str, + file_key: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]]: + """ + A file that decodes past the server's limit is refused (PayloadTooLarge). + + Parameters + ---------- + doc_id : str + + layer_name : str + + file_key : str + The embedded file's name-tree key (its `ref.key`), token-text encoded, as `fieldKey` is. + + 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)}/attachment-files/{encode_path_param(file_key)}/data", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) 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(), + ), + ), + ) + if _response.status_code == 413: + raise ContentTooLargeError( + 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 list( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[DocAttachmentsList200Response]: + """ + A file-attachment annotation's file is listed with the annotation; read its bytes with `doc.annotations.readFile`. + + Parameters + ---------- + doc_id : str + + layer_name : str + + 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[DocAttachmentsList200Response] + OK + """ + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/attachments", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocAttachmentsList200Response, + parse_obj_as( + type_=DocAttachmentsList200Response, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + 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) diff --git a/src/cloudpdf/doc/client.py b/src/cloudpdf/doc/client.py index 39510fe..15c306d 100644 --- a/src/cloudpdf/doc/client.py +++ b/src/cloudpdf/doc/client.py @@ -15,8 +15,10 @@ if typing.TYPE_CHECKING: from .annotations.client import AnnotationsClient, AsyncAnnotationsClient + from .attachments.client import AsyncAttachmentsClient, AttachmentsClient from .forms.client import AsyncFormsClient, FormsClient from .metadata.client import AsyncMetadataClient, MetadataClient + from .outline.client import AsyncOutlineClient, OutlineClient from .pages.client import AsyncPagesClient, PagesClient from .redactions.client import AsyncRedactionsClient, RedactionsClient from .signatures.client import AsyncSignaturesClient, SignaturesClient @@ -30,8 +32,10 @@ def __init__(self, *, client_wrapper: SyncClientWrapper): self._raw_client = RawDocClient(client_wrapper=client_wrapper) self._client_wrapper = client_wrapper self._annotations: typing.Optional[AnnotationsClient] = None + self._attachments: typing.Optional[AttachmentsClient] = None self._forms: typing.Optional[FormsClient] = None self._metadata: typing.Optional[MetadataClient] = None + self._outline: typing.Optional[OutlineClient] = None self._pages: typing.Optional[PagesClient] = None self._redactions: typing.Optional[RedactionsClient] = None self._signatures: typing.Optional[SignaturesClient] = None @@ -96,7 +100,7 @@ def changes( request_options: typing.Optional[RequestOptions] = None, ) -> DocChanges200Response: """ - Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. + Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`, outline `doc.outline.modify`, pages `doc.pages.assemble`, embedded files `doc.attachments.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork, a PDF whose pages come in) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. Parameters ---------- @@ -337,6 +341,14 @@ def annotations(self): self._annotations = AnnotationsClient(client_wrapper=self._client_wrapper) return self._annotations + @property + def attachments(self): + if self._attachments is None: + from .attachments.client import AttachmentsClient # noqa: E402 + + self._attachments = AttachmentsClient(client_wrapper=self._client_wrapper) + return self._attachments + @property def forms(self): if self._forms is None: @@ -353,6 +365,14 @@ def metadata(self): self._metadata = MetadataClient(client_wrapper=self._client_wrapper) return self._metadata + @property + def outline(self): + if self._outline is None: + from .outline.client import OutlineClient # noqa: E402 + + self._outline = OutlineClient(client_wrapper=self._client_wrapper) + return self._outline + @property def pages(self): if self._pages is None: @@ -391,8 +411,10 @@ def __init__(self, *, client_wrapper: AsyncClientWrapper): self._raw_client = AsyncRawDocClient(client_wrapper=client_wrapper) self._client_wrapper = client_wrapper self._annotations: typing.Optional[AsyncAnnotationsClient] = None + self._attachments: typing.Optional[AsyncAttachmentsClient] = None self._forms: typing.Optional[AsyncFormsClient] = None self._metadata: typing.Optional[AsyncMetadataClient] = None + self._outline: typing.Optional[AsyncOutlineClient] = None self._pages: typing.Optional[AsyncPagesClient] = None self._redactions: typing.Optional[AsyncRedactionsClient] = None self._signatures: typing.Optional[AsyncSignaturesClient] = None @@ -467,7 +489,7 @@ async def changes( request_options: typing.Optional[RequestOptions] = None, ) -> DocChanges200Response: """ - Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. + Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`, outline `doc.outline.modify`, pages `doc.pages.assemble`, embedded files `doc.attachments.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork, a PDF whose pages come in) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. Parameters ---------- @@ -750,6 +772,14 @@ def annotations(self): self._annotations = AsyncAnnotationsClient(client_wrapper=self._client_wrapper) return self._annotations + @property + def attachments(self): + if self._attachments is None: + from .attachments.client import AsyncAttachmentsClient # noqa: E402 + + self._attachments = AsyncAttachmentsClient(client_wrapper=self._client_wrapper) + return self._attachments + @property def forms(self): if self._forms is None: @@ -766,6 +796,14 @@ def metadata(self): self._metadata = AsyncMetadataClient(client_wrapper=self._client_wrapper) return self._metadata + @property + def outline(self): + if self._outline is None: + from .outline.client import AsyncOutlineClient # noqa: E402 + + self._outline = AsyncOutlineClient(client_wrapper=self._client_wrapper) + return self._outline + @property def pages(self): if self._pages is None: diff --git a/src/cloudpdf/doc/outline/__init__.py b/src/cloudpdf/doc/outline/__init__.py new file mode 100644 index 0000000..5cde020 --- /dev/null +++ b/src/cloudpdf/doc/outline/__init__.py @@ -0,0 +1,4 @@ +# This file was auto-generated by Fern from our API Definition. + +# isort: skip_file + diff --git a/src/cloudpdf/doc/outline/client.py b/src/cloudpdf/doc/outline/client.py new file mode 100644 index 0000000..afd4955 --- /dev/null +++ b/src/cloudpdf/doc/outline/client.py @@ -0,0 +1,136 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper +from ...core.request_options import RequestOptions +from ...types.doc_outline_get200response import DocOutlineGet200Response +from .raw_client import AsyncRawOutlineClient, RawOutlineClient + + +class OutlineClient: + def __init__(self, *, client_wrapper: SyncClientWrapper): + self._raw_client = RawOutlineClient(client_wrapper=client_wrapper) + + @property + def with_raw_response(self) -> RawOutlineClient: + """ + Retrieves a raw implementation of this client that returns raw responses. + + Returns + ------- + RawOutlineClient + """ + return self._raw_client + + def get( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocOutlineGet200Response: + """ + Parameters + ---------- + doc_id : str + + layer_name : str + + 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 + ------- + DocOutlineGet200Response + OK + + Examples + -------- + from cloudpdf import CloudPDFClient + + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", + ) + client.doc.outline.get( + doc_id="docId", + layer_name="layerName", + ) + """ + _response = self._raw_client.get( + doc_id, layer_name, document_password=document_password, request_options=request_options + ) + return _response.data + + +class AsyncOutlineClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._raw_client = AsyncRawOutlineClient(client_wrapper=client_wrapper) + + @property + def with_raw_response(self) -> AsyncRawOutlineClient: + """ + Retrieves a raw implementation of this client that returns raw responses. + + Returns + ------- + AsyncRawOutlineClient + """ + return self._raw_client + + async def get( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> DocOutlineGet200Response: + """ + Parameters + ---------- + doc_id : str + + layer_name : str + + 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 + ------- + DocOutlineGet200Response + 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.outline.get( + doc_id="docId", + layer_name="layerName", + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.get( + doc_id, layer_name, document_password=document_password, request_options=request_options + ) + return _response.data diff --git a/src/cloudpdf/doc/outline/raw_client.py b/src/cloudpdf/doc/outline/raw_client.py new file mode 100644 index 0000000..b1d1a1a --- /dev/null +++ b/src/cloudpdf/doc/outline/raw_client.py @@ -0,0 +1,153 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing +from json.decoder import JSONDecodeError + +from ...core.api_error import ApiError +from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper +from ...core.http_response import AsyncHttpResponse, HttpResponse +from ...core.jsonable_encoder import encode_path_param +from ...core.parse_error import ParsingError +from ...core.pydantic_utilities import parse_obj_as +from ...core.request_options import RequestOptions +from ...errors.not_found_error import NotFoundError +from ...types.doc_outline_get200response import DocOutlineGet200Response +from pydantic import ValidationError + + +class RawOutlineClient: + def __init__(self, *, client_wrapper: SyncClientWrapper): + self._client_wrapper = client_wrapper + + def get( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[DocOutlineGet200Response]: + """ + Parameters + ---------- + doc_id : str + + layer_name : str + + 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[DocOutlineGet200Response] + OK + """ + _response = self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/outline", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocOutlineGet200Response, + parse_obj_as( + type_=DocOutlineGet200Response, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + 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) + + +class AsyncRawOutlineClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._client_wrapper = client_wrapper + + async def get( + self, + doc_id: str, + layer_name: str, + *, + document_password: typing.Optional[str] = None, + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[DocOutlineGet200Response]: + """ + Parameters + ---------- + doc_id : str + + layer_name : str + + 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[DocOutlineGet200Response] + OK + """ + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/outline", + method="GET", + headers={ + "X-Document-Password": str(document_password) if document_password is not None else None, + }, + request_options=request_options, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DocOutlineGet200Response, + parse_obj_as( + type_=DocOutlineGet200Response, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + 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) diff --git a/src/cloudpdf/doc/pages/client.py b/src/cloudpdf/doc/pages/client.py index c30f2ac..e1bc706 100644 --- a/src/cloudpdf/doc/pages/client.py +++ b/src/cloudpdf/doc/pages/client.py @@ -2,28 +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_remove_name200response import DocPagesRemoveName200Response from ...types.doc_pages_remove_name_request import DocPagesRemoveNameRequest -from ...types.doc_pages_reorder200response import DocPagesReorder200Response -from ...types.doc_pages_rotate200response import DocPagesRotate200Response -from ...types.doc_pages_rotate_request import DocPagesRotateRequest from ...types.doc_pages_set_name200response import DocPagesSetName200Response from ...types.doc_pages_set_name_request import DocPagesSetNameRequest from ...types.doc_pages_set_scale200response import DocPagesSetScale200Response from ...types.doc_pages_viewports200response import DocPagesViewports200Response -from ...types.page_position import PagePosition -from ...types.page_ref import PageRef from .raw_client import AsyncRawPagesClient, RawPagesClient from .types.doc_pages_set_scale_request_measure import DocPagesSetScaleRequestMeasure @@ -157,63 +146,6 @@ def viewports( ) return _response.data - def delete( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesDeleteRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesDelete200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesDeleteRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesDelete200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.delete( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - """ - _response = self._raw_client.delete( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - def extract( self, doc_id: str, @@ -224,7 +156,7 @@ def extract( 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 `{"pages": PageRef[]}`; the response body is the new PDF. + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[], "flatten"?: {"usage"?: "display" | "print"}, "includeAnnotations"?: boolean, "includeFormFields"?: boolean}`; the response body is the new PDF. With `flatten` the copy is the pages as they draw for `usage` (`"print"`: a print copy): the annotations and form fields painted in, nothing interactive left, layers in their state for the usage. A flattened copy takes `doc.download` or `doc.download.flattened`, and paints only what the caller may read; `includeAnnotations` and `includeFormFields` choose what it paints, and are refused without `flatten`. Parameters ---------- @@ -243,593 +175,37 @@ def extract( 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, - layer_name: str, - *, - request: DocPagesFlattenRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesFlatten200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesFlattenRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesFlatten200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.flatten( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - """ - _response = self._raw_client.flatten( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - def insert( - self, - doc_id: str, - layer_name: str, - *, - file: core.File, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesInsert200Response: - """ - Multipart: a JSON `body` part `{"position"?: PagePosition, "resources": {"source": ""}}` (position omitted → the end), and the standalone PDF whose pages are copied in as the part `resource:`. 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - 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, - idempotency_key=idempotency_key, - 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, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesInsertBlank200Response: - """ - Body is `{"size": {"width", "height"}, "count"?, "position"?}` — size in PDF points, count in [1, 100], `position` a `PagePosition` (omitted → the end). - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - 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, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - def set_name( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesSetNameRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesSetName200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesSetNameRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesSetName200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.set_name( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - """ - _response = self._raw_client.set_name( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - def remove_name( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesRemoveNameRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesRemoveName200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesRemoveNameRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesRemoveName200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.remove_name( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - """ - _response = self._raw_client.remove_name( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - def reorder( - self, - doc_id: str, - layer_name: str, - *, - pages: typing.Sequence[PageRef], - position: PagePosition, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesReorder200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - pages : typing.Sequence[PageRef] - - position : PagePosition - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesReorder200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient, PageRef - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.reorder( - doc_id="docId", - layer_name="layerName", - pages=[ - PageRef( - kind="objectNumber", - object_number=1, - ) - ], - position="start", - ) - """ - _response = self._raw_client.reorder( - doc_id, - layer_name, - pages=pages, - position=position, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - def rotate( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesRotateRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesRotate200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesRotateRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesRotate200Response - OK - - Examples - -------- - from cloudpdf import CloudPDFClient - - client = CloudPDFClient( - token="YOUR_TOKEN", - base_url="https://yourhost.com/path/to/api", - ) - client.doc.pages.rotate( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - """ - _response = self._raw_client.rotate( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data - - -class AsyncPagesClient: - def __init__(self, *, client_wrapper: AsyncClientWrapper): - self._raw_client = AsyncRawPagesClient(client_wrapper=client_wrapper) - - @property - def with_raw_response(self) -> AsyncRawPagesClient: - """ - Retrieves a raw implementation of this client that returns raw responses. - - Returns - ------- - AsyncRawPagesClient - """ - return self._raw_client - - async def set_scale( - self, - doc_id: str, - layer_name: str, - page_key: str, - *, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - measure: typing.Optional[DocPagesSetScaleRequestMeasure] = OMIT, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesSetScale200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - page_key : str - The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - measure : typing.Optional[DocPagesSetScaleRequestMeasure] - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - DocPagesSetScale200Response - 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.set_scale( - doc_id="docId", - layer_name="layerName", - page_key="pageKey", - ) - - - asyncio.run(main()) - """ - _response = await self._raw_client.set_scale( - doc_id, - layer_name, - page_key, - document_password=document_password, - idempotency_key=idempotency_key, - measure=measure, - request_options=request_options, - ) - return _response.data - - async def viewports( - self, - doc_id: str, - layer_name: str, - page_key: str, - *, - document_password: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesViewports200Response: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - page_key : str - The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - - 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 - ------- - DocPagesViewports200Response - 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.viewports( - doc_id="docId", - layer_name="layerName", - page_key="pageKey", - ) + OK + Examples + -------- + from cloudpdf import CloudPDFClient - asyncio.run(main()) - """ - _response = await self._raw_client.viewports( - doc_id, layer_name, page_key, document_password=document_password, request_options=request_options + client = CloudPDFClient( + token="YOUR_TOKEN", + base_url="https://yourhost.com/path/to/api", ) - return _response.data + 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 - async def delete( + def flatten( self, doc_id: str, layer_name: str, *, - request: DocPagesDeleteRequest, + request: DocPagesFlattenRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesDelete200Response: + ) -> DocPagesFlatten200Response: """ Parameters ---------- @@ -837,7 +213,7 @@ async def delete( layer_name : str - request : DocPagesDeleteRequest + request : DocPagesFlattenRequest 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. @@ -850,32 +226,24 @@ async def delete( Returns ------- - DocPagesDelete200Response + DocPagesFlatten200Response OK Examples -------- - import asyncio - - from cloudpdf import AsyncCloudPDFClient + from cloudpdf import CloudPDFClient - client = AsyncCloudPDFClient( + client = CloudPDFClient( token="YOUR_TOKEN", base_url="https://yourhost.com/path/to/api", ) - - - async def main() -> None: - await client.doc.pages.delete( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - - - asyncio.run(main()) + client.doc.pages.flatten( + doc_id="docId", + layer_name="layerName", + request={"key": "value"}, + ) """ - _response = await self._raw_client.delete( + _response = self._raw_client.flatten( doc_id, layer_name, request=request, @@ -885,75 +253,73 @@ async def main() -> None: ) return _response.data - async def extract( + def set_name( self, doc_id: str, layer_name: str, *, - request: DocPagesExtractRequest, + request: DocPagesSetNameRequest, document_password: typing.Optional[str] = None, + idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> typing.AsyncIterator[bytes]: + ) -> DocPagesSetName200Response: """ - A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[]}`; the response body is the new PDF. - Parameters ---------- doc_id : str layer_name : str - request : DocPagesExtractRequest + request : DocPagesSetNameRequest 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. + idempotency_key : typing.Optional[str] + Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. + 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. + Request-specific configuration. Returns ------- - typing.AsyncIterator[bytes] + DocPagesSetName200Response OK Examples -------- - import asyncio - - from cloudpdf import AsyncCloudPDFClient + from cloudpdf import CloudPDFClient - client = AsyncCloudPDFClient( + client = CloudPDFClient( 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()) + client.doc.pages.set_name( + doc_id="docId", + layer_name="layerName", + request={"key": "value"}, + ) """ - 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 + _response = self._raw_client.set_name( + doc_id, + layer_name, + request=request, + document_password=document_password, + idempotency_key=idempotency_key, + request_options=request_options, + ) + return _response.data - async def flatten( + def remove_name( self, doc_id: str, layer_name: str, *, - request: DocPagesFlattenRequest, + request: DocPagesRemoveNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesFlatten200Response: + ) -> DocPagesRemoveName200Response: """ Parameters ---------- @@ -961,7 +327,7 @@ async def flatten( layer_name : str - request : DocPagesFlattenRequest + request : DocPagesRemoveNameRequest 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. @@ -974,32 +340,24 @@ async def flatten( Returns ------- - DocPagesFlatten200Response + DocPagesRemoveName200Response OK Examples -------- - import asyncio - - from cloudpdf import AsyncCloudPDFClient + from cloudpdf import CloudPDFClient - client = AsyncCloudPDFClient( + client = CloudPDFClient( token="YOUR_TOKEN", base_url="https://yourhost.com/path/to/api", ) - - - async def main() -> None: - await client.doc.pages.flatten( - doc_id="docId", - layer_name="layerName", - request={"key": "value"}, - ) - - - asyncio.run(main()) + client.doc.pages.remove_name( + doc_id="docId", + layer_name="layerName", + request={"key": "value"}, + ) """ - _response = await self._raw_client.flatten( + _response = self._raw_client.remove_name( doc_id, layer_name, request=request, @@ -1009,27 +367,42 @@ async def main() -> None: ) return _response.data - async def insert( + +class AsyncPagesClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._raw_client = AsyncRawPagesClient(client_wrapper=client_wrapper) + + @property + def with_raw_response(self) -> AsyncRawPagesClient: + """ + Retrieves a raw implementation of this client that returns raw responses. + + Returns + ------- + AsyncRawPagesClient + """ + return self._raw_client + + async def set_scale( self, doc_id: str, layer_name: str, + page_key: str, *, - file: core.File, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, + measure: typing.Optional[DocPagesSetScaleRequestMeasure] = OMIT, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesInsert200Response: + ) -> DocPagesSetScale200Response: """ - Multipart: a JSON `body` part `{"position"?: PagePosition, "resources": {"source": ""}}` (position omitted → the end), and the standalone PDF whose pages are copied in as the part `resource:`. 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 + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. 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. @@ -1037,12 +410,14 @@ async def insert( idempotency_key : typing.Optional[str] Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. + measure : typing.Optional[DocPagesSetScaleRequestMeasure] + request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- - DocPagesInsert200Response + DocPagesSetScale200Response OK Examples @@ -1058,57 +433,54 @@ async def insert( async def main() -> None: - await client.doc.pages.insert( + await client.doc.pages.set_scale( doc_id="docId", layer_name="layerName", + page_key="pageKey", ) asyncio.run(main()) """ - _response = await self._raw_client.insert( + _response = await self._raw_client.set_scale( doc_id, layer_name, - file=file, + page_key, document_password=document_password, idempotency_key=idempotency_key, + measure=measure, request_options=request_options, ) return _response.data - async def insert_blank( + async def viewports( self, doc_id: str, layer_name: str, + page_key: str, *, - request: DocPagesInsertBlankRequest, document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesInsertBlank200Response: + ) -> DocPagesViewports200Response: """ - Body is `{"size": {"width", "height"}, "count"?, "position"?}` — size in PDF points, count in [1, 100], `position` a `PagePosition` (omitted → the end). - Parameters ---------- doc_id : str layer_name : str - request : DocPagesInsertBlankRequest + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. 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. - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- - DocPagesInsertBlank200Response + DocPagesViewports200Response OK Examples @@ -1124,56 +496,49 @@ async def insert_blank( async def main() -> None: - await client.doc.pages.insert_blank( + await client.doc.pages.viewports( doc_id="docId", layer_name="layerName", - request={"key": "value"}, + page_key="pageKey", ) asyncio.run(main()) """ - _response = await self._raw_client.insert_blank( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, + _response = await self._raw_client.viewports( + doc_id, layer_name, page_key, document_password=document_password, request_options=request_options ) return _response.data - async def set_name( + async def extract( self, doc_id: str, layer_name: str, *, - request: DocPagesSetNameRequest, + request: DocPagesExtractRequest, document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesSetName200Response: + ) -> typing.AsyncIterator[bytes]: """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[], "flatten"?: {"usage"?: "display" | "print"}, "includeAnnotations"?: boolean, "includeFormFields"?: boolean}`; the response body is the new PDF. With `flatten` the copy is the pages as they draw for `usage` (`"print"`: a print copy): the annotations and form fields painted in, nothing interactive left, layers in their state for the usage. A flattened copy takes `doc.download` or `doc.download.flattened`, and paints only what the caller may read; `includeAnnotations` and `includeFormFields` choose what it paints, and are refused without `flatten`. + Parameters ---------- doc_id : str layer_name : str - request : DocPagesSetNameRequest + 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. - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - request_options : typing.Optional[RequestOptions] - Request-specific configuration. + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. Returns ------- - DocPagesSetName200Response + typing.AsyncIterator[bytes] OK Examples @@ -1189,35 +554,31 @@ async def set_name( async def main() -> None: - await client.doc.pages.set_name( + await client.doc.pages.extract( doc_id="docId", layer_name="layerName", - request={"key": "value"}, + request={"string": {"key": "value"}}, ) asyncio.run(main()) """ - _response = await self._raw_client.set_name( - doc_id, - layer_name, - request=request, - document_password=document_password, - idempotency_key=idempotency_key, - request_options=request_options, - ) - return _response.data + 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 remove_name( + async def flatten( self, doc_id: str, layer_name: str, *, - request: DocPagesRemoveNameRequest, + request: DocPagesFlattenRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesRemoveName200Response: + ) -> DocPagesFlatten200Response: """ Parameters ---------- @@ -1225,7 +586,7 @@ async def remove_name( layer_name : str - request : DocPagesRemoveNameRequest + request : DocPagesFlattenRequest 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. @@ -1238,7 +599,7 @@ async def remove_name( Returns ------- - DocPagesRemoveName200Response + DocPagesFlatten200Response OK Examples @@ -1254,7 +615,7 @@ async def remove_name( async def main() -> None: - await client.doc.pages.remove_name( + await client.doc.pages.flatten( doc_id="docId", layer_name="layerName", request={"key": "value"}, @@ -1263,7 +624,7 @@ async def main() -> None: asyncio.run(main()) """ - _response = await self._raw_client.remove_name( + _response = await self._raw_client.flatten( doc_id, layer_name, request=request, @@ -1273,17 +634,16 @@ async def main() -> None: ) return _response.data - async def reorder( + async def set_name( self, doc_id: str, layer_name: str, *, - pages: typing.Sequence[PageRef], - position: PagePosition, + request: DocPagesSetNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesReorder200Response: + ) -> DocPagesSetName200Response: """ Parameters ---------- @@ -1291,9 +651,7 @@ async def reorder( layer_name : str - pages : typing.Sequence[PageRef] - - position : PagePosition + request : DocPagesSetNameRequest 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. @@ -1306,14 +664,14 @@ async def reorder( Returns ------- - DocPagesReorder200Response + DocPagesSetName200Response OK Examples -------- import asyncio - from cloudpdf import AsyncCloudPDFClient, PageRef + from cloudpdf import AsyncCloudPDFClient client = AsyncCloudPDFClient( token="YOUR_TOKEN", @@ -1322,42 +680,35 @@ async def reorder( async def main() -> None: - await client.doc.pages.reorder( + await client.doc.pages.set_name( doc_id="docId", layer_name="layerName", - pages=[ - PageRef( - kind="objectNumber", - object_number=1, - ) - ], - position="start", + request={"key": "value"}, ) asyncio.run(main()) """ - _response = await self._raw_client.reorder( + _response = await self._raw_client.set_name( doc_id, layer_name, - pages=pages, - position=position, + request=request, document_password=document_password, idempotency_key=idempotency_key, request_options=request_options, ) return _response.data - async def rotate( + async def remove_name( self, doc_id: str, layer_name: str, *, - request: DocPagesRotateRequest, + request: DocPagesRemoveNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> DocPagesRotate200Response: + ) -> DocPagesRemoveName200Response: """ Parameters ---------- @@ -1365,7 +716,7 @@ async def rotate( layer_name : str - request : DocPagesRotateRequest + request : DocPagesRemoveNameRequest 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. @@ -1378,7 +729,7 @@ async def rotate( Returns ------- - DocPagesRotate200Response + DocPagesRemoveName200Response OK Examples @@ -1394,7 +745,7 @@ async def rotate( async def main() -> None: - await client.doc.pages.rotate( + await client.doc.pages.remove_name( doc_id="docId", layer_name="layerName", request={"key": "value"}, @@ -1403,7 +754,7 @@ async def main() -> None: asyncio.run(main()) """ - _response = await self._raw_client.rotate( + _response = await self._raw_client.remove_name( doc_id, layer_name, request=request, diff --git a/src/cloudpdf/doc/pages/raw_client.py b/src/cloudpdf/doc/pages/raw_client.py index 648e9de..8972256 100644 --- a/src/cloudpdf/doc/pages/raw_client.py +++ b/src/cloudpdf/doc/pages/raw_client.py @@ -4,7 +4,6 @@ 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 @@ -15,25 +14,15 @@ from ...core.serialization import convert_and_respect_annotation_metadata from ...errors.bad_request_error import BadRequestError 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_remove_name200response import DocPagesRemoveName200Response from ...types.doc_pages_remove_name_request import DocPagesRemoveNameRequest -from ...types.doc_pages_reorder200response import DocPagesReorder200Response -from ...types.doc_pages_rotate200response import DocPagesRotate200Response -from ...types.doc_pages_rotate_request import DocPagesRotateRequest from ...types.doc_pages_set_name200response import DocPagesSetName200Response from ...types.doc_pages_set_name_request import DocPagesSetNameRequest from ...types.doc_pages_set_scale200response import DocPagesSetScale200Response from ...types.doc_pages_viewports200response import DocPagesViewports200Response -from ...types.page_position import PagePosition -from ...types.page_ref import PageRef from .types.doc_pages_set_scale_request_measure import DocPagesSetScaleRequestMeasure from pydantic import ValidationError @@ -207,92 +196,6 @@ def viewports( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def delete( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesDeleteRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesDelete200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesDeleteRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - HttpResponse[DocPagesDelete200Response] - OK - """ - _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/delete", - method="POST", - json=request, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesDelete200Response, - parse_obj_as( - type_=DocPagesDelete200Response, # 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) - @contextlib.contextmanager def extract( self, @@ -304,7 +207,7 @@ def extract( 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 `{"pages": PageRef[]}`; the response body is the new PDF. + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[], "flatten"?: {"usage"?: "display" | "print"}, "includeAnnotations"?: boolean, "includeFormFields"?: boolean}`; the response body is the new PDF. With `flatten` the copy is the pages as they draw for `usage` (`"print"`: a print copy): the annotations and form fields painted in, nothing interactive left, layers in their state for the usage. A flattened copy takes `doc.download` or `doc.download.flattened`, and paints only what the caller may read; `includeAnnotations` and `includeFormFields` choose what it paints, and are refused without `flatten`. Parameters ---------- @@ -469,27 +372,24 @@ def flatten( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def insert( + def set_name( self, doc_id: str, layer_name: str, *, - file: core.File, + request: DocPagesSetNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesInsert200Response]: + ) -> HttpResponse[DocPagesSetName200Response]: """ - Multipart: a JSON `body` part `{"position"?: PagePosition, "resources": {"source": ""}}` (position omitted → the end), and the standalone PDF whose pages are copied in as the part `resource:`. 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 + request : DocPagesSetNameRequest 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. @@ -502,30 +402,27 @@ def insert( Returns ------- - HttpResponse[DocPagesInsert200Response] + HttpResponse[DocPagesSetName200Response] OK """ _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/insert", + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/names", method="POST", - data={}, - files={ - "file": file, - }, + json=request, headers={ + "content-type": "application/json", "X-Document-Password": str(document_password) if document_password is not None else None, "Idempotency-Key": str(idempotency_key) if idempotency_key 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, + DocPagesSetName200Response, parse_obj_as( - type_=DocPagesInsert200Response, # type: ignore + type_=DocPagesSetName200Response, # type: ignore object_=_response.json(), ), ) @@ -561,26 +458,24 @@ def insert( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def insert_blank( + def remove_name( self, doc_id: str, layer_name: str, *, - request: DocPagesInsertBlankRequest, + request: DocPagesRemoveNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesInsertBlank200Response]: + ) -> HttpResponse[DocPagesRemoveName200Response]: """ - Body is `{"size": {"width", "height"}, "count"?, "position"?}` — size in PDF points, count in [1, 100], `position` a `PagePosition` (omitted → the end). - Parameters ---------- doc_id : str layer_name : str - request : DocPagesInsertBlankRequest + request : DocPagesRemoveNameRequest 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. @@ -593,11 +488,11 @@ def insert_blank( Returns ------- - HttpResponse[DocPagesInsertBlank200Response] + HttpResponse[DocPagesRemoveName200Response] 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", + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/names/delete", method="POST", json=request, headers={ @@ -611,9 +506,9 @@ def insert_blank( try: if 200 <= _response.status_code < 300: _data = typing.cast( - DocPagesInsertBlank200Response, + DocPagesRemoveName200Response, parse_obj_as( - type_=DocPagesInsertBlank200Response, # type: ignore + type_=DocPagesRemoveName200Response, # type: ignore object_=_response.json(), ), ) @@ -649,16 +544,22 @@ def insert_blank( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def set_name( + +class AsyncRawPagesClient: + def __init__(self, *, client_wrapper: AsyncClientWrapper): + self._client_wrapper = client_wrapper + + async def set_scale( self, doc_id: str, layer_name: str, + page_key: str, *, - request: DocPagesSetNameRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, + measure: typing.Optional[DocPagesSetScaleRequestMeasure] = OMIT, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesSetName200Response]: + ) -> AsyncHttpResponse[DocPagesSetScale200Response]: """ Parameters ---------- @@ -666,7 +567,8 @@ def set_name( layer_name : str - request : DocPagesSetNameRequest + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. 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. @@ -674,18 +576,24 @@ def set_name( idempotency_key : typing.Optional[str] Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. + measure : typing.Optional[DocPagesSetScaleRequestMeasure] + request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- - HttpResponse[DocPagesSetName200Response] + AsyncHttpResponse[DocPagesSetScale200Response] OK """ - _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/names", - method="POST", - json=request, + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/{encode_path_param(page_key)}/scale", + method="PUT", + json={ + "measure": convert_and_respect_annotation_metadata( + object_=measure, annotation=typing.Optional[DocPagesSetScaleRequestMeasure], direction="write" + ), + }, headers={ "content-type": "application/json", "X-Document-Password": str(document_password) if document_password is not None else None, @@ -697,13 +605,13 @@ def set_name( try: if 200 <= _response.status_code < 300: _data = typing.cast( - DocPagesSetName200Response, + DocPagesSetScale200Response, parse_obj_as( - type_=DocPagesSetName200Response, # type: ignore + type_=DocPagesSetScale200Response, # type: ignore object_=_response.json(), ), ) - return HttpResponse(response=_response, data=_data) + return AsyncHttpResponse(response=_response, data=_data) if _response.status_code == 400: raise BadRequestError( headers=dict(_response.headers), @@ -735,16 +643,15 @@ def set_name( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def remove_name( + async def viewports( self, doc_id: str, layer_name: str, + page_key: str, *, - request: DocPagesRemoveNameRequest, document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesRemoveName200Response]: + ) -> AsyncHttpResponse[DocPagesViewports200Response]: """ Parameters ---------- @@ -752,55 +659,38 @@ def remove_name( layer_name : str - request : DocPagesRemoveNameRequest + page_key : str + The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. 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. - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- - HttpResponse[DocPagesRemoveName200Response] + AsyncHttpResponse[DocPagesViewports200Response] OK """ - _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/names/delete", - method="POST", - json=request, + _response = await self._client_wrapper.httpx_client.request( + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/{encode_path_param(page_key)}/viewports", + method="GET", headers={ - "content-type": "application/json", "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, }, request_options=request_options, - omit=OMIT, ) try: if 200 <= _response.status_code < 300: _data = typing.cast( - DocPagesRemoveName200Response, + DocPagesViewports200Response, parse_obj_as( - type_=DocPagesRemoveName200Response, # type: ignore + type_=DocPagesViewports200Response, # 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(), - ), - ), - ) + return AsyncHttpResponse(response=_response, data=_data) if _response.status_code == 404: raise NotFoundError( headers=dict(_response.headers), @@ -821,484 +711,49 @@ def remove_name( ) raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json) - def reorder( + @contextlib.asynccontextmanager + async def extract( self, doc_id: str, layer_name: str, *, - pages: typing.Sequence[PageRef], - position: PagePosition, + request: DocPagesExtractRequest, document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesReorder200Response]: + ) -> typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]]: """ + A read, not a mutation: the source document is untouched and no event is published. Body is `{"pages": PageRef[], "flatten"?: {"usage"?: "display" | "print"}, "includeAnnotations"?: boolean, "includeFormFields"?: boolean}`; the response body is the new PDF. With `flatten` the copy is the pages as they draw for `usage` (`"print"`: a print copy): the annotations and form fields painted in, nothing interactive left, layers in their state for the usage. A flattened copy takes `doc.download` or `doc.download.flattened`, and paints only what the caller may read; `includeAnnotations` and `includeFormFields` choose what it paints, and are refused without `flatten`. + Parameters ---------- doc_id : str layer_name : str - pages : typing.Sequence[PageRef] - - position : PagePosition + 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. - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - request_options : typing.Optional[RequestOptions] - Request-specific configuration. + Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response. Returns ------- - HttpResponse[DocPagesReorder200Response] + typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]] OK """ - _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/reorder", + 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={ - "pages": convert_and_respect_annotation_metadata( - object_=pages, annotation=typing.Sequence[PageRef], direction="write" - ), - "position": convert_and_respect_annotation_metadata( - object_=position, annotation=PagePosition, direction="write" - ), - }, + json=request, headers={ "content-type": "application/json", "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, }, request_options=request_options, omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesReorder200Response, - parse_obj_as( - type_=DocPagesReorder200Response, # 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 rotate( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesRotateRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[DocPagesRotate200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesRotateRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - HttpResponse[DocPagesRotate200Response] - OK - """ - _response = self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/rotate", - method="POST", - json=request, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesRotate200Response, - parse_obj_as( - type_=DocPagesRotate200Response, # 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) - - -class AsyncRawPagesClient: - def __init__(self, *, client_wrapper: AsyncClientWrapper): - self._client_wrapper = client_wrapper - - async def set_scale( - self, - doc_id: str, - layer_name: str, - page_key: str, - *, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - measure: typing.Optional[DocPagesSetScaleRequestMeasure] = OMIT, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesSetScale200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - page_key : str - The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - measure : typing.Optional[DocPagesSetScaleRequestMeasure] - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - AsyncHttpResponse[DocPagesSetScale200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/{encode_path_param(page_key)}/scale", - method="PUT", - json={ - "measure": convert_and_respect_annotation_metadata( - object_=measure, annotation=typing.Optional[DocPagesSetScaleRequestMeasure], direction="write" - ), - }, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesSetScale200Response, - parse_obj_as( - type_=DocPagesSetScale200Response, # 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 viewports( - self, - doc_id: str, - layer_name: str, - page_key: str, - *, - document_password: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesViewports200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - page_key : str - The page's address, `obj:N`: the page's indirect object number, the durable identity every `PageLayout.ref` carries. Mirrors `annotKey` and `fieldKey`. - - 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[DocPagesViewports200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/{encode_path_param(page_key)}/viewports", - method="GET", - headers={ - "X-Document-Password": str(document_password) if document_password is not None else None, - }, - request_options=request_options, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesViewports200Response, - parse_obj_as( - type_=DocPagesViewports200Response, # type: ignore - object_=_response.json(), - ), - ) - return AsyncHttpResponse(response=_response, data=_data) - 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 delete( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesDeleteRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesDelete200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesDeleteRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - AsyncHttpResponse[DocPagesDelete200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/delete", - method="POST", - json=request, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesDelete200Response, - parse_obj_as( - type_=DocPagesDelete200Response, # 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) - - @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 `{"pages": PageRef[]}`; 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: + ) as _response: async def _stream() -> AsyncHttpResponse[typing.AsyncIterator[bytes]]: try: @@ -1310,241 +765,61 @@ async def _stream() -> AsyncHttpResponse[typing.AsyncIterator[bytes]]: ) 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, - layer_name: str, - *, - request: DocPagesFlattenRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesFlatten200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesFlattenRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - AsyncHttpResponse[DocPagesFlatten200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/flatten", - method="POST", - json=request, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesFlatten200Response, - parse_obj_as( - type_=DocPagesFlatten200Response, # 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( - self, - doc_id: str, - layer_name: str, - *, - file: core.File, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesInsert200Response]: - """ - Multipart: a JSON `body` part `{"position"?: PagePosition, "resources": {"source": ""}}` (position omitted → the end), and the standalone PDF whose pages are copied in as the part `resource:`. 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. + 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) - 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, - "Idempotency-Key": str(idempotency_key) if idempotency_key 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) + yield await _stream() - async def insert_blank( + async def flatten( self, doc_id: str, layer_name: str, *, - request: DocPagesInsertBlankRequest, + request: DocPagesFlattenRequest, document_password: typing.Optional[str] = None, idempotency_key: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesInsertBlank200Response]: + ) -> AsyncHttpResponse[DocPagesFlatten200Response]: """ - Body is `{"size": {"width", "height"}, "count"?, "position"?}` — size in PDF points, count in [1, 100], `position` a `PagePosition` (omitted → the end). - Parameters ---------- doc_id : str layer_name : str - request : DocPagesInsertBlankRequest + request : DocPagesFlattenRequest 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. @@ -1557,11 +832,11 @@ async def insert_blank( Returns ------- - AsyncHttpResponse[DocPagesInsertBlank200Response] + AsyncHttpResponse[DocPagesFlatten200Response] 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", + f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/flatten", method="POST", json=request, headers={ @@ -1575,9 +850,9 @@ async def insert_blank( try: if 200 <= _response.status_code < 300: _data = typing.cast( - DocPagesInsertBlank200Response, + DocPagesFlatten200Response, parse_obj_as( - type_=DocPagesInsertBlank200Response, # type: ignore + type_=DocPagesFlatten200Response, # type: ignore object_=_response.json(), ), ) @@ -1784,185 +1059,3 @@ async def remove_name( 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 reorder( - self, - doc_id: str, - layer_name: str, - *, - pages: typing.Sequence[PageRef], - position: PagePosition, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesReorder200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - pages : typing.Sequence[PageRef] - - position : PagePosition - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - AsyncHttpResponse[DocPagesReorder200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/reorder", - method="POST", - json={ - "pages": convert_and_respect_annotation_metadata( - object_=pages, annotation=typing.Sequence[PageRef], direction="write" - ), - "position": convert_and_respect_annotation_metadata( - object_=position, annotation=PagePosition, direction="write" - ), - }, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesReorder200Response, - parse_obj_as( - type_=DocPagesReorder200Response, # 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 rotate( - self, - doc_id: str, - layer_name: str, - *, - request: DocPagesRotateRequest, - document_password: typing.Optional[str] = None, - idempotency_key: typing.Optional[str] = None, - request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[DocPagesRotate200Response]: - """ - Parameters - ---------- - doc_id : str - - layer_name : str - - request : DocPagesRotateRequest - - 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. - - idempotency_key : typing.Optional[str] - Names the change: 1 to 255 printable ASCII characters. A retry under the same key on the same layer answers with what the first request committed, and changes nothing. - - request_options : typing.Optional[RequestOptions] - Request-specific configuration. - - Returns - ------- - AsyncHttpResponse[DocPagesRotate200Response] - OK - """ - _response = await self._client_wrapper.httpx_client.request( - f"v1/docs/{encode_path_param(doc_id)}/layers/{encode_path_param(layer_name)}/pages/rotate", - method="POST", - json=request, - headers={ - "content-type": "application/json", - "X-Document-Password": str(document_password) if document_password is not None else None, - "Idempotency-Key": str(idempotency_key) if idempotency_key is not None else None, - }, - request_options=request_options, - omit=OMIT, - ) - try: - if 200 <= _response.status_code < 300: - _data = typing.cast( - DocPagesRotate200Response, - parse_obj_as( - type_=DocPagesRotate200Response, # 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) diff --git a/src/cloudpdf/doc/raw_client.py b/src/cloudpdf/doc/raw_client.py index ce2e2ec..51f6930 100644 --- a/src/cloudpdf/doc/raw_client.py +++ b/src/cloudpdf/doc/raw_client.py @@ -17,7 +17,6 @@ from ..errors.content_too_large_error import ContentTooLargeError from ..errors.not_found_error import NotFoundError from ..types.doc_changes200response import DocChanges200Response -from ..types.doc_changes413response import DocChanges413Response from ..types.doc_head200response import DocHead200Response from ..types.doc_manifest200response import DocManifest200Response from ..types.doc_text200response import DocText200Response @@ -103,7 +102,7 @@ def changes( request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[DocChanges200Response]: """ - Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. + Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`, outline `doc.outline.modify`, pages `doc.pages.assemble`, embedded files `doc.attachments.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork, a PDF whose pages come in) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. Parameters ---------- @@ -186,9 +185,9 @@ def changes( raise ContentTooLargeError( headers=dict(_response.headers), body=typing.cast( - DocChanges413Response, + typing.Any, parse_obj_as( - type_=DocChanges413Response, # type: ignore + type_=typing.Any, # type: ignore object_=_response.json(), ), ), @@ -558,7 +557,7 @@ async def changes( request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[DocChanges200Response]: """ - Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. + Each change stands on its own and names itself by `opId`: a refused change rolls back alone, and the answer lists every change in order, applied with its result or refused with its error. Asked again under its `opId`, a change gets the same answer, refusals included; a different change under an answered `opId` is refused (IdempotencyKeyReused). `{ opId, undoOf }` undoes an earlier change of the caller, here or in an earlier request; an undo leaves alone what was changed since, and the undo of an undo redoes. A redaction, a flatten, a form repair or a completed signature ends undo for the changes before it (UndoUnavailable). Each op is checked against its own capability: annotation ops need `doc.annotate.modify`, form values `doc.forms.fill`, form structure `doc.forms.modify`, metadata `doc.metadata.modify`, outline `doc.outline.modify`, pages `doc.pages.assemble`, embedded files `doc.attachments.modify`. Bytes (a stamp's drawing, an attached file, a signature's artwork, a PDF whose pages come in) travel as multipart: a JSON `body` part, each op naming its files by role as `resources: { : '' }`, and each file as the part `resource:`. At most 64 changes per request and 512 ops per change. Parameters ---------- @@ -641,9 +640,9 @@ async def changes( raise ContentTooLargeError( headers=dict(_response.headers), body=typing.cast( - DocChanges413Response, + typing.Any, parse_obj_as( - type_=DocChanges413Response, # type: ignore + type_=typing.Any, # type: ignore object_=_response.json(), ), ), diff --git a/src/cloudpdf/errors/content_too_large_error.py b/src/cloudpdf/errors/content_too_large_error.py index 47cc2a6..28d4f48 100644 --- a/src/cloudpdf/errors/content_too_large_error.py +++ b/src/cloudpdf/errors/content_too_large_error.py @@ -3,9 +3,8 @@ import typing from ..core.api_error import ApiError -from ..types.doc_changes413response import DocChanges413Response class ContentTooLargeError(ApiError): - def __init__(self, body: DocChanges413Response, headers: typing.Optional[typing.Dict[str, str]] = None): + def __init__(self, body: typing.Any, headers: typing.Optional[typing.Dict[str, str]] = None): super().__init__(status_code=413, headers=headers, body=body) diff --git a/src/cloudpdf/types/__init__.py b/src/cloudpdf/types/__init__.py index 4c33517..fcfe520 100644 --- a/src/cloudpdf/types/__init__.py +++ b/src/cloudpdf/types/__init__.py @@ -464,7 +464,6 @@ from .annotation_draft_widget_text_align import AnnotationDraftWidgetTextAlign from .annotation_file_attachment import AnnotationFileAttachment from .annotation_file_attachment_blend_mode import AnnotationFileAttachmentBlendMode - from .annotation_file_attachment_file import AnnotationFileAttachmentFile from .annotation_file_attachment_icon import AnnotationFileAttachmentIcon from .annotation_file_attachment_rect import AnnotationFileAttachmentRect from .annotation_file_attachment_reply import AnnotationFileAttachmentReply @@ -1220,6 +1219,13 @@ from .annotation_unsupported_rect import AnnotationUnsupportedRect from .annotation_unsupported_reply import AnnotationUnsupportedReply from .annotation_unsupported_reply_type import AnnotationUnsupportedReplyType + from .attachment import Attachment + from .attachment_file_base import AttachmentFileBase + from .attachment_file_info import AttachmentFileInfo + from .attachment_list import AttachmentList + from .attachment_mutation_meta import AttachmentMutationMeta + from .attachment_ref import AttachmentRef + from .attachment_ref_kind import AttachmentRefKind from .cache_delta import CacheDelta from .cache_delta_pages_item import CacheDeltaPagesItem from .cache_delta_pages_item_cache import CacheDeltaPagesItemCache @@ -1230,6 +1236,9 @@ ChangeItem_AnnotationsReorder, ChangeItem_AnnotationsRestore, ChangeItem_AnnotationsUpdate, + ChangeItem_AttachmentsCreate, + ChangeItem_AttachmentsDelete, + ChangeItem_AttachmentsRestore, ChangeItem_FormsAddWidget, ChangeItem_FormsCreate, ChangeItem_FormsDelete, @@ -1248,6 +1257,17 @@ ChangeItem_FormsUpdateWidget, ChangeItem_MetadataUpdate, ChangeItem_MetadataUpdateCustom, + ChangeItem_OutlineCreate, + ChangeItem_OutlineDelete, + ChangeItem_OutlineMove, + ChangeItem_OutlineRestore, + ChangeItem_OutlineUpdate, + ChangeItem_PagesDelete, + ChangeItem_PagesInsert, + ChangeItem_PagesInsertBlank, + ChangeItem_PagesReorder, + ChangeItem_PagesRestore, + ChangeItem_PagesRotate, ChangeItem_Skipped, ) from .change_item_annotations_create import ChangeItemAnnotationsCreate @@ -1257,6 +1277,9 @@ from .change_item_annotations_update import ChangeItemAnnotationsUpdate from .change_item_annotations_update_appearance import ChangeItemAnnotationsUpdateAppearance from .change_item_annotations_update_appearance_action import ChangeItemAnnotationsUpdateAppearanceAction + from .change_item_attachments_create import ChangeItemAttachmentsCreate + from .change_item_attachments_delete import ChangeItemAttachmentsDelete + from .change_item_attachments_restore import ChangeItemAttachmentsRestore from .change_item_forms_add_widget import ChangeItemFormsAddWidget from .change_item_forms_create import ChangeItemFormsCreate from .change_item_forms_delete import ChangeItemFormsDelete @@ -1277,6 +1300,197 @@ from .change_item_forms_update_widget_appearance_action import ChangeItemFormsUpdateWidgetAppearanceAction from .change_item_metadata_update import ChangeItemMetadataUpdate from .change_item_metadata_update_custom import ChangeItemMetadataUpdateCustom + from .change_item_outline_create import ChangeItemOutlineCreate + from .change_item_outline_delete import ChangeItemOutlineDelete + from .change_item_outline_move import ChangeItemOutlineMove + from .change_item_outline_restore import ChangeItemOutlineRestore + from .change_item_outline_update import ChangeItemOutlineUpdate + from .change_item_pages_delete import ChangeItemPagesDelete + from .change_item_pages_delete_layout import ChangeItemPagesDeleteLayout + from .change_item_pages_delete_layout_named_pages_item import ChangeItemPagesDeleteLayoutNamedPagesItem + from .change_item_pages_delete_layout_named_pages_item_target import ( + ChangeItemPagesDeleteLayoutNamedPagesItemTarget, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_delete_layout_named_pages_item_target_dangling import ( + ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_delete_layout_named_pages_item_target_page import ( + ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_delete_layout_named_pages_item_target_template import ( + ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_delete_layout_pages_item import ChangeItemPagesDeleteLayoutPagesItem + from .change_item_pages_delete_layout_pages_item_boxes import ChangeItemPagesDeleteLayoutPagesItemBoxes + from .change_item_pages_delete_layout_pages_item_boxes_art import ChangeItemPagesDeleteLayoutPagesItemBoxesArt + from .change_item_pages_delete_layout_pages_item_boxes_bleed import ChangeItemPagesDeleteLayoutPagesItemBoxesBleed + from .change_item_pages_delete_layout_pages_item_boxes_crop import ChangeItemPagesDeleteLayoutPagesItemBoxesCrop + from .change_item_pages_delete_layout_pages_item_boxes_media import ChangeItemPagesDeleteLayoutPagesItemBoxesMedia + from .change_item_pages_delete_layout_pages_item_boxes_trim import ChangeItemPagesDeleteLayoutPagesItemBoxesTrim + from .change_item_pages_delete_layout_pages_item_pdf_crop_box import ChangeItemPagesDeleteLayoutPagesItemPdfCropBox + from .change_item_pages_delete_layout_pages_item_size import ChangeItemPagesDeleteLayoutPagesItemSize + from .change_item_pages_delete_layout_pages_item_tab_order import ChangeItemPagesDeleteLayoutPagesItemTabOrder + from .change_item_pages_insert import ChangeItemPagesInsert + from .change_item_pages_insert_blank import ChangeItemPagesInsertBlank + from .change_item_pages_insert_blank_layout import ChangeItemPagesInsertBlankLayout + from .change_item_pages_insert_blank_layout_named_pages_item import ChangeItemPagesInsertBlankLayoutNamedPagesItem + from .change_item_pages_insert_blank_layout_named_pages_item_target import ( + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_insert_blank_layout_named_pages_item_target_dangling import ( + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_insert_blank_layout_named_pages_item_target_page import ( + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_insert_blank_layout_named_pages_item_target_template import ( + ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_insert_blank_layout_pages_item import ChangeItemPagesInsertBlankLayoutPagesItem + from .change_item_pages_insert_blank_layout_pages_item_boxes import ChangeItemPagesInsertBlankLayoutPagesItemBoxes + from .change_item_pages_insert_blank_layout_pages_item_boxes_art import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt, + ) + from .change_item_pages_insert_blank_layout_pages_item_boxes_bleed import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed, + ) + from .change_item_pages_insert_blank_layout_pages_item_boxes_crop import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop, + ) + from .change_item_pages_insert_blank_layout_pages_item_boxes_media import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia, + ) + from .change_item_pages_insert_blank_layout_pages_item_boxes_trim import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim, + ) + from .change_item_pages_insert_blank_layout_pages_item_pdf_crop_box import ( + ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox, + ) + from .change_item_pages_insert_blank_layout_pages_item_size import ChangeItemPagesInsertBlankLayoutPagesItemSize + from .change_item_pages_insert_blank_layout_pages_item_tab_order import ( + ChangeItemPagesInsertBlankLayoutPagesItemTabOrder, + ) + from .change_item_pages_insert_layout import ChangeItemPagesInsertLayout + from .change_item_pages_insert_layout_named_pages_item import ChangeItemPagesInsertLayoutNamedPagesItem + from .change_item_pages_insert_layout_named_pages_item_target import ( + ChangeItemPagesInsertLayoutNamedPagesItemTarget, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_insert_layout_named_pages_item_target_dangling import ( + ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_insert_layout_named_pages_item_target_page import ( + ChangeItemPagesInsertLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_insert_layout_named_pages_item_target_template import ( + ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_insert_layout_pages_item import ChangeItemPagesInsertLayoutPagesItem + from .change_item_pages_insert_layout_pages_item_boxes import ChangeItemPagesInsertLayoutPagesItemBoxes + from .change_item_pages_insert_layout_pages_item_boxes_art import ChangeItemPagesInsertLayoutPagesItemBoxesArt + from .change_item_pages_insert_layout_pages_item_boxes_bleed import ChangeItemPagesInsertLayoutPagesItemBoxesBleed + from .change_item_pages_insert_layout_pages_item_boxes_crop import ChangeItemPagesInsertLayoutPagesItemBoxesCrop + from .change_item_pages_insert_layout_pages_item_boxes_media import ChangeItemPagesInsertLayoutPagesItemBoxesMedia + from .change_item_pages_insert_layout_pages_item_boxes_trim import ChangeItemPagesInsertLayoutPagesItemBoxesTrim + from .change_item_pages_insert_layout_pages_item_pdf_crop_box import ChangeItemPagesInsertLayoutPagesItemPdfCropBox + from .change_item_pages_insert_layout_pages_item_size import ChangeItemPagesInsertLayoutPagesItemSize + from .change_item_pages_insert_layout_pages_item_tab_order import ChangeItemPagesInsertLayoutPagesItemTabOrder + from .change_item_pages_reorder import ChangeItemPagesReorder + from .change_item_pages_reorder_layout import ChangeItemPagesReorderLayout + from .change_item_pages_reorder_layout_named_pages_item import ChangeItemPagesReorderLayoutNamedPagesItem + from .change_item_pages_reorder_layout_named_pages_item_target import ( + ChangeItemPagesReorderLayoutNamedPagesItemTarget, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_reorder_layout_named_pages_item_target_dangling import ( + ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_reorder_layout_named_pages_item_target_page import ( + ChangeItemPagesReorderLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_reorder_layout_named_pages_item_target_template import ( + ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_reorder_layout_pages_item import ChangeItemPagesReorderLayoutPagesItem + from .change_item_pages_reorder_layout_pages_item_boxes import ChangeItemPagesReorderLayoutPagesItemBoxes + from .change_item_pages_reorder_layout_pages_item_boxes_art import ChangeItemPagesReorderLayoutPagesItemBoxesArt + from .change_item_pages_reorder_layout_pages_item_boxes_bleed import ChangeItemPagesReorderLayoutPagesItemBoxesBleed + from .change_item_pages_reorder_layout_pages_item_boxes_crop import ChangeItemPagesReorderLayoutPagesItemBoxesCrop + from .change_item_pages_reorder_layout_pages_item_boxes_media import ChangeItemPagesReorderLayoutPagesItemBoxesMedia + from .change_item_pages_reorder_layout_pages_item_boxes_trim import ChangeItemPagesReorderLayoutPagesItemBoxesTrim + from .change_item_pages_reorder_layout_pages_item_pdf_crop_box import ( + ChangeItemPagesReorderLayoutPagesItemPdfCropBox, + ) + from .change_item_pages_reorder_layout_pages_item_size import ChangeItemPagesReorderLayoutPagesItemSize + from .change_item_pages_reorder_layout_pages_item_tab_order import ChangeItemPagesReorderLayoutPagesItemTabOrder + from .change_item_pages_restore import ChangeItemPagesRestore + from .change_item_pages_restore_layout import ChangeItemPagesRestoreLayout + from .change_item_pages_restore_layout_named_pages_item import ChangeItemPagesRestoreLayoutNamedPagesItem + from .change_item_pages_restore_layout_named_pages_item_target import ( + ChangeItemPagesRestoreLayoutNamedPagesItemTarget, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_restore_layout_named_pages_item_target_dangling import ( + ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_restore_layout_named_pages_item_target_page import ( + ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_restore_layout_named_pages_item_target_template import ( + ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_restore_layout_pages_item import ChangeItemPagesRestoreLayoutPagesItem + from .change_item_pages_restore_layout_pages_item_boxes import ChangeItemPagesRestoreLayoutPagesItemBoxes + from .change_item_pages_restore_layout_pages_item_boxes_art import ChangeItemPagesRestoreLayoutPagesItemBoxesArt + from .change_item_pages_restore_layout_pages_item_boxes_bleed import ChangeItemPagesRestoreLayoutPagesItemBoxesBleed + from .change_item_pages_restore_layout_pages_item_boxes_crop import ChangeItemPagesRestoreLayoutPagesItemBoxesCrop + from .change_item_pages_restore_layout_pages_item_boxes_media import ChangeItemPagesRestoreLayoutPagesItemBoxesMedia + from .change_item_pages_restore_layout_pages_item_boxes_trim import ChangeItemPagesRestoreLayoutPagesItemBoxesTrim + from .change_item_pages_restore_layout_pages_item_pdf_crop_box import ( + ChangeItemPagesRestoreLayoutPagesItemPdfCropBox, + ) + from .change_item_pages_restore_layout_pages_item_size import ChangeItemPagesRestoreLayoutPagesItemSize + from .change_item_pages_restore_layout_pages_item_tab_order import ChangeItemPagesRestoreLayoutPagesItemTabOrder + from .change_item_pages_rotate import ChangeItemPagesRotate + from .change_item_pages_rotate_layout import ChangeItemPagesRotateLayout + from .change_item_pages_rotate_layout_named_pages_item import ChangeItemPagesRotateLayoutNamedPagesItem + from .change_item_pages_rotate_layout_named_pages_item_target import ( + ChangeItemPagesRotateLayoutNamedPagesItemTarget, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template, + ) + from .change_item_pages_rotate_layout_named_pages_item_target_dangling import ( + ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling, + ) + from .change_item_pages_rotate_layout_named_pages_item_target_page import ( + ChangeItemPagesRotateLayoutNamedPagesItemTargetPage, + ) + from .change_item_pages_rotate_layout_named_pages_item_target_template import ( + ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate, + ) + from .change_item_pages_rotate_layout_pages_item import ChangeItemPagesRotateLayoutPagesItem + from .change_item_pages_rotate_layout_pages_item_boxes import ChangeItemPagesRotateLayoutPagesItemBoxes + from .change_item_pages_rotate_layout_pages_item_boxes_art import ChangeItemPagesRotateLayoutPagesItemBoxesArt + from .change_item_pages_rotate_layout_pages_item_boxes_bleed import ChangeItemPagesRotateLayoutPagesItemBoxesBleed + from .change_item_pages_rotate_layout_pages_item_boxes_crop import ChangeItemPagesRotateLayoutPagesItemBoxesCrop + from .change_item_pages_rotate_layout_pages_item_boxes_media import ChangeItemPagesRotateLayoutPagesItemBoxesMedia + from .change_item_pages_rotate_layout_pages_item_boxes_trim import ChangeItemPagesRotateLayoutPagesItemBoxesTrim + from .change_item_pages_rotate_layout_pages_item_pdf_crop_box import ChangeItemPagesRotateLayoutPagesItemPdfCropBox + from .change_item_pages_rotate_layout_pages_item_size import ChangeItemPagesRotateLayoutPagesItemSize + from .change_item_pages_rotate_layout_pages_item_tab_order import ChangeItemPagesRotateLayoutPagesItemTabOrder from .change_item_skipped import ChangeItemSkipped from .change_item_skipped_op import ChangeItemSkippedOp from .change_op import ( @@ -1285,6 +1499,8 @@ ChangeOp_AnnotationsDelete, ChangeOp_AnnotationsReorder, ChangeOp_AnnotationsUpdate, + ChangeOp_AttachmentsCreate, + ChangeOp_AttachmentsDelete, ChangeOp_FormsAddWidget, ChangeOp_FormsCreate, ChangeOp_FormsDelete, @@ -1301,6 +1517,15 @@ ChangeOp_FormsUpdateWidget, ChangeOp_MetadataUpdate, ChangeOp_MetadataUpdateCustom, + ChangeOp_OutlineCreate, + ChangeOp_OutlineDelete, + ChangeOp_OutlineMove, + ChangeOp_OutlineUpdate, + ChangeOp_PagesDelete, + ChangeOp_PagesInsert, + ChangeOp_PagesInsertBlank, + ChangeOp_PagesReorder, + ChangeOp_PagesRotate, ) from .change_op_annotations_create import ChangeOpAnnotationsCreate from .change_op_annotations_create_resources import ChangeOpAnnotationsCreateResources @@ -1308,6 +1533,9 @@ from .change_op_annotations_reorder import ChangeOpAnnotationsReorder from .change_op_annotations_update import ChangeOpAnnotationsUpdate from .change_op_annotations_update_resources import ChangeOpAnnotationsUpdateResources + from .change_op_attachments_create import ChangeOpAttachmentsCreate + from .change_op_attachments_create_resources import ChangeOpAttachmentsCreateResources + from .change_op_attachments_delete import ChangeOpAttachmentsDelete from .change_op_forms_add_widget import ChangeOpFormsAddWidget from .change_op_forms_create import ChangeOpFormsCreate from .change_op_forms_delete import ChangeOpFormsDelete @@ -1326,6 +1554,18 @@ from .change_op_forms_update_widget import ChangeOpFormsUpdateWidget from .change_op_metadata_update import ChangeOpMetadataUpdate from .change_op_metadata_update_custom import ChangeOpMetadataUpdateCustom + from .change_op_outline_create import ChangeOpOutlineCreate + from .change_op_outline_delete import ChangeOpOutlineDelete + from .change_op_outline_move import ChangeOpOutlineMove + from .change_op_outline_update import ChangeOpOutlineUpdate + from .change_op_pages_delete import ChangeOpPagesDelete + from .change_op_pages_insert import ChangeOpPagesInsert + from .change_op_pages_insert_blank import ChangeOpPagesInsertBlank + from .change_op_pages_insert_blank_spec import ChangeOpPagesInsertBlankSpec + from .change_op_pages_insert_blank_spec_size import ChangeOpPagesInsertBlankSpecSize + from .change_op_pages_insert_resources import ChangeOpPagesInsertResources + from .change_op_pages_reorder import ChangeOpPagesReorder + from .change_op_pages_rotate import ChangeOpPagesRotate from .change_result import ChangeResult from .deployment_license_status_response import DeploymentLicenseStatusResponse from .doc_annotations_create200response import DocAnnotationsCreate200Response @@ -1353,6 +1593,9 @@ from .doc_annotations_list_all409response import DocAnnotationsListAll409Response from .doc_annotations_read_appearance400response import DocAnnotationsReadAppearance400Response from .doc_annotations_read_appearance404response import DocAnnotationsReadAppearance404Response + from .doc_annotations_read_file400response import DocAnnotationsReadFile400Response + from .doc_annotations_read_file404response import DocAnnotationsReadFile404Response + from .doc_annotations_read_file413response import DocAnnotationsReadFile413Response from .doc_annotations_reorder200response import DocAnnotationsReorder200Response from .doc_annotations_reorder400response import DocAnnotationsReorder400Response from .doc_annotations_reorder404response import DocAnnotationsReorder404Response @@ -1362,6 +1605,11 @@ from .doc_annotations_update400response import DocAnnotationsUpdate400Response from .doc_annotations_update404response import DocAnnotationsUpdate404Response from .doc_annotations_update_request import DocAnnotationsUpdateRequest + from .doc_attachments_download400response import DocAttachmentsDownload400Response + from .doc_attachments_download404response import DocAttachmentsDownload404Response + from .doc_attachments_download413response import DocAttachmentsDownload413Response + from .doc_attachments_list200response import DocAttachmentsList200Response + from .doc_attachments_list404response import DocAttachmentsList404Response from .doc_changes200response import DocChanges200Response from .doc_changes200response_changes_item import ( DocChanges200ResponseChangesItem, @@ -1433,56 +1681,14 @@ from .doc_manifest200response_scopes_forms import DocManifest200ResponseScopesForms from .doc_manifest200response_scopes_layout import DocManifest200ResponseScopesLayout from .doc_manifest200response_scopes_metadata import DocManifest200ResponseScopesMetadata + from .doc_manifest200response_scopes_outline import DocManifest200ResponseScopesOutline from .doc_manifest404response import DocManifest404Response from .doc_metadata_custom_get200response import DocMetadataCustomGet200Response from .doc_metadata_custom_get404response import DocMetadataCustomGet404Response from .doc_metadata_get200response import DocMetadataGet200Response from .doc_metadata_get404response import DocMetadataGet404Response - from .doc_pages_delete200response import DocPagesDelete200Response - from .doc_pages_delete200response_layout import DocPagesDelete200ResponseLayout - from .doc_pages_delete200response_layout_named_pages_item import DocPagesDelete200ResponseLayoutNamedPagesItem - from .doc_pages_delete200response_layout_named_pages_item_target import ( - DocPagesDelete200ResponseLayoutNamedPagesItemTarget, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template, - ) - from .doc_pages_delete200response_layout_named_pages_item_target_dangling import ( - DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling, - ) - from .doc_pages_delete200response_layout_named_pages_item_target_page import ( - DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage, - ) - from .doc_pages_delete200response_layout_named_pages_item_target_template import ( - DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate, - ) - from .doc_pages_delete200response_layout_pages_item import DocPagesDelete200ResponseLayoutPagesItem - from .doc_pages_delete200response_layout_pages_item_boxes import DocPagesDelete200ResponseLayoutPagesItemBoxes - from .doc_pages_delete200response_layout_pages_item_boxes_art import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesArt, - ) - from .doc_pages_delete200response_layout_pages_item_boxes_bleed import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesBleed, - ) - from .doc_pages_delete200response_layout_pages_item_boxes_crop import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesCrop, - ) - from .doc_pages_delete200response_layout_pages_item_boxes_media import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesMedia, - ) - from .doc_pages_delete200response_layout_pages_item_boxes_trim import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesTrim, - ) - from .doc_pages_delete200response_layout_pages_item_pdf_crop_box import ( - DocPagesDelete200ResponseLayoutPagesItemPdfCropBox, - ) - from .doc_pages_delete200response_layout_pages_item_size import DocPagesDelete200ResponseLayoutPagesItemSize - from .doc_pages_delete200response_layout_pages_item_tab_order import ( - DocPagesDelete200ResponseLayoutPagesItemTabOrder, - ) - from .doc_pages_delete400response import DocPagesDelete400Response - from .doc_pages_delete404response import DocPagesDelete404Response - from .doc_pages_delete_request import DocPagesDeleteRequest + from .doc_outline_get200response import DocOutlineGet200Response + from .doc_outline_get404response import DocOutlineGet404Response from .doc_pages_extract400response import DocPagesExtract400Response from .doc_pages_extract404response import DocPagesExtract404Response from .doc_pages_extract_request import DocPagesExtractRequest @@ -1493,101 +1699,6 @@ from .doc_pages_flatten400response import DocPagesFlatten400Response from .doc_pages_flatten404response import DocPagesFlatten404Response from .doc_pages_flatten_request import DocPagesFlattenRequest - from .doc_pages_insert200response import DocPagesInsert200Response - from .doc_pages_insert200response_layout import DocPagesInsert200ResponseLayout - from .doc_pages_insert200response_layout_named_pages_item import DocPagesInsert200ResponseLayoutNamedPagesItem - from .doc_pages_insert200response_layout_named_pages_item_target import ( - DocPagesInsert200ResponseLayoutNamedPagesItemTarget, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template, - ) - from .doc_pages_insert200response_layout_named_pages_item_target_dangling import ( - DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling, - ) - from .doc_pages_insert200response_layout_named_pages_item_target_page import ( - DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage, - ) - from .doc_pages_insert200response_layout_named_pages_item_target_template import ( - DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate, - ) - from .doc_pages_insert200response_layout_pages_item import DocPagesInsert200ResponseLayoutPagesItem - from .doc_pages_insert200response_layout_pages_item_boxes import DocPagesInsert200ResponseLayoutPagesItemBoxes - from .doc_pages_insert200response_layout_pages_item_boxes_art import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesArt, - ) - from .doc_pages_insert200response_layout_pages_item_boxes_bleed import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesBleed, - ) - from .doc_pages_insert200response_layout_pages_item_boxes_crop import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesCrop, - ) - from .doc_pages_insert200response_layout_pages_item_boxes_media import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesMedia, - ) - from .doc_pages_insert200response_layout_pages_item_boxes_trim import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesTrim, - ) - from .doc_pages_insert200response_layout_pages_item_pdf_crop_box import ( - DocPagesInsert200ResponseLayoutPagesItemPdfCropBox, - ) - from .doc_pages_insert200response_layout_pages_item_size import DocPagesInsert200ResponseLayoutPagesItemSize - from .doc_pages_insert200response_layout_pages_item_tab_order import ( - DocPagesInsert200ResponseLayoutPagesItemTabOrder, - ) - from .doc_pages_insert400response import DocPagesInsert400Response - from .doc_pages_insert404response import DocPagesInsert404Response - from .doc_pages_insert_blank200response import DocPagesInsertBlank200Response - from .doc_pages_insert_blank200response_layout import DocPagesInsertBlank200ResponseLayout - from .doc_pages_insert_blank200response_layout_named_pages_item import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItem, - ) - from .doc_pages_insert_blank200response_layout_named_pages_item_target import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template, - ) - from .doc_pages_insert_blank200response_layout_named_pages_item_target_dangling import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling, - ) - from .doc_pages_insert_blank200response_layout_named_pages_item_target_page import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage, - ) - from .doc_pages_insert_blank200response_layout_named_pages_item_target_template import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate, - ) - from .doc_pages_insert_blank200response_layout_pages_item import DocPagesInsertBlank200ResponseLayoutPagesItem - from .doc_pages_insert_blank200response_layout_pages_item_boxes import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxes, - ) - from .doc_pages_insert_blank200response_layout_pages_item_boxes_art import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt, - ) - from .doc_pages_insert_blank200response_layout_pages_item_boxes_bleed import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed, - ) - from .doc_pages_insert_blank200response_layout_pages_item_boxes_crop import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop, - ) - from .doc_pages_insert_blank200response_layout_pages_item_boxes_media import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia, - ) - from .doc_pages_insert_blank200response_layout_pages_item_boxes_trim import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim, - ) - from .doc_pages_insert_blank200response_layout_pages_item_pdf_crop_box import ( - DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox, - ) - from .doc_pages_insert_blank200response_layout_pages_item_size import ( - DocPagesInsertBlank200ResponseLayoutPagesItemSize, - ) - from .doc_pages_insert_blank200response_layout_pages_item_tab_order import ( - DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder, - ) - from .doc_pages_insert_blank400response import DocPagesInsertBlank400Response - from .doc_pages_insert_blank404response import DocPagesInsertBlank404Response - from .doc_pages_insert_blank_request import DocPagesInsertBlankRequest from .doc_pages_remove_name200response import DocPagesRemoveName200Response from .doc_pages_remove_name200response_layout import DocPagesRemoveName200ResponseLayout from .doc_pages_remove_name200response_layout_named_pages_item import ( @@ -1639,95 +1750,6 @@ from .doc_pages_remove_name400response import DocPagesRemoveName400Response from .doc_pages_remove_name404response import DocPagesRemoveName404Response from .doc_pages_remove_name_request import DocPagesRemoveNameRequest - from .doc_pages_reorder200response import DocPagesReorder200Response - from .doc_pages_reorder200response_layout import DocPagesReorder200ResponseLayout - from .doc_pages_reorder200response_layout_named_pages_item import DocPagesReorder200ResponseLayoutNamedPagesItem - from .doc_pages_reorder200response_layout_named_pages_item_target import ( - DocPagesReorder200ResponseLayoutNamedPagesItemTarget, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template, - ) - from .doc_pages_reorder200response_layout_named_pages_item_target_dangling import ( - DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling, - ) - from .doc_pages_reorder200response_layout_named_pages_item_target_page import ( - DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage, - ) - from .doc_pages_reorder200response_layout_named_pages_item_target_template import ( - DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate, - ) - from .doc_pages_reorder200response_layout_pages_item import DocPagesReorder200ResponseLayoutPagesItem - from .doc_pages_reorder200response_layout_pages_item_boxes import DocPagesReorder200ResponseLayoutPagesItemBoxes - from .doc_pages_reorder200response_layout_pages_item_boxes_art import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesArt, - ) - from .doc_pages_reorder200response_layout_pages_item_boxes_bleed import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesBleed, - ) - from .doc_pages_reorder200response_layout_pages_item_boxes_crop import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesCrop, - ) - from .doc_pages_reorder200response_layout_pages_item_boxes_media import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesMedia, - ) - from .doc_pages_reorder200response_layout_pages_item_boxes_trim import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesTrim, - ) - from .doc_pages_reorder200response_layout_pages_item_pdf_crop_box import ( - DocPagesReorder200ResponseLayoutPagesItemPdfCropBox, - ) - from .doc_pages_reorder200response_layout_pages_item_size import DocPagesReorder200ResponseLayoutPagesItemSize - from .doc_pages_reorder200response_layout_pages_item_tab_order import ( - DocPagesReorder200ResponseLayoutPagesItemTabOrder, - ) - from .doc_pages_reorder400response import DocPagesReorder400Response - from .doc_pages_reorder404response import DocPagesReorder404Response - from .doc_pages_rotate200response import DocPagesRotate200Response - from .doc_pages_rotate200response_layout import DocPagesRotate200ResponseLayout - from .doc_pages_rotate200response_layout_named_pages_item import DocPagesRotate200ResponseLayoutNamedPagesItem - from .doc_pages_rotate200response_layout_named_pages_item_target import ( - DocPagesRotate200ResponseLayoutNamedPagesItemTarget, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template, - ) - from .doc_pages_rotate200response_layout_named_pages_item_target_dangling import ( - DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling, - ) - from .doc_pages_rotate200response_layout_named_pages_item_target_page import ( - DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage, - ) - from .doc_pages_rotate200response_layout_named_pages_item_target_template import ( - DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate, - ) - from .doc_pages_rotate200response_layout_pages_item import DocPagesRotate200ResponseLayoutPagesItem - from .doc_pages_rotate200response_layout_pages_item_boxes import DocPagesRotate200ResponseLayoutPagesItemBoxes - from .doc_pages_rotate200response_layout_pages_item_boxes_art import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesArt, - ) - from .doc_pages_rotate200response_layout_pages_item_boxes_bleed import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesBleed, - ) - from .doc_pages_rotate200response_layout_pages_item_boxes_crop import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesCrop, - ) - from .doc_pages_rotate200response_layout_pages_item_boxes_media import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesMedia, - ) - from .doc_pages_rotate200response_layout_pages_item_boxes_trim import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesTrim, - ) - from .doc_pages_rotate200response_layout_pages_item_pdf_crop_box import ( - DocPagesRotate200ResponseLayoutPagesItemPdfCropBox, - ) - from .doc_pages_rotate200response_layout_pages_item_size import DocPagesRotate200ResponseLayoutPagesItemSize - from .doc_pages_rotate200response_layout_pages_item_tab_order import ( - DocPagesRotate200ResponseLayoutPagesItemTabOrder, - ) - from .doc_pages_rotate400response import DocPagesRotate400Response - from .doc_pages_rotate404response import DocPagesRotate404Response - from .doc_pages_rotate_request import DocPagesRotateRequest from .doc_pages_set_name200response import DocPagesSetName200Response from .doc_pages_set_name200response_layout import DocPagesSetName200ResponseLayout from .doc_pages_set_name200response_layout_named_pages_item import DocPagesSetName200ResponseLayoutNamedPagesItem @@ -2070,6 +2092,7 @@ from .document_actions_snapshot_name_tree_scripts_item import DocumentActionsSnapshotNameTreeScriptsItem from .document_metadata import DocumentMetadata from .document_metadata_trapped import DocumentMetadataTrapped + from .document_outline import DocumentOutline from .documents_commit200response import DocumentsCommit200Response from .documents_commit200response_document import DocumentsCommit200ResponseDocument from .documents_commit200response_document_state import DocumentsCommit200ResponseDocumentState @@ -2414,6 +2437,16 @@ from .metadata_patch import MetadataPatch from .metadata_patch_trapped import MetadataPatchTrapped from .mutation_meta import MutationMeta + from .outline_item import OutlineItem + from .outline_item_draft import OutlineItemDraft + from .outline_item_patch import OutlineItemPatch + from .outline_item_ref import OutlineItemRef + from .outline_item_ref_kind import OutlineItemRefKind + from .outline_mutation_meta import OutlineMutationMeta + from .outline_order import OutlineOrder + from .outline_position import OutlinePosition + from .outline_position_after import OutlinePositionAfter + from .outline_position_zero import OutlinePositionZero from .page_destination import ( PageDestination, PageDestination_Fit, @@ -2924,7 +2957,6 @@ "AnnotationDraft_Widget": ".annotation_draft", "AnnotationFileAttachment": ".annotation_file_attachment", "AnnotationFileAttachmentBlendMode": ".annotation_file_attachment_blend_mode", - "AnnotationFileAttachmentFile": ".annotation_file_attachment_file", "AnnotationFileAttachmentIcon": ".annotation_file_attachment_icon", "AnnotationFileAttachmentRect": ".annotation_file_attachment_rect", "AnnotationFileAttachmentReply": ".annotation_file_attachment_reply", @@ -3496,6 +3528,13 @@ "Annotation_Underline": ".annotation", "Annotation_Unsupported": ".annotation", "Annotation_Widget": ".annotation", + "Attachment": ".attachment", + "AttachmentFileBase": ".attachment_file_base", + "AttachmentFileInfo": ".attachment_file_info", + "AttachmentList": ".attachment_list", + "AttachmentMutationMeta": ".attachment_mutation_meta", + "AttachmentRef": ".attachment_ref", + "AttachmentRefKind": ".attachment_ref_kind", "CacheDelta": ".cache_delta", "CacheDeltaPagesItem": ".cache_delta_pages_item", "CacheDeltaPagesItemCache": ".cache_delta_pages_item_cache", @@ -3507,6 +3546,9 @@ "ChangeItemAnnotationsUpdate": ".change_item_annotations_update", "ChangeItemAnnotationsUpdateAppearance": ".change_item_annotations_update_appearance", "ChangeItemAnnotationsUpdateAppearanceAction": ".change_item_annotations_update_appearance_action", + "ChangeItemAttachmentsCreate": ".change_item_attachments_create", + "ChangeItemAttachmentsDelete": ".change_item_attachments_delete", + "ChangeItemAttachmentsRestore": ".change_item_attachments_restore", "ChangeItemFormsAddWidget": ".change_item_forms_add_widget", "ChangeItemFormsCreate": ".change_item_forms_create", "ChangeItemFormsDelete": ".change_item_forms_delete", @@ -3527,6 +3569,131 @@ "ChangeItemFormsUpdateWidgetAppearanceAction": ".change_item_forms_update_widget_appearance_action", "ChangeItemMetadataUpdate": ".change_item_metadata_update", "ChangeItemMetadataUpdateCustom": ".change_item_metadata_update_custom", + "ChangeItemOutlineCreate": ".change_item_outline_create", + "ChangeItemOutlineDelete": ".change_item_outline_delete", + "ChangeItemOutlineMove": ".change_item_outline_move", + "ChangeItemOutlineRestore": ".change_item_outline_restore", + "ChangeItemOutlineUpdate": ".change_item_outline_update", + "ChangeItemPagesDelete": ".change_item_pages_delete", + "ChangeItemPagesDeleteLayout": ".change_item_pages_delete_layout", + "ChangeItemPagesDeleteLayoutNamedPagesItem": ".change_item_pages_delete_layout_named_pages_item", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget": ".change_item_pages_delete_layout_named_pages_item_target", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling": ".change_item_pages_delete_layout_named_pages_item_target_dangling", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage": ".change_item_pages_delete_layout_named_pages_item_target_page", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate": ".change_item_pages_delete_layout_named_pages_item_target_template", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_delete_layout_named_pages_item_target", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page": ".change_item_pages_delete_layout_named_pages_item_target", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template": ".change_item_pages_delete_layout_named_pages_item_target", + "ChangeItemPagesDeleteLayoutPagesItem": ".change_item_pages_delete_layout_pages_item", + "ChangeItemPagesDeleteLayoutPagesItemBoxes": ".change_item_pages_delete_layout_pages_item_boxes", + "ChangeItemPagesDeleteLayoutPagesItemBoxesArt": ".change_item_pages_delete_layout_pages_item_boxes_art", + "ChangeItemPagesDeleteLayoutPagesItemBoxesBleed": ".change_item_pages_delete_layout_pages_item_boxes_bleed", + "ChangeItemPagesDeleteLayoutPagesItemBoxesCrop": ".change_item_pages_delete_layout_pages_item_boxes_crop", + "ChangeItemPagesDeleteLayoutPagesItemBoxesMedia": ".change_item_pages_delete_layout_pages_item_boxes_media", + "ChangeItemPagesDeleteLayoutPagesItemBoxesTrim": ".change_item_pages_delete_layout_pages_item_boxes_trim", + "ChangeItemPagesDeleteLayoutPagesItemPdfCropBox": ".change_item_pages_delete_layout_pages_item_pdf_crop_box", + "ChangeItemPagesDeleteLayoutPagesItemSize": ".change_item_pages_delete_layout_pages_item_size", + "ChangeItemPagesDeleteLayoutPagesItemTabOrder": ".change_item_pages_delete_layout_pages_item_tab_order", + "ChangeItemPagesInsert": ".change_item_pages_insert", + "ChangeItemPagesInsertBlank": ".change_item_pages_insert_blank", + "ChangeItemPagesInsertBlankLayout": ".change_item_pages_insert_blank_layout", + "ChangeItemPagesInsertBlankLayoutNamedPagesItem": ".change_item_pages_insert_blank_layout_named_pages_item", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget": ".change_item_pages_insert_blank_layout_named_pages_item_target", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling": ".change_item_pages_insert_blank_layout_named_pages_item_target_dangling", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage": ".change_item_pages_insert_blank_layout_named_pages_item_target_page", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate": ".change_item_pages_insert_blank_layout_named_pages_item_target_template", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_insert_blank_layout_named_pages_item_target", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page": ".change_item_pages_insert_blank_layout_named_pages_item_target", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template": ".change_item_pages_insert_blank_layout_named_pages_item_target", + "ChangeItemPagesInsertBlankLayoutPagesItem": ".change_item_pages_insert_blank_layout_pages_item", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxes": ".change_item_pages_insert_blank_layout_pages_item_boxes", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt": ".change_item_pages_insert_blank_layout_pages_item_boxes_art", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed": ".change_item_pages_insert_blank_layout_pages_item_boxes_bleed", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop": ".change_item_pages_insert_blank_layout_pages_item_boxes_crop", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia": ".change_item_pages_insert_blank_layout_pages_item_boxes_media", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim": ".change_item_pages_insert_blank_layout_pages_item_boxes_trim", + "ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox": ".change_item_pages_insert_blank_layout_pages_item_pdf_crop_box", + "ChangeItemPagesInsertBlankLayoutPagesItemSize": ".change_item_pages_insert_blank_layout_pages_item_size", + "ChangeItemPagesInsertBlankLayoutPagesItemTabOrder": ".change_item_pages_insert_blank_layout_pages_item_tab_order", + "ChangeItemPagesInsertLayout": ".change_item_pages_insert_layout", + "ChangeItemPagesInsertLayoutNamedPagesItem": ".change_item_pages_insert_layout_named_pages_item", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget": ".change_item_pages_insert_layout_named_pages_item_target", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling": ".change_item_pages_insert_layout_named_pages_item_target_dangling", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetPage": ".change_item_pages_insert_layout_named_pages_item_target_page", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate": ".change_item_pages_insert_layout_named_pages_item_target_template", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_insert_layout_named_pages_item_target", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page": ".change_item_pages_insert_layout_named_pages_item_target", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template": ".change_item_pages_insert_layout_named_pages_item_target", + "ChangeItemPagesInsertLayoutPagesItem": ".change_item_pages_insert_layout_pages_item", + "ChangeItemPagesInsertLayoutPagesItemBoxes": ".change_item_pages_insert_layout_pages_item_boxes", + "ChangeItemPagesInsertLayoutPagesItemBoxesArt": ".change_item_pages_insert_layout_pages_item_boxes_art", + "ChangeItemPagesInsertLayoutPagesItemBoxesBleed": ".change_item_pages_insert_layout_pages_item_boxes_bleed", + "ChangeItemPagesInsertLayoutPagesItemBoxesCrop": ".change_item_pages_insert_layout_pages_item_boxes_crop", + "ChangeItemPagesInsertLayoutPagesItemBoxesMedia": ".change_item_pages_insert_layout_pages_item_boxes_media", + "ChangeItemPagesInsertLayoutPagesItemBoxesTrim": ".change_item_pages_insert_layout_pages_item_boxes_trim", + "ChangeItemPagesInsertLayoutPagesItemPdfCropBox": ".change_item_pages_insert_layout_pages_item_pdf_crop_box", + "ChangeItemPagesInsertLayoutPagesItemSize": ".change_item_pages_insert_layout_pages_item_size", + "ChangeItemPagesInsertLayoutPagesItemTabOrder": ".change_item_pages_insert_layout_pages_item_tab_order", + "ChangeItemPagesReorder": ".change_item_pages_reorder", + "ChangeItemPagesReorderLayout": ".change_item_pages_reorder_layout", + "ChangeItemPagesReorderLayoutNamedPagesItem": ".change_item_pages_reorder_layout_named_pages_item", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget": ".change_item_pages_reorder_layout_named_pages_item_target", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling": ".change_item_pages_reorder_layout_named_pages_item_target_dangling", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetPage": ".change_item_pages_reorder_layout_named_pages_item_target_page", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate": ".change_item_pages_reorder_layout_named_pages_item_target_template", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_reorder_layout_named_pages_item_target", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page": ".change_item_pages_reorder_layout_named_pages_item_target", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template": ".change_item_pages_reorder_layout_named_pages_item_target", + "ChangeItemPagesReorderLayoutPagesItem": ".change_item_pages_reorder_layout_pages_item", + "ChangeItemPagesReorderLayoutPagesItemBoxes": ".change_item_pages_reorder_layout_pages_item_boxes", + "ChangeItemPagesReorderLayoutPagesItemBoxesArt": ".change_item_pages_reorder_layout_pages_item_boxes_art", + "ChangeItemPagesReorderLayoutPagesItemBoxesBleed": ".change_item_pages_reorder_layout_pages_item_boxes_bleed", + "ChangeItemPagesReorderLayoutPagesItemBoxesCrop": ".change_item_pages_reorder_layout_pages_item_boxes_crop", + "ChangeItemPagesReorderLayoutPagesItemBoxesMedia": ".change_item_pages_reorder_layout_pages_item_boxes_media", + "ChangeItemPagesReorderLayoutPagesItemBoxesTrim": ".change_item_pages_reorder_layout_pages_item_boxes_trim", + "ChangeItemPagesReorderLayoutPagesItemPdfCropBox": ".change_item_pages_reorder_layout_pages_item_pdf_crop_box", + "ChangeItemPagesReorderLayoutPagesItemSize": ".change_item_pages_reorder_layout_pages_item_size", + "ChangeItemPagesReorderLayoutPagesItemTabOrder": ".change_item_pages_reorder_layout_pages_item_tab_order", + "ChangeItemPagesRestore": ".change_item_pages_restore", + "ChangeItemPagesRestoreLayout": ".change_item_pages_restore_layout", + "ChangeItemPagesRestoreLayoutNamedPagesItem": ".change_item_pages_restore_layout_named_pages_item", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget": ".change_item_pages_restore_layout_named_pages_item_target", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling": ".change_item_pages_restore_layout_named_pages_item_target_dangling", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage": ".change_item_pages_restore_layout_named_pages_item_target_page", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate": ".change_item_pages_restore_layout_named_pages_item_target_template", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_restore_layout_named_pages_item_target", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page": ".change_item_pages_restore_layout_named_pages_item_target", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template": ".change_item_pages_restore_layout_named_pages_item_target", + "ChangeItemPagesRestoreLayoutPagesItem": ".change_item_pages_restore_layout_pages_item", + "ChangeItemPagesRestoreLayoutPagesItemBoxes": ".change_item_pages_restore_layout_pages_item_boxes", + "ChangeItemPagesRestoreLayoutPagesItemBoxesArt": ".change_item_pages_restore_layout_pages_item_boxes_art", + "ChangeItemPagesRestoreLayoutPagesItemBoxesBleed": ".change_item_pages_restore_layout_pages_item_boxes_bleed", + "ChangeItemPagesRestoreLayoutPagesItemBoxesCrop": ".change_item_pages_restore_layout_pages_item_boxes_crop", + "ChangeItemPagesRestoreLayoutPagesItemBoxesMedia": ".change_item_pages_restore_layout_pages_item_boxes_media", + "ChangeItemPagesRestoreLayoutPagesItemBoxesTrim": ".change_item_pages_restore_layout_pages_item_boxes_trim", + "ChangeItemPagesRestoreLayoutPagesItemPdfCropBox": ".change_item_pages_restore_layout_pages_item_pdf_crop_box", + "ChangeItemPagesRestoreLayoutPagesItemSize": ".change_item_pages_restore_layout_pages_item_size", + "ChangeItemPagesRestoreLayoutPagesItemTabOrder": ".change_item_pages_restore_layout_pages_item_tab_order", + "ChangeItemPagesRotate": ".change_item_pages_rotate", + "ChangeItemPagesRotateLayout": ".change_item_pages_rotate_layout", + "ChangeItemPagesRotateLayoutNamedPagesItem": ".change_item_pages_rotate_layout_named_pages_item", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget": ".change_item_pages_rotate_layout_named_pages_item_target", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling": ".change_item_pages_rotate_layout_named_pages_item_target_dangling", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetPage": ".change_item_pages_rotate_layout_named_pages_item_target_page", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate": ".change_item_pages_rotate_layout_named_pages_item_target_template", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling": ".change_item_pages_rotate_layout_named_pages_item_target", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page": ".change_item_pages_rotate_layout_named_pages_item_target", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template": ".change_item_pages_rotate_layout_named_pages_item_target", + "ChangeItemPagesRotateLayoutPagesItem": ".change_item_pages_rotate_layout_pages_item", + "ChangeItemPagesRotateLayoutPagesItemBoxes": ".change_item_pages_rotate_layout_pages_item_boxes", + "ChangeItemPagesRotateLayoutPagesItemBoxesArt": ".change_item_pages_rotate_layout_pages_item_boxes_art", + "ChangeItemPagesRotateLayoutPagesItemBoxesBleed": ".change_item_pages_rotate_layout_pages_item_boxes_bleed", + "ChangeItemPagesRotateLayoutPagesItemBoxesCrop": ".change_item_pages_rotate_layout_pages_item_boxes_crop", + "ChangeItemPagesRotateLayoutPagesItemBoxesMedia": ".change_item_pages_rotate_layout_pages_item_boxes_media", + "ChangeItemPagesRotateLayoutPagesItemBoxesTrim": ".change_item_pages_rotate_layout_pages_item_boxes_trim", + "ChangeItemPagesRotateLayoutPagesItemPdfCropBox": ".change_item_pages_rotate_layout_pages_item_pdf_crop_box", + "ChangeItemPagesRotateLayoutPagesItemSize": ".change_item_pages_rotate_layout_pages_item_size", + "ChangeItemPagesRotateLayoutPagesItemTabOrder": ".change_item_pages_rotate_layout_pages_item_tab_order", "ChangeItemSkipped": ".change_item_skipped", "ChangeItemSkippedOp": ".change_item_skipped_op", "ChangeItem_AnnotationsCreate": ".change_item", @@ -3534,6 +3701,9 @@ "ChangeItem_AnnotationsReorder": ".change_item", "ChangeItem_AnnotationsRestore": ".change_item", "ChangeItem_AnnotationsUpdate": ".change_item", + "ChangeItem_AttachmentsCreate": ".change_item", + "ChangeItem_AttachmentsDelete": ".change_item", + "ChangeItem_AttachmentsRestore": ".change_item", "ChangeItem_FormsAddWidget": ".change_item", "ChangeItem_FormsCreate": ".change_item", "ChangeItem_FormsDelete": ".change_item", @@ -3552,6 +3722,17 @@ "ChangeItem_FormsUpdateWidget": ".change_item", "ChangeItem_MetadataUpdate": ".change_item", "ChangeItem_MetadataUpdateCustom": ".change_item", + "ChangeItem_OutlineCreate": ".change_item", + "ChangeItem_OutlineDelete": ".change_item", + "ChangeItem_OutlineMove": ".change_item", + "ChangeItem_OutlineRestore": ".change_item", + "ChangeItem_OutlineUpdate": ".change_item", + "ChangeItem_PagesDelete": ".change_item", + "ChangeItem_PagesInsert": ".change_item", + "ChangeItem_PagesInsertBlank": ".change_item", + "ChangeItem_PagesReorder": ".change_item", + "ChangeItem_PagesRestore": ".change_item", + "ChangeItem_PagesRotate": ".change_item", "ChangeItem_Skipped": ".change_item", "ChangeOp": ".change_op", "ChangeOpAnnotationsCreate": ".change_op_annotations_create", @@ -3560,6 +3741,9 @@ "ChangeOpAnnotationsReorder": ".change_op_annotations_reorder", "ChangeOpAnnotationsUpdate": ".change_op_annotations_update", "ChangeOpAnnotationsUpdateResources": ".change_op_annotations_update_resources", + "ChangeOpAttachmentsCreate": ".change_op_attachments_create", + "ChangeOpAttachmentsCreateResources": ".change_op_attachments_create_resources", + "ChangeOpAttachmentsDelete": ".change_op_attachments_delete", "ChangeOpFormsAddWidget": ".change_op_forms_add_widget", "ChangeOpFormsCreate": ".change_op_forms_create", "ChangeOpFormsDelete": ".change_op_forms_delete", @@ -3578,10 +3762,24 @@ "ChangeOpFormsUpdateWidget": ".change_op_forms_update_widget", "ChangeOpMetadataUpdate": ".change_op_metadata_update", "ChangeOpMetadataUpdateCustom": ".change_op_metadata_update_custom", + "ChangeOpOutlineCreate": ".change_op_outline_create", + "ChangeOpOutlineDelete": ".change_op_outline_delete", + "ChangeOpOutlineMove": ".change_op_outline_move", + "ChangeOpOutlineUpdate": ".change_op_outline_update", + "ChangeOpPagesDelete": ".change_op_pages_delete", + "ChangeOpPagesInsert": ".change_op_pages_insert", + "ChangeOpPagesInsertBlank": ".change_op_pages_insert_blank", + "ChangeOpPagesInsertBlankSpec": ".change_op_pages_insert_blank_spec", + "ChangeOpPagesInsertBlankSpecSize": ".change_op_pages_insert_blank_spec_size", + "ChangeOpPagesInsertResources": ".change_op_pages_insert_resources", + "ChangeOpPagesReorder": ".change_op_pages_reorder", + "ChangeOpPagesRotate": ".change_op_pages_rotate", "ChangeOp_AnnotationsCreate": ".change_op", "ChangeOp_AnnotationsDelete": ".change_op", "ChangeOp_AnnotationsReorder": ".change_op", "ChangeOp_AnnotationsUpdate": ".change_op", + "ChangeOp_AttachmentsCreate": ".change_op", + "ChangeOp_AttachmentsDelete": ".change_op", "ChangeOp_FormsAddWidget": ".change_op", "ChangeOp_FormsCreate": ".change_op", "ChangeOp_FormsDelete": ".change_op", @@ -3598,6 +3796,15 @@ "ChangeOp_FormsUpdateWidget": ".change_op", "ChangeOp_MetadataUpdate": ".change_op", "ChangeOp_MetadataUpdateCustom": ".change_op", + "ChangeOp_OutlineCreate": ".change_op", + "ChangeOp_OutlineDelete": ".change_op", + "ChangeOp_OutlineMove": ".change_op", + "ChangeOp_OutlineUpdate": ".change_op", + "ChangeOp_PagesDelete": ".change_op", + "ChangeOp_PagesInsert": ".change_op", + "ChangeOp_PagesInsertBlank": ".change_op", + "ChangeOp_PagesReorder": ".change_op", + "ChangeOp_PagesRotate": ".change_op", "ChangeResult": ".change_result", "DeploymentLicenseStatusResponse": ".deployment_license_status_response", "DocAnnotationsCreate200Response": ".doc_annotations_create200response", @@ -3623,6 +3830,9 @@ "DocAnnotationsListAll409Response": ".doc_annotations_list_all409response", "DocAnnotationsReadAppearance400Response": ".doc_annotations_read_appearance400response", "DocAnnotationsReadAppearance404Response": ".doc_annotations_read_appearance404response", + "DocAnnotationsReadFile400Response": ".doc_annotations_read_file400response", + "DocAnnotationsReadFile404Response": ".doc_annotations_read_file404response", + "DocAnnotationsReadFile413Response": ".doc_annotations_read_file413response", "DocAnnotationsReorder200Response": ".doc_annotations_reorder200response", "DocAnnotationsReorder400Response": ".doc_annotations_reorder400response", "DocAnnotationsReorder404Response": ".doc_annotations_reorder404response", @@ -3632,6 +3842,11 @@ "DocAnnotationsUpdate400Response": ".doc_annotations_update400response", "DocAnnotationsUpdate404Response": ".doc_annotations_update404response", "DocAnnotationsUpdateRequest": ".doc_annotations_update_request", + "DocAttachmentsDownload400Response": ".doc_attachments_download400response", + "DocAttachmentsDownload404Response": ".doc_attachments_download404response", + "DocAttachmentsDownload413Response": ".doc_attachments_download413response", + "DocAttachmentsList200Response": ".doc_attachments_list200response", + "DocAttachmentsList404Response": ".doc_attachments_list404response", "DocChanges200Response": ".doc_changes200response", "DocChanges200ResponseChangesItem": ".doc_changes200response_changes_item", "DocChanges200ResponseChangesItemApplied": ".doc_changes200response_changes_item_applied", @@ -3695,34 +3910,14 @@ "DocManifest200ResponseScopesForms": ".doc_manifest200response_scopes_forms", "DocManifest200ResponseScopesLayout": ".doc_manifest200response_scopes_layout", "DocManifest200ResponseScopesMetadata": ".doc_manifest200response_scopes_metadata", + "DocManifest200ResponseScopesOutline": ".doc_manifest200response_scopes_outline", "DocManifest404Response": ".doc_manifest404response", "DocMetadataCustomGet200Response": ".doc_metadata_custom_get200response", "DocMetadataCustomGet404Response": ".doc_metadata_custom_get404response", "DocMetadataGet200Response": ".doc_metadata_get200response", "DocMetadataGet404Response": ".doc_metadata_get404response", - "DocPagesDelete200Response": ".doc_pages_delete200response", - "DocPagesDelete200ResponseLayout": ".doc_pages_delete200response_layout", - "DocPagesDelete200ResponseLayoutNamedPagesItem": ".doc_pages_delete200response_layout_named_pages_item", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget": ".doc_pages_delete200response_layout_named_pages_item_target", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling": ".doc_pages_delete200response_layout_named_pages_item_target_dangling", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage": ".doc_pages_delete200response_layout_named_pages_item_target_page", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate": ".doc_pages_delete200response_layout_named_pages_item_target_template", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling": ".doc_pages_delete200response_layout_named_pages_item_target", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page": ".doc_pages_delete200response_layout_named_pages_item_target", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template": ".doc_pages_delete200response_layout_named_pages_item_target", - "DocPagesDelete200ResponseLayoutPagesItem": ".doc_pages_delete200response_layout_pages_item", - "DocPagesDelete200ResponseLayoutPagesItemBoxes": ".doc_pages_delete200response_layout_pages_item_boxes", - "DocPagesDelete200ResponseLayoutPagesItemBoxesArt": ".doc_pages_delete200response_layout_pages_item_boxes_art", - "DocPagesDelete200ResponseLayoutPagesItemBoxesBleed": ".doc_pages_delete200response_layout_pages_item_boxes_bleed", - "DocPagesDelete200ResponseLayoutPagesItemBoxesCrop": ".doc_pages_delete200response_layout_pages_item_boxes_crop", - "DocPagesDelete200ResponseLayoutPagesItemBoxesMedia": ".doc_pages_delete200response_layout_pages_item_boxes_media", - "DocPagesDelete200ResponseLayoutPagesItemBoxesTrim": ".doc_pages_delete200response_layout_pages_item_boxes_trim", - "DocPagesDelete200ResponseLayoutPagesItemPdfCropBox": ".doc_pages_delete200response_layout_pages_item_pdf_crop_box", - "DocPagesDelete200ResponseLayoutPagesItemSize": ".doc_pages_delete200response_layout_pages_item_size", - "DocPagesDelete200ResponseLayoutPagesItemTabOrder": ".doc_pages_delete200response_layout_pages_item_tab_order", - "DocPagesDelete400Response": ".doc_pages_delete400response", - "DocPagesDelete404Response": ".doc_pages_delete404response", - "DocPagesDeleteRequest": ".doc_pages_delete_request", + "DocOutlineGet200Response": ".doc_outline_get200response", + "DocOutlineGet404Response": ".doc_outline_get404response", "DocPagesExtract400Response": ".doc_pages_extract400response", "DocPagesExtract404Response": ".doc_pages_extract404response", "DocPagesExtractRequest": ".doc_pages_extract_request", @@ -3733,51 +3928,6 @@ "DocPagesFlatten400Response": ".doc_pages_flatten400response", "DocPagesFlatten404Response": ".doc_pages_flatten404response", "DocPagesFlattenRequest": ".doc_pages_flatten_request", - "DocPagesInsert200Response": ".doc_pages_insert200response", - "DocPagesInsert200ResponseLayout": ".doc_pages_insert200response_layout", - "DocPagesInsert200ResponseLayoutNamedPagesItem": ".doc_pages_insert200response_layout_named_pages_item", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget": ".doc_pages_insert200response_layout_named_pages_item_target", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling": ".doc_pages_insert200response_layout_named_pages_item_target_dangling", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage": ".doc_pages_insert200response_layout_named_pages_item_target_page", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate": ".doc_pages_insert200response_layout_named_pages_item_target_template", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling": ".doc_pages_insert200response_layout_named_pages_item_target", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page": ".doc_pages_insert200response_layout_named_pages_item_target", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template": ".doc_pages_insert200response_layout_named_pages_item_target", - "DocPagesInsert200ResponseLayoutPagesItem": ".doc_pages_insert200response_layout_pages_item", - "DocPagesInsert200ResponseLayoutPagesItemBoxes": ".doc_pages_insert200response_layout_pages_item_boxes", - "DocPagesInsert200ResponseLayoutPagesItemBoxesArt": ".doc_pages_insert200response_layout_pages_item_boxes_art", - "DocPagesInsert200ResponseLayoutPagesItemBoxesBleed": ".doc_pages_insert200response_layout_pages_item_boxes_bleed", - "DocPagesInsert200ResponseLayoutPagesItemBoxesCrop": ".doc_pages_insert200response_layout_pages_item_boxes_crop", - "DocPagesInsert200ResponseLayoutPagesItemBoxesMedia": ".doc_pages_insert200response_layout_pages_item_boxes_media", - "DocPagesInsert200ResponseLayoutPagesItemBoxesTrim": ".doc_pages_insert200response_layout_pages_item_boxes_trim", - "DocPagesInsert200ResponseLayoutPagesItemPdfCropBox": ".doc_pages_insert200response_layout_pages_item_pdf_crop_box", - "DocPagesInsert200ResponseLayoutPagesItemSize": ".doc_pages_insert200response_layout_pages_item_size", - "DocPagesInsert200ResponseLayoutPagesItemTabOrder": ".doc_pages_insert200response_layout_pages_item_tab_order", - "DocPagesInsert400Response": ".doc_pages_insert400response", - "DocPagesInsert404Response": ".doc_pages_insert404response", - "DocPagesInsertBlank200Response": ".doc_pages_insert_blank200response", - "DocPagesInsertBlank200ResponseLayout": ".doc_pages_insert_blank200response_layout", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItem": ".doc_pages_insert_blank200response_layout_named_pages_item", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget": ".doc_pages_insert_blank200response_layout_named_pages_item_target", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling": ".doc_pages_insert_blank200response_layout_named_pages_item_target_dangling", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage": ".doc_pages_insert_blank200response_layout_named_pages_item_target_page", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate": ".doc_pages_insert_blank200response_layout_named_pages_item_target_template", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling": ".doc_pages_insert_blank200response_layout_named_pages_item_target", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page": ".doc_pages_insert_blank200response_layout_named_pages_item_target", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template": ".doc_pages_insert_blank200response_layout_named_pages_item_target", - "DocPagesInsertBlank200ResponseLayoutPagesItem": ".doc_pages_insert_blank200response_layout_pages_item", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxes": ".doc_pages_insert_blank200response_layout_pages_item_boxes", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt": ".doc_pages_insert_blank200response_layout_pages_item_boxes_art", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed": ".doc_pages_insert_blank200response_layout_pages_item_boxes_bleed", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop": ".doc_pages_insert_blank200response_layout_pages_item_boxes_crop", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia": ".doc_pages_insert_blank200response_layout_pages_item_boxes_media", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim": ".doc_pages_insert_blank200response_layout_pages_item_boxes_trim", - "DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox": ".doc_pages_insert_blank200response_layout_pages_item_pdf_crop_box", - "DocPagesInsertBlank200ResponseLayoutPagesItemSize": ".doc_pages_insert_blank200response_layout_pages_item_size", - "DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder": ".doc_pages_insert_blank200response_layout_pages_item_tab_order", - "DocPagesInsertBlank400Response": ".doc_pages_insert_blank400response", - "DocPagesInsertBlank404Response": ".doc_pages_insert_blank404response", - "DocPagesInsertBlankRequest": ".doc_pages_insert_blank_request", "DocPagesRemoveName200Response": ".doc_pages_remove_name200response", "DocPagesRemoveName200ResponseLayout": ".doc_pages_remove_name200response_layout", "DocPagesRemoveName200ResponseLayoutNamedPagesItem": ".doc_pages_remove_name200response_layout_named_pages_item", @@ -3801,51 +3951,6 @@ "DocPagesRemoveName400Response": ".doc_pages_remove_name400response", "DocPagesRemoveName404Response": ".doc_pages_remove_name404response", "DocPagesRemoveNameRequest": ".doc_pages_remove_name_request", - "DocPagesReorder200Response": ".doc_pages_reorder200response", - "DocPagesReorder200ResponseLayout": ".doc_pages_reorder200response_layout", - "DocPagesReorder200ResponseLayoutNamedPagesItem": ".doc_pages_reorder200response_layout_named_pages_item", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget": ".doc_pages_reorder200response_layout_named_pages_item_target", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling": ".doc_pages_reorder200response_layout_named_pages_item_target_dangling", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage": ".doc_pages_reorder200response_layout_named_pages_item_target_page", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate": ".doc_pages_reorder200response_layout_named_pages_item_target_template", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling": ".doc_pages_reorder200response_layout_named_pages_item_target", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page": ".doc_pages_reorder200response_layout_named_pages_item_target", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template": ".doc_pages_reorder200response_layout_named_pages_item_target", - "DocPagesReorder200ResponseLayoutPagesItem": ".doc_pages_reorder200response_layout_pages_item", - "DocPagesReorder200ResponseLayoutPagesItemBoxes": ".doc_pages_reorder200response_layout_pages_item_boxes", - "DocPagesReorder200ResponseLayoutPagesItemBoxesArt": ".doc_pages_reorder200response_layout_pages_item_boxes_art", - "DocPagesReorder200ResponseLayoutPagesItemBoxesBleed": ".doc_pages_reorder200response_layout_pages_item_boxes_bleed", - "DocPagesReorder200ResponseLayoutPagesItemBoxesCrop": ".doc_pages_reorder200response_layout_pages_item_boxes_crop", - "DocPagesReorder200ResponseLayoutPagesItemBoxesMedia": ".doc_pages_reorder200response_layout_pages_item_boxes_media", - "DocPagesReorder200ResponseLayoutPagesItemBoxesTrim": ".doc_pages_reorder200response_layout_pages_item_boxes_trim", - "DocPagesReorder200ResponseLayoutPagesItemPdfCropBox": ".doc_pages_reorder200response_layout_pages_item_pdf_crop_box", - "DocPagesReorder200ResponseLayoutPagesItemSize": ".doc_pages_reorder200response_layout_pages_item_size", - "DocPagesReorder200ResponseLayoutPagesItemTabOrder": ".doc_pages_reorder200response_layout_pages_item_tab_order", - "DocPagesReorder400Response": ".doc_pages_reorder400response", - "DocPagesReorder404Response": ".doc_pages_reorder404response", - "DocPagesRotate200Response": ".doc_pages_rotate200response", - "DocPagesRotate200ResponseLayout": ".doc_pages_rotate200response_layout", - "DocPagesRotate200ResponseLayoutNamedPagesItem": ".doc_pages_rotate200response_layout_named_pages_item", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget": ".doc_pages_rotate200response_layout_named_pages_item_target", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling": ".doc_pages_rotate200response_layout_named_pages_item_target_dangling", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage": ".doc_pages_rotate200response_layout_named_pages_item_target_page", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate": ".doc_pages_rotate200response_layout_named_pages_item_target_template", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling": ".doc_pages_rotate200response_layout_named_pages_item_target", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page": ".doc_pages_rotate200response_layout_named_pages_item_target", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template": ".doc_pages_rotate200response_layout_named_pages_item_target", - "DocPagesRotate200ResponseLayoutPagesItem": ".doc_pages_rotate200response_layout_pages_item", - "DocPagesRotate200ResponseLayoutPagesItemBoxes": ".doc_pages_rotate200response_layout_pages_item_boxes", - "DocPagesRotate200ResponseLayoutPagesItemBoxesArt": ".doc_pages_rotate200response_layout_pages_item_boxes_art", - "DocPagesRotate200ResponseLayoutPagesItemBoxesBleed": ".doc_pages_rotate200response_layout_pages_item_boxes_bleed", - "DocPagesRotate200ResponseLayoutPagesItemBoxesCrop": ".doc_pages_rotate200response_layout_pages_item_boxes_crop", - "DocPagesRotate200ResponseLayoutPagesItemBoxesMedia": ".doc_pages_rotate200response_layout_pages_item_boxes_media", - "DocPagesRotate200ResponseLayoutPagesItemBoxesTrim": ".doc_pages_rotate200response_layout_pages_item_boxes_trim", - "DocPagesRotate200ResponseLayoutPagesItemPdfCropBox": ".doc_pages_rotate200response_layout_pages_item_pdf_crop_box", - "DocPagesRotate200ResponseLayoutPagesItemSize": ".doc_pages_rotate200response_layout_pages_item_size", - "DocPagesRotate200ResponseLayoutPagesItemTabOrder": ".doc_pages_rotate200response_layout_pages_item_tab_order", - "DocPagesRotate400Response": ".doc_pages_rotate400response", - "DocPagesRotate404Response": ".doc_pages_rotate404response", - "DocPagesRotateRequest": ".doc_pages_rotate_request", "DocPagesSetName200Response": ".doc_pages_set_name200response", "DocPagesSetName200ResponseLayout": ".doc_pages_set_name200response_layout", "DocPagesSetName200ResponseLayoutNamedPagesItem": ".doc_pages_set_name200response_layout_named_pages_item", @@ -4036,6 +4141,7 @@ "DocumentActionsSnapshotNameTreeScriptsItem": ".document_actions_snapshot_name_tree_scripts_item", "DocumentMetadata": ".document_metadata", "DocumentMetadataTrapped": ".document_metadata_trapped", + "DocumentOutline": ".document_outline", "DocumentsCommit200Response": ".documents_commit200response", "DocumentsCommit200ResponseDocument": ".documents_commit200response_document", "DocumentsCommit200ResponseDocumentState": ".documents_commit200response_document_state", @@ -4320,6 +4426,16 @@ "MetadataPatch": ".metadata_patch", "MetadataPatchTrapped": ".metadata_patch_trapped", "MutationMeta": ".mutation_meta", + "OutlineItem": ".outline_item", + "OutlineItemDraft": ".outline_item_draft", + "OutlineItemPatch": ".outline_item_patch", + "OutlineItemRef": ".outline_item_ref", + "OutlineItemRefKind": ".outline_item_ref_kind", + "OutlineMutationMeta": ".outline_mutation_meta", + "OutlineOrder": ".outline_order", + "OutlinePosition": ".outline_position", + "OutlinePositionAfter": ".outline_position_after", + "OutlinePositionZero": ".outline_position_zero", "PageDestination": ".page_destination", "PageDestinationFit": ".page_destination_fit", "PageDestinationFitB": ".page_destination_fit_b", @@ -4848,7 +4964,6 @@ def __dir__(): "AnnotationDraft_Widget", "AnnotationFileAttachment", "AnnotationFileAttachmentBlendMode", - "AnnotationFileAttachmentFile", "AnnotationFileAttachmentIcon", "AnnotationFileAttachmentRect", "AnnotationFileAttachmentReply", @@ -5420,6 +5535,13 @@ def __dir__(): "Annotation_Underline", "Annotation_Unsupported", "Annotation_Widget", + "Attachment", + "AttachmentFileBase", + "AttachmentFileInfo", + "AttachmentList", + "AttachmentMutationMeta", + "AttachmentRef", + "AttachmentRefKind", "CacheDelta", "CacheDeltaPagesItem", "CacheDeltaPagesItemCache", @@ -5431,6 +5553,9 @@ def __dir__(): "ChangeItemAnnotationsUpdate", "ChangeItemAnnotationsUpdateAppearance", "ChangeItemAnnotationsUpdateAppearanceAction", + "ChangeItemAttachmentsCreate", + "ChangeItemAttachmentsDelete", + "ChangeItemAttachmentsRestore", "ChangeItemFormsAddWidget", "ChangeItemFormsCreate", "ChangeItemFormsDelete", @@ -5451,6 +5576,131 @@ def __dir__(): "ChangeItemFormsUpdateWidgetAppearanceAction", "ChangeItemMetadataUpdate", "ChangeItemMetadataUpdateCustom", + "ChangeItemOutlineCreate", + "ChangeItemOutlineDelete", + "ChangeItemOutlineMove", + "ChangeItemOutlineRestore", + "ChangeItemOutlineUpdate", + "ChangeItemPagesDelete", + "ChangeItemPagesDeleteLayout", + "ChangeItemPagesDeleteLayoutNamedPagesItem", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage", + "ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesDeleteLayoutPagesItem", + "ChangeItemPagesDeleteLayoutPagesItemBoxes", + "ChangeItemPagesDeleteLayoutPagesItemBoxesArt", + "ChangeItemPagesDeleteLayoutPagesItemBoxesBleed", + "ChangeItemPagesDeleteLayoutPagesItemBoxesCrop", + "ChangeItemPagesDeleteLayoutPagesItemBoxesMedia", + "ChangeItemPagesDeleteLayoutPagesItemBoxesTrim", + "ChangeItemPagesDeleteLayoutPagesItemPdfCropBox", + "ChangeItemPagesDeleteLayoutPagesItemSize", + "ChangeItemPagesDeleteLayoutPagesItemTabOrder", + "ChangeItemPagesInsert", + "ChangeItemPagesInsertBlank", + "ChangeItemPagesInsertBlankLayout", + "ChangeItemPagesInsertBlankLayoutNamedPagesItem", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesInsertBlankLayoutPagesItem", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxes", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia", + "ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim", + "ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox", + "ChangeItemPagesInsertBlankLayoutPagesItemSize", + "ChangeItemPagesInsertBlankLayoutPagesItemTabOrder", + "ChangeItemPagesInsertLayout", + "ChangeItemPagesInsertLayoutNamedPagesItem", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetPage", + "ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesInsertLayoutPagesItem", + "ChangeItemPagesInsertLayoutPagesItemBoxes", + "ChangeItemPagesInsertLayoutPagesItemBoxesArt", + "ChangeItemPagesInsertLayoutPagesItemBoxesBleed", + "ChangeItemPagesInsertLayoutPagesItemBoxesCrop", + "ChangeItemPagesInsertLayoutPagesItemBoxesMedia", + "ChangeItemPagesInsertLayoutPagesItemBoxesTrim", + "ChangeItemPagesInsertLayoutPagesItemPdfCropBox", + "ChangeItemPagesInsertLayoutPagesItemSize", + "ChangeItemPagesInsertLayoutPagesItemTabOrder", + "ChangeItemPagesReorder", + "ChangeItemPagesReorderLayout", + "ChangeItemPagesReorderLayoutNamedPagesItem", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetPage", + "ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesReorderLayoutPagesItem", + "ChangeItemPagesReorderLayoutPagesItemBoxes", + "ChangeItemPagesReorderLayoutPagesItemBoxesArt", + "ChangeItemPagesReorderLayoutPagesItemBoxesBleed", + "ChangeItemPagesReorderLayoutPagesItemBoxesCrop", + "ChangeItemPagesReorderLayoutPagesItemBoxesMedia", + "ChangeItemPagesReorderLayoutPagesItemBoxesTrim", + "ChangeItemPagesReorderLayoutPagesItemPdfCropBox", + "ChangeItemPagesReorderLayoutPagesItemSize", + "ChangeItemPagesReorderLayoutPagesItemTabOrder", + "ChangeItemPagesRestore", + "ChangeItemPagesRestoreLayout", + "ChangeItemPagesRestoreLayoutNamedPagesItem", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage", + "ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesRestoreLayoutPagesItem", + "ChangeItemPagesRestoreLayoutPagesItemBoxes", + "ChangeItemPagesRestoreLayoutPagesItemBoxesArt", + "ChangeItemPagesRestoreLayoutPagesItemBoxesBleed", + "ChangeItemPagesRestoreLayoutPagesItemBoxesCrop", + "ChangeItemPagesRestoreLayoutPagesItemBoxesMedia", + "ChangeItemPagesRestoreLayoutPagesItemBoxesTrim", + "ChangeItemPagesRestoreLayoutPagesItemPdfCropBox", + "ChangeItemPagesRestoreLayoutPagesItemSize", + "ChangeItemPagesRestoreLayoutPagesItemTabOrder", + "ChangeItemPagesRotate", + "ChangeItemPagesRotateLayout", + "ChangeItemPagesRotateLayoutNamedPagesItem", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetPage", + "ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page", + "ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template", + "ChangeItemPagesRotateLayoutPagesItem", + "ChangeItemPagesRotateLayoutPagesItemBoxes", + "ChangeItemPagesRotateLayoutPagesItemBoxesArt", + "ChangeItemPagesRotateLayoutPagesItemBoxesBleed", + "ChangeItemPagesRotateLayoutPagesItemBoxesCrop", + "ChangeItemPagesRotateLayoutPagesItemBoxesMedia", + "ChangeItemPagesRotateLayoutPagesItemBoxesTrim", + "ChangeItemPagesRotateLayoutPagesItemPdfCropBox", + "ChangeItemPagesRotateLayoutPagesItemSize", + "ChangeItemPagesRotateLayoutPagesItemTabOrder", "ChangeItemSkipped", "ChangeItemSkippedOp", "ChangeItem_AnnotationsCreate", @@ -5458,6 +5708,9 @@ def __dir__(): "ChangeItem_AnnotationsReorder", "ChangeItem_AnnotationsRestore", "ChangeItem_AnnotationsUpdate", + "ChangeItem_AttachmentsCreate", + "ChangeItem_AttachmentsDelete", + "ChangeItem_AttachmentsRestore", "ChangeItem_FormsAddWidget", "ChangeItem_FormsCreate", "ChangeItem_FormsDelete", @@ -5476,6 +5729,17 @@ def __dir__(): "ChangeItem_FormsUpdateWidget", "ChangeItem_MetadataUpdate", "ChangeItem_MetadataUpdateCustom", + "ChangeItem_OutlineCreate", + "ChangeItem_OutlineDelete", + "ChangeItem_OutlineMove", + "ChangeItem_OutlineRestore", + "ChangeItem_OutlineUpdate", + "ChangeItem_PagesDelete", + "ChangeItem_PagesInsert", + "ChangeItem_PagesInsertBlank", + "ChangeItem_PagesReorder", + "ChangeItem_PagesRestore", + "ChangeItem_PagesRotate", "ChangeItem_Skipped", "ChangeOp", "ChangeOpAnnotationsCreate", @@ -5484,6 +5748,9 @@ def __dir__(): "ChangeOpAnnotationsReorder", "ChangeOpAnnotationsUpdate", "ChangeOpAnnotationsUpdateResources", + "ChangeOpAttachmentsCreate", + "ChangeOpAttachmentsCreateResources", + "ChangeOpAttachmentsDelete", "ChangeOpFormsAddWidget", "ChangeOpFormsCreate", "ChangeOpFormsDelete", @@ -5502,10 +5769,24 @@ def __dir__(): "ChangeOpFormsUpdateWidget", "ChangeOpMetadataUpdate", "ChangeOpMetadataUpdateCustom", + "ChangeOpOutlineCreate", + "ChangeOpOutlineDelete", + "ChangeOpOutlineMove", + "ChangeOpOutlineUpdate", + "ChangeOpPagesDelete", + "ChangeOpPagesInsert", + "ChangeOpPagesInsertBlank", + "ChangeOpPagesInsertBlankSpec", + "ChangeOpPagesInsertBlankSpecSize", + "ChangeOpPagesInsertResources", + "ChangeOpPagesReorder", + "ChangeOpPagesRotate", "ChangeOp_AnnotationsCreate", "ChangeOp_AnnotationsDelete", "ChangeOp_AnnotationsReorder", "ChangeOp_AnnotationsUpdate", + "ChangeOp_AttachmentsCreate", + "ChangeOp_AttachmentsDelete", "ChangeOp_FormsAddWidget", "ChangeOp_FormsCreate", "ChangeOp_FormsDelete", @@ -5522,6 +5803,15 @@ def __dir__(): "ChangeOp_FormsUpdateWidget", "ChangeOp_MetadataUpdate", "ChangeOp_MetadataUpdateCustom", + "ChangeOp_OutlineCreate", + "ChangeOp_OutlineDelete", + "ChangeOp_OutlineMove", + "ChangeOp_OutlineUpdate", + "ChangeOp_PagesDelete", + "ChangeOp_PagesInsert", + "ChangeOp_PagesInsertBlank", + "ChangeOp_PagesReorder", + "ChangeOp_PagesRotate", "ChangeResult", "DeploymentLicenseStatusResponse", "DocAnnotationsCreate200Response", @@ -5547,6 +5837,9 @@ def __dir__(): "DocAnnotationsListAll409Response", "DocAnnotationsReadAppearance400Response", "DocAnnotationsReadAppearance404Response", + "DocAnnotationsReadFile400Response", + "DocAnnotationsReadFile404Response", + "DocAnnotationsReadFile413Response", "DocAnnotationsReorder200Response", "DocAnnotationsReorder400Response", "DocAnnotationsReorder404Response", @@ -5556,6 +5849,11 @@ def __dir__(): "DocAnnotationsUpdate400Response", "DocAnnotationsUpdate404Response", "DocAnnotationsUpdateRequest", + "DocAttachmentsDownload400Response", + "DocAttachmentsDownload404Response", + "DocAttachmentsDownload413Response", + "DocAttachmentsList200Response", + "DocAttachmentsList404Response", "DocChanges200Response", "DocChanges200ResponseChangesItem", "DocChanges200ResponseChangesItemApplied", @@ -5619,34 +5917,14 @@ def __dir__(): "DocManifest200ResponseScopesForms", "DocManifest200ResponseScopesLayout", "DocManifest200ResponseScopesMetadata", + "DocManifest200ResponseScopesOutline", "DocManifest404Response", "DocMetadataCustomGet200Response", "DocMetadataCustomGet404Response", "DocMetadataGet200Response", "DocMetadataGet404Response", - "DocPagesDelete200Response", - "DocPagesDelete200ResponseLayout", - "DocPagesDelete200ResponseLayoutNamedPagesItem", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesDelete200ResponseLayoutPagesItem", - "DocPagesDelete200ResponseLayoutPagesItemBoxes", - "DocPagesDelete200ResponseLayoutPagesItemBoxesArt", - "DocPagesDelete200ResponseLayoutPagesItemBoxesBleed", - "DocPagesDelete200ResponseLayoutPagesItemBoxesCrop", - "DocPagesDelete200ResponseLayoutPagesItemBoxesMedia", - "DocPagesDelete200ResponseLayoutPagesItemBoxesTrim", - "DocPagesDelete200ResponseLayoutPagesItemPdfCropBox", - "DocPagesDelete200ResponseLayoutPagesItemSize", - "DocPagesDelete200ResponseLayoutPagesItemTabOrder", - "DocPagesDelete400Response", - "DocPagesDelete404Response", - "DocPagesDeleteRequest", + "DocOutlineGet200Response", + "DocOutlineGet404Response", "DocPagesExtract400Response", "DocPagesExtract404Response", "DocPagesExtractRequest", @@ -5657,51 +5935,6 @@ def __dir__(): "DocPagesFlatten400Response", "DocPagesFlatten404Response", "DocPagesFlattenRequest", - "DocPagesInsert200Response", - "DocPagesInsert200ResponseLayout", - "DocPagesInsert200ResponseLayoutNamedPagesItem", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesInsert200ResponseLayoutPagesItem", - "DocPagesInsert200ResponseLayoutPagesItemBoxes", - "DocPagesInsert200ResponseLayoutPagesItemBoxesArt", - "DocPagesInsert200ResponseLayoutPagesItemBoxesBleed", - "DocPagesInsert200ResponseLayoutPagesItemBoxesCrop", - "DocPagesInsert200ResponseLayoutPagesItemBoxesMedia", - "DocPagesInsert200ResponseLayoutPagesItemBoxesTrim", - "DocPagesInsert200ResponseLayoutPagesItemPdfCropBox", - "DocPagesInsert200ResponseLayoutPagesItemSize", - "DocPagesInsert200ResponseLayoutPagesItemTabOrder", - "DocPagesInsert400Response", - "DocPagesInsert404Response", - "DocPagesInsertBlank200Response", - "DocPagesInsertBlank200ResponseLayout", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItem", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesInsertBlank200ResponseLayoutPagesItem", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxes", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia", - "DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim", - "DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox", - "DocPagesInsertBlank200ResponseLayoutPagesItemSize", - "DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder", - "DocPagesInsertBlank400Response", - "DocPagesInsertBlank404Response", - "DocPagesInsertBlankRequest", "DocPagesRemoveName200Response", "DocPagesRemoveName200ResponseLayout", "DocPagesRemoveName200ResponseLayoutNamedPagesItem", @@ -5725,51 +5958,6 @@ def __dir__(): "DocPagesRemoveName400Response", "DocPagesRemoveName404Response", "DocPagesRemoveNameRequest", - "DocPagesReorder200Response", - "DocPagesReorder200ResponseLayout", - "DocPagesReorder200ResponseLayoutNamedPagesItem", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesReorder200ResponseLayoutPagesItem", - "DocPagesReorder200ResponseLayoutPagesItemBoxes", - "DocPagesReorder200ResponseLayoutPagesItemBoxesArt", - "DocPagesReorder200ResponseLayoutPagesItemBoxesBleed", - "DocPagesReorder200ResponseLayoutPagesItemBoxesCrop", - "DocPagesReorder200ResponseLayoutPagesItemBoxesMedia", - "DocPagesReorder200ResponseLayoutPagesItemBoxesTrim", - "DocPagesReorder200ResponseLayoutPagesItemPdfCropBox", - "DocPagesReorder200ResponseLayoutPagesItemSize", - "DocPagesReorder200ResponseLayoutPagesItemTabOrder", - "DocPagesReorder400Response", - "DocPagesReorder404Response", - "DocPagesRotate200Response", - "DocPagesRotate200ResponseLayout", - "DocPagesRotate200ResponseLayoutNamedPagesItem", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage", - "DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page", - "DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template", - "DocPagesRotate200ResponseLayoutPagesItem", - "DocPagesRotate200ResponseLayoutPagesItemBoxes", - "DocPagesRotate200ResponseLayoutPagesItemBoxesArt", - "DocPagesRotate200ResponseLayoutPagesItemBoxesBleed", - "DocPagesRotate200ResponseLayoutPagesItemBoxesCrop", - "DocPagesRotate200ResponseLayoutPagesItemBoxesMedia", - "DocPagesRotate200ResponseLayoutPagesItemBoxesTrim", - "DocPagesRotate200ResponseLayoutPagesItemPdfCropBox", - "DocPagesRotate200ResponseLayoutPagesItemSize", - "DocPagesRotate200ResponseLayoutPagesItemTabOrder", - "DocPagesRotate400Response", - "DocPagesRotate404Response", - "DocPagesRotateRequest", "DocPagesSetName200Response", "DocPagesSetName200ResponseLayout", "DocPagesSetName200ResponseLayoutNamedPagesItem", @@ -5960,6 +6148,7 @@ def __dir__(): "DocumentActionsSnapshotNameTreeScriptsItem", "DocumentMetadata", "DocumentMetadataTrapped", + "DocumentOutline", "DocumentsCommit200Response", "DocumentsCommit200ResponseDocument", "DocumentsCommit200ResponseDocumentState", @@ -6244,6 +6433,16 @@ def __dir__(): "MetadataPatch", "MetadataPatchTrapped", "MutationMeta", + "OutlineItem", + "OutlineItemDraft", + "OutlineItemPatch", + "OutlineItemRef", + "OutlineItemRefKind", + "OutlineMutationMeta", + "OutlineOrder", + "OutlinePosition", + "OutlinePositionAfter", + "OutlinePositionZero", "PageDestination", "PageDestinationFit", "PageDestinationFitB", diff --git a/src/cloudpdf/types/annotation.py b/src/cloudpdf/types/annotation.py index a4ffe95..527f149 100644 --- a/src/cloudpdf/types/annotation.py +++ b/src/cloudpdf/types/annotation.py @@ -20,7 +20,6 @@ from .annotation_circle_rect import AnnotationCircleRect from .annotation_circle_reply import AnnotationCircleReply from .annotation_file_attachment_blend_mode import AnnotationFileAttachmentBlendMode -from .annotation_file_attachment_file import AnnotationFileAttachmentFile from .annotation_file_attachment_icon import AnnotationFileAttachmentIcon from .annotation_file_attachment_rect import AnnotationFileAttachmentRect from .annotation_file_attachment_reply import AnnotationFileAttachmentReply @@ -114,6 +113,7 @@ from .annotation_unsupported_blend_mode import AnnotationUnsupportedBlendMode from .annotation_unsupported_rect import AnnotationUnsupportedRect from .annotation_unsupported_reply import AnnotationUnsupportedReply +from .attachment_file_info import AttachmentFileInfo from .form_field_ref import FormFieldRef from .page_ref import PageRef from .pdf_annotation_actions import PdfAnnotationActions @@ -1431,7 +1431,7 @@ class Annotation_FileAttachment(UniversalBaseModel): color: str opacity: float icon: AnnotationFileAttachmentIcon - file: typing.Optional[AnnotationFileAttachmentFile] = None + file: typing.Optional[AttachmentFileInfo] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/annotation_file_attachment.py b/src/cloudpdf/types/annotation_file_attachment.py index 58361da..9a4a276 100644 --- a/src/cloudpdf/types/annotation_file_attachment.py +++ b/src/cloudpdf/types/annotation_file_attachment.py @@ -8,11 +8,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata from .annotation_file_attachment_blend_mode import AnnotationFileAttachmentBlendMode -from .annotation_file_attachment_file import AnnotationFileAttachmentFile from .annotation_file_attachment_icon import AnnotationFileAttachmentIcon from .annotation_file_attachment_rect import AnnotationFileAttachmentRect from .annotation_file_attachment_reply import AnnotationFileAttachmentReply from .annotation_ref import AnnotationRef +from .attachment_file_info import AttachmentFileInfo from .page_ref import PageRef from .pdf_annotation_actions import PdfAnnotationActions @@ -75,7 +75,7 @@ class AnnotationFileAttachment(UniversalBaseModel): color: str opacity: float icon: AnnotationFileAttachmentIcon - file: typing.Optional[AnnotationFileAttachmentFile] = None + file: typing.Optional[AttachmentFileInfo] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/attachment.py b/src/cloudpdf/types/attachment.py new file mode 100644 index 0000000..5ec9af1 --- /dev/null +++ b/src/cloudpdf/types/attachment.py @@ -0,0 +1,37 @@ +# This file was auto-generated by Fern from our API Definition. + +import datetime as dt +import typing + +import pydantic +import typing_extensions +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ..core.serialization import FieldMetadata +from .attachment_ref import AttachmentRef + + +class Attachment(UniversalBaseModel): + ref: AttachmentRef + name: str + mime_type: typing_extensions.Annotated[ + typing.Optional[str], FieldMetadata(alias="mimeType"), pydantic.Field(alias="mimeType") + ] = None + description: typing.Optional[str] = None + size: typing.Optional[int] = None + checksum: typing.Optional[str] = None + created_at: typing_extensions.Annotated[ + typing.Optional[dt.datetime], FieldMetadata(alias="createdAt"), pydantic.Field(alias="createdAt") + ] = None + modified_at: typing_extensions.Annotated[ + typing.Optional[dt.datetime], FieldMetadata(alias="modifiedAt"), pydantic.Field(alias="modifiedAt") + ] = None + index: 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/attachment_file_base.py b/src/cloudpdf/types/attachment_file_base.py new file mode 100644 index 0000000..8950343 --- /dev/null +++ b/src/cloudpdf/types/attachment_file_base.py @@ -0,0 +1,25 @@ +# 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 AttachmentFileBase(UniversalBaseModel): + name: str + mime_type: typing_extensions.Annotated[ + typing.Optional[str], FieldMetadata(alias="mimeType"), pydantic.Field(alias="mimeType") + ] = None + description: typing.Optional[str] = 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/annotation_file_attachment_file.py b/src/cloudpdf/types/attachment_file_info.py similarity index 95% rename from src/cloudpdf/types/annotation_file_attachment_file.py rename to src/cloudpdf/types/attachment_file_info.py index 311dcb0..602580c 100644 --- a/src/cloudpdf/types/annotation_file_attachment_file.py +++ b/src/cloudpdf/types/attachment_file_info.py @@ -9,7 +9,7 @@ from ..core.serialization import FieldMetadata -class AnnotationFileAttachmentFile(UniversalBaseModel): +class AttachmentFileInfo(UniversalBaseModel): name: str mime_type: typing_extensions.Annotated[ typing.Optional[str], FieldMetadata(alias="mimeType"), pydantic.Field(alias="mimeType") diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_size.py b/src/cloudpdf/types/attachment_list.py similarity index 79% rename from src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_size.py rename to src/cloudpdf/types/attachment_list.py index 9c755fc..bf971cb 100644 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_size.py +++ b/src/cloudpdf/types/attachment_list.py @@ -4,11 +4,11 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .attachment import Attachment -class DocPagesInsertBlank200ResponseLayoutPagesItemSize(UniversalBaseModel): - width: float - height: float +class AttachmentList(UniversalBaseModel): + attachments: typing.List[Attachment] if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/attachment_mutation_meta.py b/src/cloudpdf/types/attachment_mutation_meta.py new file mode 100644 index 0000000..f036021 --- /dev/null +++ b/src/cloudpdf/types/attachment_mutation_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 .attachment_ref import AttachmentRef +from .cache_delta import CacheDelta +from .page_ref import PageRef + + +class AttachmentMutationMeta(UniversalBaseModel): + affected_pages: typing_extensions.Annotated[ + typing.List[PageRef], FieldMetadata(alias="affectedPages"), pydantic.Field(alias="affectedPages") + ] + cache_delta: typing_extensions.Annotated[ + typing.Optional[CacheDelta], FieldMetadata(alias="cacheDelta"), pydantic.Field(alias="cacheDelta") + ] = None + op_id: typing_extensions.Annotated[str, FieldMetadata(alias="opId"), pydantic.Field(alias="opId")] + undoable: bool + changed: typing.List[AttachmentRef] + + 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/attachment_ref.py b/src/cloudpdf/types/attachment_ref.py new file mode 100644 index 0000000..eadb35e --- /dev/null +++ b/src/cloudpdf/types/attachment_ref.py @@ -0,0 +1,21 @@ +# 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 .attachment_ref_kind import AttachmentRefKind + + +class AttachmentRef(UniversalBaseModel): + kind: AttachmentRefKind + key: str + + 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_blank_request.py b/src/cloudpdf/types/attachment_ref_kind.py similarity index 54% rename from src/cloudpdf/types/doc_pages_insert_blank_request.py rename to src/cloudpdf/types/attachment_ref_kind.py index 71c1ac9..ec007d6 100644 --- a/src/cloudpdf/types/doc_pages_insert_blank_request.py +++ b/src/cloudpdf/types/attachment_ref_kind.py @@ -2,4 +2,4 @@ import typing -DocPagesInsertBlankRequest = typing.Dict[str, typing.Any] +AttachmentRefKind = typing.Union[typing.Literal["key"], typing.Any] diff --git a/src/cloudpdf/types/cache_delta.py b/src/cloudpdf/types/cache_delta.py index 9c70f31..e77645b 100644 --- a/src/cloudpdf/types/cache_delta.py +++ b/src/cloudpdf/types/cache_delta.py @@ -29,6 +29,9 @@ class CacheDelta(UniversalBaseModel): attachments_version: typing_extensions.Annotated[ typing.Optional[int], FieldMetadata(alias="attachmentsVersion"), pydantic.Field(alias="attachmentsVersion") ] = None + outline_version: typing_extensions.Annotated[ + typing.Optional[int], FieldMetadata(alias="outlineVersion"), pydantic.Field(alias="outlineVersion") + ] = None layer_version: typing_extensions.Annotated[ typing.Optional[int], FieldMetadata(alias="layerVersion"), pydantic.Field(alias="layerVersion") ] = None diff --git a/src/cloudpdf/types/change_item.py b/src/cloudpdf/types/change_item.py index 3909830..146c0dd 100644 --- a/src/cloudpdf/types/change_item.py +++ b/src/cloudpdf/types/change_item.py @@ -11,14 +11,25 @@ from .annotation import Annotation from .annotation_mutation_meta import AnnotationMutationMeta from .annotation_ref import AnnotationRef +from .attachment import Attachment +from .attachment_mutation_meta import AttachmentMutationMeta from .change_item_annotations_update_appearance import ChangeItemAnnotationsUpdateAppearance from .change_item_forms_update_widget_appearance import ChangeItemFormsUpdateWidgetAppearance +from .change_item_pages_delete_layout import ChangeItemPagesDeleteLayout +from .change_item_pages_insert_blank_layout import ChangeItemPagesInsertBlankLayout +from .change_item_pages_insert_layout import ChangeItemPagesInsertLayout +from .change_item_pages_reorder_layout import ChangeItemPagesReorderLayout +from .change_item_pages_restore_layout import ChangeItemPagesRestoreLayout +from .change_item_pages_rotate_layout import ChangeItemPagesRotateLayout from .change_item_skipped_op import ChangeItemSkippedOp from .document_metadata import DocumentMetadata from .form_field import FormField from .form_field_ref import FormFieldRef from .form_mutation_meta import FormMutationMeta from .mutation_meta import MutationMeta +from .outline_item import OutlineItem +from .outline_mutation_meta import OutlineMutationMeta +from .outline_order import OutlineOrder from .page_ref import PageRef from .widget_annotation import WidgetAnnotation @@ -440,6 +451,228 @@ class Config: extra = pydantic.Extra.allow +class ChangeItem_OutlineCreate(UniversalBaseModel): + type: typing.Literal["outline.create"] = "outline.create" + item: OutlineItem + order: OutlineOrder + meta: OutlineMutationMeta + + 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 ChangeItem_OutlineUpdate(UniversalBaseModel): + type: typing.Literal["outline.update"] = "outline.update" + skipped: typing.Optional[typing.List[str]] = None + item: OutlineItem + meta: OutlineMutationMeta + + 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 ChangeItem_OutlineMove(UniversalBaseModel): + type: typing.Literal["outline.move"] = "outline.move" + orders: typing.List[OutlineOrder] + meta: OutlineMutationMeta + + 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 ChangeItem_OutlineDelete(UniversalBaseModel): + type: typing.Literal["outline.delete"] = "outline.delete" + meta: OutlineMutationMeta + + 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 ChangeItem_OutlineRestore(UniversalBaseModel): + type: typing.Literal["outline.restore"] = "outline.restore" + items: typing.List[OutlineItem] + order: OutlineOrder + meta: OutlineMutationMeta + + 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 ChangeItem_PagesRotate(UniversalBaseModel): + type: typing.Literal["pages.rotate"] = "pages.rotate" + pages: typing.List[PageRef] + rotation: float + layout: ChangeItemPagesRotateLayout + meta: MutationMeta + + 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 ChangeItem_PagesReorder(UniversalBaseModel): + type: typing.Literal["pages.reorder"] = "pages.reorder" + pages: typing.List[PageRef] + layout: ChangeItemPagesReorderLayout + meta: MutationMeta + + 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 ChangeItem_PagesDelete(UniversalBaseModel): + type: typing.Literal["pages.delete"] = "pages.delete" + pages: typing.List[PageRef] + layout: ChangeItemPagesDeleteLayout + meta: MutationMeta + + 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 ChangeItem_PagesInsertBlank(UniversalBaseModel): + type: typing.Literal["pages.insertBlank"] = "pages.insertBlank" + inserted_pages: typing_extensions.Annotated[ + typing.List[PageRef], FieldMetadata(alias="insertedPages"), pydantic.Field(alias="insertedPages") + ] + layout: ChangeItemPagesInsertBlankLayout + meta: MutationMeta + + 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 ChangeItem_PagesInsert(UniversalBaseModel): + type: typing.Literal["pages.insert"] = "pages.insert" + inserted_pages: typing_extensions.Annotated[ + typing.List[PageRef], FieldMetadata(alias="insertedPages"), pydantic.Field(alias="insertedPages") + ] + layout: ChangeItemPagesInsertLayout + meta: MutationMeta + + 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 ChangeItem_PagesRestore(UniversalBaseModel): + type: typing.Literal["pages.restore"] = "pages.restore" + pages: typing.List[PageRef] + layout: ChangeItemPagesRestoreLayout + meta: MutationMeta + + 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 ChangeItem_AttachmentsCreate(UniversalBaseModel): + type: typing.Literal["attachments.create"] = "attachments.create" + attachment: Attachment + meta: AttachmentMutationMeta + + 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 ChangeItem_AttachmentsDelete(UniversalBaseModel): + type: typing.Literal["attachments.delete"] = "attachments.delete" + meta: AttachmentMutationMeta + + 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 ChangeItem_AttachmentsRestore(UniversalBaseModel): + type: typing.Literal["attachments.restore"] = "attachments.restore" + attachment: Attachment + meta: AttachmentMutationMeta + + 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 + + ChangeItem = typing_extensions.Annotated[ typing.Union[ ChangeItem_Skipped, @@ -466,6 +699,20 @@ class Config: ChangeItem_FormsUpdateWidget, ChangeItem_MetadataUpdate, ChangeItem_MetadataUpdateCustom, + ChangeItem_OutlineCreate, + ChangeItem_OutlineUpdate, + ChangeItem_OutlineMove, + ChangeItem_OutlineDelete, + ChangeItem_OutlineRestore, + ChangeItem_PagesRotate, + ChangeItem_PagesReorder, + ChangeItem_PagesDelete, + ChangeItem_PagesInsertBlank, + ChangeItem_PagesInsert, + ChangeItem_PagesRestore, + ChangeItem_AttachmentsCreate, + ChangeItem_AttachmentsDelete, + ChangeItem_AttachmentsRestore, ], pydantic.Field(discriminator="type"), ] diff --git a/src/cloudpdf/types/change_item_attachments_create.py b/src/cloudpdf/types/change_item_attachments_create.py new file mode 100644 index 0000000..9b5a6e6 --- /dev/null +++ b/src/cloudpdf/types/change_item_attachments_create.py @@ -0,0 +1,22 @@ +# 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 .attachment import Attachment +from .attachment_mutation_meta import AttachmentMutationMeta + + +class ChangeItemAttachmentsCreate(UniversalBaseModel): + attachment: Attachment + meta: AttachmentMutationMeta + + 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/change_item_attachments_delete.py b/src/cloudpdf/types/change_item_attachments_delete.py new file mode 100644 index 0000000..996f074 --- /dev/null +++ b/src/cloudpdf/types/change_item_attachments_delete.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 .attachment_mutation_meta import AttachmentMutationMeta + + +class ChangeItemAttachmentsDelete(UniversalBaseModel): + meta: AttachmentMutationMeta + + 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/change_item_attachments_restore.py b/src/cloudpdf/types/change_item_attachments_restore.py new file mode 100644 index 0000000..451a0fa --- /dev/null +++ b/src/cloudpdf/types/change_item_attachments_restore.py @@ -0,0 +1,22 @@ +# 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 .attachment import Attachment +from .attachment_mutation_meta import AttachmentMutationMeta + + +class ChangeItemAttachmentsRestore(UniversalBaseModel): + attachment: Attachment + meta: AttachmentMutationMeta + + 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/change_item_outline_create.py b/src/cloudpdf/types/change_item_outline_create.py new file mode 100644 index 0000000..2a3bec8 --- /dev/null +++ b/src/cloudpdf/types/change_item_outline_create.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 .outline_item import OutlineItem +from .outline_mutation_meta import OutlineMutationMeta +from .outline_order import OutlineOrder + + +class ChangeItemOutlineCreate(UniversalBaseModel): + item: OutlineItem + order: OutlineOrder + meta: OutlineMutationMeta + + 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/change_item_outline_delete.py b/src/cloudpdf/types/change_item_outline_delete.py new file mode 100644 index 0000000..4acc367 --- /dev/null +++ b/src/cloudpdf/types/change_item_outline_delete.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 .outline_mutation_meta import OutlineMutationMeta + + +class ChangeItemOutlineDelete(UniversalBaseModel): + meta: OutlineMutationMeta + + 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/change_item_outline_move.py b/src/cloudpdf/types/change_item_outline_move.py new file mode 100644 index 0000000..e9cf89d --- /dev/null +++ b/src/cloudpdf/types/change_item_outline_move.py @@ -0,0 +1,22 @@ +# 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 .outline_mutation_meta import OutlineMutationMeta +from .outline_order import OutlineOrder + + +class ChangeItemOutlineMove(UniversalBaseModel): + orders: typing.List[OutlineOrder] + meta: OutlineMutationMeta + + 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/change_item_outline_restore.py b/src/cloudpdf/types/change_item_outline_restore.py new file mode 100644 index 0000000..6cee791 --- /dev/null +++ b/src/cloudpdf/types/change_item_outline_restore.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 .outline_item import OutlineItem +from .outline_mutation_meta import OutlineMutationMeta +from .outline_order import OutlineOrder + + +class ChangeItemOutlineRestore(UniversalBaseModel): + items: typing.List[OutlineItem] + order: OutlineOrder + meta: OutlineMutationMeta + + 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/change_item_outline_update.py b/src/cloudpdf/types/change_item_outline_update.py new file mode 100644 index 0000000..de23ad6 --- /dev/null +++ b/src/cloudpdf/types/change_item_outline_update.py @@ -0,0 +1,23 @@ +# 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 .outline_item import OutlineItem +from .outline_mutation_meta import OutlineMutationMeta + + +class ChangeItemOutlineUpdate(UniversalBaseModel): + skipped: typing.Optional[typing.List[str]] = None + item: OutlineItem + meta: OutlineMutationMeta + + 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_reorder200response.py b/src/cloudpdf/types/change_item_pages_delete.py similarity index 76% rename from src/cloudpdf/types/doc_pages_reorder200response.py rename to src/cloudpdf/types/change_item_pages_delete.py index e1855ad..6fde014 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response.py +++ b/src/cloudpdf/types/change_item_pages_delete.py @@ -4,14 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_reorder200response_layout import DocPagesReorder200ResponseLayout +from .change_item_pages_delete_layout import ChangeItemPagesDeleteLayout from .mutation_meta import MutationMeta from .page_ref import PageRef -class DocPagesReorder200Response(UniversalBaseModel): +class ChangeItemPagesDelete(UniversalBaseModel): pages: typing.List[PageRef] - layout: DocPagesReorder200ResponseLayout + layout: ChangeItemPagesDeleteLayout meta: MutationMeta if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout.py b/src/cloudpdf/types/change_item_pages_delete_layout.py similarity index 66% rename from src/cloudpdf/types/doc_pages_delete200response_layout.py rename to src/cloudpdf/types/change_item_pages_delete_layout.py index 6c1131a..a0bef8b 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout.py @@ -6,15 +6,15 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_delete200response_layout_named_pages_item import DocPagesDelete200ResponseLayoutNamedPagesItem -from .doc_pages_delete200response_layout_pages_item import DocPagesDelete200ResponseLayoutPagesItem +from .change_item_pages_delete_layout_named_pages_item import ChangeItemPagesDeleteLayoutNamedPagesItem +from .change_item_pages_delete_layout_pages_item import ChangeItemPagesDeleteLayoutPagesItem -class DocPagesDelete200ResponseLayout(UniversalBaseModel): +class ChangeItemPagesDeleteLayout(UniversalBaseModel): page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] - pages: typing.List[DocPagesDelete200ResponseLayoutPagesItem] + pages: typing.List[ChangeItemPagesDeleteLayoutPagesItem] named_pages: typing_extensions.Annotated[ - typing.List[DocPagesDelete200ResponseLayoutNamedPagesItem], + typing.List[ChangeItemPagesDeleteLayoutNamedPagesItem], FieldMetadata(alias="namedPages"), pydantic.Field(alias="namedPages"), ] diff --git a/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item.py new file mode 100644 index 0000000..8ef5512 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item.py @@ -0,0 +1,21 @@ +# 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 .change_item_pages_delete_layout_named_pages_item_target import ChangeItemPagesDeleteLayoutNamedPagesItemTarget + + +class ChangeItemPagesDeleteLayoutNamedPagesItem(UniversalBaseModel): + name: str + target: ChangeItemPagesDeleteLayoutNamedPagesItemTarget + + 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_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target.py similarity index 75% rename from src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target.py rename to src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target.py index 1b60bc2..6b0415a 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target.py @@ -11,7 +11,7 @@ from .page_ref import PageRef -class DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page(UniversalBaseModel): kind: typing.Literal["page"] = "page" page: PageRef @@ -25,7 +25,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template(UniversalBaseModel): kind: typing.Literal["template"] = "template" object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") @@ -41,7 +41,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): kind: typing.Literal["dangling"] = "dangling" if IS_PYDANTIC_V2: @@ -54,11 +54,11 @@ class Config: extra = pydantic.Extra.allow -DocPagesInsert200ResponseLayoutNamedPagesItemTarget = typing_extensions.Annotated[ +ChangeItemPagesDeleteLayoutNamedPagesItemTarget = typing_extensions.Annotated[ typing.Union[ - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesInsert200ResponseLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Page, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Template, + ChangeItemPagesDeleteLayoutNamedPagesItemTarget_Dangling, ], pydantic.Field(discriminator="kind"), ] diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_dangling.py similarity index 84% rename from src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_dangling.py rename to src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_dangling.py index 9b3e2b4..b660548 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_dangling.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_dangling.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutNamedPagesItemTargetDangling(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTargetDangling(UniversalBaseModel): if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_page.py similarity index 86% rename from src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_page.py rename to src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_page.py index 7a548ec..b7ec43c 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_page.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_page.py @@ -7,7 +7,7 @@ from .page_ref import PageRef -class DocPagesInsert200ResponseLayoutNamedPagesItemTargetPage(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTargetPage(UniversalBaseModel): page: PageRef if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_template.py similarity index 88% rename from src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_template.py rename to src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_template.py index 8e3eadb..5da5a9f 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_template.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_named_pages_item_target_template.py @@ -8,7 +8,7 @@ from ..core.serialization import FieldMetadata -class DocPagesDelete200ResponseLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") ] diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item.py similarity index 59% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item.py index fe319eb..14b80cb 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item.py @@ -6,31 +6,29 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_rotate200response_layout_pages_item_boxes import DocPagesRotate200ResponseLayoutPagesItemBoxes -from .doc_pages_rotate200response_layout_pages_item_pdf_crop_box import ( - DocPagesRotate200ResponseLayoutPagesItemPdfCropBox, -) -from .doc_pages_rotate200response_layout_pages_item_size import DocPagesRotate200ResponseLayoutPagesItemSize -from .doc_pages_rotate200response_layout_pages_item_tab_order import DocPagesRotate200ResponseLayoutPagesItemTabOrder +from .change_item_pages_delete_layout_pages_item_boxes import ChangeItemPagesDeleteLayoutPagesItemBoxes +from .change_item_pages_delete_layout_pages_item_pdf_crop_box import ChangeItemPagesDeleteLayoutPagesItemPdfCropBox +from .change_item_pages_delete_layout_pages_item_size import ChangeItemPagesDeleteLayoutPagesItemSize +from .change_item_pages_delete_layout_pages_item_tab_order import ChangeItemPagesDeleteLayoutPagesItemTabOrder from .page_ref import PageRef from .pdf_page_actions import PdfPageActions -class DocPagesRotate200ResponseLayoutPagesItem(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItem(UniversalBaseModel): index: int ref: PageRef label: typing.Optional[str] = None - size: DocPagesRotate200ResponseLayoutPagesItemSize + size: ChangeItemPagesDeleteLayoutPagesItemSize rotation: float user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] tab_order: typing_extensions.Annotated[ - typing.Optional[DocPagesRotate200ResponseLayoutPagesItemTabOrder], + typing.Optional[ChangeItemPagesDeleteLayoutPagesItemTabOrder], FieldMetadata(alias="tabOrder"), pydantic.Field(alias="tabOrder"), ] = None - boxes: DocPagesRotate200ResponseLayoutPagesItemBoxes + boxes: ChangeItemPagesDeleteLayoutPagesItemBoxes pdf_crop_box: typing_extensions.Annotated[ - DocPagesRotate200ResponseLayoutPagesItemPdfCropBox, + ChangeItemPagesDeleteLayoutPagesItemPdfCropBox, FieldMetadata(alias="pdfCropBox"), pydantic.Field(alias="pdfCropBox"), ] diff --git a/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes.py new file mode 100644 index 0000000..f633ab3 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes.py @@ -0,0 +1,28 @@ +# 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 .change_item_pages_delete_layout_pages_item_boxes_art import ChangeItemPagesDeleteLayoutPagesItemBoxesArt +from .change_item_pages_delete_layout_pages_item_boxes_bleed import ChangeItemPagesDeleteLayoutPagesItemBoxesBleed +from .change_item_pages_delete_layout_pages_item_boxes_crop import ChangeItemPagesDeleteLayoutPagesItemBoxesCrop +from .change_item_pages_delete_layout_pages_item_boxes_media import ChangeItemPagesDeleteLayoutPagesItemBoxesMedia +from .change_item_pages_delete_layout_pages_item_boxes_trim import ChangeItemPagesDeleteLayoutPagesItemBoxesTrim + + +class ChangeItemPagesDeleteLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesDeleteLayoutPagesItemBoxesMedia + crop: ChangeItemPagesDeleteLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesDeleteLayoutPagesItemBoxesBleed + trim: ChangeItemPagesDeleteLayoutPagesItemBoxesTrim + art: ChangeItemPagesDeleteLayoutPagesItemBoxesArt + + 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_rotate200response_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_art.py similarity index 87% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_art.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_art.py index b0aadc7..35328a6 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_art.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_art.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesRotate200ResponseLayoutPagesItemBoxesArt(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemBoxesArt(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_bleed.py similarity index 87% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_art.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_bleed.py index 7a10013..46dde7c 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_art.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_bleed.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesInsert200ResponseLayoutPagesItemBoxesArt(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemBoxesBleed(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_crop.py similarity index 87% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_art.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_crop.py index 241df12..c5b0d00 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_art.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_crop.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemBoxesArt(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemBoxesCrop(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_media.py similarity index 87% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_trim.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_media.py index 4163f67..8c187f7 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_trim.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_media.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemBoxesTrim(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemBoxesMedia(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_trim.py new file mode 100644 index 0000000..bcb81c8 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_boxes_trim.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesDeleteLayoutPagesItemBoxesTrim(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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_delete200response_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_pdf_crop_box.py similarity index 87% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_pdf_crop_box.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_pdf_crop_box.py index 449ce5e..6db9832 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_pdf_crop_box.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_pdf_crop_box.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemPdfCropBox(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemPdfCropBox(UniversalBaseModel): left: float bottom: float right: float diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_size.py similarity index 87% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_size.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_size.py index 11ad403..4b9a7d0 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_size.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_size.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesRotate200ResponseLayoutPagesItemSize(UniversalBaseModel): +class ChangeItemPagesDeleteLayoutPagesItemSize(UniversalBaseModel): width: float height: float diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_tab_order.py similarity index 72% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_tab_order.py rename to src/cloudpdf/types/change_item_pages_delete_layout_pages_item_tab_order.py index 52848c3..d348b7d 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_tab_order.py +++ b/src/cloudpdf/types/change_item_pages_delete_layout_pages_item_tab_order.py @@ -2,6 +2,6 @@ import typing -DocPagesDelete200ResponseLayoutPagesItemTabOrder = typing.Union[ +ChangeItemPagesDeleteLayoutPagesItemTabOrder = typing.Union[ typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any ] diff --git a/src/cloudpdf/types/doc_pages_insert200response.py b/src/cloudpdf/types/change_item_pages_insert.py similarity index 81% rename from src/cloudpdf/types/doc_pages_insert200response.py rename to src/cloudpdf/types/change_item_pages_insert.py index 61a68bd..132b1c6 100644 --- a/src/cloudpdf/types/doc_pages_insert200response.py +++ b/src/cloudpdf/types/change_item_pages_insert.py @@ -6,16 +6,16 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_insert200response_layout import DocPagesInsert200ResponseLayout +from .change_item_pages_insert_layout import ChangeItemPagesInsertLayout from .mutation_meta import MutationMeta from .page_ref import PageRef -class DocPagesInsert200Response(UniversalBaseModel): +class ChangeItemPagesInsert(UniversalBaseModel): inserted_pages: typing_extensions.Annotated[ typing.List[PageRef], FieldMetadata(alias="insertedPages"), pydantic.Field(alias="insertedPages") ] - layout: DocPagesInsert200ResponseLayout + layout: ChangeItemPagesInsertLayout meta: MutationMeta if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response.py b/src/cloudpdf/types/change_item_pages_insert_blank.py similarity index 79% rename from src/cloudpdf/types/doc_pages_insert_blank200response.py rename to src/cloudpdf/types/change_item_pages_insert_blank.py index bdac437..8b1ca06 100644 --- a/src/cloudpdf/types/doc_pages_insert_blank200response.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank.py @@ -6,16 +6,16 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_insert_blank200response_layout import DocPagesInsertBlank200ResponseLayout +from .change_item_pages_insert_blank_layout import ChangeItemPagesInsertBlankLayout from .mutation_meta import MutationMeta from .page_ref import PageRef -class DocPagesInsertBlank200Response(UniversalBaseModel): +class ChangeItemPagesInsertBlank(UniversalBaseModel): inserted_pages: typing_extensions.Annotated[ typing.List[PageRef], FieldMetadata(alias="insertedPages"), pydantic.Field(alias="insertedPages") ] - layout: DocPagesInsertBlank200ResponseLayout + layout: ChangeItemPagesInsertBlankLayout meta: MutationMeta if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout.py similarity index 66% rename from src/cloudpdf/types/doc_pages_reorder200response_layout.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout.py index 892fe77..db75fd9 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout.py @@ -6,15 +6,15 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_reorder200response_layout_named_pages_item import DocPagesReorder200ResponseLayoutNamedPagesItem -from .doc_pages_reorder200response_layout_pages_item import DocPagesReorder200ResponseLayoutPagesItem +from .change_item_pages_insert_blank_layout_named_pages_item import ChangeItemPagesInsertBlankLayoutNamedPagesItem +from .change_item_pages_insert_blank_layout_pages_item import ChangeItemPagesInsertBlankLayoutPagesItem -class DocPagesReorder200ResponseLayout(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayout(UniversalBaseModel): page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] - pages: typing.List[DocPagesReorder200ResponseLayoutPagesItem] + pages: typing.List[ChangeItemPagesInsertBlankLayoutPagesItem] named_pages: typing_extensions.Annotated[ - typing.List[DocPagesReorder200ResponseLayoutNamedPagesItem], + typing.List[ChangeItemPagesInsertBlankLayoutNamedPagesItem], FieldMetadata(alias="namedPages"), pydantic.Field(alias="namedPages"), ] diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item.py similarity index 65% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item.py index dffcc06..8e069bf 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item.py @@ -4,14 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_reorder200response_layout_named_pages_item_target import ( - DocPagesReorder200ResponseLayoutNamedPagesItemTarget, +from .change_item_pages_insert_blank_layout_named_pages_item_target import ( + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget, ) -class DocPagesReorder200ResponseLayoutNamedPagesItem(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItem(UniversalBaseModel): name: str - target: DocPagesReorder200ResponseLayoutNamedPagesItemTarget + target: ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target.py similarity index 78% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target.py index db591f1..26d2c26 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target.py @@ -11,7 +11,7 @@ from .page_ref import PageRef -class DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page(UniversalBaseModel): kind: typing.Literal["page"] = "page" page: PageRef @@ -25,7 +25,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template(UniversalBaseModel): kind: typing.Literal["template"] = "template" object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") @@ -41,7 +41,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): kind: typing.Literal["dangling"] = "dangling" if IS_PYDANTIC_V2: @@ -54,11 +54,11 @@ class Config: extra = pydantic.Extra.allow -DocPagesReorder200ResponseLayoutNamedPagesItemTarget = typing_extensions.Annotated[ +ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget = typing_extensions.Annotated[ typing.Union[ - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesReorder200ResponseLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Template, + ChangeItemPagesInsertBlankLayoutNamedPagesItemTarget_Dangling, ], pydantic.Field(discriminator="kind"), ] diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_dangling.py similarity index 88% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_dangling.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_dangling.py index 0502292..6fd10d3 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_dangling.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_dangling.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesReorder200ResponseLayoutNamedPagesItemTargetDangling(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetDangling(UniversalBaseModel): if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_page.py similarity index 89% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_page.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_page.py index e40242f..4ee4842 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_page.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_page.py @@ -7,7 +7,7 @@ from .page_ref import PageRef -class DocPagesReorder200ResponseLayoutNamedPagesItemTargetPage(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetPage(UniversalBaseModel): page: PageRef if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_template.py similarity index 91% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_template.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_template.py index 8b2297d..8d885d6 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_named_pages_item_target_template.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_named_pages_item_target_template.py @@ -8,7 +8,7 @@ from ..core.serialization import FieldMetadata -class DocPagesReorder200ResponseLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") ] diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item.py similarity index 59% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item.py index ee53c53..70b495b 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item.py @@ -6,31 +6,33 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_reorder200response_layout_pages_item_boxes import DocPagesReorder200ResponseLayoutPagesItemBoxes -from .doc_pages_reorder200response_layout_pages_item_pdf_crop_box import ( - DocPagesReorder200ResponseLayoutPagesItemPdfCropBox, +from .change_item_pages_insert_blank_layout_pages_item_boxes import ChangeItemPagesInsertBlankLayoutPagesItemBoxes +from .change_item_pages_insert_blank_layout_pages_item_pdf_crop_box import ( + ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox, +) +from .change_item_pages_insert_blank_layout_pages_item_size import ChangeItemPagesInsertBlankLayoutPagesItemSize +from .change_item_pages_insert_blank_layout_pages_item_tab_order import ( + ChangeItemPagesInsertBlankLayoutPagesItemTabOrder, ) -from .doc_pages_reorder200response_layout_pages_item_size import DocPagesReorder200ResponseLayoutPagesItemSize -from .doc_pages_reorder200response_layout_pages_item_tab_order import DocPagesReorder200ResponseLayoutPagesItemTabOrder from .page_ref import PageRef from .pdf_page_actions import PdfPageActions -class DocPagesReorder200ResponseLayoutPagesItem(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItem(UniversalBaseModel): index: int ref: PageRef label: typing.Optional[str] = None - size: DocPagesReorder200ResponseLayoutPagesItemSize + size: ChangeItemPagesInsertBlankLayoutPagesItemSize rotation: float user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] tab_order: typing_extensions.Annotated[ - typing.Optional[DocPagesReorder200ResponseLayoutPagesItemTabOrder], + typing.Optional[ChangeItemPagesInsertBlankLayoutPagesItemTabOrder], FieldMetadata(alias="tabOrder"), pydantic.Field(alias="tabOrder"), ] = None - boxes: DocPagesReorder200ResponseLayoutPagesItemBoxes + boxes: ChangeItemPagesInsertBlankLayoutPagesItemBoxes pdf_crop_box: typing_extensions.Annotated[ - DocPagesReorder200ResponseLayoutPagesItemPdfCropBox, + ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox, FieldMetadata(alias="pdfCropBox"), pydantic.Field(alias="pdfCropBox"), ] diff --git a/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes.py new file mode 100644 index 0000000..5b6c627 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes.py @@ -0,0 +1,38 @@ +# 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 .change_item_pages_insert_blank_layout_pages_item_boxes_art import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt, +) +from .change_item_pages_insert_blank_layout_pages_item_boxes_bleed import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed, +) +from .change_item_pages_insert_blank_layout_pages_item_boxes_crop import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop, +) +from .change_item_pages_insert_blank_layout_pages_item_boxes_media import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia, +) +from .change_item_pages_insert_blank_layout_pages_item_boxes_trim import ( + ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim, +) + + +class ChangeItemPagesInsertBlankLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia + crop: ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed + trim: ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim + art: ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt + + 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_delete200response_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_art.py similarity index 89% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_crop.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_art.py index 29cda23..5368178 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_crop.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_art.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemBoxesCrop(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemBoxesArt(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_bleed.py similarity index 89% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_bleed.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_bleed.py index ff041d8..77a17fa 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_bleed.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_bleed.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesReorder200ResponseLayoutPagesItemBoxesBleed(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemBoxesBleed(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_crop.py similarity index 89% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_bleed.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_crop.py index d89d031..9254139 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_bleed.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_crop.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesInsert200ResponseLayoutPagesItemBoxesBleed(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemBoxesCrop(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_media.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_media.py similarity index 89% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_media.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_media.py index 604d3a2..6e909da 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_media.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_media.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesReorder200ResponseLayoutPagesItemBoxesMedia(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemBoxesMedia(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_trim.py similarity index 89% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_bleed.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_trim.py index 32919ec..2526b96 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_bleed.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_boxes_trim.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemBoxesBleed(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemBoxesTrim(UniversalBaseModel): x: float y: float width: float diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_pdf_crop_box.py similarity index 89% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_pdf_crop_box.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_pdf_crop_box.py index 067aefe..7b40b0f 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_pdf_crop_box.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_pdf_crop_box.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesReorder200ResponseLayoutPagesItemPdfCropBox(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemPdfCropBox(UniversalBaseModel): left: float bottom: float right: float diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_size.py similarity index 88% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_size.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_size.py index 392b6ea..0763c59 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_size.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_size.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesReorder200ResponseLayoutPagesItemSize(UniversalBaseModel): +class ChangeItemPagesInsertBlankLayoutPagesItemSize(UniversalBaseModel): width: float height: float diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_tab_order.py similarity index 72% rename from src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_tab_order.py rename to src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_tab_order.py index b24eb2a..23826e3 100644 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_tab_order.py +++ b/src/cloudpdf/types/change_item_pages_insert_blank_layout_pages_item_tab_order.py @@ -2,6 +2,6 @@ import typing -DocPagesReorder200ResponseLayoutPagesItemTabOrder = typing.Union[ +ChangeItemPagesInsertBlankLayoutPagesItemTabOrder = typing.Union[ typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any ] diff --git a/src/cloudpdf/types/change_item_pages_insert_layout.py b/src/cloudpdf/types/change_item_pages_insert_layout.py new file mode 100644 index 0000000..4e9eba2 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout.py @@ -0,0 +1,29 @@ +# 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 .change_item_pages_insert_layout_named_pages_item import ChangeItemPagesInsertLayoutNamedPagesItem +from .change_item_pages_insert_layout_pages_item import ChangeItemPagesInsertLayoutPagesItem + + +class ChangeItemPagesInsertLayout(UniversalBaseModel): + page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] + pages: typing.List[ChangeItemPagesInsertLayoutPagesItem] + named_pages: typing_extensions.Annotated[ + typing.List[ChangeItemPagesInsertLayoutNamedPagesItem], + FieldMetadata(alias="namedPages"), + pydantic.Field(alias="namedPages"), + ] + + 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/change_item_pages_insert_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item.py new file mode 100644 index 0000000..c0e5140 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item.py @@ -0,0 +1,21 @@ +# 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 .change_item_pages_insert_layout_named_pages_item_target import ChangeItemPagesInsertLayoutNamedPagesItemTarget + + +class ChangeItemPagesInsertLayoutNamedPagesItem(UniversalBaseModel): + name: str + target: ChangeItemPagesInsertLayoutNamedPagesItemTarget + + 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_delete200response_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target.py similarity index 75% rename from src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target.py rename to src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target.py index d29935b..7575589 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target.py @@ -11,7 +11,7 @@ from .page_ref import PageRef -class DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page(UniversalBaseModel): kind: typing.Literal["page"] = "page" page: PageRef @@ -25,7 +25,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template(UniversalBaseModel): kind: typing.Literal["template"] = "template" object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") @@ -41,7 +41,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): kind: typing.Literal["dangling"] = "dangling" if IS_PYDANTIC_V2: @@ -54,11 +54,11 @@ class Config: extra = pydantic.Extra.allow -DocPagesDelete200ResponseLayoutNamedPagesItemTarget = typing_extensions.Annotated[ +ChangeItemPagesInsertLayoutNamedPagesItemTarget = typing_extensions.Annotated[ typing.Union[ - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesDelete200ResponseLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Page, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Template, + ChangeItemPagesInsertLayoutNamedPagesItemTarget_Dangling, ], pydantic.Field(discriminator="kind"), ] diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_dangling.py similarity index 84% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_dangling.py rename to src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_dangling.py index 4c05b21..29cd35e 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_dangling.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_dangling.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesRotate200ResponseLayoutNamedPagesItemTargetDangling(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTargetDangling(UniversalBaseModel): if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_page.py similarity index 86% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_page.py rename to src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_page.py index a7d238f..3b8af88 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_page.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_page.py @@ -7,7 +7,7 @@ from .page_ref import PageRef -class DocPagesRotate200ResponseLayoutNamedPagesItemTargetPage(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTargetPage(UniversalBaseModel): page: PageRef if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_template.py similarity index 88% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_template.py rename to src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_template.py index 45e3a8c..b21baec 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target_template.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_named_pages_item_target_template.py @@ -8,7 +8,7 @@ from ..core.serialization import FieldMetadata -class DocPagesRotate200ResponseLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): +class ChangeItemPagesInsertLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") ] diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item.py similarity index 59% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item.py rename to src/cloudpdf/types/change_item_pages_insert_layout_pages_item.py index 289ecff..e38209b 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item.py @@ -6,31 +6,29 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_insert200response_layout_pages_item_boxes import DocPagesInsert200ResponseLayoutPagesItemBoxes -from .doc_pages_insert200response_layout_pages_item_pdf_crop_box import ( - DocPagesInsert200ResponseLayoutPagesItemPdfCropBox, -) -from .doc_pages_insert200response_layout_pages_item_size import DocPagesInsert200ResponseLayoutPagesItemSize -from .doc_pages_insert200response_layout_pages_item_tab_order import DocPagesInsert200ResponseLayoutPagesItemTabOrder +from .change_item_pages_insert_layout_pages_item_boxes import ChangeItemPagesInsertLayoutPagesItemBoxes +from .change_item_pages_insert_layout_pages_item_pdf_crop_box import ChangeItemPagesInsertLayoutPagesItemPdfCropBox +from .change_item_pages_insert_layout_pages_item_size import ChangeItemPagesInsertLayoutPagesItemSize +from .change_item_pages_insert_layout_pages_item_tab_order import ChangeItemPagesInsertLayoutPagesItemTabOrder from .page_ref import PageRef from .pdf_page_actions import PdfPageActions -class DocPagesInsert200ResponseLayoutPagesItem(UniversalBaseModel): +class ChangeItemPagesInsertLayoutPagesItem(UniversalBaseModel): index: int ref: PageRef label: typing.Optional[str] = None - size: DocPagesInsert200ResponseLayoutPagesItemSize + size: ChangeItemPagesInsertLayoutPagesItemSize rotation: float user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] tab_order: typing_extensions.Annotated[ - typing.Optional[DocPagesInsert200ResponseLayoutPagesItemTabOrder], + typing.Optional[ChangeItemPagesInsertLayoutPagesItemTabOrder], FieldMetadata(alias="tabOrder"), pydantic.Field(alias="tabOrder"), ] = None - boxes: DocPagesInsert200ResponseLayoutPagesItemBoxes + boxes: ChangeItemPagesInsertLayoutPagesItemBoxes pdf_crop_box: typing_extensions.Annotated[ - DocPagesInsert200ResponseLayoutPagesItemPdfCropBox, + ChangeItemPagesInsertLayoutPagesItemPdfCropBox, FieldMetadata(alias="pdfCropBox"), pydantic.Field(alias="pdfCropBox"), ] diff --git a/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes.py new file mode 100644 index 0000000..91f591e --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes.py @@ -0,0 +1,28 @@ +# 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 .change_item_pages_insert_layout_pages_item_boxes_art import ChangeItemPagesInsertLayoutPagesItemBoxesArt +from .change_item_pages_insert_layout_pages_item_boxes_bleed import ChangeItemPagesInsertLayoutPagesItemBoxesBleed +from .change_item_pages_insert_layout_pages_item_boxes_crop import ChangeItemPagesInsertLayoutPagesItemBoxesCrop +from .change_item_pages_insert_layout_pages_item_boxes_media import ChangeItemPagesInsertLayoutPagesItemBoxesMedia +from .change_item_pages_insert_layout_pages_item_boxes_trim import ChangeItemPagesInsertLayoutPagesItemBoxesTrim + + +class ChangeItemPagesInsertLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesInsertLayoutPagesItemBoxesMedia + crop: ChangeItemPagesInsertLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesInsertLayoutPagesItemBoxesBleed + trim: ChangeItemPagesInsertLayoutPagesItemBoxesTrim + art: ChangeItemPagesInsertLayoutPagesItemBoxesArt + + 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/change_item_pages_insert_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_art.py new file mode 100644 index 0000000..a62cbf7 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_art.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesInsertLayoutPagesItemBoxesArt(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_insert_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_bleed.py new file mode 100644 index 0000000..08abbfc --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_bleed.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesInsertLayoutPagesItemBoxesBleed(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_insert_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_crop.py new file mode 100644 index 0000000..93fbae2 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_crop.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesInsertLayoutPagesItemBoxesCrop(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_insert_layout_pages_item_boxes_media.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_media.py new file mode 100644 index 0000000..21cbdd8 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_media.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesInsertLayoutPagesItemBoxesMedia(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_insert_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_trim.py new file mode 100644 index 0000000..a3b1a6a --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_boxes_trim.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesInsertLayoutPagesItemBoxesTrim(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_pdf_crop_box.py similarity index 87% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_pdf_crop_box.py rename to src/cloudpdf/types/change_item_pages_insert_layout_pages_item_pdf_crop_box.py index dbc25cd..43de16d 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_pdf_crop_box.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_pdf_crop_box.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesInsert200ResponseLayoutPagesItemPdfCropBox(UniversalBaseModel): +class ChangeItemPagesInsertLayoutPagesItemPdfCropBox(UniversalBaseModel): left: float bottom: float right: float diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_size.py similarity index 87% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_size.py rename to src/cloudpdf/types/change_item_pages_insert_layout_pages_item_size.py index 638a38e..dc6b04c 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_size.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_size.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesDelete200ResponseLayoutPagesItemSize(UniversalBaseModel): +class ChangeItemPagesInsertLayoutPagesItemSize(UniversalBaseModel): width: float height: float diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_tab_order.py similarity index 72% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_tab_order.py rename to src/cloudpdf/types/change_item_pages_insert_layout_pages_item_tab_order.py index 321e6aa..2277cd4 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_tab_order.py +++ b/src/cloudpdf/types/change_item_pages_insert_layout_pages_item_tab_order.py @@ -2,6 +2,6 @@ import typing -DocPagesInsert200ResponseLayoutPagesItemTabOrder = typing.Union[ +ChangeItemPagesInsertLayoutPagesItemTabOrder = typing.Union[ typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any ] diff --git a/src/cloudpdf/types/doc_pages_delete200response.py b/src/cloudpdf/types/change_item_pages_reorder.py similarity index 69% rename from src/cloudpdf/types/doc_pages_delete200response.py rename to src/cloudpdf/types/change_item_pages_reorder.py index d2fbeef..b45908e 100644 --- a/src/cloudpdf/types/doc_pages_delete200response.py +++ b/src/cloudpdf/types/change_item_pages_reorder.py @@ -4,12 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_delete200response_layout import DocPagesDelete200ResponseLayout +from .change_item_pages_reorder_layout import ChangeItemPagesReorderLayout from .mutation_meta import MutationMeta +from .page_ref import PageRef -class DocPagesDelete200Response(UniversalBaseModel): - layout: DocPagesDelete200ResponseLayout +class ChangeItemPagesReorder(UniversalBaseModel): + pages: typing.List[PageRef] + layout: ChangeItemPagesReorderLayout meta: MutationMeta if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout.py b/src/cloudpdf/types/change_item_pages_reorder_layout.py similarity index 66% rename from src/cloudpdf/types/doc_pages_insert200response_layout.py rename to src/cloudpdf/types/change_item_pages_reorder_layout.py index c61382b..d098edd 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout.py @@ -6,15 +6,15 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_insert200response_layout_named_pages_item import DocPagesInsert200ResponseLayoutNamedPagesItem -from .doc_pages_insert200response_layout_pages_item import DocPagesInsert200ResponseLayoutPagesItem +from .change_item_pages_reorder_layout_named_pages_item import ChangeItemPagesReorderLayoutNamedPagesItem +from .change_item_pages_reorder_layout_pages_item import ChangeItemPagesReorderLayoutPagesItem -class DocPagesInsert200ResponseLayout(UniversalBaseModel): +class ChangeItemPagesReorderLayout(UniversalBaseModel): page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] - pages: typing.List[DocPagesInsert200ResponseLayoutPagesItem] + pages: typing.List[ChangeItemPagesReorderLayoutPagesItem] named_pages: typing_extensions.Annotated[ - typing.List[DocPagesInsert200ResponseLayoutNamedPagesItem], + typing.List[ChangeItemPagesReorderLayoutNamedPagesItem], FieldMetadata(alias="namedPages"), pydantic.Field(alias="namedPages"), ] diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item.py similarity index 63% rename from src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item.py index ec28bce..39c08af 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item.py @@ -4,14 +4,12 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_insert200response_layout_named_pages_item_target import ( - DocPagesInsert200ResponseLayoutNamedPagesItemTarget, -) +from .change_item_pages_reorder_layout_named_pages_item_target import ChangeItemPagesReorderLayoutNamedPagesItemTarget -class DocPagesInsert200ResponseLayoutNamedPagesItem(UniversalBaseModel): +class ChangeItemPagesReorderLayoutNamedPagesItem(UniversalBaseModel): name: str - target: DocPagesInsert200ResponseLayoutNamedPagesItemTarget + target: ChangeItemPagesReorderLayoutNamedPagesItemTarget if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target.py new file mode 100644 index 0000000..81a2358 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target.py @@ -0,0 +1,64 @@ +# 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 +from .page_ref import PageRef + + +class ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page(UniversalBaseModel): + kind: typing.Literal["page"] = "page" + page: PageRef + + 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 ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template(UniversalBaseModel): + kind: typing.Literal["template"] = "template" + object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] + + 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 ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): + kind: typing.Literal["dangling"] = "dangling" + + 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 + + +ChangeItemPagesReorderLayoutNamedPagesItemTarget = typing_extensions.Annotated[ + typing.Union[ + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Page, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Template, + ChangeItemPagesReorderLayoutNamedPagesItemTarget_Dangling, + ], + pydantic.Field(discriminator="kind"), +] diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_dangling.py similarity index 84% rename from src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_dangling.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_dangling.py index affb615..61703a2 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_dangling.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_dangling.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesInsert200ResponseLayoutNamedPagesItemTargetDangling(UniversalBaseModel): +class ChangeItemPagesReorderLayoutNamedPagesItemTargetDangling(UniversalBaseModel): if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_page.py similarity index 86% rename from src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_page.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_page.py index 9684ced..1e3b50d 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item_target_page.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_page.py @@ -7,7 +7,7 @@ from .page_ref import PageRef -class DocPagesDelete200ResponseLayoutNamedPagesItemTargetPage(UniversalBaseModel): +class ChangeItemPagesReorderLayoutNamedPagesItemTargetPage(UniversalBaseModel): page: PageRef if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_template.py similarity index 88% rename from src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_template.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_template.py index 3abd487..6feff89 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_named_pages_item_target_template.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_named_pages_item_target_template.py @@ -8,7 +8,7 @@ from ..core.serialization import FieldMetadata -class DocPagesInsert200ResponseLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): +class ChangeItemPagesReorderLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") ] diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item.py similarity index 59% rename from src/cloudpdf/types/doc_pages_delete200response_layout_pages_item.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_pages_item.py index 267a5a4..63272e9 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item.py @@ -6,31 +6,29 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_delete200response_layout_pages_item_boxes import DocPagesDelete200ResponseLayoutPagesItemBoxes -from .doc_pages_delete200response_layout_pages_item_pdf_crop_box import ( - DocPagesDelete200ResponseLayoutPagesItemPdfCropBox, -) -from .doc_pages_delete200response_layout_pages_item_size import DocPagesDelete200ResponseLayoutPagesItemSize -from .doc_pages_delete200response_layout_pages_item_tab_order import DocPagesDelete200ResponseLayoutPagesItemTabOrder +from .change_item_pages_reorder_layout_pages_item_boxes import ChangeItemPagesReorderLayoutPagesItemBoxes +from .change_item_pages_reorder_layout_pages_item_pdf_crop_box import ChangeItemPagesReorderLayoutPagesItemPdfCropBox +from .change_item_pages_reorder_layout_pages_item_size import ChangeItemPagesReorderLayoutPagesItemSize +from .change_item_pages_reorder_layout_pages_item_tab_order import ChangeItemPagesReorderLayoutPagesItemTabOrder from .page_ref import PageRef from .pdf_page_actions import PdfPageActions -class DocPagesDelete200ResponseLayoutPagesItem(UniversalBaseModel): +class ChangeItemPagesReorderLayoutPagesItem(UniversalBaseModel): index: int ref: PageRef label: typing.Optional[str] = None - size: DocPagesDelete200ResponseLayoutPagesItemSize + size: ChangeItemPagesReorderLayoutPagesItemSize rotation: float user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] tab_order: typing_extensions.Annotated[ - typing.Optional[DocPagesDelete200ResponseLayoutPagesItemTabOrder], + typing.Optional[ChangeItemPagesReorderLayoutPagesItemTabOrder], FieldMetadata(alias="tabOrder"), pydantic.Field(alias="tabOrder"), ] = None - boxes: DocPagesDelete200ResponseLayoutPagesItemBoxes + boxes: ChangeItemPagesReorderLayoutPagesItemBoxes pdf_crop_box: typing_extensions.Annotated[ - DocPagesDelete200ResponseLayoutPagesItemPdfCropBox, + ChangeItemPagesReorderLayoutPagesItemPdfCropBox, FieldMetadata(alias="pdfCropBox"), pydantic.Field(alias="pdfCropBox"), ] diff --git a/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes.py new file mode 100644 index 0000000..b978ff8 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes.py @@ -0,0 +1,28 @@ +# 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 .change_item_pages_reorder_layout_pages_item_boxes_art import ChangeItemPagesReorderLayoutPagesItemBoxesArt +from .change_item_pages_reorder_layout_pages_item_boxes_bleed import ChangeItemPagesReorderLayoutPagesItemBoxesBleed +from .change_item_pages_reorder_layout_pages_item_boxes_crop import ChangeItemPagesReorderLayoutPagesItemBoxesCrop +from .change_item_pages_reorder_layout_pages_item_boxes_media import ChangeItemPagesReorderLayoutPagesItemBoxesMedia +from .change_item_pages_reorder_layout_pages_item_boxes_trim import ChangeItemPagesReorderLayoutPagesItemBoxesTrim + + +class ChangeItemPagesReorderLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesReorderLayoutPagesItemBoxesMedia + crop: ChangeItemPagesReorderLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesReorderLayoutPagesItemBoxesBleed + trim: ChangeItemPagesReorderLayoutPagesItemBoxesTrim + art: ChangeItemPagesReorderLayoutPagesItemBoxesArt + + 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/change_item_pages_reorder_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_art.py new file mode 100644 index 0000000..55f4b53 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_art.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesReorderLayoutPagesItemBoxesArt(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_reorder_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_bleed.py new file mode 100644 index 0000000..5fb2942 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_bleed.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesReorderLayoutPagesItemBoxesBleed(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_reorder_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_crop.py new file mode 100644 index 0000000..c4d9885 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_crop.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesReorderLayoutPagesItemBoxesCrop(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_reorder_layout_pages_item_boxes_media.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_media.py new file mode 100644 index 0000000..576bef4 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_media.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesReorderLayoutPagesItemBoxesMedia(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_reorder_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_trim.py new file mode 100644 index 0000000..77dee73 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_boxes_trim.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesReorderLayoutPagesItemBoxesTrim(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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_rotate200response_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_pdf_crop_box.py similarity index 87% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_pdf_crop_box.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_pdf_crop_box.py index f2ddde4..94fce67 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_pdf_crop_box.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_pdf_crop_box.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesRotate200ResponseLayoutPagesItemPdfCropBox(UniversalBaseModel): +class ChangeItemPagesReorderLayoutPagesItemPdfCropBox(UniversalBaseModel): left: float bottom: float right: float diff --git a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_size.py similarity index 87% rename from src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_size.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_size.py index 3450cc6..8103cd5 100644 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_size.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_size.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -class DocPagesInsert200ResponseLayoutPagesItemSize(UniversalBaseModel): +class ChangeItemPagesReorderLayoutPagesItemSize(UniversalBaseModel): width: float height: float diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_tab_order.py similarity index 72% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_tab_order.py rename to src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_tab_order.py index 8326d95..48487ba 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_tab_order.py +++ b/src/cloudpdf/types/change_item_pages_reorder_layout_pages_item_tab_order.py @@ -2,6 +2,6 @@ import typing -DocPagesRotate200ResponseLayoutPagesItemTabOrder = typing.Union[ +ChangeItemPagesReorderLayoutPagesItemTabOrder = typing.Union[ typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any ] diff --git a/src/cloudpdf/types/doc_pages_rotate200response.py b/src/cloudpdf/types/change_item_pages_restore.py similarity index 69% rename from src/cloudpdf/types/doc_pages_rotate200response.py rename to src/cloudpdf/types/change_item_pages_restore.py index ead2589..cf9b4cc 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response.py +++ b/src/cloudpdf/types/change_item_pages_restore.py @@ -4,12 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_rotate200response_layout import DocPagesRotate200ResponseLayout +from .change_item_pages_restore_layout import ChangeItemPagesRestoreLayout from .mutation_meta import MutationMeta +from .page_ref import PageRef -class DocPagesRotate200Response(UniversalBaseModel): - layout: DocPagesRotate200ResponseLayout +class ChangeItemPagesRestore(UniversalBaseModel): + pages: typing.List[PageRef] + layout: ChangeItemPagesRestoreLayout meta: MutationMeta if IS_PYDANTIC_V2: diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout.py b/src/cloudpdf/types/change_item_pages_restore_layout.py similarity index 66% rename from src/cloudpdf/types/doc_pages_rotate200response_layout.py rename to src/cloudpdf/types/change_item_pages_restore_layout.py index 5386347..369cf36 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout.py +++ b/src/cloudpdf/types/change_item_pages_restore_layout.py @@ -6,15 +6,15 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata -from .doc_pages_rotate200response_layout_named_pages_item import DocPagesRotate200ResponseLayoutNamedPagesItem -from .doc_pages_rotate200response_layout_pages_item import DocPagesRotate200ResponseLayoutPagesItem +from .change_item_pages_restore_layout_named_pages_item import ChangeItemPagesRestoreLayoutNamedPagesItem +from .change_item_pages_restore_layout_pages_item import ChangeItemPagesRestoreLayoutPagesItem -class DocPagesRotate200ResponseLayout(UniversalBaseModel): +class ChangeItemPagesRestoreLayout(UniversalBaseModel): page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] - pages: typing.List[DocPagesRotate200ResponseLayoutPagesItem] + pages: typing.List[ChangeItemPagesRestoreLayoutPagesItem] named_pages: typing_extensions.Annotated[ - typing.List[DocPagesRotate200ResponseLayoutNamedPagesItem], + typing.List[ChangeItemPagesRestoreLayoutNamedPagesItem], FieldMetadata(alias="namedPages"), pydantic.Field(alias="namedPages"), ] diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item.py similarity index 63% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item.py rename to src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item.py index 6650990..3a4162a 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item.py +++ b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item.py @@ -4,14 +4,12 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_rotate200response_layout_named_pages_item_target import ( - DocPagesRotate200ResponseLayoutNamedPagesItemTarget, -) +from .change_item_pages_restore_layout_named_pages_item_target import ChangeItemPagesRestoreLayoutNamedPagesItemTarget -class DocPagesRotate200ResponseLayoutNamedPagesItem(UniversalBaseModel): +class ChangeItemPagesRestoreLayoutNamedPagesItem(UniversalBaseModel): name: str - target: DocPagesRotate200ResponseLayoutNamedPagesItemTarget + target: ChangeItemPagesRestoreLayoutNamedPagesItemTarget if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target.py new file mode 100644 index 0000000..4f6bc43 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target.py @@ -0,0 +1,64 @@ +# 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 +from .page_ref import PageRef + + +class ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page(UniversalBaseModel): + kind: typing.Literal["page"] = "page" + page: PageRef + + 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 ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template(UniversalBaseModel): + kind: typing.Literal["template"] = "template" + object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] + + 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 ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): + kind: typing.Literal["dangling"] = "dangling" + + 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 + + +ChangeItemPagesRestoreLayoutNamedPagesItemTarget = typing_extensions.Annotated[ + typing.Union[ + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Template, + ChangeItemPagesRestoreLayoutNamedPagesItemTarget_Dangling, + ], + pydantic.Field(discriminator="kind"), +] diff --git a/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_dangling.py new file mode 100644 index 0000000..a60a4d5 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_dangling.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 ChangeItemPagesRestoreLayoutNamedPagesItemTargetDangling(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/change_item_pages_restore_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_page.py new file mode 100644 index 0000000..60f313a --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_page.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 .page_ref import PageRef + + +class ChangeItemPagesRestoreLayoutNamedPagesItemTargetPage(UniversalBaseModel): + page: PageRef + + 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/change_item_pages_restore_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_template.py new file mode 100644 index 0000000..8c371e3 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_named_pages_item_target_template.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 ChangeItemPagesRestoreLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): + object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] + + 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/change_item_pages_restore_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item.py new file mode 100644 index 0000000..65cc6b9 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item.py @@ -0,0 +1,44 @@ +# 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 .change_item_pages_restore_layout_pages_item_boxes import ChangeItemPagesRestoreLayoutPagesItemBoxes +from .change_item_pages_restore_layout_pages_item_pdf_crop_box import ChangeItemPagesRestoreLayoutPagesItemPdfCropBox +from .change_item_pages_restore_layout_pages_item_size import ChangeItemPagesRestoreLayoutPagesItemSize +from .change_item_pages_restore_layout_pages_item_tab_order import ChangeItemPagesRestoreLayoutPagesItemTabOrder +from .page_ref import PageRef +from .pdf_page_actions import PdfPageActions + + +class ChangeItemPagesRestoreLayoutPagesItem(UniversalBaseModel): + index: int + ref: PageRef + label: typing.Optional[str] = None + size: ChangeItemPagesRestoreLayoutPagesItemSize + rotation: float + user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] + tab_order: typing_extensions.Annotated[ + typing.Optional[ChangeItemPagesRestoreLayoutPagesItemTabOrder], + FieldMetadata(alias="tabOrder"), + pydantic.Field(alias="tabOrder"), + ] = None + boxes: ChangeItemPagesRestoreLayoutPagesItemBoxes + pdf_crop_box: typing_extensions.Annotated[ + ChangeItemPagesRestoreLayoutPagesItemPdfCropBox, + FieldMetadata(alias="pdfCropBox"), + pydantic.Field(alias="pdfCropBox"), + ] + actions: typing.Optional[PdfPageActions] = 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/change_item_pages_restore_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes.py new file mode 100644 index 0000000..ebb693f --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes.py @@ -0,0 +1,28 @@ +# 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 .change_item_pages_restore_layout_pages_item_boxes_art import ChangeItemPagesRestoreLayoutPagesItemBoxesArt +from .change_item_pages_restore_layout_pages_item_boxes_bleed import ChangeItemPagesRestoreLayoutPagesItemBoxesBleed +from .change_item_pages_restore_layout_pages_item_boxes_crop import ChangeItemPagesRestoreLayoutPagesItemBoxesCrop +from .change_item_pages_restore_layout_pages_item_boxes_media import ChangeItemPagesRestoreLayoutPagesItemBoxesMedia +from .change_item_pages_restore_layout_pages_item_boxes_trim import ChangeItemPagesRestoreLayoutPagesItemBoxesTrim + + +class ChangeItemPagesRestoreLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesRestoreLayoutPagesItemBoxesMedia + crop: ChangeItemPagesRestoreLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesRestoreLayoutPagesItemBoxesBleed + trim: ChangeItemPagesRestoreLayoutPagesItemBoxesTrim + art: ChangeItemPagesRestoreLayoutPagesItemBoxesArt + + 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/change_item_pages_restore_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_art.py new file mode 100644 index 0000000..30a3d17 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_art.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemBoxesArt(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_bleed.py new file mode 100644 index 0000000..bd39095 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_bleed.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemBoxesBleed(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_crop.py new file mode 100644 index 0000000..b14dfdd --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_crop.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemBoxesCrop(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_boxes_media.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_media.py new file mode 100644 index 0000000..cf492d5 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_media.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemBoxesMedia(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_trim.py new file mode 100644 index 0000000..1503a67 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_boxes_trim.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemBoxesTrim(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_pdf_crop_box.py new file mode 100644 index 0000000..95af856 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_pdf_crop_box.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRestoreLayoutPagesItemPdfCropBox(UniversalBaseModel): + left: float + bottom: float + right: float + top: float + + 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/change_item_pages_restore_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_size.py new file mode 100644 index 0000000..58485a9 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_size.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 + + +class ChangeItemPagesRestoreLayoutPagesItemSize(UniversalBaseModel): + width: float + height: float + + 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/change_item_pages_restore_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_tab_order.py new file mode 100644 index 0000000..489849c --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_restore_layout_pages_item_tab_order.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ChangeItemPagesRestoreLayoutPagesItemTabOrder = typing.Union[ + typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any +] diff --git a/src/cloudpdf/types/change_item_pages_rotate.py b/src/cloudpdf/types/change_item_pages_rotate.py new file mode 100644 index 0000000..b629d5c --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate.py @@ -0,0 +1,25 @@ +# 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 .change_item_pages_rotate_layout import ChangeItemPagesRotateLayout +from .mutation_meta import MutationMeta +from .page_ref import PageRef + + +class ChangeItemPagesRotate(UniversalBaseModel): + pages: typing.List[PageRef] + rotation: float + layout: ChangeItemPagesRotateLayout + meta: MutationMeta + + 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/change_item_pages_rotate_layout.py b/src/cloudpdf/types/change_item_pages_rotate_layout.py new file mode 100644 index 0000000..8dacd87 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout.py @@ -0,0 +1,29 @@ +# 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 .change_item_pages_rotate_layout_named_pages_item import ChangeItemPagesRotateLayoutNamedPagesItem +from .change_item_pages_rotate_layout_pages_item import ChangeItemPagesRotateLayoutPagesItem + + +class ChangeItemPagesRotateLayout(UniversalBaseModel): + page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] + pages: typing.List[ChangeItemPagesRotateLayoutPagesItem] + named_pages: typing_extensions.Annotated[ + typing.List[ChangeItemPagesRotateLayoutNamedPagesItem], + FieldMetadata(alias="namedPages"), + pydantic.Field(alias="namedPages"), + ] + + 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/change_item_pages_rotate_layout_named_pages_item.py b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item.py new file mode 100644 index 0000000..d32ef5d --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item.py @@ -0,0 +1,21 @@ +# 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 .change_item_pages_rotate_layout_named_pages_item_target import ChangeItemPagesRotateLayoutNamedPagesItemTarget + + +class ChangeItemPagesRotateLayoutNamedPagesItem(UniversalBaseModel): + name: str + target: ChangeItemPagesRotateLayoutNamedPagesItemTarget + + 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_rotate200response_layout_named_pages_item_target.py b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target.py similarity index 75% rename from src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target.py rename to src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target.py index 3b4fa45..fcbf3c5 100644 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_named_pages_item_target.py +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target.py @@ -11,7 +11,7 @@ from .page_ref import PageRef -class DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page(UniversalBaseModel): +class ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page(UniversalBaseModel): kind: typing.Literal["page"] = "page" page: PageRef @@ -25,7 +25,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template(UniversalBaseModel): +class ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template(UniversalBaseModel): kind: typing.Literal["template"] = "template" object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") @@ -41,7 +41,7 @@ class Config: extra = pydantic.Extra.allow -class DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): +class ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): kind: typing.Literal["dangling"] = "dangling" if IS_PYDANTIC_V2: @@ -54,11 +54,11 @@ class Config: extra = pydantic.Extra.allow -DocPagesRotate200ResponseLayoutNamedPagesItemTarget = typing_extensions.Annotated[ +ChangeItemPagesRotateLayoutNamedPagesItemTarget = typing_extensions.Annotated[ typing.Union[ - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesRotate200ResponseLayoutNamedPagesItemTarget_Dangling, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Page, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Template, + ChangeItemPagesRotateLayoutNamedPagesItemTarget_Dangling, ], pydantic.Field(discriminator="kind"), ] diff --git a/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_dangling.py new file mode 100644 index 0000000..b84afaf --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_dangling.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 ChangeItemPagesRotateLayoutNamedPagesItemTargetDangling(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/change_item_pages_rotate_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_page.py new file mode 100644 index 0000000..4c34c43 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_page.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 .page_ref import PageRef + + +class ChangeItemPagesRotateLayoutNamedPagesItemTargetPage(UniversalBaseModel): + page: PageRef + + 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/change_item_pages_rotate_layout_named_pages_item_target_template.py b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_template.py new file mode 100644 index 0000000..2edfa0f --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_named_pages_item_target_template.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 ChangeItemPagesRotateLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): + object_number: typing_extensions.Annotated[ + int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] + + 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/change_item_pages_rotate_layout_pages_item.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item.py new file mode 100644 index 0000000..d45d1c9 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item.py @@ -0,0 +1,44 @@ +# 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 .change_item_pages_rotate_layout_pages_item_boxes import ChangeItemPagesRotateLayoutPagesItemBoxes +from .change_item_pages_rotate_layout_pages_item_pdf_crop_box import ChangeItemPagesRotateLayoutPagesItemPdfCropBox +from .change_item_pages_rotate_layout_pages_item_size import ChangeItemPagesRotateLayoutPagesItemSize +from .change_item_pages_rotate_layout_pages_item_tab_order import ChangeItemPagesRotateLayoutPagesItemTabOrder +from .page_ref import PageRef +from .pdf_page_actions import PdfPageActions + + +class ChangeItemPagesRotateLayoutPagesItem(UniversalBaseModel): + index: int + ref: PageRef + label: typing.Optional[str] = None + size: ChangeItemPagesRotateLayoutPagesItemSize + rotation: float + user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] + tab_order: typing_extensions.Annotated[ + typing.Optional[ChangeItemPagesRotateLayoutPagesItemTabOrder], + FieldMetadata(alias="tabOrder"), + pydantic.Field(alias="tabOrder"), + ] = None + boxes: ChangeItemPagesRotateLayoutPagesItemBoxes + pdf_crop_box: typing_extensions.Annotated[ + ChangeItemPagesRotateLayoutPagesItemPdfCropBox, + FieldMetadata(alias="pdfCropBox"), + pydantic.Field(alias="pdfCropBox"), + ] + actions: typing.Optional[PdfPageActions] = 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/change_item_pages_rotate_layout_pages_item_boxes.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes.py new file mode 100644 index 0000000..73cb162 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes.py @@ -0,0 +1,28 @@ +# 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 .change_item_pages_rotate_layout_pages_item_boxes_art import ChangeItemPagesRotateLayoutPagesItemBoxesArt +from .change_item_pages_rotate_layout_pages_item_boxes_bleed import ChangeItemPagesRotateLayoutPagesItemBoxesBleed +from .change_item_pages_rotate_layout_pages_item_boxes_crop import ChangeItemPagesRotateLayoutPagesItemBoxesCrop +from .change_item_pages_rotate_layout_pages_item_boxes_media import ChangeItemPagesRotateLayoutPagesItemBoxesMedia +from .change_item_pages_rotate_layout_pages_item_boxes_trim import ChangeItemPagesRotateLayoutPagesItemBoxesTrim + + +class ChangeItemPagesRotateLayoutPagesItemBoxes(UniversalBaseModel): + media: ChangeItemPagesRotateLayoutPagesItemBoxesMedia + crop: ChangeItemPagesRotateLayoutPagesItemBoxesCrop + bleed: ChangeItemPagesRotateLayoutPagesItemBoxesBleed + trim: ChangeItemPagesRotateLayoutPagesItemBoxesTrim + art: ChangeItemPagesRotateLayoutPagesItemBoxesArt + + 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/change_item_pages_rotate_layout_pages_item_boxes_art.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_art.py new file mode 100644 index 0000000..c02294e --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_art.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemBoxesArt(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_bleed.py new file mode 100644 index 0000000..7b6b912 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_bleed.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemBoxesBleed(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_crop.py new file mode 100644 index 0000000..fb40c72 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_crop.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemBoxesCrop(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_boxes_media.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_media.py new file mode 100644 index 0000000..31a9393 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_media.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemBoxesMedia(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_trim.py new file mode 100644 index 0000000..773ed88 --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_boxes_trim.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemBoxesTrim(UniversalBaseModel): + x: float + y: float + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_pdf_crop_box.py new file mode 100644 index 0000000..7212ccc --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_pdf_crop_box.py @@ -0,0 +1,22 @@ +# 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 ChangeItemPagesRotateLayoutPagesItemPdfCropBox(UniversalBaseModel): + left: float + bottom: float + right: float + top: float + + 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/change_item_pages_rotate_layout_pages_item_size.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_size.py new file mode 100644 index 0000000..68f43bc --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_size.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 + + +class ChangeItemPagesRotateLayoutPagesItemSize(UniversalBaseModel): + width: float + height: float + + 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/change_item_pages_rotate_layout_pages_item_tab_order.py b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_tab_order.py new file mode 100644 index 0000000..32e0bbb --- /dev/null +++ b/src/cloudpdf/types/change_item_pages_rotate_layout_pages_item_tab_order.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ChangeItemPagesRotateLayoutPagesItemTabOrder = typing.Union[ + typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any +] diff --git a/src/cloudpdf/types/change_item_skipped_op.py b/src/cloudpdf/types/change_item_skipped_op.py index 3c66aef..6230647 100644 --- a/src/cloudpdf/types/change_item_skipped_op.py +++ b/src/cloudpdf/types/change_item_skipped_op.py @@ -24,8 +24,23 @@ "forms.setSignatureAppearance", "metadata.update", "metadata.updateCustom", + "outline.create", + "outline.update", + "outline.move", + "outline.delete", + "pages.rotate", + "pages.reorder", + "pages.delete", + "pages.insertBlank", + "pages.insert", + "attachments.create", + "attachments.delete", "annotations.restore", "forms.restore", + "forms.restoreWidget", + "outline.restore", + "pages.restore", + "attachments.restore", ], typing.Any, ] diff --git a/src/cloudpdf/types/change_op.py b/src/cloudpdf/types/change_op.py index 9d18659..4bf2000 100644 --- a/src/cloudpdf/types/change_op.py +++ b/src/cloudpdf/types/change_op.py @@ -12,16 +12,26 @@ from .annotation_patch import AnnotationPatch from .annotation_position import AnnotationPosition from .annotation_ref import AnnotationRef +from .attachment_file_base import AttachmentFileBase +from .attachment_ref import AttachmentRef from .change_op_annotations_create_resources import ChangeOpAnnotationsCreateResources from .change_op_annotations_update_resources import ChangeOpAnnotationsUpdateResources +from .change_op_attachments_create_resources import ChangeOpAttachmentsCreateResources from .change_op_forms_set_display_display import ChangeOpFormsSetDisplayDisplay from .change_op_forms_set_signature_appearance_resources import ChangeOpFormsSetSignatureAppearanceResources +from .change_op_pages_insert_blank_spec import ChangeOpPagesInsertBlankSpec +from .change_op_pages_insert_resources import ChangeOpPagesInsertResources from .field_position import FieldPosition from .form_field_draft import FormFieldDraft from .form_field_patch import FormFieldPatch from .form_field_ref import FormFieldRef from .form_field_value import FormFieldValue from .metadata_patch import MetadataPatch +from .outline_item_draft import OutlineItemDraft +from .outline_item_patch import OutlineItemPatch +from .outline_item_ref import OutlineItemRef +from .outline_position import OutlinePosition +from .page_position import PagePosition from .page_ref import PageRef from .widget_patch import WidgetPatch from .widget_placement import WidgetPlacement @@ -349,6 +359,178 @@ class Config: extra = pydantic.Extra.allow +class ChangeOp_OutlineCreate(UniversalBaseModel): + type: typing.Literal["outline.create"] = "outline.create" + parent: typing.Optional[OutlineItemRef] = None + position: typing.Optional[OutlinePosition] = None + data: OutlineItemDraft + object_number: typing_extensions.Annotated[ + typing.Optional[int], FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] = 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 + + +class ChangeOp_OutlineUpdate(UniversalBaseModel): + type: typing.Literal["outline.update"] = "outline.update" + ref: OutlineItemRef + patch: OutlineItemPatch + expect: typing.Optional[OutlineItemPatch] = 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 + + +class ChangeOp_OutlineMove(UniversalBaseModel): + type: typing.Literal["outline.move"] = "outline.move" + refs: typing.List[OutlineItemRef] + parent: typing.Optional[OutlineItemRef] = None + position: OutlinePosition + + 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 ChangeOp_OutlineDelete(UniversalBaseModel): + type: typing.Literal["outline.delete"] = "outline.delete" + ref: OutlineItemRef + expect: typing.Optional[OutlineItemPatch] = 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 + + +class ChangeOp_PagesRotate(UniversalBaseModel): + type: typing.Literal["pages.rotate"] = "pages.rotate" + pages: typing.List[PageRef] + rotation: float + + 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 ChangeOp_PagesReorder(UniversalBaseModel): + type: typing.Literal["pages.reorder"] = "pages.reorder" + pages: typing.List[PageRef] + position: PagePosition + + 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 ChangeOp_PagesDelete(UniversalBaseModel): + type: typing.Literal["pages.delete"] = "pages.delete" + pages: typing.List[PageRef] + + 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 ChangeOp_PagesInsertBlank(UniversalBaseModel): + type: typing.Literal["pages.insertBlank"] = "pages.insertBlank" + spec: ChangeOpPagesInsertBlankSpec + position: typing.Optional[PagePosition] = None + object_numbers: typing_extensions.Annotated[ + typing.Optional[typing.List[int]], FieldMetadata(alias="objectNumbers"), pydantic.Field(alias="objectNumbers") + ] = 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 + + +class ChangeOp_PagesInsert(UniversalBaseModel): + type: typing.Literal["pages.insert"] = "pages.insert" + resources: ChangeOpPagesInsertResources + position: typing.Optional[PagePosition] = 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 + + +class ChangeOp_AttachmentsCreate(UniversalBaseModel): + type: typing.Literal["attachments.create"] = "attachments.create" + file: AttachmentFileBase + resources: ChangeOpAttachmentsCreateResources + + 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 ChangeOp_AttachmentsDelete(UniversalBaseModel): + type: typing.Literal["attachments.delete"] = "attachments.delete" + ref: AttachmentRef + + 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 + + ChangeOp = typing_extensions.Annotated[ typing.Union[ ChangeOp_AnnotationsCreate, @@ -371,6 +553,17 @@ class Config: ChangeOp_FormsSetSignatureAppearance, ChangeOp_MetadataUpdate, ChangeOp_MetadataUpdateCustom, + ChangeOp_OutlineCreate, + ChangeOp_OutlineUpdate, + ChangeOp_OutlineMove, + ChangeOp_OutlineDelete, + ChangeOp_PagesRotate, + ChangeOp_PagesReorder, + ChangeOp_PagesDelete, + ChangeOp_PagesInsertBlank, + ChangeOp_PagesInsert, + ChangeOp_AttachmentsCreate, + ChangeOp_AttachmentsDelete, ], pydantic.Field(discriminator="type"), ] diff --git a/src/cloudpdf/types/change_op_attachments_create.py b/src/cloudpdf/types/change_op_attachments_create.py new file mode 100644 index 0000000..5ffcacf --- /dev/null +++ b/src/cloudpdf/types/change_op_attachments_create.py @@ -0,0 +1,22 @@ +# 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 .attachment_file_base import AttachmentFileBase +from .change_op_attachments_create_resources import ChangeOpAttachmentsCreateResources + + +class ChangeOpAttachmentsCreate(UniversalBaseModel): + file: AttachmentFileBase + resources: ChangeOpAttachmentsCreateResources + + 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/change_op_attachments_create_resources.py b/src/cloudpdf/types/change_op_attachments_create_resources.py new file mode 100644 index 0000000..07d9a31 --- /dev/null +++ b/src/cloudpdf/types/change_op_attachments_create_resources.py @@ -0,0 +1,19 @@ +# 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 ChangeOpAttachmentsCreateResources(UniversalBaseModel): + file: str + + 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/change_op_attachments_delete.py b/src/cloudpdf/types/change_op_attachments_delete.py new file mode 100644 index 0000000..eae1ee5 --- /dev/null +++ b/src/cloudpdf/types/change_op_attachments_delete.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 .attachment_ref import AttachmentRef + + +class ChangeOpAttachmentsDelete(UniversalBaseModel): + ref: AttachmentRef + + 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/change_op_outline_create.py b/src/cloudpdf/types/change_op_outline_create.py new file mode 100644 index 0000000..7e33884 --- /dev/null +++ b/src/cloudpdf/types/change_op_outline_create.py @@ -0,0 +1,29 @@ +# 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 .outline_item_draft import OutlineItemDraft +from .outline_item_ref import OutlineItemRef +from .outline_position import OutlinePosition + + +class ChangeOpOutlineCreate(UniversalBaseModel): + parent: typing.Optional[OutlineItemRef] = None + position: typing.Optional[OutlinePosition] = None + data: OutlineItemDraft + object_number: typing_extensions.Annotated[ + typing.Optional[int], FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") + ] = 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/change_op_outline_delete.py b/src/cloudpdf/types/change_op_outline_delete.py new file mode 100644 index 0000000..5d0d450 --- /dev/null +++ b/src/cloudpdf/types/change_op_outline_delete.py @@ -0,0 +1,22 @@ +# 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 .outline_item_patch import OutlineItemPatch +from .outline_item_ref import OutlineItemRef + + +class ChangeOpOutlineDelete(UniversalBaseModel): + ref: OutlineItemRef + expect: typing.Optional[OutlineItemPatch] = 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/change_op_outline_move.py b/src/cloudpdf/types/change_op_outline_move.py new file mode 100644 index 0000000..4dc653f --- /dev/null +++ b/src/cloudpdf/types/change_op_outline_move.py @@ -0,0 +1,23 @@ +# 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 .outline_item_ref import OutlineItemRef +from .outline_position import OutlinePosition + + +class ChangeOpOutlineMove(UniversalBaseModel): + refs: typing.List[OutlineItemRef] + parent: typing.Optional[OutlineItemRef] = None + position: OutlinePosition + + 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/change_op_outline_update.py b/src/cloudpdf/types/change_op_outline_update.py new file mode 100644 index 0000000..e739977 --- /dev/null +++ b/src/cloudpdf/types/change_op_outline_update.py @@ -0,0 +1,23 @@ +# 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 .outline_item_patch import OutlineItemPatch +from .outline_item_ref import OutlineItemRef + + +class ChangeOpOutlineUpdate(UniversalBaseModel): + ref: OutlineItemRef + patch: OutlineItemPatch + expect: typing.Optional[OutlineItemPatch] = 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/change_op_pages_delete.py b/src/cloudpdf/types/change_op_pages_delete.py new file mode 100644 index 0000000..f964091 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_delete.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 .page_ref import PageRef + + +class ChangeOpPagesDelete(UniversalBaseModel): + pages: typing.List[PageRef] + + 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/change_op_pages_insert.py b/src/cloudpdf/types/change_op_pages_insert.py new file mode 100644 index 0000000..02bb6c6 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_insert.py @@ -0,0 +1,22 @@ +# 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 .change_op_pages_insert_resources import ChangeOpPagesInsertResources +from .page_position import PagePosition + + +class ChangeOpPagesInsert(UniversalBaseModel): + resources: ChangeOpPagesInsertResources + position: typing.Optional[PagePosition] = 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/change_op_pages_insert_blank.py b/src/cloudpdf/types/change_op_pages_insert_blank.py new file mode 100644 index 0000000..0709c1b --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_insert_blank.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 .change_op_pages_insert_blank_spec import ChangeOpPagesInsertBlankSpec +from .page_position import PagePosition + + +class ChangeOpPagesInsertBlank(UniversalBaseModel): + spec: ChangeOpPagesInsertBlankSpec + position: typing.Optional[PagePosition] = None + object_numbers: typing_extensions.Annotated[ + typing.Optional[typing.List[int]], FieldMetadata(alias="objectNumbers"), pydantic.Field(alias="objectNumbers") + ] = 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/change_op_pages_insert_blank_spec.py b/src/cloudpdf/types/change_op_pages_insert_blank_spec.py new file mode 100644 index 0000000..ad378f2 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_insert_blank_spec.py @@ -0,0 +1,21 @@ +# 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 .change_op_pages_insert_blank_spec_size import ChangeOpPagesInsertBlankSpecSize + + +class ChangeOpPagesInsertBlankSpec(UniversalBaseModel): + size: ChangeOpPagesInsertBlankSpecSize + count: typing.Optional[int] = 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/change_op_pages_insert_blank_spec_size.py b/src/cloudpdf/types/change_op_pages_insert_blank_spec_size.py new file mode 100644 index 0000000..f04de18 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_insert_blank_spec_size.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 + + +class ChangeOpPagesInsertBlankSpecSize(UniversalBaseModel): + width: float + height: float + + 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/change_op_pages_insert_resources.py b/src/cloudpdf/types/change_op_pages_insert_resources.py new file mode 100644 index 0000000..924bc15 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_insert_resources.py @@ -0,0 +1,19 @@ +# 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 ChangeOpPagesInsertResources(UniversalBaseModel): + source: str + + 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_layout_named_pages_item_target_page.py b/src/cloudpdf/types/change_op_pages_reorder.py similarity index 77% rename from src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_page.py rename to src/cloudpdf/types/change_op_pages_reorder.py index 044516f..6edf5a8 100644 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_page.py +++ b/src/cloudpdf/types/change_op_pages_reorder.py @@ -4,11 +4,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .page_position import PagePosition from .page_ref import PageRef -class DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetPage(UniversalBaseModel): - page: PageRef +class ChangeOpPagesReorder(UniversalBaseModel): + pages: typing.List[PageRef] + position: PagePosition if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/change_op_pages_rotate.py b/src/cloudpdf/types/change_op_pages_rotate.py new file mode 100644 index 0000000..f49c149 --- /dev/null +++ b/src/cloudpdf/types/change_op_pages_rotate.py @@ -0,0 +1,21 @@ +# 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 .page_ref import PageRef + + +class ChangeOpPagesRotate(UniversalBaseModel): + pages: typing.List[PageRef] + rotation: float + + 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_delete404response.py b/src/cloudpdf/types/doc_annotations_read_file400response.py similarity index 68% rename from src/cloudpdf/types/doc_pages_delete404response.py rename to src/cloudpdf/types/doc_annotations_read_file400response.py index d8ec112..24c05d5 100644 --- a/src/cloudpdf/types/doc_pages_delete404response.py +++ b/src/cloudpdf/types/doc_annotations_read_file400response.py @@ -2,4 +2,4 @@ from .engine_error_payload import EngineErrorPayload -DocPagesDelete404Response = EngineErrorPayload +DocAnnotationsReadFile400Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_insert404response.py b/src/cloudpdf/types/doc_annotations_read_file404response.py similarity index 68% rename from src/cloudpdf/types/doc_pages_insert404response.py rename to src/cloudpdf/types/doc_annotations_read_file404response.py index 0dc4a13..54014ac 100644 --- a/src/cloudpdf/types/doc_pages_insert404response.py +++ b/src/cloudpdf/types/doc_annotations_read_file404response.py @@ -2,4 +2,4 @@ from .engine_error_payload import EngineErrorPayload -DocPagesInsert404Response = EngineErrorPayload +DocAnnotationsReadFile404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_annotations_read_file413response.py b/src/cloudpdf/types/doc_annotations_read_file413response.py new file mode 100644 index 0000000..050a5d6 --- /dev/null +++ b/src/cloudpdf/types/doc_annotations_read_file413response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .engine_error_payload import EngineErrorPayload + +DocAnnotationsReadFile413Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_attachments_download400response.py b/src/cloudpdf/types/doc_attachments_download400response.py new file mode 100644 index 0000000..dcc314f --- /dev/null +++ b/src/cloudpdf/types/doc_attachments_download400response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .engine_error_payload import EngineErrorPayload + +DocAttachmentsDownload400Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_attachments_download404response.py b/src/cloudpdf/types/doc_attachments_download404response.py new file mode 100644 index 0000000..07f6762 --- /dev/null +++ b/src/cloudpdf/types/doc_attachments_download404response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .engine_error_payload import EngineErrorPayload + +DocAttachmentsDownload404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_attachments_download413response.py b/src/cloudpdf/types/doc_attachments_download413response.py new file mode 100644 index 0000000..49025e0 --- /dev/null +++ b/src/cloudpdf/types/doc_attachments_download413response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .engine_error_payload import EngineErrorPayload + +DocAttachmentsDownload413Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_attachments_list200response.py b/src/cloudpdf/types/doc_attachments_list200response.py new file mode 100644 index 0000000..50ce366 --- /dev/null +++ b/src/cloudpdf/types/doc_attachments_list200response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .attachment_list import AttachmentList + +DocAttachmentsList200Response = AttachmentList diff --git a/src/cloudpdf/types/doc_pages_delete400response.py b/src/cloudpdf/types/doc_attachments_list404response.py similarity index 70% rename from src/cloudpdf/types/doc_pages_delete400response.py rename to src/cloudpdf/types/doc_attachments_list404response.py index 16cfbbf..7d1417a 100644 --- a/src/cloudpdf/types/doc_pages_delete400response.py +++ b/src/cloudpdf/types/doc_attachments_list404response.py @@ -2,4 +2,4 @@ from .engine_error_payload import EngineErrorPayload -DocPagesDelete400Response = EngineErrorPayload +DocAttachmentsList404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_manifest200response.py b/src/cloudpdf/types/doc_manifest200response.py index cd9fb3d..cb3abee 100644 --- a/src/cloudpdf/types/doc_manifest200response.py +++ b/src/cloudpdf/types/doc_manifest200response.py @@ -31,6 +31,9 @@ class DocManifest200Response(UniversalBaseModel): forms_version: typing_extensions.Annotated[ typing.Optional[int], FieldMetadata(alias="formsVersion"), pydantic.Field(alias="formsVersion") ] = None + outline_version: typing_extensions.Annotated[ + typing.Optional[int], FieldMetadata(alias="outlineVersion"), pydantic.Field(alias="outlineVersion") + ] = None audit_head: typing_extensions.Annotated[int, FieldMetadata(alias="auditHead"), pydantic.Field(alias="auditHead")] base_sha: typing_extensions.Annotated[str, FieldMetadata(alias="baseSha"), pydantic.Field(alias="baseSha")] layer_version: typing_extensions.Annotated[ diff --git a/src/cloudpdf/types/doc_manifest200response_scopes.py b/src/cloudpdf/types/doc_manifest200response_scopes.py index 5262b06..ccb9c43 100644 --- a/src/cloudpdf/types/doc_manifest200response_scopes.py +++ b/src/cloudpdf/types/doc_manifest200response_scopes.py @@ -11,6 +11,7 @@ from .doc_manifest200response_scopes_forms import DocManifest200ResponseScopesForms from .doc_manifest200response_scopes_layout import DocManifest200ResponseScopesLayout from .doc_manifest200response_scopes_metadata import DocManifest200ResponseScopesMetadata +from .doc_manifest200response_scopes_outline import DocManifest200ResponseScopesOutline class DocManifest200ResponseScopes(UniversalBaseModel): @@ -21,6 +22,7 @@ class DocManifest200ResponseScopes(UniversalBaseModel): attachments: DocManifest200ResponseScopesAttachments metadata: DocManifest200ResponseScopesMetadata actions: DocManifest200ResponseScopesActions + outline: DocManifest200ResponseScopesOutline if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/doc_manifest200response_scopes_outline.py b/src/cloudpdf/types/doc_manifest200response_scopes_outline.py new file mode 100644 index 0000000..ed368f6 --- /dev/null +++ b/src/cloudpdf/types/doc_manifest200response_scopes_outline.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DocManifest200ResponseScopesOutline = typing.Union[typing.Literal["base", "layer"], typing.Any] diff --git a/src/cloudpdf/types/doc_outline_get200response.py b/src/cloudpdf/types/doc_outline_get200response.py new file mode 100644 index 0000000..2dcd742 --- /dev/null +++ b/src/cloudpdf/types/doc_outline_get200response.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +from .document_outline import DocumentOutline + +DocOutlineGet200Response = DocumentOutline diff --git a/src/cloudpdf/types/doc_pages_insert400response.py b/src/cloudpdf/types/doc_outline_get404response.py similarity index 71% rename from src/cloudpdf/types/doc_pages_insert400response.py rename to src/cloudpdf/types/doc_outline_get404response.py index 6b3f60b..ae3aaaf 100644 --- a/src/cloudpdf/types/doc_pages_insert400response.py +++ b/src/cloudpdf/types/doc_outline_get404response.py @@ -2,4 +2,4 @@ from .engine_error_payload import EngineErrorPayload -DocPagesInsert400Response = EngineErrorPayload +DocOutlineGet404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes.py b/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes.py deleted file mode 100644 index 014b774..0000000 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes.py +++ /dev/null @@ -1,32 +0,0 @@ -# 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_delete200response_layout_pages_item_boxes_art import DocPagesDelete200ResponseLayoutPagesItemBoxesArt -from .doc_pages_delete200response_layout_pages_item_boxes_bleed import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesBleed, -) -from .doc_pages_delete200response_layout_pages_item_boxes_crop import DocPagesDelete200ResponseLayoutPagesItemBoxesCrop -from .doc_pages_delete200response_layout_pages_item_boxes_media import ( - DocPagesDelete200ResponseLayoutPagesItemBoxesMedia, -) -from .doc_pages_delete200response_layout_pages_item_boxes_trim import DocPagesDelete200ResponseLayoutPagesItemBoxesTrim - - -class DocPagesDelete200ResponseLayoutPagesItemBoxes(UniversalBaseModel): - media: DocPagesDelete200ResponseLayoutPagesItemBoxesMedia - crop: DocPagesDelete200ResponseLayoutPagesItemBoxesCrop - bleed: DocPagesDelete200ResponseLayoutPagesItemBoxesBleed - trim: DocPagesDelete200ResponseLayoutPagesItemBoxesTrim - art: DocPagesDelete200ResponseLayoutPagesItemBoxesArt - - 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_delete200response_layout_pages_item_boxes_media.py b/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_media.py deleted file mode 100644 index 640d468..0000000 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_pages_item_boxes_media.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesDelete200ResponseLayoutPagesItemBoxesMedia(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes.py b/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes.py deleted file mode 100644 index f0353be..0000000 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes.py +++ /dev/null @@ -1,32 +0,0 @@ -# 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_layout_pages_item_boxes_art import DocPagesInsert200ResponseLayoutPagesItemBoxesArt -from .doc_pages_insert200response_layout_pages_item_boxes_bleed import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesBleed, -) -from .doc_pages_insert200response_layout_pages_item_boxes_crop import DocPagesInsert200ResponseLayoutPagesItemBoxesCrop -from .doc_pages_insert200response_layout_pages_item_boxes_media import ( - DocPagesInsert200ResponseLayoutPagesItemBoxesMedia, -) -from .doc_pages_insert200response_layout_pages_item_boxes_trim import DocPagesInsert200ResponseLayoutPagesItemBoxesTrim - - -class DocPagesInsert200ResponseLayoutPagesItemBoxes(UniversalBaseModel): - media: DocPagesInsert200ResponseLayoutPagesItemBoxesMedia - crop: DocPagesInsert200ResponseLayoutPagesItemBoxesCrop - bleed: DocPagesInsert200ResponseLayoutPagesItemBoxesBleed - trim: DocPagesInsert200ResponseLayoutPagesItemBoxesTrim - art: DocPagesInsert200ResponseLayoutPagesItemBoxesArt - - 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_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_crop.py deleted file mode 100644 index f314823..0000000 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_crop.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsert200ResponseLayoutPagesItemBoxesCrop(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_media.py b/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_media.py deleted file mode 100644 index 568886a..0000000 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_media.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsert200ResponseLayoutPagesItemBoxesMedia(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_trim.py deleted file mode 100644 index 65c63e2..0000000 --- a/src/cloudpdf/types/doc_pages_insert200response_layout_pages_item_boxes_trim.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsert200ResponseLayoutPagesItemBoxesTrim(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout.py deleted file mode 100644 index f9cb5ff..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout.py +++ /dev/null @@ -1,31 +0,0 @@ -# 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_layout_named_pages_item import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItem, -) -from .doc_pages_insert_blank200response_layout_pages_item import DocPagesInsertBlank200ResponseLayoutPagesItem - - -class DocPagesInsertBlank200ResponseLayout(UniversalBaseModel): - page_count: typing_extensions.Annotated[int, FieldMetadata(alias="pageCount"), pydantic.Field(alias="pageCount")] - pages: typing.List[DocPagesInsertBlank200ResponseLayoutPagesItem] - named_pages: typing_extensions.Annotated[ - typing.List[DocPagesInsertBlank200ResponseLayoutNamedPagesItem], - FieldMetadata(alias="namedPages"), - pydantic.Field(alias="namedPages"), - ] - - 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_layout_named_pages_item.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item.py deleted file mode 100644 index 812f105..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item.py +++ /dev/null @@ -1,23 +0,0 @@ -# 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_layout_named_pages_item_target import ( - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget, -) - - -class DocPagesInsertBlank200ResponseLayoutNamedPagesItem(UniversalBaseModel): - name: str - target: DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget - - 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_layout_named_pages_item_target.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target.py deleted file mode 100644 index a0b73f9..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target.py +++ /dev/null @@ -1,64 +0,0 @@ -# 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 -from .page_ref import PageRef - - -class DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page(UniversalBaseModel): - kind: typing.Literal["page"] = "page" - page: PageRef - - 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 DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template(UniversalBaseModel): - kind: typing.Literal["template"] = "template" - object_number: typing_extensions.Annotated[ - int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") - ] - - 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 DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling(UniversalBaseModel): - kind: typing.Literal["dangling"] = "dangling" - - 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 - - -DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget = typing_extensions.Annotated[ - typing.Union[ - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Page, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Template, - DocPagesInsertBlank200ResponseLayoutNamedPagesItemTarget_Dangling, - ], - pydantic.Field(discriminator="kind"), -] diff --git a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_dangling.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_dangling.py deleted file mode 100644 index 53603e7..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_dangling.py +++ /dev/null @@ -1,17 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetDangling(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_layout_pages_item.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item.py deleted file mode 100644 index b8b50eb..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item.py +++ /dev/null @@ -1,50 +0,0 @@ -# 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_layout_pages_item_boxes import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxes, -) -from .doc_pages_insert_blank200response_layout_pages_item_pdf_crop_box import ( - DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox, -) -from .doc_pages_insert_blank200response_layout_pages_item_size import DocPagesInsertBlank200ResponseLayoutPagesItemSize -from .doc_pages_insert_blank200response_layout_pages_item_tab_order import ( - DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder, -) -from .page_ref import PageRef -from .pdf_page_actions import PdfPageActions - - -class DocPagesInsertBlank200ResponseLayoutPagesItem(UniversalBaseModel): - index: int - ref: PageRef - label: typing.Optional[str] = None - size: DocPagesInsertBlank200ResponseLayoutPagesItemSize - rotation: float - user_unit: typing_extensions.Annotated[float, FieldMetadata(alias="userUnit"), pydantic.Field(alias="userUnit")] - tab_order: typing_extensions.Annotated[ - typing.Optional[DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder], - FieldMetadata(alias="tabOrder"), - pydantic.Field(alias="tabOrder"), - ] = None - boxes: DocPagesInsertBlank200ResponseLayoutPagesItemBoxes - pdf_crop_box: typing_extensions.Annotated[ - DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox, - FieldMetadata(alias="pdfCropBox"), - pydantic.Field(alias="pdfCropBox"), - ] - actions: typing.Optional[PdfPageActions] = 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_layout_pages_item_boxes.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes.py deleted file mode 100644 index 72cef9f..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes.py +++ /dev/null @@ -1,38 +0,0 @@ -# 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_layout_pages_item_boxes_art import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt, -) -from .doc_pages_insert_blank200response_layout_pages_item_boxes_bleed import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed, -) -from .doc_pages_insert_blank200response_layout_pages_item_boxes_crop import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop, -) -from .doc_pages_insert_blank200response_layout_pages_item_boxes_media import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia, -) -from .doc_pages_insert_blank200response_layout_pages_item_boxes_trim import ( - DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim, -) - - -class DocPagesInsertBlank200ResponseLayoutPagesItemBoxes(UniversalBaseModel): - media: DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia - crop: DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop - bleed: DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed - trim: DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim - art: DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt - - 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_layout_pages_item_boxes_art.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_art.py deleted file mode 100644 index 502e310..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_art.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemBoxesArt(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_bleed.py deleted file mode 100644 index a7ca2b9..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_bleed.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemBoxesBleed(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_crop.py deleted file mode 100644 index ffc7726..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_crop.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemBoxesCrop(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_media.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_media.py deleted file mode 100644 index bcd1109..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_media.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemBoxesMedia(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_trim.py deleted file mode 100644 index cac43f9..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_boxes_trim.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemBoxesTrim(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_layout_pages_item_pdf_crop_box.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_pdf_crop_box.py deleted file mode 100644 index 031e5a2..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_pdf_crop_box.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesInsertBlank200ResponseLayoutPagesItemPdfCropBox(UniversalBaseModel): - left: float - bottom: float - right: float - top: float - - 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_layout_pages_item_tab_order.py b/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_tab_order.py deleted file mode 100644 index ddeed33..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_pages_item_tab_order.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -DocPagesInsertBlank200ResponseLayoutPagesItemTabOrder = typing.Union[ - typing.Literal["rows", "columns", "structure", "annotations", "widgets"], typing.Any -] diff --git a/src/cloudpdf/types/doc_pages_insert_blank400response.py b/src/cloudpdf/types/doc_pages_insert_blank400response.py deleted file mode 100644 index 3727f1d..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank400response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesInsertBlank400Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_insert_blank404response.py b/src/cloudpdf/types/doc_pages_insert_blank404response.py deleted file mode 100644 index 33999f2..0000000 --- a/src/cloudpdf/types/doc_pages_insert_blank404response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesInsertBlank404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes.py b/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes.py deleted file mode 100644 index ad4f883..0000000 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes.py +++ /dev/null @@ -1,36 +0,0 @@ -# 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_reorder200response_layout_pages_item_boxes_art import DocPagesReorder200ResponseLayoutPagesItemBoxesArt -from .doc_pages_reorder200response_layout_pages_item_boxes_bleed import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesBleed, -) -from .doc_pages_reorder200response_layout_pages_item_boxes_crop import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesCrop, -) -from .doc_pages_reorder200response_layout_pages_item_boxes_media import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesMedia, -) -from .doc_pages_reorder200response_layout_pages_item_boxes_trim import ( - DocPagesReorder200ResponseLayoutPagesItemBoxesTrim, -) - - -class DocPagesReorder200ResponseLayoutPagesItemBoxes(UniversalBaseModel): - media: DocPagesReorder200ResponseLayoutPagesItemBoxesMedia - crop: DocPagesReorder200ResponseLayoutPagesItemBoxesCrop - bleed: DocPagesReorder200ResponseLayoutPagesItemBoxesBleed - trim: DocPagesReorder200ResponseLayoutPagesItemBoxesTrim - art: DocPagesReorder200ResponseLayoutPagesItemBoxesArt - - 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_reorder200response_layout_pages_item_boxes_art.py b/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_art.py deleted file mode 100644 index 387974f..0000000 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_art.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesReorder200ResponseLayoutPagesItemBoxesArt(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_reorder200response_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_crop.py deleted file mode 100644 index 493f672..0000000 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_crop.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesReorder200ResponseLayoutPagesItemBoxesCrop(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_reorder200response_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_trim.py deleted file mode 100644 index 199abc5..0000000 --- a/src/cloudpdf/types/doc_pages_reorder200response_layout_pages_item_boxes_trim.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesReorder200ResponseLayoutPagesItemBoxesTrim(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_reorder400response.py b/src/cloudpdf/types/doc_pages_reorder400response.py deleted file mode 100644 index ba23926..0000000 --- a/src/cloudpdf/types/doc_pages_reorder400response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesReorder400Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_reorder404response.py b/src/cloudpdf/types/doc_pages_reorder404response.py deleted file mode 100644 index ab14a40..0000000 --- a/src/cloudpdf/types/doc_pages_reorder404response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesReorder404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes.py b/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes.py deleted file mode 100644 index 2cdf8f6..0000000 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes.py +++ /dev/null @@ -1,32 +0,0 @@ -# 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_rotate200response_layout_pages_item_boxes_art import DocPagesRotate200ResponseLayoutPagesItemBoxesArt -from .doc_pages_rotate200response_layout_pages_item_boxes_bleed import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesBleed, -) -from .doc_pages_rotate200response_layout_pages_item_boxes_crop import DocPagesRotate200ResponseLayoutPagesItemBoxesCrop -from .doc_pages_rotate200response_layout_pages_item_boxes_media import ( - DocPagesRotate200ResponseLayoutPagesItemBoxesMedia, -) -from .doc_pages_rotate200response_layout_pages_item_boxes_trim import DocPagesRotate200ResponseLayoutPagesItemBoxesTrim - - -class DocPagesRotate200ResponseLayoutPagesItemBoxes(UniversalBaseModel): - media: DocPagesRotate200ResponseLayoutPagesItemBoxesMedia - crop: DocPagesRotate200ResponseLayoutPagesItemBoxesCrop - bleed: DocPagesRotate200ResponseLayoutPagesItemBoxesBleed - trim: DocPagesRotate200ResponseLayoutPagesItemBoxesTrim - art: DocPagesRotate200ResponseLayoutPagesItemBoxesArt - - 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_rotate200response_layout_pages_item_boxes_bleed.py b/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_bleed.py deleted file mode 100644 index 4af5147..0000000 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_bleed.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesRotate200ResponseLayoutPagesItemBoxesBleed(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_rotate200response_layout_pages_item_boxes_crop.py b/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_crop.py deleted file mode 100644 index b3baade..0000000 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_crop.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesRotate200ResponseLayoutPagesItemBoxesCrop(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_rotate200response_layout_pages_item_boxes_media.py b/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_media.py deleted file mode 100644 index 47a7126..0000000 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_media.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesRotate200ResponseLayoutPagesItemBoxesMedia(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_rotate200response_layout_pages_item_boxes_trim.py b/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_trim.py deleted file mode 100644 index c731014..0000000 --- a/src/cloudpdf/types/doc_pages_rotate200response_layout_pages_item_boxes_trim.py +++ /dev/null @@ -1,22 +0,0 @@ -# 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 DocPagesRotate200ResponseLayoutPagesItemBoxesTrim(UniversalBaseModel): - x: float - y: float - width: float - height: float - - 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_rotate400response.py b/src/cloudpdf/types/doc_pages_rotate400response.py deleted file mode 100644 index 5b32a4f..0000000 --- a/src/cloudpdf/types/doc_pages_rotate400response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesRotate400Response = EngineErrorPayload diff --git a/src/cloudpdf/types/doc_pages_rotate404response.py b/src/cloudpdf/types/doc_pages_rotate404response.py deleted file mode 100644 index 77d73f3..0000000 --- a/src/cloudpdf/types/doc_pages_rotate404response.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from .engine_error_payload import EngineErrorPayload - -DocPagesRotate404Response = EngineErrorPayload diff --git a/src/cloudpdf/types/document_outline.py b/src/cloudpdf/types/document_outline.py new file mode 100644 index 0000000..85fff54 --- /dev/null +++ b/src/cloudpdf/types/document_outline.py @@ -0,0 +1,21 @@ +# 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 .outline_item import OutlineItem + + +class DocumentOutline(UniversalBaseModel): + items: typing.List[OutlineItem] + incomplete: bool + + 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/outline_item.py b/src/cloudpdf/types/outline_item.py new file mode 100644 index 0000000..801ae8c --- /dev/null +++ b/src/cloudpdf/types/outline_item.py @@ -0,0 +1,30 @@ +# 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 .outline_item_ref import OutlineItemRef +from .pdf_action_tree import PdfActionTree +from .pdf_link_target import PdfLinkTarget + + +class OutlineItem(UniversalBaseModel): + ref: OutlineItemRef + parent: typing.Optional[OutlineItemRef] = None + title: str + target: typing.Optional[PdfLinkTarget] = None + action: typing.Optional[PdfActionTree] = None + open: bool + color: typing.Optional[str] = None + bold: bool + italic: bool + + 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_delete200response_layout_named_pages_item.py b/src/cloudpdf/types/outline_item_draft.py similarity index 61% rename from src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item.py rename to src/cloudpdf/types/outline_item_draft.py index ea5930d..d6af8dd 100644 --- a/src/cloudpdf/types/doc_pages_delete200response_layout_named_pages_item.py +++ b/src/cloudpdf/types/outline_item_draft.py @@ -4,14 +4,15 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .doc_pages_delete200response_layout_named_pages_item_target import ( - DocPagesDelete200ResponseLayoutNamedPagesItemTarget, -) +from .pdf_link_target_writable import PdfLinkTargetWritable -class DocPagesDelete200ResponseLayoutNamedPagesItem(UniversalBaseModel): - name: str - target: DocPagesDelete200ResponseLayoutNamedPagesItemTarget +class OutlineItemDraft(UniversalBaseModel): + title: str + target: typing.Optional[PdfLinkTargetWritable] = None + color: typing.Optional[str] = None + bold: typing.Optional[bool] = None + italic: typing.Optional[bool] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/cloudpdf/types/outline_item_patch.py b/src/cloudpdf/types/outline_item_patch.py new file mode 100644 index 0000000..3d862bd --- /dev/null +++ b/src/cloudpdf/types/outline_item_patch.py @@ -0,0 +1,25 @@ +# 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 .pdf_link_target_writable import PdfLinkTargetWritable + + +class OutlineItemPatch(UniversalBaseModel): + title: typing.Optional[str] = None + target: typing.Optional[PdfLinkTargetWritable] = None + color: typing.Optional[str] = None + bold: typing.Optional[bool] = None + italic: typing.Optional[bool] = None + open: typing.Optional[bool] = 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_layout_named_pages_item_target_template.py b/src/cloudpdf/types/outline_item_ref.py similarity index 84% rename from src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_template.py rename to src/cloudpdf/types/outline_item_ref.py index 2a4cc0b..67932e5 100644 --- a/src/cloudpdf/types/doc_pages_insert_blank200response_layout_named_pages_item_target_template.py +++ b/src/cloudpdf/types/outline_item_ref.py @@ -6,9 +6,11 @@ import typing_extensions from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ..core.serialization import FieldMetadata +from .outline_item_ref_kind import OutlineItemRefKind -class DocPagesInsertBlank200ResponseLayoutNamedPagesItemTargetTemplate(UniversalBaseModel): +class OutlineItemRef(UniversalBaseModel): + kind: OutlineItemRefKind object_number: typing_extensions.Annotated[ int, FieldMetadata(alias="objectNumber"), pydantic.Field(alias="objectNumber") ] diff --git a/src/cloudpdf/types/doc_pages_rotate_request.py b/src/cloudpdf/types/outline_item_ref_kind.py similarity index 50% rename from src/cloudpdf/types/doc_pages_rotate_request.py rename to src/cloudpdf/types/outline_item_ref_kind.py index fb3506e..b0138af 100644 --- a/src/cloudpdf/types/doc_pages_rotate_request.py +++ b/src/cloudpdf/types/outline_item_ref_kind.py @@ -2,4 +2,4 @@ import typing -DocPagesRotateRequest = typing.Dict[str, typing.Any] +OutlineItemRefKind = typing.Union[typing.Literal["objectNumber"], typing.Any] diff --git a/src/cloudpdf/types/outline_mutation_meta.py b/src/cloudpdf/types/outline_mutation_meta.py new file mode 100644 index 0000000..b4a9118 --- /dev/null +++ b/src/cloudpdf/types/outline_mutation_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 .cache_delta import CacheDelta +from .outline_item_ref import OutlineItemRef +from .page_ref import PageRef + + +class OutlineMutationMeta(UniversalBaseModel): + affected_pages: typing_extensions.Annotated[ + typing.List[PageRef], FieldMetadata(alias="affectedPages"), pydantic.Field(alias="affectedPages") + ] + cache_delta: typing_extensions.Annotated[ + typing.Optional[CacheDelta], FieldMetadata(alias="cacheDelta"), pydantic.Field(alias="cacheDelta") + ] = None + op_id: typing_extensions.Annotated[str, FieldMetadata(alias="opId"), pydantic.Field(alias="opId")] + undoable: bool + changed: typing.List[OutlineItemRef] + + 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/outline_order.py b/src/cloudpdf/types/outline_order.py new file mode 100644 index 0000000..1485560 --- /dev/null +++ b/src/cloudpdf/types/outline_order.py @@ -0,0 +1,21 @@ +# 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 .outline_item_ref import OutlineItemRef + + +class OutlineOrder(UniversalBaseModel): + parent: typing.Optional[OutlineItemRef] = None + children: typing.List[OutlineItemRef] + + 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/outline_position.py b/src/cloudpdf/types/outline_position.py new file mode 100644 index 0000000..a1dc891 --- /dev/null +++ b/src/cloudpdf/types/outline_position.py @@ -0,0 +1,8 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +from .outline_position_after import OutlinePositionAfter +from .outline_position_zero import OutlinePositionZero + +OutlinePosition = typing.Union[OutlinePositionZero, OutlinePositionAfter] diff --git a/src/cloudpdf/types/outline_position_after.py b/src/cloudpdf/types/outline_position_after.py new file mode 100644 index 0000000..7feaca4 --- /dev/null +++ b/src/cloudpdf/types/outline_position_after.py @@ -0,0 +1,21 @@ +# 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 .outline_item_ref import OutlineItemRef + + +class OutlinePositionAfter(UniversalBaseModel): + before: typing.Optional[OutlineItemRef] = None + after: typing.Optional[OutlineItemRef] = 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_delete_request.py b/src/cloudpdf/types/outline_position_zero.py similarity index 50% rename from src/cloudpdf/types/doc_pages_delete_request.py rename to src/cloudpdf/types/outline_position_zero.py index ca0adaa..91f2dd1 100644 --- a/src/cloudpdf/types/doc_pages_delete_request.py +++ b/src/cloudpdf/types/outline_position_zero.py @@ -2,4 +2,4 @@ import typing -DocPagesDeleteRequest = typing.Dict[str, typing.Any] +OutlinePositionZero = typing.Union[typing.Literal["start", "end"], typing.Any]