Skip to main content
PUT
/
v1
/
knowledge-base
/
retention-policy
Update the org's KB audit retention policy / legal hold
curl --request PUT \
  --url https://api-sandbox.featherhq.com/v1/knowledge-base/retention-policy \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "retention_days": 91,
  "legal_hold_enabled": true,
  "legal_hold_reason": "<string>",
  "archive_before_delete": true,
  "archive_destination": "<string>"
}
'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "retention_days": 123,
  "legal_hold_enabled": true,
  "archive_before_delete": true,
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z",
  "legal_hold_reason": "<string>",
  "legal_hold_set_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "legal_hold_set_at": "2023-11-07T05:31:56Z",
  "archive_destination": "<string>",
  "policy_version": "<string>"
}

Authorizations

x-api-key
string
header
required

Body

application/json

PUT body for the retention policy. retention_days floor is enforced both here (422 at the edge) and in the service (defense in depth).

retention_days
integer | null
Required range: x >= 90
Maximum string length: 500
archive_before_delete
boolean | null
archive_destination
string | null
Maximum string length: 255

Response

Successful Response

Org audit-retention policy + legal-hold state.

id
string<uuid>
required
organization_id
string<uuid>
required
retention_days
integer
required
archive_before_delete
boolean
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
archive_destination
string | null
policy_version
string | null