Search docs ⌘K
esc
Type to search across all documentation pages
Commerce

Catalogs

Manage product catalogs. Catalogs are top-level containers that group categories and products. All routes live under /modules/commerce/*.

Create a catalog

POST
/modules/commerce/catalogs
commerce:write

Create a new product catalog.

curl
curl -X POST https://api.saasignal.saastemly.com/modules/commerce/catalogs \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"name":"example"}'
json — 201 Created
{ "status": "ok" }
Body field
Type
Description
name required
string
1–256 chars
slug
string
1–128 chars
description
string
max 2048 chars
status
string
values: active, draft, archived
metadata
object
Error responses
401 Unauthorized
402 Insufficient tokens
429 Rate limited

List catalogs

GET
/modules/commerce/catalogs
commerce:read

List product catalogs.

curl
curl https://api.saasignal.saastemly.com/modules/commerce/catalogs \
  -H "Authorization: Bearer sk_live_..."
json — 200 OK
{ "status": "ok" }
Query param
Type
Description
limit
integer
range ≥1 .. ≤100default 25
cursor
string
Error responses
401 Unauthorized
402 Insufficient tokens
429 Rate limited

Get a catalog

GET
/modules/commerce/catalogs/{catalog_id}
commerce:read

Retrieve a single catalog.

curl
curl https://api.saasignal.saastemly.com/modules/commerce/catalogs/{catalog_id} \
  -H "Authorization: Bearer sk_live_..."
json — 200 OK
{ "status": "ok" }
Path param
Type
Description
catalog_id required
string
Error responses
401 Unauthorized
402 Insufficient tokens
404 Not found
429 Rate limited

Update a catalog

PATCH
/modules/commerce/catalogs/{catalog_id}
commerce:write

Update a product catalog.

curl
curl -X PATCH https://api.saasignal.saastemly.com/modules/commerce/catalogs/{catalog_id} \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{}'
json — 200 OK
{ "status": "ok" }
Path param
Type
Description
catalog_id required
string
Body field
Type
Description
name
string
1–256 chars
slug
string
1–128 chars
description
mixed
status
string
values: active, draft, archived
metadata
object
Error responses
401 Unauthorized
402 Insufficient tokens
404 Not found
429 Rate limited

Delete a catalog

DELETE
/modules/commerce/catalogs/{catalog_id}
commerce:admin

Permanently remove a catalog.

curl
curl -X DELETE https://api.saasignal.saastemly.com/modules/commerce/catalogs/{catalog_id} \
  -H "Authorization: Bearer sk_live_..."
json — 200 OK
{ "status": "ok" }
Path param
Type
Description
catalog_id required
string
Error responses
401 Unauthorized
402 Insufficient tokens
404 Not found
429 Rate limited