List Product Models
Retrieve a list of product models from the product catalog with support for filtering and customizable response data.
GET /product/v1/product-models
Request Format
This is a GET request with optional query parameters for filtering and customization.
GET /product/v1/product-models?modelIds=model-123,model-456&state=active
Example curl request
curl --location --request GET 'https://connect.gelatoapis.com/product/v1/product-models?modelIds=model-tshirt-001,model-poster-001' \
--header 'Accept: application/json' \
--header 'X-API-KEY: your-api-key'
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| modelIds | string | Optional | Comma-separated list of specific model IDs to retrieve |
| state | string | Optional | Filter by model state. Options: active, inactive, draft |
Response Format
Returns a list of product models with their attributes and metadata:
{
"productModels": [
{
"id": "model-tshirt-001",
"name": "Premium T-Shirt",
"description": "High-quality cotton t-shirt with customizable design options",
"previewURL": "https://cdn.gelato.com/models/tshirt-001/preview.jpg",
"attributes": [
{
"id": "attr-color",
"description": "Color options",
"properties": [
{
"id": "prop-hex-code",
"description": "Hex color code",
"type": "string"
},
{
"id": "prop-pantone",
"description": "Pantone color reference",
"type": "string"
}
]
},
{
"id": "attr-size",
"description": "Size options",
"properties": [
{
"id": "prop-dimensions",
"description": "Physical dimensions",
"type": "string"
}
]
}
],
"productUidTemplate": "tshirt_{color}_{size}",
"categoryId": "cat-apparel-001",
"parts": [
{
"modelId": "model-tshirt-001",
"id": "part-front",
"name": "Front Design Area",
"quantity": 1,
"order": 1
},
{
"modelId": "model-tshirt-001",
"id": "part-back",
"name": "Back Design Area",
"quantity": 1,
"order": 2
}
],
"state": "active"
}
]
}
Common Use Cases
Get All Active Product Models:
curl --location --request GET 'https://connect.gelatoapis.com/product/v1/product-models?state=active' \
--header 'Accept: application/json' \
--header 'X-API-KEY: your-api-key'
Get Specific Models:
curl --location --request GET 'https://connect.gelatoapis.com/product/v1/product-models?modelIds=model-poster-001,model-mug-001' \
--header 'Accept: application/json' \
--header 'X-API-KEY: your-api-key'