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

# Pause, unpause, freeze, unfreeze

> Emergency and regulatory controls for QRC tokens that support pause and freeze.

These endpoints expose the pause/unpause and freeze/unfreeze controls offered by some QRC standards. Pause halts **all** token activity globally. Freeze halts activity for a single account. Both are privileged operations that always require approval.

## Capability matrix

| Standard |       `pause`      |      `freeze`      |
| -------- | :----------------: | :----------------: |
| QRC-20   | Template-dependent | Template-dependent |
| QRC-721  | Template-dependent | Template-dependent |
| QRC-1155 | Template-dependent | Template-dependent |
| QRC-1400 |  Yes (controller)  | Yes (per-investor) |
| QRC-3643 |         Yes        | Yes (per-identity) |
| QRC-4626 | Template-dependent |         No         |
| QRC-3525 | Template-dependent |         No         |

## `POST /v1/tokens/{tokenId}/pause`

Pause **all** transfers, mints, and burns on the token contract.

| Aspect               | Detail                                         |
| -------------------- | ---------------------------------------------- |
| Authentication       | Bearer API key                                 |
| Required permissions | `tokens:pause` plus the on-chain `PAUSER` role |
| Idempotency          | `Idempotency-Key` header **required**          |
| Approval policy      | **Required**                                   |
| Blockchain effect    | Contract call to `pause()`                     |
| Webhook events       | `token.paused`, `token.operation_failed`       |

### Example response (202)

```json theme={null}
{
  "operationId": "op_pause_111",
  "tokenId": "token_abc123",
  "operationType": "PAUSE",
  "status": "PENDING_AUTHORIZATION",
  "transactionRequestId": "txreq_006",
  "createdAt": "2026-04-27T10:18:00Z"
}
```

## `POST /v1/tokens/{tokenId}/unpause`

Resume activity. Webhook events: `token.unpaused`, `token.operation_failed`. Same request envelope as `pause`.

## `POST /v1/tokens/{tokenId}/freeze`

Freeze a single account so it cannot send or receive the token.

\| Required permissions  | `tokens:freeze` plus the on-chain `FREEZER` role  |
\| Webhook events        | `token.frozen`, `token.operation_failed`          |

### Request body

```json theme={null}
{
  "subject": { "type": "address", "address": "0x9a8e5e21…" },
  "reason": "compliance hold — case_2026_0427",
  "idempotencyKey": "freeze-2026-04-27-001"
}
```

## `POST /v1/tokens/{tokenId}/unfreeze`

Release a freeze. Webhook events: `token.unfrozen`, `token.operation_failed`.

### Errors

| Code | Type                          | Meaning                                                |
| ---: | ----------------------------- | ------------------------------------------------------ |
| 1703 | `TOKEN_NOT_DEPLOYED`          | Token has no on-chain `contractAddress`.               |
| 1704 | `TOKEN_OPERATION_NOT_ALLOWED` | Standard or template does not support pause or freeze. |
| 1708 | `TOKEN_ROLE_REQUIRED`         | Caller lacks the on-chain `PAUSER` or `FREEZER` role.  |
| 1200 | `POLICY_DENIED`               | Approval policy denied the operation.                  |
| 1201 | `APPROVAL_REQUIRED`           | Approval is required and was not yet granted.          |
| 1601 | `IDEMPOTENCY_CONFLICT`        | Same `Idempotency-Key` reused with different body.     |

## Related

* [Token roles](/api-reference/tokens/manage-token-roles)
* [Compliance and allowlist](/api-reference/tokens/compliance-and-allowlist)
* [Security model](/qustody/token-management/security-model)
