# Update update

URL: /en/docs/api/v1/updates/id/patch
Last Updated: 2026-07-30T21:15:30.398Z

## Description
No description available.

## Available Actions
- Execute PATCH request
- View request parameters
- View response schema
- Get code examples
- Navigate to related topics
- View step-by-step instructions
- Get best practices

## Content
### PATCH /api/v1/updates/{id}

**Update update**

Edit update content, audience, resources, slug, classification, and access level. Draft and scheduled updates can be edited before publication. Published updates only allow slug and access-level changes. Follow-up order can only be changed on the root update. Use the dedicated publish, schedule, archive, and revert endpoints for lifecycle changes.

**Authentication:** Bearer token (`Authorization: Bearer <token>`)

**Path parameters:**

| Name | Type | Required | Description |
|---|---|---|---|
| `id` | string | Yes | Update ID |

**Request body** (`application/json`) - required:

- `title` (string)
- `slug` (string)
- `summary` (string)
- `description_md` (string)
- `classification` (string): Classification ID.
- `access_level` (AccessLevel (enum: public | restricted | requires_nda | internal))
- `channels` (array of UpdateChannel (enum: trust_center | email.subscribers | email.custom))
- `parent` (string): Published root update ID for follow-up updates.
- `order` (enum: asc | desc): Follow-up ordering on the root update. Child updates cannot change this field.
- `effective_at` (string (date-time))
- `effective_timezone` (string)
- `template` (string)
- `document_ids` (array of string)
- `subprocessor_ids` (array of string)
- `account_ids` (array of string)
- `contact_ids` (array of string)
- `variant_options` (array of string): Variant option IDs to assign this update to. Replaces all existing assignments. Unknown or foreign option IDs return 400 with error `unknown_variant_options`. Option ownership is validated before any write; assignments are applied after the content update succeeds, and a sync failure at that point returns 500 with error `variant_assignments_failed`.

Example (Edit a draft):

```json
{
  "title": "Privacy policy refresh",
  "summary": "Final customer-facing summary.",
  "description_md": "The updated policy is now ready for review.",
  "classification": "cls_legal"
}
```

**Responses:**

- `200` - Update changed
  - `success` (boolean)
  - `data` (object)
    - `update` (Update (object))
      - `id` (string)
      - `title` (string)
      - `slug` (any): URL-safe identifier used by Trust Center update modal links.
      - `summary` (any)
      - `description_md` (any): Markdown body shown in the Trust Center update modal or timeline.
      - `status` (enum: draft | scheduled | published | archived)
      - `classification` (object)
        - `id` (string)
        - `title` (string)
        - `color` (any)
        - `translations` (array of ClassificationTranslation (object))
          - `languages_code` (string)
          - `title` (string)
        - `custom_fields` (array of ClassificationCustomField (object))
          - `title` (string)
          - `translations` (array of ClassificationTranslation (object))
            - `languages_code` (string)
            - `title` (string)
          - `options` (array of object)
            - `value` (string)
            - `label` (array of object)
              - `languages_code` (string)
              - `translation` (string)
      - `access_level` (AccessLevel (enum: public | restricted | requires_nda | internal))
      - `send_mode` (enum: none | immediate | scheduled)
      - `channels` (array of UpdateChannel (enum: trust_center | email.subscribers | email.custom))
      - `scheduled_at` (any)
      - `scheduled_timezone` (any)
      - `published_at` (any)
      - `effective_at` (any)
      - `effective_timezone` (any)
      - `order` (enum: asc | desc)
      - `parent` (object)
        - `id` (string)
        - `title` (string)
      - `template` (object)
        - `id` (string)
        - `title` (string)
        - `summary` (any)
        - `description_md` (any)
        - `badge` (any)
        - `tenant` (any)
        - `category` (object)
          - `id` (string)
          - `title` (string)
      - `documents` (array of UpdateDocumentRelation (object))
        - `id` (string)
        - `documents_id` (object)
          - `id` (string)
          - `title` (string)
      - `subprocessors` (array of UpdateSubprocessorRelation (object))
        - `id` (string)
        - `subprocessors_id` (object)
          - `id` (string)
          - `title` (string)
- `400` - Validation failed, operation is not allowed for the current update state, subscriptions are disabled for subscriber delivery, or follow-up order constraints were violated
- `404` - Update not found
- `500` - Failed to update update

