Skip to content

Get a catalog entry

GET
/v1/catalog/{resource}/{public_id}
curl --request GET \
--url https://example.com/v1/catalog/models/example \
--header 'Authorization: Bearer <token>'
resource
required
Resource
string
Allowed values: models backgrounds complementary-garments
public_id
required
Public Id
string
X-Shopify-Hmac-Sha256
Any of:
string

Successful Response

Media type application/json
CatalogEntryResponse

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
public_id
required
Public Id

The catalog image’s ULID — what workflow requests reference.

string
image_url
required
Image Url

Short-lived presigned preview URL.

string
status
required
Status

‘active’ | ‘archived’.

string
spec
required
Spec

The embedded resource-specific spec view (see class docstring).

object
key
additional properties
any
description
Any of:
string
generation_job_public_id
Any of:
string
created_at
Any of:
string format: date-time
Example generated
{
"public_id": "example",
"image_url": "example",
"status": "example",
"spec": {},
"description": "example",
"generation_job_public_id": "example",
"created_at": "2026-04-15T12:00:00Z"
}

Validation Error

Media type application/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Example generated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}