---
search:
  tags:
    - Content blocks
    - PATCH
seo:
  description: >-
    Updates a condition. Scoped to your integration's… Reference for the PATCH
    /content-blocks/{id}/conditions/{conditionId} endpoint in the Fuxam API v4.
sidebar:
  label: Update a condition
  badge: PATCH
title: Update a condition
type: openapi-operation
---
Updates a condition. Scoped to your integration's institution via Basic Auth credentials.

`PATCH /content-blocks/{id}/conditions/{conditionId}`

**Request body** (`application/json`, required)

- `requiredBlockId` (string)
- `conditionType` (string)
- `condition` (object) — Condition-specific data. SimpleDependency: \`{ requiredStatus: string\[\] }\`. SurveyData: \`{ questionId: string, expectedAnswer: string }\`. WorkbenchData: \`{ elementId: string, optionIds: string\[\] }\`. GradeData: \`{ passed: boolean }\`.

Request body example, Change required statuses:

```json
{
  "condition": {
    "requiredStatus": [
      "FINISHED"
    ]
  }
}
```

Request body example, Point to a different prerequisite block:

```json
{
  "requiredBlockId": "block_prev_xyz"
}
```

**Responses**

- `200` — Updated condition
- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `429` — Too Many Requests — 1000 requests per minute per institution. Includes \`X-RateLimit-Limit\`, \`X-RateLimit-Remaining\`, \`X-RateLimit-Reset\` (ISO-8601), and \`Retry-After\` (seconds).
- `500` — Internal Server Error

Response example, 200:

```json
{
  "data": {
    "id": "string",
    "blockId": "string",
    "requiredBlockId": "string",
    "conditionType": "SimpleDependency",
    "condition": {},
    "requiredBlock": {
      "id": "string",
      "name": "string",
      "type": "string"
    }
  },
  "meta": {
    "requestId": "req_1234567890_abc",
    "timestamp": "2026-06-02T07:00:00.000Z",
    "version": "v4",
    "watermark": "2019-08-24T14:15:22Z"
  }
}
```
