{ "openapi": "3.0.1", "info": { "title": "ConvertAPI", "description": "# High-Performance File Conversion API\nConvert Word, Excel, PowerPoint, HTML, PDF and Image formats with our powerful file conversion service.\nWe support more than [200 file types.]( https://www.convertapi.com/doc/file-formats)", "termsOfService": "https://www.convertapi.com/terms", "contact": { "url": "https://www.convertapi.com/support", "email": "support@convertapi.com" }, "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0.html" }, "version": "v2" }, "servers": [ { "url": "https://v2.convertapi.com" }, { "url": "https://eu-v2.convertapi.com" }, { "url": "https://uk-v2.convertapi.com" }, { "url": "https://us-v2.convertapi.com" }, { "url": "https://ca-v2.convertapi.com" }, { "url": "https://as-v2.convertapi.com" }, { "url": "https://au-v2.convertapi.com" } ], "paths": { "/convert/pdf/to/split": { "summary": "Split PDF API", "description": "Split large PDF files into individual pages or specific ranges based on patterns, bookmarks, or text to organize your documents.", "post": { "tags": [ "Conversion" ], "externalDocs": { "description": "Read more about the converter", "url": "https://www.convertapi.com/pdf-to-split" }, "requestBody": { "content": { "multipart/form-data": { "schema": { "required": [ "File" ], "type": "object", "properties": { "File": { "type": "string", "description": "File to be converted. Value can be URL or file content.", "format": "binary", "x-ca-featured": true, "x-ca-label": "File", "x-ca-group": "Input", "x-ca-type": "File", "x-ca-representation": "Default", "x-ca-allowed-extensions": [ "pdf" ] }, "FileName": { "type": "string", "description": "The `FileName` property defines the name of the output file(s) generated by the file conversion API, ensuring safe and\r\nunique file naming. It sanitizes input filenames to remove potentially harmful characters, automatically appends the\r\ncorrect file extension based on the target format, and includes an indexing feature to distinguish multiple output files\r\nfrom a single input. For example, converting `report.docx` to PDF format might result in `report.pdf` for a single file,\r\nor `report_0.pdf`, `report_1.pdf` for multiple files, ensuring each output file is uniquely identifiable.", "x-ca-featured": false, "x-ca-label": "Output file name", "x-ca-group": "Output", "x-ca-type": "String", "x-ca-representation": "Default", "x-ca-range": { "from": "1", "to": "200" } }, "Password": { "type": "string", "description": "Sets the password to open protected documents.", "x-ca-featured": false, "x-ca-label": "Open Password", "x-ca-group": "Document", "x-ca-type": "String", "x-ca-representation": "Default" }, "Mode": { "enum": [ "pagecount", "ranges", "singlepages", "text", "bookmark" ], "type": "string", "description": "Selects how the document is split. `pagecount` cuts consecutive chunks whose sizes follow `Value` - a comma-separated sequence repeated until the document ends (e.g. `Value=5` on a 10-page file gives two 5-page files; `Value=3,2` gives 3, 2, 3, 2, ...; empty `Value` means one file per page); `ranges` emits one file per page or range listed in `Value` (e.g. `1-3,5,7-9` gives three files); `singlepages` extracts each page listed in `Value` as its own file (e.g. `1-2,5` gives three single-page files: page 1, page 2, page 5); `text` starts a new file at every page whose text matches the `Value` regular expression; `bookmark` splits at each bookmark (`Value` is ignored).\r\n", "default": "pagecount", "x-ca-featured": true, "x-ca-label": "Split mode", "x-ca-group": "Split", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "pagecount": "Page count", "ranges": "Ranges", "singlepages": "Single pages", "text": "Text (regex)", "bookmark": "Bookmark" } }, "Value": { "type": "string", "description": "The argument for the selected `Mode`: a page-count sequence (`pagecount`), a page or range list (`ranges`, `singlepages`), or a regular expression (`text`). Ignored when `Mode` is `bookmark`. For `pagecount` an empty value produces one file per page.\r\n", "x-ca-featured": true, "x-ca-label": "Split value", "x-ca-group": "Split", "x-ca-type": "String", "x-ca-representation": "Default" }, "MergeOutput": { "type": "boolean", "description": "When set to `true`, all files produced by the split, regardless of the split method used, are merged into a single PDF named `merged.pdf`. By default (`false`) the API returns each split part as a separate PDF.\r\n", "default": false, "x-ca-featured": false, "x-ca-label": "Merge output", "x-ca-group": "Merge", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "Timeout": { "maximum": 1200, "minimum": 10, "type": "integer", "description": "Conversion timeout in seconds.", "default": 900, "x-ca-featured": false, "x-ca-label": "Timeout", "x-ca-group": "Execution", "x-ca-type": "Integer", "x-ca-representation": "Default", "x-ca-range": { "from": "10", "to": "1200" } }, "StoreFile": { "type": "boolean", "description": "When the `StoreFile` parameter is set to `True`, your converted file is written to ConvertAPI’s encrypted, temporary storage and made available via a time-limited secure download URL, valid for up to 3 hours. After this period, the file is permanently deleted.\r\n\r\nWhen `StoreFile` is set to `False`, conversion happens entirely in-memory. The raw file bytes are streamed back in the API response without touching disk or external storage, ensuring maximum security and zero persistence so that only you can access the content.\r\n", "default": false, "x-ca-featured": false, "x-ca-label": "Store file", "x-ca-group": "Output", "x-ca-type": "Bool", "x-ca-representation": "Default" } } } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "ConversionCost": { "type": "integer", "description": "This amount will be deducted from your balance after the conversion.", "format": "int32", "example": 1 }, "Files": { "type": "array", "items": { "type": "object", "properties": { "FileName": { "type": "string", "description": "Name of the converted file.", "example": "myfile.pdf" }, "FileExt": { "type": "string", "description": "File type (file name extension)", "example": "pdf" }, "FileSize": { "type": "integer", "description": "File size", "format": "int32", "example": 111955 }, "FileId": { "type": "string", "description": "File ID", "example": "25811safe8e61dd3f51ef00ee5f58b92" }, "Url": { "type": "string", "description": "File URL", "example": "https://v2.convertapi.com/d/v01plsb72o0cmdooq90w4d1lnqsf6oy4/myfile.pdf" }, "FileData": { "type": "string", "description": "Base64 encoded file data", "format": "base64", "example": "JVBERi0xLjcKJb662+4KMSAwIG9iago8PC9UeXBlIC9DYXRhbG9n..." } } } } }, "externalDocs": { "url": "https://www.convertapi.com/doc/content-types#applicationjson-1" } } }, "multipart/mixed": { "schema": { "type": "string", "format": "binary", "externalDocs": { "url": "https://www.convertapi.com/doc/content-types#multipartmixed" } }, "example": "--43cf1475-ab15-4c6b-b5ee-e2cbcedfe92f\nConversionCost: 1\nContent-Type: application/octet-stream\nContent-Disposition: attachment; filename=\"my_file.pdf\"; size=8475\n\n--FILE CONTENT--\n--43cf1475-ab15-4c6b-b5ee-e2cbcedfe92f--\n" }, "application/octet-stream": { "schema": { "type": "string", "format": "binary", "externalDocs": { "url": "https://www.convertapi.com/doc/content-types#applicationoctet-stream-1" } } } } }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "415": { "$ref": "#/components/responses/415" }, "500": { "$ref": "#/components/responses/500" }, "503": { "$ref": "#/components/responses/503" } }, "security": [ { "secret": [ ] }, { "token": [ ] }, { "jwt": [ ] } ] }, "x-ca-overview": "PDF Split API offers a powerful solution for dividing documents with precision, enabling developers to split large PDF files into individual pages or custom page groups based on specific requirements. This customizable REST API seamlessly integrates into your workflow through simple API calls, supported by comprehensive SDKs and auto-generated code snippets that minimize development time. Built on secure cloud infrastructure with ISO 27001, HIPAA, SOC 2, and GDPR compliance, our PDF Splitter ensures your sensitive documents remain protected while delivering consistent performance.\n", "x-ca-overview-markdown": "PDF Split API offers a powerful solution for dividing documents with precision, enabling developers to split large PDF files into individual pages or custom page groups based on specific requirements. This customizable REST API seamlessly integrates into your workflow through simple API calls, supported by comprehensive SDKs and auto-generated code snippets that minimize development time. Built on secure cloud infrastructure with ISO 27001, HIPAA, SOC 2, and GDPR compliance, our PDF Splitter ensures your sensitive documents remain protected while delivering consistent performance.", "x-ca-meta-title": "Split PDF API - Split PDF documents into individual pages", "x-ca-meta-description": "Break PDFs into individual pages or custom chunks with ConvertAPI’s Split PDF API featuring regex patterns, text and range splitting.", "x-ca-keywords": "", "x-ca-source-formats": "pdf", "x-ca-destination-formats": "pdf", "x-ca-tags": [ "modify", "pdf", "featured" ] } }, "components": { "schemas": { "fileId": { "maxLength": 32, "minLength": 32, "type": "string", "description": "Uploaded File ID", "example": "25811safe8e61dd3f51ef00ee5f58b92" }, "error": { "type": "object", "properties": { "Code": { "type": "integer", "description": "Error message code", "format": "int32", "example": 4000 }, "Message": { "type": "string", "description": "Error message text", "example": "Parameter validation error." } }, "externalDocs": { "url": "https://www.convertapi.com/doc/response-codes" } } }, "responses": { "400": { "description": "Malformed request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error" } } } }, "401": { "description": "Authentication error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error" } } } }, "415": { "description": "File type error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error" } } } }, "500": { "description": "Conversion failure", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error" } } } }, "503": { "description": "Conversion rate limit error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error" } } } } }, "parameters": { "fileId": { "name": "fileId", "in": "path", "description": "File ID", "required": true, "schema": { "$ref": "#/components/schemas/fileId" } }, "src": { "name": "src", "in": "path", "description": "Source file format (docx, pdf, jpg etc.)", "required": true, "schema": { "type": "string" } }, "dst": { "name": "dst", "in": "path", "description": "Destination file format (docx, pdf, jpg etc.)", "required": true, "schema": { "type": "string" } } }, "headers": { "content-disposition": { "description": "File information ([docummentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition))", "schema": { "type": "string" } }, "file-name": { "description": "File name", "schema": { "type": "string" } }, "file-ext": { "description": "File name extension", "schema": { "type": "string" } }, "file-size": { "description": "File size", "schema": { "type": "integer" } } }, "securitySchemes": { "secret": { "type": "http", "description": "[Get `Secret`](https://www.convertapi.com/a/secret)", "scheme": "bearer" }, "token": { "type": "http", "description": "[Get `Token`](https://www.convertapi.com/a/api-tokens)", "scheme": "bearer" }, "jwt": { "type": "http", "description": "[Get `JWT`](https://www.convertapi.com/a/jwt-tokens)", "scheme": "bearer", "bearerFormat": "JWT" } } }, "tags": [ { "name": "Conversion", "description": "File Conversion API call", "externalDocs": { "description": "File Conversion related operations", "url": "https://www.convertapi.com/doc/content-types" } }, { "name": "File Server", "description": "ConvertAPI temporary file storage", "externalDocs": { "description": "File Server related operations", "url": "https://www.convertapi.com/doc/upload" } }, { "name": "User", "description": "API User", "externalDocs": { "description": "API User related operations", "url": "https://www.convertapi.com/doc/user" } } ], "externalDocs": { "description": "Find out more about ConvertAPI", "url": "https://www.convertapi.com/doc" } }