API reference
Base URL: https://api.galleyrender.com. Every endpoint below takes an API key in
Authorization: Bearer glr_sk_… (or X-API-Key), returns JSON, and answers errors in
one envelope.
The machine-readable description of everything on this page is at
https://api.galleyrender.com/openapi.json — see
OpenAPI.
Renders
Section titled “Renders”| Endpoint | What it does |
|---|---|
POST /v1/render | Template + data → a signed URL. The one most integrations need. |
POST /v1/render/batch | Up to 50 renders in one call, with per-item errors. |
GET /v1/renders/:id | Status, and a freshly signed URL. |
GET /v1/renders | Recent renders, newest first. |
Templates
Section titled “Templates”| Endpoint | What it does |
|---|---|
GET /v1/templates | Templates on the account, with their latest version. |
GET /v1/templates/:ref | One version: schema, options, example, source. |
POST /v1/templates | Create a template at version 1. |
POST /v1/templates/:name/versions | Publish a new immutable version. |
GET /v1/templates/:name/versions | Every published version. |
POST /v1/templates/:ref/validate | Dry-run a payload. Free, renders nothing. |
DELETE /v1/templates/:name | Soft delete. Existing renders keep working. |
Account
Section titled “Account”| Endpoint | What it does |
|---|---|
GET /v1/usage | Period usage, cost, free-tier balance, spend cap, trial balance. |
GET /v1/account | The account behind the key, and the webhook signing secret (shown once). |
POST /v1/account/webhook-secret | Rotate the webhook signing secret. |
GET /healthz | Liveness and a dependency probe. Never authenticated. |
Not on this list
Section titled “Not on this list”/v1/internal/* is a service-to-service surface behind a shared secret, used by the
MCP server to mint trial accounts and issue keys. It is not part of the public API and
is not described in the OpenAPI document.