{
  "openapi": "3.0.1",
  "info": {
    "title": "Video Converter & Compressor: MP4, WebM, GIF, MP3, Images",
    "description": "Video converter and compressor API: convert video to MP4, WebM or GIF, extract MP3 audio, compress and resize, plus images (PNG, JPG, WebP, TIFF), PDF to images, merge, split and compress PDFs, Office to PDF. Direct download links.",
    "version": "0.1",
    "x-build-id": "ZUFdONTz3KGOoDrJi"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/data-done-right~all-in-one-file-converter/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-data-done-right-all-in-one-file-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/data-done-right~all-in-one-file-converter/runs": {
      "post": {
        "operationId": "runs-sync-data-done-right-all-in-one-file-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/data-done-right~all-in-one-file-converter/run-sync": {
      "post": {
        "operationId": "run-sync-data-done-right-all-in-one-file-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "urls": {
            "title": "File URLs (simple mode)",
            "type": "array",
            "description": "Direct links to the files to convert. Each file is converted separately into the format below. Dropbox and Google Drive share links are turned into direct downloads automatically.",
            "items": {
              "type": "string"
            }
          },
          "to": {
            "title": "Convert to",
            "enum": [
              "pdf",
              "png",
              "jpg",
              "webp",
              "avif",
              "tiff",
              "bmp",
              "gif",
              "csv",
              "xlsx",
              "docx",
              "odt",
              "rtf",
              "txt",
              "pptx",
              "odp",
              "ods",
              "mp4",
              "webm",
              "mp3",
              "m4a",
              "wav",
              "flac",
              "ogg"
            ],
            "type": "string",
            "description": "Target format for the URLs above (and the default for jobs that don't set their own 'to')."
          },
          "jobs": {
            "title": "Jobs (advanced)",
            "type": "array",
            "description": "Each job: {\"url\" or \"urls\" or \"kvKeys\", \"to\", \"operation\" (auto | convert | merge | split | compress), \"options\", \"outputName\"}. Several urls + to=pdf in ONE job are merged into one PDF (images, PDFs and Office files can be mixed). See the README for every option."
          },
          "options": {
            "title": "Default options (JSON)",
            "type": "object",
            "description": "Options applied to every job (a job's own options win). E.g. {\"maxWidth\": 1600, \"quality\": 80, \"dpi\": 200, \"pages\": \"1-3\", \"ranges\": \"1-2,3-5\", \"startTime\": 5, \"duration\": 10, \"videoBitrate\": \"1M\", \"audioBitrate\": \"128k\"}."
          },
          "quality": {
            "title": "Quality (1-100)",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "JPG/WebP/AVIF quality, and image quality when compressing PDFs. Empty = sensible default (85 for images, 70 for image compression)."
          },
          "maxWidth": {
            "title": "Max width (px)",
            "minimum": 16,
            "type": "integer",
            "description": "Shrink images, rendered PDF pages and videos to fit this width (keeps aspect ratio, never enlarges)."
          },
          "maxHeight": {
            "title": "Max height (px)",
            "minimum": 16,
            "type": "integer",
            "description": "Shrink to fit this height (keeps aspect ratio, never enlarges)."
          },
          "stripMetadata": {
            "title": "Strip image metadata (EXIF, GPS)",
            "type": "boolean",
            "description": "Removes EXIF/GPS/camera data from image outputs (photos are auto-rotated first). Color profiles are kept.",
            "default": true
          },
          "dpi": {
            "title": "PDF to image: DPI",
            "minimum": 24,
            "maximum": 600,
            "type": "integer",
            "description": "Render resolution for PDF/Office pages to images. Default 150 (screen). Use 300 for print/OCR."
          },
          "pages": {
            "title": "PDF to image: pages",
            "type": "string",
            "description": "Which pages to render, e.g. 1-3,5,10- (empty = all, up to 'Max pages per file')."
          },
          "compression": {
            "title": "PDF compression level",
            "enum": [
              "low",
              "medium",
              "high"
            ],
            "type": "string",
            "description": "Used when a PDF is converted to PDF (compress)."
          },
          "pageSize": {
            "title": "Images to PDF: page size",
            "enum": [
              "A4",
              "Letter",
              "Legal",
              "A3",
              "A5",
              "image"
            ],
            "type": "string",
            "description": "Page size when images become PDF pages (orientation follows the image). Default A4."
          },
          "keyValueStoreId": {
            "title": "Key-value store (ID or name)",
            "type": "string",
            "description": "Convert records from one of your Apify key-value stores. Also the default store for jobs that use kvKeys."
          },
          "keys": {
            "title": "Record keys",
            "type": "array",
            "description": "Record keys in the store above to convert to the 'Convert to' format.",
            "items": {
              "type": "string"
            }
          },
          "outputStoreName": {
            "title": "Save outputs to named store",
            "type": "string",
            "description": "Optional. Save converted files into this named key-value store (kept until you delete it) instead of the run's default store."
          },
          "maxFileSizeMb": {
            "title": "Max input file size (MB)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Bigger files are skipped and reported in FAILED. Hard cap 500 MB.",
            "default": 200
          },
          "maxPagesPerFile": {
            "title": "Max pages per file",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Cap on pages rendered to images (and images placed into one PDF). Also caps cost.",
            "default": 200
          },
          "maxMediaMinutes": {
            "title": "Max audio/video minutes per file",
            "minimum": 1,
            "maximum": 180,
            "type": "integer",
            "description": "Longer media is rejected unless you trim it with options.startTime / options.duration. GIFs are always short (default 10 s, max 60 s).",
            "default": 30
          },
          "conversionTimeoutSecs": {
            "title": "Timeout per conversion (seconds)",
            "minimum": 30,
            "maximum": 3600,
            "type": "integer",
            "description": "A conversion that takes longer is stopped and reported; the batch continues.",
            "default": 600
          },
          "maxOutputFiles": {
            "title": "Max output files",
            "minimum": 1,
            "type": "integer",
            "description": "Stops after this many delivered files (caps cost).",
            "default": 1000
          },
          "maxConcurrency": {
            "title": "Parallel jobs",
            "minimum": 1,
            "maximum": 8,
            "type": "integer",
            "description": "Jobs processed at the same time. Video transcodes always run one at a time.",
            "default": 2
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Only needed if a file host blocks datacenter IPs.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}