Skip to main content
POST
curl

Overview

Deletes one or more User entities. The user records are removed permanently. Their verification sessions are not covered by this endpoint and survive with their link to the user cleared; delete them with Delete Session or Batch Delete Sessions. Transactions are not covered either; delete those from the Console.

When to use it

  • Right-to-be-forgotten requests (GDPR / CCPA).
  • Clean-up of test users during QA.
  • Deprovisioning users removed from your own platform.

Notes

  • Accepts a list of vendor_data values, or delete_all: true. Unlike the Console, it does not accept didit_internal_id values.
  • Idempotent — re-sending the same list returns deleted: 0 after the first run.
  • Returns only a count of what was deleted, not a per-item report. Values that matched nothing are skipped silently. Send a de-duplicated list if you want to compare deleted against the number of identifiers you sent, since a repeated identifier is only counted once.
  • No webhook is emitted for a deletion. Webhooks fire on user status and data changes, not on delete — so an integration that needs a deletion signal must record it on its own side.
  • Verification sessions linked to the user are NOT deleted by this endpoint. They remain, with their link to the user cleared, so their documents, faces and media are only removed once you delete the sessions themselves.
  • Retained biometric templates anchored to the user ARE purged, before the user is deleted. If a template cannot be purged because a biometric store is unavailable, the call returns 503, no user in the request is deleted, and repeating the request finishes the job.

Permissions

Role must grant delete:users. This is typically reserved for OWNER and ADMIN.

Authorizations

x-api-key
string
header
required

Body

application/json

Provide vendor_data_list or delete_all: true. When delete_all is true it takes precedence and vendor_data_list is ignored.

vendor_data_list
string[]

Your own identifiers to delete, matched exactly as sent.

delete_all
boolean
default:false

If true, deletes every user in the application.

Response

Users deleted. Returns the number of users actually deleted.

deleted
integer

Number of users deleted (excludes vendor_data values that didn't match anything).