---
title: "Activate or roll back to a policy version using CAS"
method: POST
path: "/redaction/policies/{name}/versions/{version}/activate"
tags: ["redaction-policies"]
---

# Activate or roll back to a policy version using CAS

`POST /redaction/policies/{name}/versions/{version}/activate`

Revalidates the stored snapshot and changes ACTIVE only when expectedActiveVersion matches. null means that no ACTIVE version is expected. Required scope: `policy:redaction:manage`.

## Request body

- RedactionPolicyCASRequest
  - `expectedActiveVersion` string, nullable, required — null requires that no ACTIVE version currently exists.

## Response `200`

Version is ACTIVE

- RedactionPolicyVersion
  - `name` string, required
  - `source` 'BUILT_IN' | 'TENANT', required
  - `version` string, required
  - `status` 'DRAFT' | 'ACTIVE' | 'ARCHIVED', required
  - `schemaVersion` integer, required
  - `description` string, nullable, required
  - `definition` RedactionPolicyDefinition, required
    - `enabledCategories` string[], required
    - `businessConfidential` RedactionPolicyBusinessConfidential, required
      - `definition` string, required
      - `include` RedactionPolicyBusinessTarget[], required
        - `text` string, required
        - `mode` 'exact' | 'value_clause' | 'exact_or_value_clause', required
      - `exclude` string[], required
      - `examples` string[], required
  - `contentDigest` string, required
  - `createdAt` string, date-time, nullable, required
  - `activatedAt` string, date-time, nullable, required
  - `archivedAt` string, date-time, nullable, required

## Other responses

- `400` — Bad Request - policy schema, normalization, size, quota, cursor, or path validation failed
- `401` — Unauthorized - Authentication failed
- `403` — Forbidden - requires an API key with the `policy:redaction:manage` scope; Dashboard bearer authentication is rejected
- `404` — Not Found - name/version is unknown, inactive where required, or belongs to another tenant
- `409` — Conflict - DRAFT, immutable built-in, delete, unchanged version, or ACTIVE CAS conflict
- `503` — Service Unavailable - tenant redaction policy store is unavailable

## Changes

> 65 revisions in range; 12 not diffed.

- **2026-08-03** `8e90404f8bf2` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/qlonolink/apis/qaip-apis/changes/redaction/policies/:name/versions/:version/activate/post.md)

---

[API](https://skmtc.dev/qlonolink/apis/qaip-apis.md) · [All operations](https://skmtc.dev/qlonolink/apis/qaip-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/qlonolink/apis/qaip-apis/revisions/430440bbcc56?raw)
