Search Documentation
Search for a documentation page...
Settings API
REST API endpoints for store settings and checkout consents.
Read and update general store settings, and manage the checkout consent checkboxes shown to customers. Sensitive configuration — API key hashes, Stripe credentials, and deploy config — is never exposed by these endpoints. Appearance, socials, brand kit, and loyalty have their own endpoints.
Get Settings
Returns general store settings. The currency, subdomain, domain, environment, and email-domain fields are read-only — they cannot be changed through this endpoint.
Response
Update Settings
Partially updates general store settings. Only the fields you send are changed; read-only fields are ignored if included. Returns the full, updated settings object.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | No | Public store name (min 1 char) |
description | string | null | No | Short store description |
published | boolean | No | Whether the storefront is live |
defaultLanguage | string | No | Default storefront locale (e.g. en-US) — must be enabled in enabledLanguages |
enabledLanguages | object | No | Per-locale toggle map, e.g. { "en-US": true } |
enabledCurrencies | string[] | No | ISO currency codes customers can shop in |
notificationEmail | string | null | No | Where store notifications are sent |
outboundEmail | string | null | No | From-address for customer emails (empty string allowed) |
aiInstructions | string | null | No | Custom instructions for AI features (max 20000 chars) |
omnibus | boolean | null | No | EU Omnibus price-history compliance |
Response (200)
Returns the full settings object with the updated values.
List Checkout Consents
Returns the consent checkboxes shown at checkout, ordered by their position. Each consent includes both the stored TipTap content document and a rendered contentHtml string.
Response
Create Checkout Consent
Adds a consent checkbox to checkout. Pass content as a plain string (auto-wrapped into a single paragraph) or a TipTap JSON document (type: "doc") for rich text such as links. Invalid TipTap documents are rejected with a 400.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
content | string | object | Yes | Consent text: plain string or a TipTap JSON document (type: "doc") |
required | boolean | No | Whether the consent must be accepted to complete checkout (default: false) |
type | "general" | "newsletter" | No | newsletter consents auto-subscribe the customer when accepted (default: general) |
Response (201)
Get Checkout Consent
Returns a single consent by ID. Returns 404 if the consent does not exist in this store.
Update Checkout Consent
Updates an existing consent. Send only the fields you want to change. Use position to reorder a consent relative to its neighbors.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
content | string | object | No | Plain string or TipTap JSON document (type: "doc") |
required | boolean | No | Whether the consent must be accepted to complete checkout |
type | "general" | "newsletter" | No | Consent type |
position | string | No | LexoRank ordering key — set between two neighbors' positions (from the list endpoint) to reorder |
Response (200)
Returns the updated consent with content and contentHtml.
Delete Checkout Consent
Removes a consent from checkout. Returns 404 if it does not exist.