---
title: "Update the authenticated user mobile push preferences"
method: PATCH
path: "/me/notification-preferences"
tags: ["Settings"]
---

# Update the authenticated user mobile push preferences

`PATCH /me/notification-preferences`

## Request

- Base URL: `https://www.sociahive.com/api/v1`
- URL: `https://www.sociahive.com/api/v1/me/notification-preferences`
- Auth: one of:
  - API key in header `X-API-Key`
  - OAuth 2 (authorization code, authorization URL `/api/oauth/authorize`, token URL `/api/oauth/token`, scopes: `settings:write`)

Merges the supplied subset. `categories` keys override (absent keys keep prior value). `quiet_hours` is replaced as a whole (`null` clears it). Disabling flow.error or post.failed is rejected with 400 — those categories are always delivered.

## Request body

- NotificationPreferencesPatch
  - `categories` object: Partial set of category toggles. Absent keys keep their prior value. Setting flow.error or post.failed to false is rejected with 400 (always_on_category).
    - `inbox.message` boolean, required
    - `ai.handoff` boolean, required
    - `flow.error` boolean, required
    - `post.published` boolean, required
    - `post.failed` boolean, required
  - `quiet_hours` object, nullable: Replace the quiet-hours window. Send null to clear; omit to leave unchanged.
    - `start_minute` integer, required: Minutes from local midnight when quiet hours begin.
    - `end_minute` integer, required: Minutes from local midnight when quiet hours end. May be less than start_minute to wrap midnight (e.g. 22:00 -> 06:00).
    - `timezone` string, required: IANA timezone identifier (e.g. America/New_York).

## Response `200`

Notification preferences after update

- NotificationPreferencesResponse
  - `data` NotificationPreferences, required
    - `categories` NotificationCategoryToggles, required
      - `inbox.message` boolean, required
      - `ai.handoff` boolean, required
      - `flow.error` boolean, required
      - `post.published` boolean, required
      - `post.failed` boolean, required
    - `quiet_hours` object, nullable, required: null when no quiet-hours window is configured.
      - `start_minute` integer, required: Minutes from local midnight when quiet hours begin.
      - `end_minute` integer, required: Minutes from local midnight when quiet hours end. May be less than start_minute to wrap midnight (e.g. 22:00 -> 06:00).
      - `timezone` string, required: IANA timezone identifier (e.g. America/New_York).
    - `updated_at` string, date-time, required

## Other responses

- `400`: Bad request — invalid parameters
- `401`: Authentication required — provide X-API-Key or Bearer token
- `403`: Insufficient scope for this operation
- `429`: Rate limit exceeded
- `500`: Internal server error

---

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