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

# Delete redaction config

> Remove the active CTR redaction config for your Operata account and revert the Cloud Collector to the privacy-first default.

Removes the redaction config for your Operata account. After the call, the Cloud Collector reverts to the privacy-first default and ships only the mandatory CTR fields. Use it to roll back a config before applying a new one, or to retire a config you no longer need.

<Warning>
  **Destructive operation.** Deleting the redaction config opens a propagation window during which subsequent CTRs may include PII fields the config previously stripped. The collector keeps applying the old config to in-flight contacts for up to 30 minutes after this call returns, then reverts to the default. To change the field set without this exposure window, send a new config to [`PUT /v1/config/json`](/docs/api-update-redaction-config) instead — that replaces the document atomically.
</Warning>

`DELETE /v1/config/REDACTION_CONFIG` is idempotent. Deleting an already-deleted config converges on the same end state — no config, collector on the default. The current wire response on a second call is `404` (see [Errors](#errors) below); treat it as success. See [Idempotency](/docs/api-idempotency) for the per-method contract.

## Endpoint

```http theme={null}
DELETE https://api.operata.io/v1/config/REDACTION_CONFIG
```

## Parameters

### Headers

| Name              | Type   | Required            | Description                                                                                                                                                                                |
| ----------------- | ------ | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `Idempotency-Key` | string | no, not yet honored | Reserved for a future contract. The endpoint is already idempotent — deleting an already-deleted config returns `404` and the end state matches. See [Idempotency](/docs/api-idempotency). |

This endpoint takes no path, query, or body parameters. Credentials on the request determine the Operata account scope.

## Response

`200 OK` with a plain-text body `REDACTION_CONFIG removed`.

```text theme={null}
REDACTION_CONFIG removed
```

The deletion is durable as soon as the call returns. Propagation across all collection points can take up to 30 minutes; CTRs from contacts that end during that window may still apply the now-deleted config.

## Example

<CodeGroup>
  ```bash curl theme={null}
  curl -X DELETE -u "$OPERATA_GROUP_ID:$OPERATA_API_TOKEN" \
    "https://api.operata.io/v1/config/REDACTION_CONFIG"
  ```

  ```javascript Node.js theme={null}
  const groupId = process.env.OPERATA_GROUP_ID;
  const apiToken = process.env.OPERATA_API_TOKEN;
  const auth = Buffer.from(`${groupId}:${apiToken}`).toString("base64");

  const response = await fetch(
    "https://api.operata.io/v1/config/REDACTION_CONFIG",
    {
      method: "DELETE",
      headers: { Authorization: `Basic ${auth}` },
    },
  );
  ```

  ```python Python theme={null}
  import os, requests

  response = requests.delete(
      "https://api.operata.io/v1/config/REDACTION_CONFIG",
      auth=(os.environ["OPERATA_GROUP_ID"], os.environ["OPERATA_API_TOKEN"]),
  )
  response.raise_for_status()
  ```
</CodeGroup>

## Errors

| Status | Code        | When                                                                                                                         | Recover                                                                                                                                        |
| ------ | ----------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| 404    | `not_found` | No redaction config exists for this Operata account. Either it was never created, or a previous `DELETE` already removed it. | Confirm with [Get redaction config](/docs/api-get-redaction-config). If no config is expected, treat `404` as success — the end state matches. |

See [Errors](/docs/api-errors) for shared codes such as `401 unauthorized`, `429 rate_limited`, and the `5xx` family.

## Related

* [Data redaction](/docs/api-data-redaction) — what redaction does and how the three endpoints fit together.
* [Get redaction config](/docs/api-get-redaction-config) — confirm what is in effect before you delete it.
* [Update redaction config](/docs/api-update-redaction-config) — replace the config atomically instead of deleting then re-creating.
* [Errors](/docs/api-errors) — shared status codes and recovery patterns.
* [Rate limits](/docs/api-rate-limits) — per-token request budget.
* [Idempotency](/docs/api-idempotency) — `DELETE` is idempotent; the end state matches whether the config existed or not.
* [Versioning](/docs/api-versioning) — this endpoint lives under `/v1`.


## OpenAPI

````yaml DELETE /v1/config/REDACTION_CONFIG
openapi: 3.0.3
info:
  title: operata-api
  version: '1'
servers:
  - url: https://api.operata.io/
security:
  - sec0: []
paths:
  /v1/config/REDACTION_CONFIG:
    delete:
      summary: Delete Redaction Config
      description: Remove the CTR redaction configuration (if existing)
      operationId: delete-redaction-configuration
      responses:
        '200':
          description: '200'
          content:
            text/plain:
              examples:
                Result:
                  value: REDACTION_CONFIG removed
        '404':
          description: '404'
          content:
            text/plain:
              examples:
                Result:
                  value: REDACTION_CONFIG not found
      deprecated: false
components:
  securitySchemes:
    sec0:
      type: http
      scheme: basic

````