---
title: "Publish a new policy version — the guard and GET /legal/current pick it up immediately (cache invalidated on write)"
method: POST
path: "/api/admin/legal/policy-versions"
tags: ["Admin"]
---

# Publish a new policy version — the guard and GET /legal/current pick it up immediately (cache invalidated on write)

`POST /api/admin/legal/policy-versions`

## Request

- Base URL: `https://api.rewritelifestyle.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.rewritelifestyle.ai/api/admin/legal/policy-versions`
- Auth: HTTP bearer

## Request body

- PublishPolicyVersionDto
  - `kind` 'privacy' | 'terms' | 'ai_disclosure', required
  - `version` string, required
  - `effectiveAt` string, required
  - `url` string, required

## Response `201`

## Changes

- **2026-09-12** `0d5ef02a4fbe`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/changes/api/admin/legal/policy-versions/post.md)

---

[API](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api.md) - [All operations](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/revisions/28695827f27a?raw)
