BillOS v1
Console llms.txt OpenAPI
GET/businesses/{bid}/branding-themes

List branding themes

GET /businesses/{bid}/branding-themes

Requires the businesses scope.

The business's themes, oldest first. The main design is the business's own branding and is not in this list.

Path parameters

NameTypeDescription
bidstringrequiredBusiness id, from POST /businesses.

Query parameters

NameTypeDescription
archivedstringInclude archived themes. One of: 1.
summarystringWhat a picker needs: each theme without its logo and signature, with hasLogo. One of: 1.

Response

200: { "ok": true, … }

FieldTypeDescription
okbooleanrequired
themesarray of BrandingThemerequired
mainobjectOn a summary=1 list: the main design's accentColor and template, for a picker that shows it beside the themes.
main.accentColorstring
main.templatestring

Errors: 400, 401, 403, 404, 429. Every failure answers { "error", "reason", "hint", "param", "doc_url", "retryable", "request_id" }: branch on reason, and read hint for what to change (https://docs.billos.co.il/errors.md).

GET /businesses/{bid}/branding-themes
curl -X GET "$BASE/businesses/$BID/branding-themes?archived=&summary=" \
  -H "X-Api-Key: $KEY"
const res = await fetch(`${BASE}/businesses/${BID}/branding-themes`, {
  method: 'GET',
  headers: {
    'X-Api-Key': KEY,
  },
})
const data = await res.json()
if (!data.ok) throw new Error(data.reason)
import requests
res = requests.get(
    f"{BASE}/businesses/{BID}/branding-themes",
    headers={"X-Api-Key": KEY},
)
data = res.json()
Set BASE to https://api.billos.co.il/v1 and KEY to your bk_live_… key, or a bk_test_… key to run it against the sandbox.
Manage your businesses, keys and webhooks in the BillOS Console.