Key sets: the org-global registries of pricing keys that rate tables and prices resolve against.
List key sets
Lists the organization's key sets with product usage counts.
query Parameters
limitPage size. Values above the server-side cap are clamped (standard default 50, cap 200; a few document-heavy lists use larger windows). Invalid values fall back to the default.
cursorOpaque continuation token from the previous response's pagination.cursor. Omit for the first page. Cursors are stateless and do not expire, but are only valid for the list and filters that produced them.
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
List key sets › Responses
OK
Create a key set
Creates an org-global key set, optionally seeding entries in the same call (CSV-import flow).
Headers
Idempotency-KeyUnique key that makes this POST safe to retry: repeats with the same key replay the first response instead of re-executing. Replays are scoped to the retrying principal (same API key / user) and kept for 24 hours. Required on every POST.
Client-generated idempotency key (e.g. a UUID).
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Create a key set › Request Body
descriptionOptional description of the set.
Optional keys to seed the set with in the same call; validated like UpsertEntries.
nameDisplay name for the new key set.
slugURL-safe unique identifier for the new key set, matching ^[a-z0-9][a-z0-9_-]{0,63}$.
Create a key set › Responses
Created
Get a key set
Returns one key set with all entries.
path Parameters
idKey set ID
Key set ID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Get a key set › Responses
OK
Update a key set
Updates name/description (bookkeeping fields; slug is immutable).
path Parameters
idKey set ID
Key set ID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Update a key set › Request Body
descriptionNew description; omit to leave unchanged.
nameNew display name; omit to leave unchanged.
Update a key set › Responses
OK
Archive a key set (terminal)
Archives a key set and returns 200 with the archived key set. Refused (409) while any product references it; the references endpoint lists the blockers.
path Parameters
idKey set ID
Key set ID
Headers
Idempotency-KeyUnique key that makes this POST safe to retry: repeats with the same key replay the first response instead of re-executing. Replays are scoped to the retrying principal (same API key / user) and kept for 24 hours. Required on every POST.
Client-generated idempotency key (e.g. a UUID).
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Archive a key set (terminal) › Responses
OK
Upsert key set entries
Bulk-upserts entries by key: existing keys are overwritten (display name, status, tags, metadata), new keys are added. Retire keys by upserting status=retired.
path Parameters
idKey set ID
Key set ID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Upsert key set entries › Request Body
The keys to upsert; each existing key is overwritten and new keys are added.
Upsert key set entries › Responses
OK
List products referencing a key set
Returns the products linked to the key set — the archive/retire blast radius.
path Parameters
idKey set ID
Key set ID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
List products referencing a key set › Responses
OK