---
title: "Update the white label theme and/or chart colors of the authenticated owner"
method: PATCH
path: "/v2/settings/whitelabel/customization"
tags: ["Whitelabel Settings Api Service"]
---

# Update the white label theme and/or chart colors of the authenticated owner

`PATCH /v2/settings/whitelabel/customization`

## Request

- Base URL: `https://app.metricool.com/api`
- URL: `https://app.metricool.com/api/v2/settings/whitelabel/customization`
- Auth: none declared

Only the fields listed in 'fields' are applied. themeColorPalette merges the colors present in the request onto whatever is already saved (Metricool defaults for anything never customized); sending the whole themeColorPalette object as null resets it back to Metricool defaults. colors must always carry the complete 13 chart colors and cannot be sent as null.

## Query parameters

- `fields` string[], required

## Request body

- WhitelabelCustomizationUpdateDto: Body of the customization PATCH. Only the fields listed in the 'fields' query param are applied.
  - `themeColorPalette` ThemeColorsDto: Optional white-label theme colors. Each field accepts a hex color (#RGB/#RRGGBB, alpha variants #RGBA/#RRGGBBAA included) or the literal 'transparent'. A field left null/blank falls back to the Metricool default when the color has never been customized; in a PATCH that only updates some of the 10 fields, a null/blank field instead keeps whatever was already saved for it - only sending the whole themeColorPalette object as null resets every color back to the default at once.
    - `topMenuBackgroundColor` string: Top menu background color
    - `topMenuTextColor` string: Top menu text color
    - `topMenuSeparatorColor` string: Top menu separator color
    - `primaryButtonBackgroundColor` string: Primary button background color
    - `primaryButtonBorderColor` string: Primary button border color
    - `primaryButtonTextColor` string: Primary button text color
    - `secondaryButtonBackgroundColor` string: Secondary button background color
    - `secondaryButtonBorderColor` string: Secondary button border color
    - `secondaryButtonTextColor` string: Secondary button text color
    - `backgroundColor` string: General background color
    - `customizedColors` string[]: Names of the fields above that were actually customized, in the same order as the fields themselves. Any field not listed here is equal to the Metricool default - a frontend rendering per-screen defaults should only apply the fields listed here and leave the rest untouched.
  - `colors` ColorsDto: Chart colors, always the 13 of them (Metricool defaults where not customized).
    - `blue` string, required
    - `teal` string, required
    - `pink` string, required
    - `yellow` string, required
    - `lightYellow` string, required
    - `darkYellow` string, required
    - `purple` string, required
    - `cyan` string, required
    - `red` string, required
    - `green` string, required
    - `slate` string, required
    - `charcoal` string, required
    - `cobalt` string, required

## Response `200`

Updated customization

- JsonOkResponseWhitelabelCustomizationDto
  - `metadata` object
  - `page` JsonPaging
    - `next` string
  - `data` WhitelabelCustomizationDto: Colors an integrator customizes for the web its end clients see.
    - `themeColorPalette` ThemeColorsDto: Optional white-label theme colors. Each field accepts a hex color (#RGB/#RRGGBB, alpha variants #RGBA/#RRGGBBAA included) or the literal 'transparent'. A field left null/blank falls back to the Metricool default when the color has never been customized; in a PATCH that only updates some of the 10 fields, a null/blank field instead keeps whatever was already saved for it - only sending the whole themeColorPalette object as null resets every color back to the default at once.
      - `topMenuBackgroundColor` string: Top menu background color
      - `topMenuTextColor` string: Top menu text color
      - `topMenuSeparatorColor` string: Top menu separator color
      - `primaryButtonBackgroundColor` string: Primary button background color
      - `primaryButtonBorderColor` string: Primary button border color
      - `primaryButtonTextColor` string: Primary button text color
      - `secondaryButtonBackgroundColor` string: Secondary button background color
      - `secondaryButtonBorderColor` string: Secondary button border color
      - `secondaryButtonTextColor` string: Secondary button text color
      - `backgroundColor` string: General background color
      - `customizedColors` string[]: Names of the fields above that were actually customized, in the same order as the fields themselves. Any field not listed here is equal to the Metricool default - a frontend rendering per-screen defaults should only apply the fields listed here and leave the rest untouched.
    - `colors` ColorsDto: Chart colors, always the 13 of them (Metricool defaults where not customized).
      - `blue` string, required
      - `teal` string, required
      - `pink` string, required
      - `yellow` string, required
      - `lightYellow` string, required
      - `darkYellow` string, required
      - `purple` string, required
      - `cyan` string, required
      - `red` string, required
      - `green` string, required
      - `slate` string, required
      - `charcoal` string, required
      - `cobalt` string, required

## Other responses

- `400`: Unknown field, invalid color, or colors sent as null
- `403`: Not a white label owner, or the customization is not enabled for this account

---

[API](https://skmtc.dev/metricool/apis/metricool-api.md) · [All operations](https://skmtc.dev/metricool/apis/metricool-api/llms.txt) · [OpenAPI document](https://skmtc.dev/metricool/apis/metricool-api/revisions/b51dcfc02f38?raw)
