Automette docs

Retrieve renders

Two endpoints for reading render state — one for polling a specific render, one for browsing or filtering.

Get a single render

GET /api/v1/renders/{id}
Authorization: Bearer dg_your_api_key

Response — 200

{
  "id": "cm4rnd7qh0001jx04w8e2t5va",
  "self": "https://automette.com/api/v1/renders/cm4rnd7qh0001jx04w8e2t5va",
  "status": "completed",
  "url": "https://cdn.automette.com/renders/cm4rnd7qh0001jx04w8e2t5va.pdf",
  "format": "pdf",
  "template_id": "cm4tpl8e20001js04xq2v9k3m",
  "template_name": "Invoice",
  "webhook_url": "https://your-app.com/hook",
  "webhook_deliveries": [
    {
      "id": "cm4wdl4rs0001jy04t2f8k6mc",
      "event_id": "evt_...",
      "source": "render_webhook",
      "http_status": 200,
      "success": true,
      "error": null,
      "created_at": "2026-04-22T12:00:01.000Z"
    }
  ],
  "data": { "name": "Alice" },
  "error": null,
  "created_at": "2026-04-22T12:00:00.000Z"
}

Field notes:

  • status — one of pending, running, completed, failed. While not completed, url is null.
  • webhook_deliveries — every attempt to deliver a webhook for this render, including failed attempts. source is render_webhook (per-request webhook_url) or global_webhook (subscription). null if no deliveries have been attempted.
  • error — populated when status is "failed". Truncated to 500 characters.

Download mode

Add ?download=true to redirect to the file directly — handy for <a href> tags or curl -OL:

curl -L "https://automette.com/api/v1/renders/cm4rnd7qh0001jx04w8e2t5va?download=true" \
  -H "Authorization: Bearer dg_your_key" \
  -o invoice.pdf

For DOCX templates with both formats requested, add ?format=pdf or ?format=docx to pick which file to download.

Errors

CodeWhen
401Missing or invalid API key
404Render does not exist or is not in your team
425download=true requested while render is still pending

List renders

GET /api/v1/renders
Authorization: Bearer dg_your_api_key

Query parameters

ParamTypeDefaultDescription
statusstringFilter by pending, running, completed, or failed.
template_idstringOnly renders for this template.
limitinteger20Page size, max 100.
cursorstringA render ID from a previous response's next_cursor.

Response — 200

{
  "renders": [
    {
      "id": "cm4rnd7qh0001jx04w8e2t5va",
      "self": "https://automette.com/api/v1/renders/cm4rnd7qh0001jx04w8e2t5va",
      "status": "completed",
      "url": "https://cdn.automette.com/renders/cm4rnd7qh0001jx04w8e2t5va.pdf",
      "format": "pdf",
      "template_id": "cm4tpl8e20001js04xq2v9k3m",
      "template_name": "Invoice",
      "error": null,
      "created_at": "2026-04-22T12:00:00.000Z"
    }
  ],
  "next_cursor": "cm4rnd2lk0009jx04e6m1q8sb"
}

next_cursor is null when there are no more pages.

Example — paginate through every completed render

cursor=""
while : ; do
  resp=$(curl -s "https://automette.com/api/v1/renders?status=completed&limit=100${cursor:+&cursor=$cursor}" \
    -H "Authorization: Bearer dg_your_key")
  echo "$resp" | jq '.renders[]'
  cursor=$(echo "$resp" | jq -r '.next_cursor')
  [ "$cursor" = "null" ] && break
done

On this page