---
title: "Update one or more cells of the notification preferences matrix"
method: PUT
path: "/v2/settings/users/{userId}/notification-preferences"
tags: ["Notification Preferences Api Service"]
---

# Update one or more cells of the notification preferences matrix

`PUT /v2/settings/users/{userId}/notification-preferences`

## Request

- Base URL: `https://app.metricool.com/api`
- URL: `https://app.metricool.com/api/v2/settings/users/{userId}/notification-preferences`
- Auth: none declared

## Path parameters

- `userId` integer, required

## Request body

- UpdateNotificationPreferencesRequest: Batch of granular changes to apply to the notification preferences matrix
  - `changes` UpdateNotificationPreferenceRequest[], required
    - `event` string, required: Event id
    - `channel` string, required: Channel id
    - `enabled` boolean, required: Desired enabled state

## Response `200`

Resolved notification preferences matrix after the update

- JsonOkResponseNotificationPreferencesDto
  - `metadata` object
  - `page` JsonPaging
    - `next` string
  - `data` NotificationPreferencesDto: Full resolved notification preferences matrix for the authenticated user
    - `events` NotificationEventPreferenceDto[]: Resolved matrix, one entry per event
      - `event` string: Event id
      - `channels` NotificationChannelPreferenceDto[]: Effective state per channel
        - `channel` string: Channel id
        - `enabled` boolean: Effective enabled state after applying the per-cell override, the global email opt-out and the event default
    - `emailGloballyOff` boolean: Global email opt-out flag; when true, every EMAIL channel is effectively disabled

---

[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/aea9d9a8415a?raw)
