{ "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/rtf": { "summary": "PDF to RTF API", "description": "Convert PDFs to editable RTF preserving text, formatting, tables, and images with password, page ranges, layout mode, and OCR.", "post": { "tags": [ "Conversion" ], "externalDocs": { "description": "Read more about the converter", "url": "https://www.convertapi.com/pdf-to-rtf" }, "requestBody": { "content": { "multipart/form-data": { "schema": { "required": [ "File" ], "type": "object", "properties": { "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" } }, "Timeout": { "maximum": 1200, "minimum": 10, "type": "integer", "description": "Conversion timeout in seconds.", "default": 600, "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" } }, "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" }, "PageRange": { "type": "string", "description": "Set page range. Example 1-10 or 1,2,5.", "default": "1-2000", "x-ca-featured": false, "x-ca-label": "Page Range", "x-ca-group": "Document", "x-ca-type": "String", "x-ca-representation": "Default", "x-ca-range": { "from": "1", "to": "2000" } }, "Layout": { "enum": [ "flowing", "continuous", "exact" ], "type": "string", "description": "Controls how the original PDF page layout is reconstructed in the output: choose `flowing` to produce editable flowing text, `continuous` to preserve the layout using continuous text frames, or `exact` to reproduce the page pixel-perfectly using text boxes.", "default": "flowing", "x-ca-featured": false, "x-ca-label": "Layout", "x-ca-group": "Word", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "flowing": "Flowing", "continuous": "Continuous", "exact": "Exact" } }, "OcrMode": { "enum": [ "auto", "force", "never" ], "type": "string", "description": "Defines how OCR is applied during conversion. `Auto` performs OCR only when needed. `Force` applies OCR to all pages. `Never` disables OCR entirely.", "default": "auto", "x-ca-featured": false, "x-ca-label": "OCR Mode", "x-ca-group": "OCR", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "auto": "Auto", "force": "Force", "never": "Never" } }, "OcrLanguage": { "enum": [ "auto", "ar", "ca", "zh", "da", "nl", "en", "fi", "fr", "de", "el", "ko", "it", "ja", "no", "pl", "pt", "ro", "ru", "sl", "es", "sv", "tr", "ua", "th" ], "type": "string", "description": "Configure the OCR language for text recognition. If auto-detection fails, manually specify the language.", "default": "auto", "x-ca-featured": false, "x-ca-label": "OCR Language", "x-ca-group": "OCR", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "auto": "Auto", "ar": "Arabic", "ca": "Catalan", "zh": "Chinese", "da": "Danish", "nl": "Dutch", "en": "English", "fi": "Finnish", "fr": "French", "de": "German", "el": "Greek", "ko": "Korean", "it": "Italian", "ja": "Japanese", "no": "Norwegian", "pl": "Polish", "pt": "Portuguese", "ro": "Romanian", "ru": "Russian", "sl": "Slovenian", "es": "Spanish", "sv": "Swedish", "tr": "Turkish", "ua": "Ukrainian", "th": "Thai" } }, "OcrEngine": { "enum": [ "native", "tesseract" ], "type": "string", "description": "Select the OCR engine to use for text recognition. Each engine may produce slightly different results. If `Tesseract` is selected, the `OcrLanguage` property must be explicitly set, as automatic language detection is not supported.", "default": "native", "x-ca-featured": false, "x-ca-label": "OCR Engine", "x-ca-group": "OCR", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "native": "Native", "tesseract": "Tesseract" } }, "Annotations": { "enum": [ "textBox", "comment", "none" ], "type": "string", "description": "Set how PDF annotations are handled in the DOCX output: choose `textBox` to place each annotation as an editable text box near its anchor, `comment` to convert annotations into Word comments attached to the relevant text, or `none` to omit all annotations from the result.", "default": "textBox", "x-ca-featured": false, "x-ca-label": "Annotations", "x-ca-group": "Word", "x-ca-type": "Collection", "x-ca-representation": "Dropdown", "x-ca-values": { "textBox": "TextBox", "comment": "Comment", "none": "None" } } } } } } }, "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": "Convert PDF documents to Rich Text Format (RTF) for editing in popular word processors. Preserve text flow and basic formatting, tables, images, and paragraph structure so content remains easy to revise and reuse. Limit processing to specific page ranges, open password-protected files, and choose a layout reconstruction mode: Flowing, Continuous, or Exact to balance editability against visual fidelity. Recover content from scanned PDFs by activating OCR, selecting the engine and languages to maximize recognition quality. Designed for automation and batch workflows, the API produces predictable, clean RTF output for search, redaction, and downstream editing.\n", "x-ca-overview-markdown": "Convert PDF documents to Rich Text Format (RTF) for editing in popular word processors. Preserve text flow and basic formatting, tables, images, and paragraph structure so content remains easy to revise and reuse. Limit processing to specific page ranges, open password-protected files, and choose a layout reconstruction mode: Flowing, Continuous, or Exact to balance editability against visual fidelity. Recover content from scanned PDFs by activating OCR, selecting the engine and languages to maximize recognition quality. Designed for automation and batch workflows, the API produces predictable, clean RTF output for search, redaction, and downstream editing.", "x-ca-meta-title": "PDF to RTF Conversion API – Convert PDF to RTF File", "x-ca-meta-description": "Convert PDFs to RTF via API. Preserve text, formatting, tables, and images. Handle passwords and ranges. Choose layout reconstruction mode and OCR for scans.", "x-ca-keywords": "", "x-ca-source-formats": "pdf", "x-ca-destination-formats": "rtf", "x-ca-tags": [ "pdf", "extract", "document" ] } }, "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" } }