List catalog entries
const url = 'https://example.com/v1/catalog/models';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/v1/catalog/models \ --header 'Authorization: Bearer <token>'List catalog entries for resource — filters pass through to studio.
Filters other than status/limit/offset are resource-specific and ignored by studio where they don’t apply.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”Header Parameters
Section titled “Header Parameters”Responses
Section titled “Responses”Successful Response
One catalog entry — a generated image with its spec embedded.
image_url is a short-lived presigned GET URL; a raw S3 key never crosses
this boundary (studio AD-8). spec is the resource-specific spec view —
models: {public_id, display_name, gender, ethnicity, body_type, age_range, metadata};
backgrounds: {public_id, display_name, scene_type, mood, dominant_colors, metadata};
complementary-garments: {public_id, display_name, garment_category_public_id,
color, material, pattern, fit, length, metadata}. Kept polymorphic-as-dict
on this boundary so studio can extend spec attributes without a gateway
contract break.
object
The catalog image’s ULID — what workflow requests reference.
Short-lived presigned preview URL.
‘active’ | ‘archived’.
True when this entry belongs to Figur’s shared library rather than to you. A listing returns both, and only your own can be archived.
The embedded resource-specific spec view (see class docstring).
object
Example
[ { "shared": false }]Validation Error
object
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ]}