getProductDetailCatalog
Use the SDK for application integration. This read-only reference covers Commerce, Customer Auth, Membership and Events.
All HTTP operationsGET
Exactly one truthy slug or id; see ProductDetailQuery. Publishable-key-safe catalog omits stock/reservedStock/totalInventory.
publishableKeyheader
X-Publishable-Key<token>Tenant publishable key for authentication (sent via X-Publishable-Key header)
slug?stringid?stringlocale?stringValue in
"ko""en""all"fallbackLocale?stringValue in
"ko""en""none""false"market?stringLength
1 <= lengthActual shaped success body
application/json- response
product*variants*array<>options*array<>brand*||categories*array<>tags*array<>images*array<>videos*array<>featuredImage?string|number|||priceRange?compareAtPriceRange?availableForSale?boolean|nullselectedOrFirstAvailableVariant?|string|number||Examples may be generated from schemas; they are illustrative, not recorded successful API calls. Example snippets may omit required authentication headers.
curl -X GET 'https://api.01.software/api/products/detail/catalog'Example Response
{ "product": { "id": "string", "slug": "string", "title": "string", "subtitle": "string", "description": "string", "content": null, "publishedAt": "string", "status": "string", "totalVariants": 0, "hasUnlimitedVariant": true, "hasOnlyDefaultVariant": true }, "variants": [ { "id": "string", "optionKey": "string", "title": "string", "displayName": "string", "sku": "string", "price": 0, "compareAtPrice": 0, "resolvedPrice": { "amount": 0, "compareAtPrice": 0, "currency": "string", "marketId": "string", "source": "fixed" }, "isUnlimited": true, "inventoryPolicy": "deny", "isActive": true, "thumbnail": "string", "images": [ "string" ], "media": { "primaryImage": "string", "images": [ "string" ], "source": "variant_media_selected" }, "optionValues": [ { "optionId": "string", "optionSlug": "string", "valueId": "string", "valueSlug": "string", "value": "string" } ], "availableForSale": true } ], "options": [ { "id": "string", "title": "string", "slug": "string", "values": [ { "id": "string", "value": "string", "slug": "string", "swatch": { "type": "color", "color": "string", "mediaItemId": null } } ] } ], "brand": { "id": "string", "name": "string", "slug": "string", "logo": null }, "categories": [ { "id": "string", "title": "string", "slug": "string" } ], "tags": [ { "id": "string", "title": "string", "slug": "string" } ], "images": [ { "id": "string", "url": "string", "alt": "string", "width": 0, "height": 0 } ], "videos": [ { "id": "string", "url": "string" } ], "featuredImage": "string", "priceRange": { "minVariantPrice": { "amount": 0 }, "maxVariantPrice": { "amount": 0 }, "isPriceRange": true }, "compareAtPriceRange": { "minVariantPrice": { "amount": 0 }, "maxVariantPrice": { "amount": 0 } }, "availableForSale": true, "selectedOrFirstAvailableVariant": { "id": "string", "optionKey": "string", "title": "string", "displayName": "string", "sku": "string", "price": 0, "compareAtPrice": 0, "resolvedPrice": { "amount": 0, "compareAtPrice": 0, "currency": "string", "marketId": "string", "source": "fixed" }, "isUnlimited": true, "inventoryPolicy": "deny", "isActive": true, "thumbnail": "string", "images": [ "string" ], "media": { "primaryImage": "string", "images": [ "string" ], "source": "variant_media_selected" }, "optionValues": [ { "optionId": "string", "optionSlug": "string", "valueId": "string", "valueSlug": "string", "value": "string" } ], "availableForSale": true }}Query schema
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"id": {
"type": "string"
},
"market": {
"type": "string",
"minLength": 1
},
"locale": {
"type": "string",
"enum": [
"ko",
"en",
"all"
]
},
"fallbackLocale": {
"anyOf": [
{
"type": "string",
"enum": [
"ko",
"en"
]
},
{
"type": "string",
"enum": [
"none"
]
},
{
"type": "string",
"enum": [
"false"
]
},
{
"type": "boolean",
"enum": [
false
]
}
]
}
},
"oneOf": [
{
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"id": {
"type": "string",
"enum": [
""
]
}
}
},
{
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"slug": {
"type": "string",
"enum": [
""
]
}
}
}
],
"description": "Exactly one truthy slug or id; empty alternate value is accepted. Fallback none/false normalizes to false. Unknown query fields are stripped."
}