---
title: "Push notification preferences"
method: POST
path: "/push_preferences"
tags: ["product:chat"]
---

# Push notification preferences

`POST /push_preferences`

Upserts the push preferences for a user and or channel member. Set to all, mentions or none

## Request body

- UpsertPushPreferencesRequest, nullable
  - `preferences` PushPreferenceInput[], required — A list of push preferences for channels, calls, or the user.
    - `call_level` 'all' | 'none' | 'default' — Set the level of call push notifications for the user. One of: all, none, default
    - `channel_cid` string — Set the push preferences for a specific channel. If empty it sets the default for the user
    - `chat_level` 'all' | 'mentions' | 'direct_mentions' | 'all_mentions' | 'none' | 'default' — Set the level of chat push notifications for the user. Note: "mentions" is deprecated in favor of "direct_mentions". One of: all, mentions, direct_mentions, all_mentions, none, default
    - `chat_preferences` ChatPreferencesInput
      - `channel_mentions` 'all' | 'none'
      - `default_preference` 'all' | 'none'
      - `direct_mentions` 'all' | 'none'
      - `group_mentions` 'all' | 'none'
      - `here_mentions` 'all' | 'none'
      - `role_mentions` 'all' | 'none'
      - `thread_replies` 'all' | 'none'
    - `disabled_until` string, date-time — Disable push notifications till a certain time
    - `feeds_level` 'all' | 'none' | 'default' — Set the level of feeds push notifications for the user. One of: all, none, default
    - `feeds_preferences` FeedsPreferences
      - `comment` 'all' | 'none' — Push notification preference for comments on user's activities. One of: all, none
      - `comment_mention` 'all' | 'none' — Push notification preference for mentions in comments. One of: all, none
      - `comment_reaction` 'all' | 'none' — Push notification preference for reactions on comments. One of: all, none
      - `comment_reply` 'all' | 'none' — Push notification preference for replies to comments. One of: all, none
      - `custom_activity_types` object — Push notification preferences for custom activity types. Map of activity type to preference (all or none)
      - `follow` 'all' | 'none' — Push notification preference for new followers. One of: all, none
      - `mention` 'all' | 'none' — Push notification preference for mentions in activities. One of: all, none
      - `reaction` 'all' | 'none' — Push notification preference for reactions on user's activities or comments. One of: all, none
    - `remove_disable` boolean — Remove the disabled until time. (IE stop snoozing notifications)
    - `user_id` string — The user id for which to set the push preferences. Required when using server side auths, defaults to current user with client side auth.

## Response `201`

Successful response

- UpsertPushPreferencesResponse, nullable
  - `duration` string, required — Duration of the request in milliseconds
  - `user_channel_preferences` object, required — The channel specific push notification preferences, only returned for channels you've edited.
  - `user_preferences` object, required — The user preferences, always returned regardless if you edited it

## Other responses

- `400` — Bad request
- `429` — Too many requests

---

[API](https://skmtc.net/getstream/apis/stream-api.md) · [All operations](https://skmtc.net/getstream/apis/stream-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getstream/stream-api/versions/8d5c27f1f6b2/schema)
