---
title: "PUT /profile/notification-preferences"
method: PUT
path: "/profile/notification-preferences"
tags: ["Profile"]
---

# PUT /profile/notification-preferences

`PUT /profile/notification-preferences`

## Request

- Base URL: `https://api.laver.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.laver.app/profile/notification-preferences`
- Auth: HTTP bearer

## Request body

- object
  - `workspace_uuid` string, uuid, required
  - `event_type` union, required
    - 'assigned'
    - 'mention'
    - 'comment_reply'
    - 'moved_automatically'
    - 'moved_by_person'
    - 'due_soon'
    - 'sprint_started'
    - 'sprint_ending'
    - 'deploy_succeeded'
    - 'deploy_failed'
  - `in_app` boolean, required
  - `email` boolean, required
  - `push` boolean

## Response `2XX`

Success. This endpoint declares no response schema, so its body is not part of the generated contract.

## Other responses

- `400`: The request failed schema validation, or the handler rejected its contents. Undeclared properties are rejected on every body, path and query schema, so an unexpected field is a 400 rather than a silently ignored one.
- `401`: No credential, or one that is expired, revoked or not accepted by this endpoint.
- `429`: The rate limit was exceeded. The budget is keyed on the authenticated session user or API key, falling back to the caller IP.

---

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