Skip to main content
The Autype Developer API lets you generate PDFs, DOCX, and ODT documents at scale. Perfect for automating document workflows, batch processing, and integrating document generation into your applications.

Base URL

Key capabilities

Persistent Documents

Create and manage documents that are saved in your Autype workspace — visible in the app and editable by your team.

Document Rendering

Render persistent documents or ad-hoc JSON/Markdown to PDF, DOCX, or ODT.

Bulk Rendering

Create up to 100 documents at once from a template with different variable sets.

Template Variables

Use {{ variables }} or ${variables} for dynamic content substitution.

Reusable Styles

Browse immutable built-in styles or manage organization-owned presets, then reference either from JSON or Markdown renders via stylePresetId.

Template Catalogs

Keep productive workspace templates separate from the browse-only built-in catalog and fetch Extended Markdown only for the selected template.

Reusable Blocks

Manage versioned organization content and insert it as a linked reference or editable snapshot.

Records

Save customer or case values against document versions and retain their export history.

Interactive Forms

Author styled form fields that become AcroForm widgets in PDF exports.

PDF Tools

Merge, split, rotate, watermark, and extract metadata from PDFs.

DOCX Roundtrip

Import editable Word documents as validated Autype JSON, modify them, and render them back to DOCX.

Persistent vs. temporary resources

The API works with two types of resources. Understanding the difference is important:

Persistent resources (visible in the Autype app)

Temporary resources (API-only, not visible in the app)

Use POST /render/document/ to render a persistent document. This uses the document’s saved content and its permanent images — no temporary image uploads needed.
For AI agents and API automation, prefer Extended Markdown plus reusable styles when possible:
  1. List styles with GET /styles?source=workspace, source=system, or source=all, then fetch the selected definition with GET /styles/{id}.
  2. Create an organization style only when the built-in catalog does not fit.
  3. For saved workspace documents, use POST /documents/markdown.
  4. For ad-hoc output that should not be saved, use POST /render/markdown.
  5. Pass the selected workspace UUID or immutable system:<id> as stylePresetId.
  6. Add inline defaults only for request-specific overrides.
To inspect layout with a vision-capable client, use POST /render/markdown/images. One selected page is returned directly as PNG or JPEG; multiple pages are returned as a ZIP archive. Markdown document requests keep content readable while still accepting structured metadata:
You can read the saved document back with GET /documents/{id}/markdown and update it with PATCH /documents/{id}/markdown. The full document JSON remains supported for advanced clients, editors, and integrations that need complete structural control. stylePresetId is additive: existing inline defaults still work, and inline values override the referenced style preset. Built-in system:<id> styles are immutable but can be used directly in render requests; organization style UUIDs remain editable. Template scopes are intentionally separate. Use scope=workspace for organization-owned templates that can drive production document generation. Use scope=catalog to browse built-in quick starts, then create a workspace copy before treating one as an organization template. Fetch the Extended Markdown only after selecting a template through GET /templates/{id}/markdown.

Temporary render shortcut

For temporary render jobs:
  1. Send the document content as Extended Markdown to POST /render/markdown.
  2. Pass the selected style as stylePresetId.
  3. Add inline defaults only for request-specific overrides.

Images in documents

How you handle images depends on whether you’re working with persistent or temporary resources:

Persistent documents with images

When creating a persistent document via POST /documents, you can embed images using the following workflow:
  1. Upload images via POST /images/upload — you receive /temp-image/{id} reference paths.
  2. Create the document via POST /documents with the /temp-image/{id} paths in your document JSON.
  3. Automatic conversion — the API detects all /temp-image/{id} references in the document content, copies them to permanent storage, and replaces the paths with /image/{assetId}. The resulting document contains only permanent image references.
The conversion happens transparently. The temporary images remain available for their 24-hour lifetime, but the document itself now references permanent copies that will not expire.

Temporary renders with images

For ad-hoc renders (POST /render, POST /render/markdown), use POST /images/upload to upload temporary images and reference them as /temp-image/{id} in your document JSON. These images are valid for 24 hours and are resolved at render time.

External URLs

You can also use full https:// URLs for images in any context — both persistent documents and temporary renders. External URLs are fetched at render time.

Credit costs

Operations consume credits from your organization’s balance. Credits are only charged on successful completion.

Quick example

Render a persistent document:
Or render from inline JSON (temporary, not saved):

Next steps

Authentication

Learn how to authenticate your API requests.

Rate Limits

Understand usage limits and quotas.

OpenAPI Specification

Download the full OpenAPI 3.0 spec as JSON — for code generation, Postman import, or AI context.