Skip to content
DocsGo to Dashboard
Brand your reports

POST /v1/brand-profiles with a name of 100 characters or fewer — validated colors and logo on save

A brand profile is the reusable identity kit reports and report emails wear: logo, colors, font, footer, plus fields your integrations can store alongside. Like the rest of this category, it is created and managed only through the API.

Create#

POST /v1/brand-profiles with { name, logoUrl?, primaryColor?, secondaryColor?, fontFamily?, reportDomain?, contactName?, contactEmail?, contactPhone?, legalFooterText? }. name is required and capped at 100 characters (Brand name is required and must be 100 characters or fewer.). Colors default to the platform palette — primary #0B63F6, secondary #111827 — when omitted.

Validation blocks the save#

The same contract validator runs on create and update: a logo must be an https:// URL (Logo URL must be an https URL.) and both colors must be hex (Primary color must be a valid hex color.). After the hard checks it measures each color against white and returns contrast warnings — advisories your caller can surface, not rejections.

What wears it#

Attach the profile's id to a schedule or a client and generated reports pick up the logo, primary color, and font; report emails do the same; legalFooterText replaces the default Powered by WebOptiva footer (see Add contact and footer). GET /v1/brand-profiles and PUT /v1/brand-profiles/:id manage the rest.

Back to Brand your reports