Skip to content
StatusSupportDashboard

Create deletion request

POST/v1/deletion_requests

Submit an end-user data deletion request. SafetyKit validates the request, durably queues it, and asynchronously deletes the stored data associated with the subject user.

Body ParametersJSONExpand Collapse
subject_user_id: string

Your stable canonical identifier for the user or account whose data should be deleted.

minLength1
maxLength512
external_request_id: optional string

Optional caller-provided request identifier for correlating the deletion request in both systems. Repeat submissions with the same external_request_id are deduplicated and return the original deletion_request_id.

minLength1
maxLength256
requested_at: optional string

The time the deletion request was received in your system, as an ISO 8601 datetime string.

formatdate-time
ReturnsExpand Collapse
deletion_request_id: string

SafetyKit correlation identifier for the deletion request.

status: "accepted"

Deletion request was accepted and queued for asynchronous processing.

external_request_id: optional string

Caller-provided request identifier, if supplied.

Create deletion request

curl https://api.safetykit.com/v1/deletion_requests \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $SAFETYKIT_API_KEY" \
    -d '{
          "subject_user_id": "user_123",
          "external_request_id": "gdpr-123456",
          "requested_at": "2026-06-22T17:00:00.000Z"
        }'
{
  "deletion_request_id": "deletion_request_01KSR4C8JN1SA9X63T6P368K6W",
  "status": "accepted",
  "external_request_id": "gdpr-123456"
}
Returns Examples
{
  "deletion_request_id": "deletion_request_01KSR4C8JN1SA9X63T6P368K6W",
  "status": "accepted",
  "external_request_id": "gdpr-123456"
}