Skip to content

OpenAPI Spec & Postman

The entire public API is described by a single OpenAPI 3.1 document. Download it to explore endpoints in Postman or Insomnia, generate a typed client, or drive your own tooling — no copy-pasting from these docs required.

The spec covers only the public endpoints:

MethodPathPurpose
GET/api/v1/projectsList your projects
GET/api/v1/projects/{projectId}/templatesList templates in a project
GET/api/v1/templates/{templateId}Inspect a template and its variable schema
POST/api/v1/templates/{templateId}/generateRender a personalized image — returns bytes, or a share link with delivery: "link"
POST/api/v1/batch-jobsSubmit a batch job — one template, many rows
GET/api/v1/batch-jobsList your batch jobs
GET/api/v1/batch-jobs/{jobId}Poll a batch job’s status
GET/api/v1/batch-jobs/{jobId}/itemsList a job’s per-row outcomes
GET/api/v1/batch-jobs/{jobId}/resultFetch a completed job’s results (URL or ZIP)
POST/api/v1/batch-jobs/{jobId}/cancelCancel a batch job, refunding unrendered rows
DELETE/api/v1/batch-jobs/{jobId}Delete a finished batch job and its archive
GET/api/v1/sharesList your public share links
DELETE/api/v1/shares/{shareId}Revoke a public share link

The document’s servers block is set to https://app.zandovi.com, and every operation declares the X-Api-Key API-key security scheme — so imported requests are pre-wired with the right base URL and auth.

  1. Open Postman → Import (top-left), then drag in zandovi-openapi.yaml (or File → Choose Files).
  2. Postman creates a Zandovi API collection with every endpoint and example request, and detects the X-Api-Key auth from the spec.
  3. Open the collection → Variables (or its Authorization tab) and set your API key once — every request inherits it.
  4. Create your key first in Settings → API Keys — see Authentication.
  • Insomnia: Create → Import From File → pick the YAML. Same result.

  • Client generation: feed the file to any OpenAPI 3.1 tool, e.g.

    Terminal window
    # TypeScript types
    npx openapi-typescript zandovi-openapi.yaml -o zandovi.d.ts
    # A full client with openapi-generator
    openapi-generator generate -i zandovi-openapi.yaml -g python -o ./zandovi-client

Admin, billing, and internal endpoints are intentionally excluded — the document contains only the render-focused public API described in these docs, including the batch-jobs endpoints listed above.

Completion callbacks are only half-visible here, by nature: the callbackUrl request field and the completionCallback response object are in the spec, but the delivery we POST to your endpoint isn’t — it’s a request you receive, not one you make, so no operation describes it. Its payload and signature are documented on the callbacks page.

The spec is regenerated from the API itself, so the download tracks the live https://app.zandovi.com/api/v1 behavior. Pin against the info.version field inside the file if you need to detect changes.