---
title: "Update digest preferences"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.sureshake.com/llms.txt
> Use this file to discover all available pages before exploring further.

Path: Sureshake API › notifications

`PUT /v2/notifications/preferences/digest`

## Request body

- `emailEnabled` (`notification-update-digest-preferences.emailEnabled`; boolean, optional)
- `inAppEnabled` (`notification-update-digest-preferences.inAppEnabled`; boolean, optional)
- `emailDigestFrequency` (`notification-update-digest-preferences.emailDigestFrequency`; string, optional)
  - one of `"immediate"`, `"daily"`, `"weekly"`, `"none"`
- `timezone` (`notification-update-digest-preferences.timezone`; string, optional, nullable)
  - minLength 1; maxLength 100
- `digestSendTimeLocal` (`notification-update-digest-preferences.digestSendTimeLocal`; string, optional, nullable)
  - pattern `^([01]\d|2[0-3]):[0-5]\d$`
- `digestSendDay` (`notification-update-digest-preferences.digestSendDay`; integer, optional, nullable)
  - min 0; max 6

## Example request

```json
{
  "emailEnabled": true,
  "inAppEnabled": true,
  "emailDigestFrequency": "immediate",
  "timezone": "string",
  "digestSendTimeLocal": "string",
  "digestSendDay": 6
}
```

## Code samples

### cURL

```bash
curl --request PUT \
  --url https://api.sureshake.com/v2/notifications/preferences/digest \
  --header 'Content-Type: application/json' \
  --data '
{
  "emailEnabled": true,
  "inAppEnabled": true,
  "emailDigestFrequency": "immediate",
  "timezone": "string",
  "digestSendTimeLocal": "string",
  "digestSendDay": 6
}
'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/notifications/preferences/digest';
const options = {
  method: 'PUT',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({
    emailEnabled: true,
    inAppEnabled: true,
    emailDigestFrequency: 'immediate',
    timezone: 'string',
    digestSendTimeLocal: 'string',
    digestSendDay: 6
  })
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```

### Python

```python
import requests

url = "https://api.sureshake.com/v2/notifications/preferences/digest"

payload = {
    "emailEnabled": True,
    "inAppEnabled": True,
    "emailDigestFrequency": "immediate",
    "timezone": "string",
    "digestSendTimeLocal": "string",
    "digestSendDay": 6
}
headers = {"Content-Type": "application/json"}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
```

## Responses

### 200

Default Response

#### Example

```json
{
  "data": {
    "emailEnabled": true,
    "inAppEnabled": true,
    "emailDigestFrequency": "immediate",
    "timezone": "string",
    "digestSendTimeLocal": "string",
    "digestSendDay": 6,
    "deliveryChannels": [
      {
        "key": "email",
        "availability": "live",
        "enabled": true,
        "configurable": true
      },
      {
        "key": "email",
        "availability": "live",
        "enabled": true,
        "configurable": true
      },
      {
        "key": "email",
        "availability": "live",
        "enabled": true,
        "configurable": true
      },
      {
        "key": "email",
        "availability": "live",
        "enabled": true,
        "configurable": true
      }
    ]
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
```

- `data` (`notification-update-digest-preferences.response.200.data`; object, required)
  - `emailEnabled` (`notification-update-digest-preferences.response.200.data.emailEnabled`; boolean, required)
  - `inAppEnabled` (`notification-update-digest-preferences.response.200.data.inAppEnabled`; boolean, required)
  - `emailDigestFrequency` (`notification-update-digest-preferences.response.200.data.emailDigestFrequency`; string, required)
    - one of `"immediate"`, `"daily"`, `"weekly"`, `"none"`
  - `timezone` (`notification-update-digest-preferences.response.200.data.timezone`; string, required, nullable)
  - `digestSendTimeLocal` (`notification-update-digest-preferences.response.200.data.digestSendTimeLocal`; string, required, nullable)
  - `digestSendDay` (`notification-update-digest-preferences.response.200.data.digestSendDay`; integer, required, nullable)
    - min 0; max 6
  - `deliveryChannels` (`notification-update-digest-preferences.response.200.data.deliveryChannels`; array<object>, required)
    - `key` (`notification-update-digest-preferences.response.200.data.deliveryChannels.key`; string, required)
      - one of `"email"`, `"in_app"`, `"slack"`, `"telegram"`
    - `availability` (`notification-update-digest-preferences.response.200.data.deliveryChannels.availability`; string, required)
      - one of `"live"`, `"planned"`
    - `enabled` (`notification-update-digest-preferences.response.200.data.deliveryChannels.enabled`; boolean, required)
    - `configurable` (`notification-update-digest-preferences.response.200.data.deliveryChannels.configurable`; boolean, required)
- `meta` (`notification-update-digest-preferences.response.200.meta`; object, optional)
  - `timestamp` (`notification-update-digest-preferences.response.200.meta.timestamp`; string, required)
    - format `date-time`

### 400

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`notification-update-digest-preferences.response.400.error`; object, required)
  - `code` (`notification-update-digest-preferences.response.400.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`notification-update-digest-preferences.response.400.error.message`; string, required) — Human-readable error message
  - `details` (`notification-update-digest-preferences.response.400.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`notification-update-digest-preferences.response.400.error.traceId`; string, optional) — Unique ID for log correlation

### 401

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`notification-update-digest-preferences.response.401.error`; object, required)
  - `code` (`notification-update-digest-preferences.response.401.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`notification-update-digest-preferences.response.401.error.message`; string, required) — Human-readable error message
  - `details` (`notification-update-digest-preferences.response.401.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`notification-update-digest-preferences.response.401.error.traceId`; string, optional) — Unique ID for log correlation

### 500

Default Response

#### Example

```json
{
  "error": {
    "code": "string",
    "message": "string",
    "details": null,
    "traceId": "string"
  }
}
```

- `error` (`notification-update-digest-preferences.response.500.error`; object, required)
  - `code` (`notification-update-digest-preferences.response.500.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`notification-update-digest-preferences.response.500.error.message`; string, required) — Human-readable error message
  - `details` (`notification-update-digest-preferences.response.500.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`notification-update-digest-preferences.response.500.error.traceId`; string, optional) — Unique ID for log correlation


Source: https://docs.sureshake.com/reference/notification-update-digest-preferences/index.md
