---
title: "Get preference center config"
method: GET
path: "/v1/users/{user_id}/preference_center/config"
tags: ["Users", "Preference center"]
---

# Get preference center config

`GET /v1/users/{user_id}/preference_center/config`

Returns the preference center config with environment metadata for the given user.

## Path parameters

- `user_id` string, required

## Response `200`

OK

- PreferenceCenterConfigWithMetadata — The preference center configuration for an environment. Controls whether the preference center is enabled and defines the rows displayed in the UI.
  - `account_name` string, nullable, required — The name of the account that the preference center is associated with.
  - `branding` object, required — The branding for the preference center, sourced from public environment variables.
    - `icon_url` string, uri, nullable — The icon URL for the preference center. Must point to a valid image with an image MIME type.
    - `logo_url` string, uri, nullable — The logo URL for the preference center. Must point to a valid image with an image MIME type.
    - `primary_color` string, nullable — The primary color for the preference center, provided as a hex value.
    - `primary_color_contrast` string, nullable — The primary color contrast for the preference center, provided as a hex value.
    - `dark` PreferenceCenterBrandingConfig — The branding for the preference center, sourced from public environment variables.
      - `icon_url` string, uri, nullable — The icon URL for the preference center. Must point to a valid image with an image MIME type.
      - `logo_url` string, uri, nullable — The logo URL for the preference center. Must point to a valid image with an image MIME type.
      - `primary_color` string, nullable — The primary color for the preference center, provided as a hex value.
      - `primary_color_contrast` string, nullable — The primary color contrast for the preference center, provided as a hex value.
  - `config` PreferenceCenterConfigData, required — The preference center configuration data containing the rows to display.
    - `body` string, required — The body text displayed below the title.
    - `rows` PreferenceCenterConfigRow[], required — An ordered list of rows to display in the preference center.
      - `channel_types` string[], nullable — The list of channel types this preference is scoped to. An empty list (or `null`) means the preference applies to all channel types. Present for `workflow`, `category`, and `channel_types` types.
      - `description` string — A description shown below the preference row name.
      - `identifier` string, nullable — The category name, workflow key, or channel ID this row controls (e.g. `marketing`, `new-project-mentions`, or a channel UUID). Present for `workflow`, `channel`, and `category` types.
      - `name` string, required — The display name of the preference row.
      - `type` 'workflow' | 'channel' | 'category' | 'channel_types' | 'commercial_subscribed', required — The type of this preference row. `workflow` targets a workflow, `channel` targets a specific channel, `category` targets a workflow category, `channel_types` controls per-channel-type opt-in/out, and `commercial_subscribed` is the commercial notification toggle.
    - `show_account_name` boolean — Whether the account name should be displayed in the preference center.
    - `title` string, required — The title displayed at the top of the preference center.
  - `enabled` boolean, required — Whether the preference center is enabled for this environment.
  - `knock_branding_required` boolean — Whether Knock branding is required in the preference center.
  - `user_email` string, nullable, required — A display label for the user that the preference center is associated with, resolved as email, then user id.

## Changes

- **2026-07-14** `de4604427056` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/knocklabs/apis/knock-api/changes/v1/users/:user_id/preference_center/config/get.md)

---

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