Gallery Platform API
Reference

Add an artwork image by URL

Fetches a public image URL server-side, stores it, and registers it as an image on the artwork — the programmatic path for the API, the assistant, and agents, which can't PUT bytes to a signed URL. The URL is validated (https, size, type, host) before fetch. Reachable with an API key.

POST
/gallery/artworks/{id}/images/from-url

Fetches a public image URL server-side, stores it, and registers it as an image on the artwork — the programmatic path for the API, the assistant, and agents, which can't PUT bytes to a signed URL. The URL is validated (https, size, type, host) before fetch. Reachable with an API key.

Authorization

bearerAuth artworks:create
AuthorizationBearer <token>

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

In: header

Scope: artworks:create

Path Parameters

id*string

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.

Add an artwork image by fetching a public image URL.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

{  "id": "string",  "artwork_id": "string",  "storage_path": "string",  "url": "string",  "alt_text": "string",  "kind": "artwork",  "width": -9007199254740991,  "height": -9007199254740991,  "position": -9007199254740991,  "created_at": "string"}