---
title: "Update reporter report schedules"
---

> 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 › reporter

`PATCH /v2/reporter/report-schedules/{id}`

## Path parameters

- `id` (`reporter-report-schedules-update.path.id`; string, required)
  - format `uuid`

## Request body

- `name` (`reporter-report-schedules-update.name`; string, optional)
  - minLength 1; maxLength 120
- `cadence` (`reporter-report-schedules-update.cadence`; string, optional)
  - one of `"monthly"`, `"quarterly"`, `"annual"`
- `runDayOffset` (`reporter-report-schedules-update.runDayOffset`; integer, optional)
  - min 0; max 60
- `timezone` (`reporter-report-schedules-update.timezone`; string, optional)
  - minLength 1; maxLength 64; pattern `^[A-Za-z_]+(?:\/[A-Za-z0-9_+-]+)*$`
- `enabled` (`reporter-report-schedules-update.enabled`; boolean, optional)
- `nextPeriodStart` (`reporter-report-schedules-update.nextPeriodStart`; string, optional)
  - pattern `^\d{4}-\d{2}-\d{2}$`
- `distribution` (`reporter-report-schedules-update.distribution`; object, optional)
  - `viewerGroupIds` (`reporter-report-schedules-update.distribution.viewerGroupIds`; array<string>, optional)
    - format `uuid`; default `[]`
  - `emails` (`reporter-report-schedules-update.distribution.emails`; array<string>, optional)
    - format `email`; default `[]`
  - `permission` (`reporter-report-schedules-update.distribution.permission`; string, optional)
    - one of `"read"`, `"comment"`, `"suggest"`; default `"read"`
  - `message` (`reporter-report-schedules-update.distribution.message`; string, optional)
    - maxLength 1000

## Example request

```json
{
  "name": "string",
  "cadence": "monthly",
  "runDayOffset": 60,
  "timezone": "string",
  "enabled": true,
  "nextPeriodStart": "string",
  "distribution": {
    "viewerGroupIds": [],
    "emails": [],
    "permission": "read",
    "message": "string"
  }
}
```

## Code samples

### cURL

```bash
curl --request PATCH \
  --url 'https://api.sureshake.com/v2/reporter/report-schedules/<id>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "string",
  "cadence": "monthly",
  "runDayOffset": 60,
  "timezone": "string",
  "enabled": true,
  "nextPeriodStart": "string",
  "distribution": {
    "viewerGroupIds": [],
    "emails": [],
    "permission": "read",
    "message": "string"
  }
}
'
```

### TypeScript

```typescript
const url = 'https://api.sureshake.com/v2/reporter/report-schedules/<id>';
const options = {
  method: 'PATCH',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({
    name: 'string',
    cadence: 'monthly',
    runDayOffset: 60,
    timezone: 'string',
    enabled: true,
    nextPeriodStart: 'string',
    distribution: {viewerGroupIds: [], emails: [], permission: 'read', message: 'string'}
  })
};

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/reporter/report-schedules/<id>"

payload = {
    "name": "string",
    "cadence": "monthly",
    "runDayOffset": 60,
    "timezone": "string",
    "enabled": True,
    "nextPeriodStart": "string",
    "distribution": {
        "viewerGroupIds": [],
        "emails": [],
        "permission": "read",
        "message": "string"
    }
}
headers = {"Content-Type": "application/json"}

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

print(response.text)
```

## Responses

### 200

Default Response

#### Example

```json
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
    "reportingIntentId": "string",
    "accountingConnectionId": "15a34c5a-2153-4717-b80d-7b1b9ec1ead9",
    "createdByUserId": "string",
    "name": "string",
    "cadence": "monthly",
    "runDayOffset": 60,
    "timezone": "string",
    "enabled": true,
    "nextPeriodStart": "string",
    "nextPeriodEnd": "string",
    "nextRunAt": "2019-08-24T14:15:22Z",
    "lastOccurrenceAt": "2019-08-24T14:15:22Z",
    "distribution": {
      "viewerGroupIds": [],
      "emails": [],
      "permission": "read",
      "message": "string"
    },
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z"
  },
  "meta": {
    "timestamp": "2019-08-24T14:15:22Z"
  }
}
```

- `data` (`reporter-report-schedules-update.response.200.data`; object, required)
  - `id` (`reporter-report-schedules-update.response.200.data.id`; string, required)
    - format `uuid`
  - `entityId` (`reporter-report-schedules-update.response.200.data.entityId`; string, required)
    - format `uuid`
  - `reportingIntentId` (`reporter-report-schedules-update.response.200.data.reportingIntentId`; string, required)
    - minLength 1; maxLength 120; pattern `^[a-z0-9][a-z0-9_-]*$`
  - `accountingConnectionId` (`reporter-report-schedules-update.response.200.data.accountingConnectionId`; string, required)
    - format `uuid`
  - `createdByUserId` (`reporter-report-schedules-update.response.200.data.createdByUserId`; string, required, nullable)
  - `name` (`reporter-report-schedules-update.response.200.data.name`; string, required)
    - minLength 1
  - `cadence` (`reporter-report-schedules-update.response.200.data.cadence`; string, required)
    - one of `"monthly"`, `"quarterly"`, `"annual"`
  - `runDayOffset` (`reporter-report-schedules-update.response.200.data.runDayOffset`; integer, required)
    - min 0; max 60
  - `timezone` (`reporter-report-schedules-update.response.200.data.timezone`; string, required)
    - minLength 1; maxLength 64; pattern `^[A-Za-z_]+(?:\/[A-Za-z0-9_+-]+)*$`
  - `enabled` (`reporter-report-schedules-update.response.200.data.enabled`; boolean, required)
  - `nextPeriodStart` (`reporter-report-schedules-update.response.200.data.nextPeriodStart`; string, required)
    - pattern `^\d{4}-\d{2}-\d{2}$`
  - `nextPeriodEnd` (`reporter-report-schedules-update.response.200.data.nextPeriodEnd`; string, required)
    - pattern `^\d{4}-\d{2}-\d{2}$`
  - `nextRunAt` (`reporter-report-schedules-update.response.200.data.nextRunAt`; string, required)
    - format `date-time`
  - `lastOccurrenceAt` (`reporter-report-schedules-update.response.200.data.lastOccurrenceAt`; string, required, nullable)
    - format `date-time`
  - `distribution` (`reporter-report-schedules-update.response.200.data.distribution`; object, required)
    - `viewerGroupIds` (`reporter-report-schedules-update.response.200.data.distribution.viewerGroupIds`; array<string>, optional)
      - format `uuid`; default `[]`
    - `emails` (`reporter-report-schedules-update.response.200.data.distribution.emails`; array<string>, optional)
      - format `email`; default `[]`
    - `permission` (`reporter-report-schedules-update.response.200.data.distribution.permission`; string, optional)
      - one of `"read"`, `"comment"`, `"suggest"`; default `"read"`
    - `message` (`reporter-report-schedules-update.response.200.data.distribution.message`; string, optional)
      - maxLength 1000
  - `createdAt` (`reporter-report-schedules-update.response.200.data.createdAt`; string, required)
    - format `date-time`
  - `updatedAt` (`reporter-report-schedules-update.response.200.data.updatedAt`; string, required)
    - format `date-time`
- `meta` (`reporter-report-schedules-update.response.200.meta`; object, optional)
  - `timestamp` (`reporter-report-schedules-update.response.200.meta.timestamp`; string, required)
    - format `date-time`

### 400

Default Response

#### Example

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

- `error` (`reporter-report-schedules-update.response.400.error`; object, required)
  - `code` (`reporter-report-schedules-update.response.400.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`reporter-report-schedules-update.response.400.error.message`; string, required) — Human-readable error message
  - `details` (`reporter-report-schedules-update.response.400.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`reporter-report-schedules-update.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` (`reporter-report-schedules-update.response.401.error`; object, required)
  - `code` (`reporter-report-schedules-update.response.401.error.code`; string, required) — Machine-readable error code (e.g., NOT_FOUND)
  - `message` (`reporter-report-schedules-update.response.401.error.message`; string, required) — Human-readable error message
  - `details` (`reporter-report-schedules-update.response.401.error.details`; unknown, optional) — Optional structured error details
  - `traceId` (`reporter-report-schedules-update.response.401.error.traceId`; string, optional) — Unique ID for log correlation

### 403

Default Response

#### Example

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

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

### 404

Default Response

#### Example

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

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

### 409

Default Response

#### Example

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

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

### 422

Default Response

#### Example

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

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

### 500

Default Response

#### Example

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

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


Source: https://docs.sureshake.com/reference/reporter-report-schedules-update/index.md
