Fetch full product details by IDs.
Used by frontend to get complete product data (images, prices, etc.) from minimal context (just productId). Requires experience JWT authentication.
Security: Only returns products from catalogs authorized for this experience. This prevents cross-catalog data exposure via user-supplied IDs.
Args: request: List of product IDs to hydrate (max 50)
Returns: Full product details for products found in authorized catalogs
POST
/catalogs/products/hydrate
curl \
--request POST 'http://api.example.com/catalogs/products/hydrate' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"product_ids":["string"]}'
Request examples
{
"product_ids": [
"string"
]
}
Response examples (200)
{
"products": [
{
"id": "string",
"externalId": "string",
"catalog": {
"id": "string",
"slug": "string",
"name": "string"
},
"name": "string",
"brand": "string",
"description": "string",
"price": "string",
"originalPrice": "string",
"currency": "USD",
"category": "string",
"color": "string",
"material": "string",
"sizes": [
"string"
],
"images": [
{
"url": "string",
"alt": "string"
}
],
"imageUrl": "string",
"thumbnailUrl": "string",
"linkUrl": "string",
"inStock": true,
"stockQuantity": 42
}
]
}
Response examples (422)
{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string"
}
]
}