A valid request URL is required to generate request examples{
"id": "<string>",
"object": "product",
"merchant_id": "<string>",
"name": "<string>",
"description": "<string>",
"active": true,
"images": [
"<string>"
],
"metadata": {},
"livemode": true,
"default_price_id": "<string>",
"unit_label": "<string>",
"product_kind": "digital",
"cross_sells": [
{
"price_id": "<string>",
"intent": "standard"
}
],
"created_at": 123,
"updated_at": 123,
"default_price": {
"id": "<string>",
"object": "price",
"product_id": "<string>",
"merchant_id": "<string>",
"unit_amount": 123,
"currency": "<string>",
"type": "one_time",
"active": true,
"nickname": "<string>",
"metadata": {},
"livemode": true,
"created_at": 123,
"updated_at": 123,
"recurring": {
"interval": "day",
"interval_count": 123,
"usage_type": "licensed"
}
},
"representative_price": {
"id": "<string>",
"object": "price",
"product_id": "<string>",
"merchant_id": "<string>",
"unit_amount": 123,
"currency": "<string>",
"type": "one_time",
"active": true,
"nickname": "<string>",
"metadata": {},
"livemode": true,
"created_at": 123,
"updated_at": 123,
"recurring": {
"interval": "day",
"interval_count": 123,
"usage_type": "licensed"
}
},
"prices_count": 123
}{
"error": {
"code": "INVALID_REQUEST",
"message": "invalid request body"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "PRODUCT_NOT_FOUND",
"message": "product not found"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Retrieve a product
Returns the product with enrichment data: default price, representative price (the sole price when no default is set and exactly one price exists), and price count. The representative price is a display-only fallback and must not be treated as the assigned default.
A valid request URL is required to generate request examples{
"id": "<string>",
"object": "product",
"merchant_id": "<string>",
"name": "<string>",
"description": "<string>",
"active": true,
"images": [
"<string>"
],
"metadata": {},
"livemode": true,
"default_price_id": "<string>",
"unit_label": "<string>",
"product_kind": "digital",
"cross_sells": [
{
"price_id": "<string>",
"intent": "standard"
}
],
"created_at": 123,
"updated_at": 123,
"default_price": {
"id": "<string>",
"object": "price",
"product_id": "<string>",
"merchant_id": "<string>",
"unit_amount": 123,
"currency": "<string>",
"type": "one_time",
"active": true,
"nickname": "<string>",
"metadata": {},
"livemode": true,
"created_at": 123,
"updated_at": 123,
"recurring": {
"interval": "day",
"interval_count": 123,
"usage_type": "licensed"
}
},
"representative_price": {
"id": "<string>",
"object": "price",
"product_id": "<string>",
"merchant_id": "<string>",
"unit_amount": 123,
"currency": "<string>",
"type": "one_time",
"active": true,
"nickname": "<string>",
"metadata": {},
"livemode": true,
"created_at": 123,
"updated_at": 123,
"recurring": {
"interval": "day",
"interval_count": 123,
"usage_type": "licensed"
}
},
"prices_count": 123
}{
"error": {
"code": "INVALID_REQUEST",
"message": "invalid request body"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "PRODUCT_NOT_FOUND",
"message": "product not found"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Authorizations
A merchant secret key (sk_…) sent as Authorization: Bearer <key>.
Headers
Merchant ID when an authorized Platform acts for a connected Merchant. Omit when authenticating directly as that Merchant.
^mer_[0-9A-Za-z]{14}$Path Parameters
The product id (prod_…).
Response
The product.
Product id (prod_…).
product ID of the account that owns the product (mer_…).
Product name.
Product description.
false when the product is archived.
Image URLs for the product.
Custom key-value pairs for your use.
Show child attributes
Show child attributes
true for live mode, false for test mode.
The product's default price (price_…), or null if none is set.
Unit displayed at checkout.
The kind of product, used to suggest checkout defaults. The fields a buyer completes are set on the payment link.
digital, physical, service, donation, other Cross-sell recommendations attached to the product, up to 10.
Show child attributes
Show child attributes
Unix epoch seconds.
Unix epoch seconds.
Inline-expanded default price. Present on GET and list responses; omitted on mutation endpoints (create, update, set_default_price).
Show child attributes
Show child attributes
Display-only fallback populated when no default is set but exactly one price exists. Present on GET and list responses; omitted on mutation endpoints. Must not be treated as the assigned default.
Show child attributes
Show child attributes
Total number of prices on this product. Present on GET and list responses; omitted on mutation endpoints.

