← Files KodaPDFARCHIVED FILE
openapi.json
24.2 KB · Nov 10, 2026 · 12:10 UTC
{
"openapi": "3.1.0",
"info": {
"title": "KodaPDF Document Suite API",
"description": "Headless tools for document manipulation: conversion, compression, merging, splitting, protection, redaction, OCR, summarization, and translation.",
"version": "1.0.0"
},
"servers": [
{
"url": "https://kodapdf.com",
"description": "Production Server"
}
],
"paths": {
"/api/mcp/tools/convert_document": {
"post": {
"summary": "Convert documents between formats (Word to PDF, PDF to Word, Excel to PDF, PowerPoint to PDF, Images to PDF, etc.).",
"operationId": "convert_document",
"description": "Convert documents between formats (Word to PDF, PDF to Word, Excel to PDF, PowerPoint to PDF, Images to PDF, etc.).",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct public URL of the document to convert."
},
"target_format": {
"type": "string",
"description": "Target output format (e.g. 'pdf', 'docx', 'xlsx', 'pptx', 'jpg', 'png', 'txt')."
},
"source_format": {
"type": "string",
"description": "Optional source format. If omitted, inferred from the file URL."
}
},
"required": [
"file_url",
"target_format"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/compress_pdf": {
"post": {
"summary": "Reduce PDF file size while preserving high visual quality for web, email, or archiving.",
"operationId": "compress_pdf",
"description": "Reduce PDF file size while preserving high visual quality for web, email, or archiving.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file to compress."
},
"level": {
"type": "string",
"enum": [
"recommended",
"extreme",
"low"
],
"description": "Compression intensity (default is 'recommended')."
}
},
"required": [
"file_url"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/merge_pdfs": {
"post": {
"summary": "Merge multiple PDF documents sequentially into a single consolidated PDF.",
"operationId": "merge_pdfs",
"description": "Merge multiple PDF documents sequentially into a single consolidated PDF.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_urls": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of direct PDF URLs to merge in order (minimum 2 files)."
},
"output_file_name": {
"type": "string",
"description": "Optional name for the merged output file (e.g. 'Report.pdf')."
}
},
"required": [
"file_urls"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/split_pdf": {
"post": {
"summary": "Extract specific pages or page ranges from a PDF document into a new PDF.",
"operationId": "split_pdf",
"description": "Extract specific pages or page ranges from a PDF document into a new PDF.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file to split."
},
"page_ranges": {
"type": "string",
"description": "Page range to extract (e.g. '1-3, 5, 8-10' or 'all')."
}
},
"required": [
"file_url",
"page_ranges"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/protect_pdf": {
"post": {
"summary": "Lock and encrypt a PDF document with a secure password.",
"operationId": "protect_pdf",
"description": "Lock and encrypt a PDF document with a secure password.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF to protect."
},
"password": {
"type": "string",
"description": "The password to secure the document with."
}
},
"required": [
"file_url",
"password"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/unlock_pdf": {
"post": {
"summary": "Remove password security and editing restrictions from an encrypted PDF.",
"operationId": "unlock_pdf",
"description": "Remove password security and editing restrictions from an encrypted PDF.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the password-protected PDF."
},
"password": {
"type": "string",
"description": "The existing document password."
}
},
"required": [
"file_url",
"password"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/add_page_numbers": {
"post": {
"summary": "Insert clear page numbering across all pages of a PDF document.",
"operationId": "add_page_numbers",
"description": "Insert clear page numbering across all pages of a PDF document.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file."
},
"position": {
"type": "string",
"enum": [
"bottom-center",
"bottom-right",
"bottom-left",
"top-center",
"top-right",
"top-left"
],
"description": "Position on the page."
},
"start_number": {
"type": "integer",
"description": "Starting page number (default 1)."
}
},
"required": [
"file_url"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/add_watermark": {
"post": {
"summary": "Stamp a customized text watermark across all pages of a PDF.",
"operationId": "add_watermark",
"description": "Stamp a customized text watermark across all pages of a PDF.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file."
},
"text": {
"type": "string",
"description": "Watermark text (e.g. 'CONFIDENTIAL', 'DRAFT', or company name)."
},
"opacity": {
"type": "number",
"description": "Watermark opacity from 0.1 to 1.0 (default 0.3)."
}
},
"required": [
"file_url",
"text"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/redact_pdf": {
"post": {
"summary": "Permanently redact and black out sensitive keywords, names, or regex patterns from a PDF.",
"operationId": "redact_pdf",
"description": "Permanently redact and black out sensitive keywords, names, or regex patterns from a PDF.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file."
},
"patterns": {
"type": "array",
"items": {
"type": "string"
},
"description": "Words, phrases, or numbers to black out permanently."
}
},
"required": [
"file_url",
"patterns"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/resize_pdf": {
"post": {
"summary": "Adjust and standardize PDF page dimensions to specific paper formats (A4, Letter, A3, etc.).",
"operationId": "resize_pdf",
"description": "Adjust and standardize PDF page dimensions to specific paper formats (A4, Letter, A3, etc.).",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file."
},
"page_size": {
"type": "string",
"enum": [
"a4",
"letter",
"a3",
"legal"
],
"description": "Desired paper size format."
}
},
"required": [
"file_url",
"page_size"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/extract_text_ocr": {
"post": {
"summary": "Extract full text and readable content from a PDF document or scanned image.",
"operationId": "extract_text_ocr",
"description": "Extract full text and readable content from a PDF document or scanned image.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF or image file."
}
},
"required": [
"file_url"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/summarize_document": {
"post": {
"summary": "Generate an executive summary, key takeaways, and bulleted insights from a document.",
"operationId": "summarize_document",
"description": "Generate an executive summary, key takeaways, and bulleted insights from a document.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the document."
},
"focus_topic": {
"type": "string",
"description": "Optional topic or aspect to prioritize in the summary."
}
},
"required": [
"file_url"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/translate_document": {
"post": {
"summary": "Translate the entire content of a document into another language while preserving format.",
"operationId": "translate_document",
"description": "Translate the entire content of a document into another language while preserving format.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"file_url": {
"type": "string",
"description": "Direct URL of the PDF file."
},
"target_language": {
"type": "string",
"description": "Target language code (e.g. 'en', 'tr', 'es', 'de', 'fr', 'ja', 'zh')."
}
},
"required": [
"file_url",
"target_language"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
},
"/api/mcp/tools/get_job_status": {
"post": {
"summary": "Check the processing status, progress, and download link of any KodaPDF operation.",
"operationId": "get_job_status",
"description": "Check the processing status, progress, and download link of any KodaPDF operation.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"job_id": {
"type": "string",
"description": "The UUID of the job to inspect."
}
},
"required": [
"job_id"
]
}
}
}
},
"responses": {
"200": {
"description": "Operation queued or completed successfully",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Validation or processing error"
}
}
}
}
}
}SHA-256: 28c71dd8459d1e50cb84803f6906c7d51b51ba10603ea28237dbbd9356a60884