Validate branding color or logo URL
Validate one or more branding inputs without saving anything. Pass `color` to confirm a hex color is valid. Pass `foreground_color` + `background_color` together to get a WCAG contrast ratio. Pass `logo_url` to verify the URL is reachable and returns an image MIME type. At least one field is required.
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
curl -X POST "https://loading/v1/auth/branding/validate" \ -H "Content-Type: application/json" \ -d '{}'{
"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
}
}Send a branding test email
Send a live test email using the company's saved branding settings. The email is rendered with the currently persisted branding (not a draft). Save changes with PATCH /branding before calling this. `email_type` selects the template: receipt | login | invoice (default). Limited to 3 requests per minute per user.
Register custom email sending domain
Register or replace the custom email sending domain for this company. Returns SPF and DKIM DNS records to add. After adding DNS records, use GET to poll verification status. Limited to 5 requests per minute to prevent domain-change spam.