Gallery Platform API
Reference

Attach a custom domain to the gallery

Validates a subdomain (real FQDN, not a bare apex, not platform/Vercel-owned, not already taken), mints a verification token, and stores it as pending_dns. Returns the DNS records to publish. Requires the custom_domains entitlement.

POST
/gallery/domains

Validates a subdomain (real FQDN, not a bare apex, not platform/Vercel-owned, not already taken), mints a verification token, and stores it as pending_dns. Returns the DNS records to publish. Requires the custom_domains entitlement.

Authorization

bearerAuth gallery:create
AuthorizationBearer <token>

A gallery API key, sent as Authorization: Bearer gpk_… (or the x-api-key header).

In: header

Scope: gallery:create

Header Parameters

Idempotency-Key?string

Optional. Send a unique key per logical operation to make retries safe: a retry with the same key replays the stored success for 14 days instead of re-running the write. Reusing a key with a different body returns 400.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Attach a custom hostname to the gallery.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

{  "id": "string",  "hostname": "string",  "status": "pending_dns",  "status_detail": "string",  "verification_token": "string",  "is_primary": true,  "dns_records": [    {      "type": "CNAME",      "name": "string",      "value": "string",      "purpose": "routing"    }  ],  "created_at": "string",  "verified_at": "string",  "updated_at": "string"}