Convert

Convert to PDF, synchronously

Changed on

Up to 25 pages, returned within 30 seconds. Send store: true for JSON with a signed download link (valid 1 hour); omit it to get the PDF bytes in the response body.

Larger or slower documents time out with 408 QUICKJOB_TIMEOUT — use /longjob.

post/quickjob

Request

  • Base URL: https://api.podpdf.com
  • URL: https://api.podpdf.com/quickjob
  • Auth: API key in header X-API-Key

Request body

input_type'html' | 'markdown' | 'url' required
htmlstring

Required when input_type is html.

markdownstring

Required when input_type is markdown.

urlstring uri

Required when input_type is url. HTTPS only, public hosts only, 10 second timeout, 5 MB limit. Relative assets on the page are not resolved.

storeboolean

Return JSON with a signed link instead of the PDF bytes.

pdf_standard'pdf/ua-1' | 'pdf/ua-2'

Alpha. Make an accessible, tagged PDF that conforms to PDF/UA-1 (ISO 14289-1, PDF 1.7) or PDF/UA-2 (ISO 14289-2, PDF 2.0). For input_type html and markdown and for template renders; other inputs return 400. Leave it out for an ordinary PDF.

PodPDF adds what the file itself needs (tags, language, title, metadata, link descriptions, artifacts for page furniture) and checks the result with veraPDF. What depends on your HTML stays yours: alt text on images, headings in order, header cells in tables. The check's verdict comes back in X-PDF-Conformance (or conformance in JSON). Built-in templates pass both standards.

titlestring

Alpha. With pdf_standard: the document title, shown by PDF readers. Defaults to the page's <title>, then its first heading. Ignored without pdf_standard.

langstring

Alpha. With pdf_standard: the document language as a language tag. Defaults to the page's <html lang>, then en. Ignored without pdf_standard.

Example request

{
  "options": {
    "margin": {
      "top": "20mm",
      "right": "20mm",
      "bottom": "20mm",
      "left": "20mm"
    },
    "width": "100mm",
    "height": "150mm",
    "pageRanges": "1-3, 5"
  },
  "lang": "en-GB"
}

Response

The PDF, or JSON when store is true

job_idstring
pagesinteger
truncatedboolean
download_urlstring uri nullable

Signed link, valid one hour. Null when the upload failed.

download_url_expires_atstring date-time nullable
pdf_standard'pdf/ua-1' | 'pdf/ua-2'

Alpha. Make an accessible, tagged PDF that conforms to PDF/UA-1 (ISO 14289-1, PDF 1.7) or PDF/UA-2 (ISO 14289-2, PDF 2.0). For input_type html and markdown and for template renders; other inputs return 400. Leave it out for an ordinary PDF.

PodPDF adds what the file itself needs (tags, language, title, metadata, link descriptions, artifacts for page furniture) and checks the result with veraPDF. What depends on your HTML stays yours: alt text on images, headings in order, header cells in tables. The check's verdict comes back in X-PDF-Conformance (or conformance in JSON). Built-in templates pass both standards.

pdf_standard_stability'alpha'

Alpha. Present with pdf_standard.

Example response

{
  "job_id": "9f0a4b78-2c0c-4d14-9b8b-123456789abc",
  "pages": 3,
  "conformance": {
    "validator": "veraPDF 1.30.3",
    "failed_rules": [
      {
        "rule": "7.18.1-2",
        "specification": "ISO 14289-1:2014"
      }
    ]
  }
}

Changes

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status