Skip to content

Persists an immutable revision and runs PERMITTED-vs-OBSERVED drift.

POST
/v1/m/claude-policy/{surface}/publish
curl --request POST \
--url https://example.com/v1/m/claude-policy/example/publish \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "content": "example", "note": "example" }'

Persists an immutable revision and runs PERMITTED-vs-OBSERVED drift.

surface
required
string

Path parameter surface.

X-Olivares-Tenant
string format: uuid

Target tenant id; required when the principal can act in more than one tenant.

Media type application/json
object
content
required

After trimming, the document must be non-empty and structurally valid for the selected surface. Publish caps it at 262144 UTF-8 bytes and rejects inline credential material.

string
note
Any of:

Optional publish note; JSON null decodes as empty and strings are capped at 4096 UTF-8 bytes.

string
Example generated
{
"content": "example",
"note": "example"
}

OK

Media type application/json
object
Example generated
{}

Bad request

Media type application/json
object
Example generated
{}

Unauthenticated

Media type application/json
object
Example generated
{}

Forbidden

Media type application/json
object
Example generated
{}

Not found

Media type application/json
object
Example generated
{}

Conflict / setup required

Media type application/json
object
Example generated
{}

Rate limited

Media type application/json
object
Example generated
{}