StoreBay Developers
Products pricing

List products

GET
/products

Authorization

AuthorizationBearer <token>

Present an API key (sb_live_… / sb_test_…), an OAuth2 access token, or a static token as a Bearer credential. The operator is implied by the credential; it is never in the path. Only a SHA-256 hash of an API key is stored server-side.

In: header

Query Parameters

cursor?string

Opaque pagination cursor from meta.cursor.next of the previous page. Do not construct or parse it.

limit?integer

Page size. Values above the maximum are clamped.

Range1 <= value <= 100
Default25
site_id?string

Filter to a single site.

Formatuuid
kind?string

Filter by product kind.

Value in

  • "one_off"
  • "recurring"
  • "deposit"
  • "fee"
is_active?boolean

Filter by active flag.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/products"
{  "data": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "object": "product",      "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811",      "name": "string",      "sku": "string",      "kind": "one_off",      "description": "string",      "price_minor": 0,      "currency": "str",      "vat_treatment": "standard_20",      "is_active": true,      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z"    }  ],  "meta": {    "limit": 0,    "cursor": {      "next": "string",      "has_more": true    }  }}
{  "error": {    "code": "unauthorized",    "message": "Missing or invalid credential."  }}
{  "error": {    "code": "insufficient_scope",    "message": "The credential lacks a scope required by this endpoint."  }}
{  "error": {    "code": "rate_limited",    "message": "Rate limit exceeded. Retry after 7s."  }}
{  "error": {    "code": "validation_error",    "message": "string",    "details": [      {        "field": "string",        "issue": "string"      }    ]  }}