🔗 CheckoutStorefront

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.

GET/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 products
  • GET /storefront/origins — List storefront origins
  • POST /storefront/origins — Register a storefront origin
  • DELETE /storefront/origins/{originId} — Remove a storefront origin
  • GET /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 a WWW-Authenticate: Bearer challenge.
  • 403 authorization_error — the caller is identified but the action is denied. Codes include insufficient_permissions, ip_not_allowed, merchant_mismatch, and origin_not_allowed.
  • 404 resource_missing — the referenced resource does not exist or is not visible to your key.
x-api-key<token>

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

productId*string

Product UUID, URL handle (slug), or merchant product reference.

Response Body

application/json

application/json

application/json

application/json

application/json

Stuck on an error response? Ask the RevKeen assistant to explain it.
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"  }}

Put this endpoint to work