PactbasePactbase DocsDocs
APIReference

Retention

Log a deletion

POST
/api/v1/retention/deletions

After your system deletes data that has passed its retention period, log it here. A schedule on legal hold answers 409. Every logged deletion gets a certificate in Retention & Deletion.

Requires an API key with the retention:write scope.

Authorization

ApiKey
headerAuthorizationBearer <token>

An API key, pb_live_ followed by 43 characters. X-API-Key: <key> is also accepted.

Request Body

application/json
  1. body
schedule_id?string
Length1 <= length <= 200
subject?string
Lengthlength <= 300
performed_at?string
Match^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
Formatdate-time
records_deleted?integer
Range0 <= value <= 9007199254740991
method?string
Lengthlength <= 1000
evidence?string
Lengthlength <= 5000

Response Body

OK

application/json
  1. response
curl -X POST "https://example.com/api/v1/retention/deletions" \  -H "Content-Type: application/json" \  -d '{}'
{  "deletion": {    "id": "d1e2f3a4-b5c6-4d7e-8f90-a1b2c3d4e5f6",    "schedule_id": "SCHEDULE_ID",    "records_deleted": 1240,    "performed_at": "2026-10-20T02:10:00.000Z"  }}