Preview customer portal branding
Render a server-side HTML snapshot of the customer portal with the provided branding. Supports light / dark / auto themes via `branding.customer_portal.theme`.
Authorization
bearerAuth Supabase JWT bearer token for dashboard / user-scoped endpoints. Role-derived scopes: ROOT/ADMIN → full admin; USER → read-only treasury.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://loading/v1/auth/branding/preview/portal" \ -H "Content-Type: application/json" \ -d '{ "branding": {} }'{
"success": true,
"timestamp": "2019-08-24T14:15:22Z",
"data": null,
"message": "string"
}{
"success": false,
"timestamp": "2019-08-24T14:15:22Z",
"error": {
"code": "string",
"message": "string",
"details": null
}
}{
"success": false,
"timestamp": "2019-08-24T14:15:22Z",
"error": {
"code": "string",
"message": "string",
"details": null
}
}{
"success": false,
"timestamp": "2019-08-24T14:15:22Z",
"error": {
"code": "string",
"message": "string",
"details": null
}
}{
"success": false,
"timestamp": "2019-08-24T14:15:22Z",
"error": {
"code": "string",
"message": "string",
"details": null
}
}Preview invoice branding
Render a server-side HTML snapshot of the invoice surface. `format` controls whether a payment CTA button is included. Result is cached for 60 seconds per unique payload.
Reset branding to Easy defaults
Clears all custom branding for the company (sets companies.branding = NULL). The GET endpoint will return EASY_DEFAULTS after this call. A full-clear entry is written to the audit log.