Get a storefront product
Fetch one active, cart-eligible product by UUID, URL handle (slug), or product reference. A UUID also finds a product hidden from the Storefront; a handle or reference only finds listed products, and the handle wins over another product's reference. Same browser-safe projection as the list endpoint.
/storefront/products/{productId}Fetch one active, cart-eligible product by UUID, URL handle (slug), or product reference. A UUID also finds a product hidden from the Storefront; a handle or reference only finds listed products, and the handle wins over another product's reference. Same browser-safe projection as the list endpoint.
Related endpoints
GET /storefront/products— List storefront productsGET /storefront/origins— List storefront originsPOST /storefront/origins— Register a storefront originDELETE /storefront/origins/{originId}— Remove a storefront originGET /storefront/status— Get storefront integration status
Common errors
401 authentication_error— missing, invalid, expired, or revoked credential. Codes:authentication_failed,invalid_api_key,expired_api_key,api_key_revoked,session_invalid,merchant_required. Carries aWWW-Authenticate: Bearerchallenge.403 authorization_error— the caller is identified but the action is denied. Codes includeinsufficient_permissions,ip_not_allowed,merchant_mismatch, andorigin_not_allowed.404 resource_missing— the referenced resource does not exist or is not visible to your key.
Your RevKeen merchant API key. Create and manage keys in Dashboard → Settings → Developer. Use rk_sandbox_* for staging/test and rk_live_* for production. The same key may be sent as Authorization: Bearer <key> if that suits your HTTP client better. A missing, invalid, expired, or revoked key returns 401 with a WWW-Authenticate: Bearer challenge; a valid key without the required scope returns 403.
In: header
Path Parameters
Product UUID, URL handle (slug), or merchant product reference.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://api.revkeen.com/v2/storefront/products/prd_1RxKm4MnBoCpDqErFsGtHuIv" \
-H "x-api-key: $REVKEEN_API_KEY"Synthetic documentation data, validated against the response schema; not a live API result.
{ "data": { "id": "00000000-0000-4000-8000-000000000001", "object": "product", "product_id": "string", "slug": "string", "name": "Example customer", "description": "string", "kind": "string", "pricing_model": "string", "currency": "string", "image_url": "string", "default_price_id": "string", "prices": [ { "id": "00000000-0000-4000-8000-000000000001", "product_id": "00000000-0000-4000-8000-000000000001", "currency": "string", "unit_amount": 0, "unit_amount_decimal": "string", "type": "string", "interval": "string", "interval_count": 0, "billing_scheme": "string", "usage_type": "string", "package_size": 0, "trial_period_days": 0, "option_values": { "property1": "string", "property2": "string" }, "sku": "string", "image_url": "string" } ], "trial_days": 0, "usage_meter_id": "string", "tax_behavior": "string", "tax_code": "string", "availability": { "status": "unknown", "remaining": 0, "display_mode": "string", "low_stock_threshold": 0 }, "tags": [ "string" ], "images": [ { "url": "https://example.com/webhooks/revkeen", "alt": "string", "source": "string", "photographer": "string", "attribution_url": "string" } ], "seo_title": "string", "seo_description": "string" }}