跳到主要内容

Branding API

Branding endpoints manage white-label customisation: logo, colors, custom domain, transactional email templates.

Profile

MethodPathDescription
GET`/api/v1/branding`Get full branding profile
PUT`/api/v1/branding`Update

Assets

MethodPathDescription
POST`/api/v1/branding/assets/upload`Upload a logo / favicon / OG image
DELETE`/api/v1/branding/assets/:type`Remove

Domain

MethodPathDescription
POST`/api/v1/branding/domain`Set custom domain
POST`/api/v1/branding/domain/verify`Verify DNS
DELETE`/api/v1/branding/domain`Remove
POST`/api/v1/branding/domain/ssl/provision`Provision SSL

Email Templates

MethodPathDescription
GET`/api/v1/branding/email-templates`List
GET`/api/v1/branding/email-templates/:key`Get one
PUT`/api/v1/branding/email-templates/:key`Update
POST`/api/v1/branding/email-templates/:key/test`Send test email
POST`/api/v1/branding/email-templates/:key/reset`Reset to default

Public

MethodPathDescription
GET`/api/v1/branding/manifest`Public manifest (no auth)
GET`/api/v1/branding/css`Public CSS bundle (no auth)

Every response uses the standard envelope:

{
  "success": true,
  "data": { /* resource or array */ },
  "meta": { "total": 100, "cursor": "...", "hasMore": true },
  "error": { "code": "ERROR_CODE", "message": "Human readable" }
}

error is omitted on success; meta is omitted when not paginating.

Rate Limits

Subject to the standard 200 req/min/tenant authenticated limit. See [Rate Limits](/docs/api-reference/rate-limits) for full details and the per-endpoint overrides.