Branding-API
Anpassa de kundvända ytorna — SPA-chrome, inbjudningsmejl, sidhuvuden + sidfötter i PDF-rapporter — med din logotyp, dina accentfärger och ditt produktnamn. Branding-objektet är per organisation och gäller varje session som skapas under den organisationen.
Branding-objektet
{
"logo_url": "https://cdn.acme.com/logo.png",
"wordmark_url": "",
"favicon_url": "https://cdn.acme.com/favicon.ico",
"primary_color": "#0F3D91",
"accent_color": "#FFB400",
"product_name_override": "Acme FieldView",
"support_email": "support@acme.com",
"support_url": "https://help.acme.com",
"email_from_name": "Acme Claims",
"pdf_footer_text": "Acme Insurance — claim report",
"updated_at": "2026-05-10T14:00:00Z"
} | Fält | Typ | Noteringar |
|---|---|---|
logo_url | URL | Kvadratisk eller liggande; renderas 40 px hög i SPA-headern, 64 px i PDF-headern. |
wordmark_url | URL | Valfritt. Används tillsammans med logo_url på bredare chrome. |
favicon_url | URL | 32×32 PNG / ICO. Serveras från din CDN; speglas inte. |
primary_color | hex (#rrggbb) | Huvudaccent — används för knappar, länkar och PDF:ens omslagsband. |
accent_color | hex (#rrggbb) | Sekundär accent — används för highlights, badges och sparkline-streck. |
product_name_override | string ≤ 120 | Ersätter "NexBasira" i användarsynliga strängar (sidtitel, ämnesrader i mejl). |
support_email | Visas på felsidor + i sidfötter på inbjudningsmejl. Tom = plattformens standard. | |
support_url | URL | Samma — länkas från SPA:ns hjälpmeny. |
email_from_name | string ≤ 120 | Från-namn på utgående transaktionsmejl (dirigeras fortfarande via vår autentiserade domän för att bevara DMARC-anpassning). |
pdf_footer_text | string ≤ 255 | Enradig sidfot på varje sida i PDF-revisionsrapporten. |
Tom sträng på valfritt fält = plattformens standard. Branding-raden skapas automatiskt vid första GET, så du ser aldrig en 404 här.
Läs branding
GET /api/v1/public/branding — scope branding:read
curl https://app.nexbasira.com/api/v1/public/branding \
-H "Authorization: Bearer nb_sec_..." Uppdatera branding
PATCH /api/v1/public/branding — scope branding:write
Partiell uppdatering — ange bara de fält du vill ändra. Skicka "" på valfritt fält för att återställa det till plattformens standard. Hex-färger valideras mot #rrggbb; ett ogiltigt värde returnerar 400.
curl -X PATCH https://app.nexbasira.com/api/v1/public/branding \
-H "Authorization: Bearer nb_sec_..." \
-H "Content-Type: application/json" \
-d '{
"primary_color": "#0F3D91",
"logo_url": "https://cdn.acme.com/logo-2026.png"
}' Returnerar det nyss uppdaterade Branding-objektet. Ändringen gäller omedelbart vid nästa sidladdning — det finns ingen CDN-cache att rensa för SPA:n. För inbjudningsmejl + PDF:er gäller den nya brandingen allt som genereras efter att PATCH:en landat.
Vanliga fel
| Status | Kod | När |
|---|---|---|
| 400 | validation_error | Ogiltig hex-färg, felformaterad URL eller sträng över maxlängden. |
| 403 | permission_denied | Uppgiften saknar scopet (branding:read för GET, branding:write för PATCH). |
Noteringar
- Ingen bilduppladdning. Plattformen hostar inte dina resurser — ange HTTPS-URL:er till bilder du redan serverar från din CDN. Det håller cache-invalidering under din kontroll.
- Same-origin-tvång. Logo- + favicon-URL:er måste servera
Access-Control-Allow-Origin: *(eller din SPA-origin) så att webbläsaren kan rendera dem i iframe-embed-widgeten. - Reviderat. Varje PATCH landar en
org.branding_updated-revisionshändelse med diff på fältnivå, så en manipulerad logotyp är spårbar till en uppgift + tidsstämpel.