Block and allow lists
Block or allow an email, phone, IP address or CIDR range, device (installation), your user ID (vendor_data) or document country. A blocked value declines a verification that presents it (LIST_BLOCK; a workflow can send it to review instead); an allowed value skips the velocity, IP-country and risky-contact holds. The same lists are on the dashboard's Blocklist page, with CSV import and export.
curl -X POST https://api-verify.secuveri.com/v1/lists \
-H "x-api-key: $SECUVERI_API_KEY" \
-H "content-type: application/json" \
-d '{"kind":"block","type":"email","value":"fraud@example.com","reason":"chargeback","expires_at":"2027-06-30T00:00:00Z"}'Values are normalized first: emails lower-cased, phones written as E.164, IPs and ranges normalized, countries upper-cased. Emails, phones, devices and user IDs are kept only as a keyed fingerprint, so GET /v1/lists answers with a masked hint, never the value. POST /v1/lists/bulk takes up to 1000 entries as {"entries": [...]} and reports each one as created, reactivated, exists, duplicate or invalid. Re-adding an expired entry reactivates it with the requested expiry; an active entry stays unchanged. The response includes a separate reactivated count; DELETE /v1/lists/{id} removes one. Reading needs the lists:read scope, changing lists:write; keys made before scopes existed may do both. Every change is in the audit log.
| Status | Meaning |
|---|---|
| 200 / 201 | Already listed (the existing entry) / added |
| 400 | Invalid value, or an expiry that is not in the future |
| 401 | Missing or unknown API key |
| 403 | The key lacks lists:read or lists:write, or its IP allowlist refuses the caller |
| 404 | No such entry (DELETE) |
| 429 | More than 300 list calls in a minute |
To block a rejected person automatically, turn on Block on reject in the workflow's Identity Document step: when a reviewer rejects a verification, its email, phone, device and vendor_data are added to the blocklist.