Preview a catalogue Variant revision
Renders one draft or approved revision — active or not — on an uploaded
input, as a makeup job you poll like any other. Nothing about the variant moves:
its availability, active_revision and generation are what they were. The body
is inputs and, for a variant with more than one application, the
application_id to render. The job’s resolution carries purpose: "preview"
and a target naming the revision and its authored_intent_digest.
A rejected revision answers 409 REVISION_DECIDED; a retired variant
409 VARIANT_RETIRED. Both refuse a new preview only: a retry of one already
admitted replays it.
Send an Idempotency-Key: a retry with the same key and the same request
answers 200 with the same job. The preview’s identity includes the revision’s
authored intent, so the same key naming another revision, or a try-on, answers
409 IDEMPOTENCY_KEY_REUSED.
Requires the catalogue.preview scope, which your account operator provisions; no
other catalogue scope implies it, and it needs no makeup.apply. Served only where
the catalogue is enabled for your environment.
Authentication
API key for one environment of your account. Keep server-side; never expose in browser clients.
Path parameters
Headers
Request
A preview of one variant revision (P3 F3.3; F0.2 §8): the input, and which of the revision’s application definitions to render when it declares more than one. The revision in the path supplies everything else.
Response headers
The state of each policy in RateLimit-Policy: "submit";r=59;t=1, r remaining and t seconds until whole again.
Quota of the most restrictive policy (draft-07 form).
The limits this request consumed, as an RFC 8941 list (draft-ietf-httpapi-ratelimit-headers): "submit";q=60;w=60. Policies are submit, upload and daily. Sent only while rate-limit headers are on.
Remaining quota of the most restrictive policy (draft-07 form).
Delay before retrying, expressed as delta-seconds
Response
What a job does: the operation’s authorization scope.
An operation is not its output’s type: OPERATION_OUTPUT_TYPE is the one place
the two meet.
JobV1.resolution: how a job’s custom applications were resolved.
Fixed at admission, so an exact retry and every later read answer the profile versions the job was admitted under, whatever the declaration says now.