{ "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/compress": { "summary": "Compress PDF API", "description": "Reduce PDF file size up to 90% by optimizing images, fonts, and removing unused objects while preserving visual quality.", "post": { "tags": [ "Conversion" ], "externalDocs": { "description": "Read more about the converter", "url": "https://www.convertapi.com/pdf-to-compress" }, "requestBody": { "content": { "multipart/form-data": { "schema": { "required": [ "File" ], "type": "object", "properties": { "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" }, "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 PDF.", "x-ca-featured": false, "x-ca-label": "Open password", "x-ca-group": "Input", "x-ca-type": "String", "x-ca-representation": "Default" }, "Preset": { "enum": [ "none", "lossless", "text", "archive", "web", "ebook", "printer" ], "type": "string", "description": "Choose a compression level from the available presets. If a preset is selected, all other compression options will be ignored. These presets are optimized for various use cases, such as balancing file size and quality.", "default": "none", "x-ca-featured": true, "x-ca-label": "Compression preset", "x-ca-group": "Compression", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "none": "Not set - advanced properties used", "lossless": "Lossless - losslessly attempt to reduce file size", "text": "Text - 20 image DPI, lowest quality, highest compression", "archive": "Archive - 40 image DPI, low quality, high compression", "web": "Web - 75 image DPI, medium quality, high compression", "ebook": "Ebook - 150 image DPI, high quality, medium compression", "printer": "Printer - 300 image DPI, high quality, low compression" } }, "ImageResolution": { "maximum": 800, "minimum": 10, "type": "integer", "description": "Set the maximum image resolution in DPI.", "default": 150, "x-ca-featured": false, "x-ca-label": "Image resolution", "x-ca-group": "Image Compression", "x-ca-type": "Integer", "x-ca-representation": "Default", "x-ca-range": { "from": "10", "to": "800" } }, "ImageQuality": { "maximum": 100, "minimum": 10, "type": "integer", "description": "Set image quality in percentage.", "default": 80, "x-ca-featured": false, "x-ca-label": "Image quality", "x-ca-group": "Image Compression", "x-ca-type": "Integer", "x-ca-representation": "Default", "x-ca-range": { "from": "10", "to": "100" } }, "UnembedBaseFonts": { "type": "boolean", "description": "Specifies whether to remove the base fonts from the PDF file.", "default": false, "x-ca-featured": false, "x-ca-label": "Unembed base fonts", "x-ca-group": "PDF Output", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "SubsetEmbeddedFonts": { "type": "boolean", "description": "Output PDF should only contain font characters utilized in the original document, and any unused glyphs from all fonts in the document should be removed.", "default": false, "x-ca-featured": false, "x-ca-label": "Subset embedded fonts", "x-ca-group": "PDF Output", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveForms": { "type": "boolean", "description": "Remove PDF forms from the PDF file.", "default": false, "x-ca-featured": false, "x-ca-label": "Remove forms", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveDuplicates": { "type": "boolean", "description": "Remove duplicate fonts and color profiles from the PDF file.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove duplicates", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "Optimize": { "type": "boolean", "description": "Optimize page content streams in the PDF file.", "default": true, "x-ca-featured": false, "x-ca-label": "Optimize content", "x-ca-group": "PDF Output", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemovePieceInformation": { "type": "boolean", "description": "Remove piece information dictionaries like Adobe Illustrator or Photoshop private data.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove piece information", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveEmbeddedFiles": { "type": "boolean", "description": "Remove embedded/attachments files from the PDF file.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove embedded files", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveStructureInformation": { "type": "boolean", "description": "Remove all structure information from the PDF document.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove structure information", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveMetadata": { "type": "boolean", "description": "Detach the XMP metadata embedded in the document from its catalog, clear all properties in all schemas, and remove metadata from marked content.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove metadata", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "RemoveUnusedResources": { "type": "boolean", "description": "Remove references to resources such as fonts, images, patterns.", "default": true, "x-ca-featured": false, "x-ca-label": "Remove unused resources", "x-ca-group": "Remove Objects", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "Linearize": { "type": "boolean", "description": "Linearize PDF file and optimize for fast Web View.", "default": false, "x-ca-featured": false, "x-ca-label": "Linearize", "x-ca-group": "PDF Output", "x-ca-type": "Bool", "x-ca-representation": "Default" }, "PreservePdfa": { "type": "boolean", "description": "Preserve the PDF/A standard in the PDF file.", "default": false, "x-ca-featured": false, "x-ca-label": "Preserve PDF/A", "x-ca-group": "PDF 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": "The Compress PDF API by ConvertAPI is a tool that allows for the compression and reduction of PDF file sizes by up to 90%. This API optimizes PDF quality by compressing text, graphics, images, subsetting fonts, and optimizing document structure. It offers various parameters for customization, including compression presets, color and grayscale image compression, and options to remove elements like bookmarks, annotations, forms, and embedded files from the PDF. The API also provides options for optimizing the PDF for web viewing and preserving the PDF/A standard.", "x-ca-meta-title": "Efficient PDF Compression API - Up to 90% Size Reduction", "x-ca-meta-description": "Efficiently reduce PDF size with Compress PDF API. Experience up to 90% compression while preserving quality. Ideal for both individual and professional needs.", "x-ca-source-formats": "pdf", "x-ca-destination-formats": "pdf", "x-ca-tags": [ "optimize", "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" } }