Upserts a per-class schedule.
PUT
/v1/m/compliance/retention/policies/{class}
const url = 'https://example.com/v1/m/compliance/retention/policies/example';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"basis":"example","disposition":"retain","enabled":true,"retention_days":1}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://example.com/v1/m/compliance/retention/policies/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "basis": "example", "disposition": "retain", "enabled": true, "retention_days": 1 }'Upserts a per-class schedule. A retain schedule (or a purge one kept disabled) persists directly — documenting retention is evidence, not danger.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” class
required
string
Path parameter class.
Header Parameters
Section titled “Header Parameters ” X-Olivares-Tenant
string format: uuid
Target tenant id; required when the principal can act in more than one tenant.
Request Body required
Section titled “Request Body required ” Media type application/json
object
basis
string
disposition
required
string
enabled
boolean
retention_days
required
integer
Responses
Section titled “ Responses ”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
{}