---
title: "List recent renders"
method: GET
path: "/v1/renders"
tags: ["Renders"]
---

# List recent renders

`GET /v1/renders`

## Request

- Base URL: `https://api.galleyrender.com`
- URL: `https://api.galleyrender.com/v1/renders`
- Auth: HTTP bearer

## Query parameters

- `limit` integer

## Response `200`

Newest first.

- object
  - `object` 'list', required
  - `data` Render[], required
    - `object` 'render', required
    - `id` string, required
    - `status` 'queued' | 'processing' | 'succeeded' | 'failed', required
    - `template` string, required: The resolved `name@version`.
    - `format` 'pdf' | 'png' | 'jpg', required
    - `engine` 'chromium' | 'satori', required
    - `cached` boolean, required: True when the stored object was reused. A cache hit is never billed.
    - `url` string, uri, nullable, required: Signed URL to the file. Expires in an hour by default; the stored file lasts until `expires_at`. `null` while the render is unfinished, when it failed, and once `expires_at` has passed.
    - `expires_at` string, date-time, nullable: The end of the file's retention, fixed when the render is made from the account's plan. After it the render is no longer a cache hit, `GET /v1/renders/{id}` answers `410 retention_expired`, and the file is deleted by a daily sweep. Not the signed URL's expiry.
    - `page_count` integer, nullable: Pages in the PDF; 1 for raster output.
    - `billable_units` integer, nullable: 1 per PNG/JPG, 1 per PDF page.
    - `byte_size` integer, nullable
    - `content_type` string, nullable
    - `created_at` string, date-time, required
    - `completed_at` string, date-time, nullable
    - `error` unknown
    - `webhook_status` 'pending' | 'delivered' | 'failed' | 'null', nullable: `null` when no `webhook_url` was given. `pending` while delivery is still being attempted, `delivered` once your endpoint answered 2xx, `failed` once all attempts were used.
    - `webhook_attempts` integer: Delivery attempts made so far.
    - `batch_id` string: Present only for batch items.
    - `warnings` Warning[]: What the request carried that the template did not use, possibly empty. Present on the `POST /v1/render` response (200 and 202) and on every batch item that is not an error. It describes the request, not the render: it is not stored, so `GET /v1/renders/{id}`, `GET /v1/renders` and webhook bodies do not carry it.
      - union: Something about the request that did not stop it. Paths and schema key names only, never a value; at most 20 per response. Discriminated by `type`.
        - object
          - `type` 'unknown_field', required
          - `path` string, required: Where the field is, e.g. `data.deposit`.
          - `message` string, required
          - `did_you_mean` string: The path of the field the template does have, when one is close or a known alias.
        - object
          - `type` 'unsupported_language', required
          - `path` string, required
          - `message` string, required
          - `supported` string[], required: The languages this template has translated text for.
        - object: Language support is switched off on this service, so `data.lang` and `data.labels` were not applied: the fixed text is English, dates and money are formatted for en-US and the paper size is the template's own. Send the same request again later for the document in your language.
          - `type` 'i18n_disabled', required
          - `path` string, required: `data.lang`, or `data.labels` when only labels were sent.
          - `message` string, required
        - object: A PNG made with the Satori engine whose data holds characters outside the Latin fonts the template embeds. Satori has no fallback face, so they render as empty boxes; render with `format: "pdf"` to have them drawn with system fonts.
          - `type` 'font_coverage', required
          - `path` string, required: The first field that holds such text. The text itself is never quoted.
          - `message` string, required
    - `file_deleted_at` string, date-time, nullable: When the file was deleted because its retention had passed. `null` until then. The render record itself is kept; the `data` and `options` it was made from are deleted with the file.

## Other responses

- `401`: `authentication_error`.

---

[API](https://skmtc.dev/galleyrender/apis/galley-render-api.md) · [All operations](https://skmtc.dev/galleyrender/apis/galley-render-api/llms.txt) · [OpenAPI document](https://skmtc.dev/galleyrender/apis/galley-render-api/revisions/a85d68468cd2?raw)
