For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • Getting Started
    • Introduction
    • How Verifa Works
    • Quickstart
    • Choosing an Integration Method
  • Use Cases
    • KYC Onboarding
    • Age Verification
    • AML Compliance
    • Fraud Prevention
    • Marketplace Trust & Safety
  • Core Concepts
    • Overview
    • Sessions
    • Verifications & Checks
    • Workflows
    • Identities
    • Cases
    • Screening & Reports
    • Lists
  • Integration Guides
    • Overview
    • JavaScript SDK
    • Web Capture Flow
    • API-Only Integration
    • Mobile SDK
    • Webhooks Guide
    • MCP Server
    • Migrating from Persona
  • API Details
    • Overview
    • Authentication
    • Pagination
    • Rate Limiting
    • Versioning
    • Errors
    • Webhooks
    • Idempotency
    • Key Inflection
    • Data Access
    • Data Retention
  • Tutorials
    • Creating Your First Verification Session
    • Creating a Workflow
    • Receiving Webhooks & Validating Signatures
    • Handling Webhook Events
    • Custom Document Types & AI Extraction
  • Best Practices
    • Testing
    • Preventing Duplicates
    • Fraud Signals
    • Changelog
  • API Reference
      • GETList identities
      • POSTCreate an identity
      • GETGet an identity
      • PATCHUpdate an identity
      • DELRedact an identity
      • GETExport identity data (GDPR Art. 15 DSAR)
      • POSTSearch identities
      • GETList identity sessions
      • GETGet identity audit log
      • POSTAdd a tag
      • POSTRemove a tag
      • POSTSet tags
      • POSTPreview identity merge
      • POSTMerge identities
      • POSTArchive an identity
      • POSTRestore an archived identity
      • POSTPause continuous monitoring for an identity
      • POSTResume continuous monitoring for an identity
      • POSTAdvanced identity search
      • GETGet custom field values
      • PATCHSet custom field values
      • GETList identity relationships
      • POSTCreate an identity relationship
      • DELDelete an identity relationship
      • GETQuery identity relationship graph
      • GETFind cross-session image similarity matches
      • GETGet monitored lists for an identity
      • POSTAdd lists to identity monitoring
      • PUTReplace monitored lists for an identity
API ReferenceIdentities

Search identities

POST
https://devapi.withverifa.com/api/v1/identities/search
POST
/api/v1/identities/search
$curl -X POST https://devapi.withverifa.com/api/v1/identities/search \
> -H "X-API-Key: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{}'
1{
2 "data": [
3 {
4 "id": "idn_abc123",
5 "status": "string",
6 "session_count": 1,
7 "is_sandbox": true,
8 "created_at": "2024-01-15T09:30:00Z",
9 "external_ref": "string",
10 "tags": [
11 "string"
12 ],
13 "last_verified_at": "2024-01-15T09:30:00Z",
14 "archived_at": "2024-01-15T09:30:00Z",
15 "identity_type_id": "string",
16 "custom_fields": {}
17 }
18 ],
19 "pagination": {
20 "total": 1
21 }
22}
Search for identities by field-match filters. PII fields (name, DOB, document number, SSN) are matched via HMAC hashes — the plaintext values provided in the request are hashed and compared against stored hashes, never stored themselves. For name+DOB search, all three fields (`first_name`, `last_name`, `date_of_birth`) must be provided together. Non-PII filters (`external_ref`, `status`, `country`) use direct matching.
Was this page helpful?
Previous

List identity sessions

Next
Built with

Search for identities by field-match filters. PII fields (name, DOB, document number, SSN) are matched via HMAC hashes — the plaintext values provided in the request are hashed and compared against stored hashes, never stored themselves.

For name+DOB search, all three fields (first_name, last_name, date_of_birth) must be provided together.

Non-PII filters (external_ref, status, country) use direct matching.

Authentication

X-API-Keystring

Organization API key. Keys are prefixed with vk_live_ (production) or vk_sandbox_ (sandbox).

Headers

Verifa-VersiondateOptional

API version date string (e.g. 2026-02-01). If omitted, the version pinned to your API key is used.

Key-InflectionenumOptionalDefaults to snake

Response key casing. Defaults to snake.

Allowed values:

Request

This endpoint expects an object.
external_refstringOptional
Exact match on external reference.
statusstringOptional
Filter by identity status.
first_namestringOptional

First name (used with last_name + date_of_birth for hash match).

last_namestringOptional

Last name (used with first_name + date_of_birth for hash match).

date_of_birthstringOptional

Date of birth as YYYY-MM-DD (used with first_name + last_name).

document_numberstringOptional
Document number for hash match.
ssnstringOptional
SSN for hash match.
countrystringOptional

ISO 3166-1 alpha-2 country code.

emailstringOptional
Email address for hash match.
phonestringOptional
Phone number for hash match.
citystringOptional
City for hash match.
statestringOptional

State/province for hash match.

zip_codestringOptional

Zip/postal code for hash match.

limitintegerOptional1-100Defaults to 25
offsetintegerOptional>=0Defaults to 0

Response

Search results.
datalist of objects
paginationobject

Errors

401
Unauthorized Error
422
Unprocessable Entity Error