Update Account Retention Policy
Endpoint
PUT https://api.verifik.co/v2/client-settings/data
Updates the account-wide Data Retention Policy on ClientSettings.data. All projects and project flows inherit these settings unless explicitly overridden.
Headers
| Name | Value |
|---|---|
Content-Type | application/json |
Authorization | Bearer <token> |
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
mode | string | No | Default storage mode (store, ephemeral, none) |
types | object | No | Granular settings for documentImages, faceImages, ocrExtraction, and documentLiveness |
webhookHoldHours | number | No | Webhook hold duration (24 to 72 hours) |
allowManualDelete | boolean | No | Whether manual erasure routes are enabled |
Request
- Node.js
- Python
const fetch = require("node-fetch");
async function updateRetention() {
const payload = {
mode: "store",
types: {
documentImages: { mode: "store", retentionHours: 720 },
faceImages: { mode: "ephemeral", retentionHours: null },
ocrExtraction: { mode: "store", retentionHours: null },
documentLiveness: { mode: "none", retentionHours: null }
},
webhookHoldHours: 24,
allowManualDelete: true
};
const res = await fetch("https://api.verifik.co/v2/client-settings/data", {
method: "PUT",
headers: {
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify(payload)
});
console.log(await res.json());
}
updateRetention();
import os, requests
url = "https://api.verifik.co/v2/client-settings/data"
headers = {
"Authorization": f"Bearer {os.getenv('VERIFIK_TOKEN')}",
"Content-Type": "application/json"
}
payload = {
"mode": "store",
"types": {
"documentImages": {"mode": "store", "retentionHours": 720},
"faceImages": {"mode": "ephemeral", "retentionHours": None},
"ocrExtraction": {"mode": "store", "retentionHours": None},
"documentLiveness": {"mode": "none", "retentionHours": None}
},
"webhookHoldHours": 24,
"allowManualDelete": True
}
response = requests.put(url, json=payload, headers=headers)
print(response.json())
Response
- 200
- 400
{
"data": {
"mode": "store",
"types": {
"documentImages": { "mode": "store", "retentionHours": 720 },
"faceImages": { "mode": "ephemeral", "retentionHours": null },
"ocrExtraction": { "mode": "store", "retentionHours": null },
"documentLiveness": { "mode": "none", "retentionHours": null }
},
"webhookHoldHours": 24,
"allowManualDelete": true
}
}
{
"message": "Invalid webhook hold: must be between 24 and 72 hours",
"code": "BadRequest"
}