Gallery Platform API
Reference

Upload a custom font

Registers a custom font from base64 bytes (ttf/otf/woff/woff2). The file's magic bytes and size are validated, and a licensing attestation is required. Requires the gallery:write scope (key) or editor membership (user).

POST
/gallery/fonts

Registers a custom font from base64 bytes (ttf/otf/woff/woff2). The file's magic bytes and size are validated, and a licensing attestation is required. Requires the gallery:write scope (key) or editor membership (user).

Authorization

bearerAuth gallery:update
AuthorizationBearer <token>

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

In: header

Scope: gallery:update

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.

Upload a custom font face (base64). Requires a licensing attestation.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

{  "id": "string",  "name": "string",  "format": "woff2",  "byte_size": -9007199254740991,  "license_attested": true,  "created_at": "string"}