---
title: "Update my notification preferences"
method: PUT
path: "/v1/notifications/preferences"
tags: ["notifications"]
---

# Update my notification preferences

`PUT /v1/notifications/preferences`

## Request

- Base URL: `https://api.getmyhotels.com`
- URL: `https://api.getmyhotels.com/v1/notifications/preferences`
- Auth: HTTP bearer

Runs `notification.updatePreferences`. Upserts each `{ channel, type, enabled }` and leaves unlisted ones alone, so send only the toggles that changed. Use `channel: "email"` with an email code from `GET /v1/notifications/preferences` and `channel: "in_app"` with an in-app code. Turning `rebook_alert` off on any channel stops rebook watches for new bookings. Returns `{ success: true, count }`.

## Request body

- object
  - `preferences` object[], required
    - `channel` 'email' | 'push' | 'sms' | 'in_app', required
    - `type` string, required
    - `enabled` boolean, required

## Response `200`

Success

- unknown

## Other responses

- `400`: Request validation failed or the router rejected the input
- `401`: Missing or invalid bearer session token
- `426`: Reported X-GMH-App-Version is below the supported minimum — the app must update
- `500`: Unexpected server error (opaque; details stay in logs)

---

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