Get a product composition
GET
/v1/organizations/{organizationId}/products/{productId}/composition
API key scope: products:read.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”productId
required
string
Header Parameters
Section titled “Header Parameters”X-Request-Id
string
Optional client request id returned in structured errors.
Responses
Section titled “Responses”Product composition found, or null when not configured.
Media typeapplication/json
object
id
required
string format: uuid
organizationId
required
string format: uuid
environment
required
string
productId
required
string format: uuid
kind
required
string
status
required
string
metadata
object
key
additional properties
any
components
required
Array<object>
object
id
required
string format: uuid
organizationId
required
string format: uuid
environment
required
string
compositionId
required
string format: uuid
componentProductId
required
string format: uuid
quantityInBaseUnits
required
number
componentProduct
object
id
required
string format: uuid
name
required
string
sku
required
string
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
Example
{ "id": "23232323-2323-4232-8232-232323232323", "organizationId": "11111111-1111-4111-8111-111111111111", "environment": "test", "productId": "22222222-2222-4222-8222-222222222222", "kind": "kit", "status": "active", "metadata": { "sellableAs": "bundle" }, "components": [ { "id": "24242424-2424-4242-8242-242424242424", "organizationId": "11111111-1111-4111-8111-111111111111", "environment": "test", "compositionId": "23232323-2323-4232-8232-232323232323", "componentProductId": "25252525-2525-4252-8252-252525252525", "quantityInBaseUnits": 2, "componentProduct": { "id": "25252525-2525-4252-8252-252525252525", "name": "Bundle component", "sku": "COMPONENT-001" }, "createdAt": "2026-07-03T10:00:00.000Z", "updatedAt": "2026-07-03T10:00:00.000Z" } ], "createdAt": "2026-07-03T10:00:00.000Z", "updatedAt": "2026-07-03T10:00:00.000Z"}The organization has exhausted its monthly public API request quota.
Media typeapplication/json
Example
{ "error": { "code": "PLAN_LIMIT_EXCEEDED", "message": "Plan limit exceeded for api_requests", "requestId": "req_123", "details": { "entitlementKey": "api_requests", "scope": "environment", "environment": "live", "configured": true, "limit": "50000", "used": "50000", "requested": "1", "currentPlan": { "code": "free", "version": 1 }, "requiredPlan": { "code": "starter", "version": 1, "requiresOverride": false } } }}