Skip to main content
PATCH
Update a product

Authorizations

Authorization
string
header
required

Use a Bouclay secret key (sk_test_..., sk_live_...) or restricted key (rk_test_..., rk_live_...).

A secret key can call every endpoint. A restricted key can only call the endpoints its scopes cover. A scope is {resource}:{access}, for example customers:read or refunds:write, and write includes read. GET requests need read access and everything else needs write, except POST /subscriptions/{id}/items/{item}/preview, which only needs subscriptions:read. A request outside the key's scopes gets 403 permission_denied naming the missing scope, and its Idempotency-Key is not used up.

Publishable keys (pk_...) are rejected by server-side API endpoints. A key's mode scopes what it can see and charge: a test key can never reach a live card.

Headers

Idempotency-Key
string
required

Required for POST and PATCH requests. Replays identical method + path + body requests and rejects mismatched re-use.

Required string length: 1 - 255

Path Parameters

product
string
required

Body

application/json
name
string
description
string | null
category
string | null
taxCategory
enum<string>

How tax treats this product under your country's tax law. Defaults to standard.

Available options:
standard,
zero_rated,
exempt
revenueCode
string | null

The account in your books this product's sales post to. Frozen onto each invoice line.

Maximum string length: 64
status
enum<string>
Available options:
active,
archived
creditVatTiming
enum<string>

Credit products only. Affects purchases from now on.

Available options:
at_redemption,
at_purchase
creditExpiresAfterMonths
integer | null

Credit products only. Affects purchases from now on.

Required range: 1 <= x <= 120
customData
object | null

Response

Product response.

data
object
required
meta
object
required