---
title: "Update the white-label configuration"
method: PUT
path: "/api/v1/branding"
tags: ["White-label"]
---

# Update the white-label configuration

`PUT /api/v1/branding`

## Request

- Base URL: `https://legal.nexusquantum.legal`
- URL: `https://legal.nexusquantum.legal/api/v1/branding`
- Auth: HTTP bearer

Updates the branding applied to analysis outputs and emails. If the key is master of an organization, the changes propagate automatically to ALL child sub-keys. Sub-keys can NOT edit their own branding (403 FORBIDDEN_CHILD_KEY) — only the master can.

Available modes:
- `nexus` (default): outputs keep 'Nexus Legal'.
- `partner`: replaces 'Nexus Legal' with `partner_brand_name` in the body of the analysis. The technical NEXUS-AUDIT-TRAIL block is preserved.
- `none`: removes the mentions of 'Nexus Legal' from the body.

Anti-SSRF validation: `partner_logo_url` and `partner_website` must be public https URLs (no localhost, no private IPs, no metadata services). Same pattern as `/api/v1/webhooks`.

## Request body

- BrandingConfig: White-label configuration of an API key. Sub-keys inherit from the org master key.
  - `branding` 'nexus' | 'partner' | 'none': Branding mode. `nexus` keeps 'Nexus Legal'. `partner` replaces it with `partner_brand_name`. `none` removes the mentions.
  - `partner_brand_name` string, nullable: Partner trade name. Replaces 'Nexus Legal' in the analysis body when `branding='partner'`. Required when mode is `partner`.
  - `partner_legal_name` string, nullable: Registered legal name. Used in the audit-trail PDF and in DPA generation.
  - `partner_logo_url` string, uri, nullable: Public https URL of the logo. Anti-SSRF (no localhost, no private IPs).
  - `partner_primary_color` string, nullable: Hex color #RRGGBB for emails and dashboards.
  - `partner_support_email` string, email, nullable: Reply-to in webhook notifications + system messages.
  - `partner_website` string, uri, nullable: Partner website URL. Used in the email footer.

## Response `200`

Configuration saved. Returns `applied_to_keys` with the number of affected keys (1 if solo, N if master of an org).

- object
  - `ok` boolean, required
  - `applied_to_keys` integer, required: Number of keys it was applied to (1 if solo, N if a master propagated to children).
  - `config` BrandingConfig, required: White-label configuration of an API key. Sub-keys inherit from the org master key.
    - `branding` 'nexus' | 'partner' | 'none': Branding mode. `nexus` keeps 'Nexus Legal'. `partner` replaces it with `partner_brand_name`. `none` removes the mentions.
    - `partner_brand_name` string, nullable: Partner trade name. Replaces 'Nexus Legal' in the analysis body when `branding='partner'`. Required when mode is `partner`.
    - `partner_legal_name` string, nullable: Registered legal name. Used in the audit-trail PDF and in DPA generation.
    - `partner_logo_url` string, uri, nullable: Public https URL of the logo. Anti-SSRF (no localhost, no private IPs).
    - `partner_primary_color` string, nullable: Hex color #RRGGBB for emails and dashboards.
    - `partner_support_email` string, email, nullable: Reply-to in webhook notifications + system messages.
    - `partner_website` string, uri, nullable: Partner website URL. Used in the email footer.
  - `requestId` string

## Other responses

- `403`: A sub-key (role=child) cannot edit branding. Use the master of the organization.
- `422`: Validation failed (invalid hex color, malformed email, anti-SSRF URL, etc.).

---

[API](https://skmtc.dev/nexusquantum/apis/nexus-legal-api.md) · [All operations](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/revisions/4084d8d4eb0b?raw)
