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 identity types
      • POSTCreate an identity type
      • GETGet an identity type
      • DELDelete an identity type
      • PATCHUpdate an identity type
API ReferenceIdentity Types

Create an identity type

POST
https://devapi.withverifa.com/api/v1/identity-types
POST
/api/v1/identity-types
$curl -X POST https://devapi.withverifa.com/api/v1/identity-types \
> -H "X-API-Key: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{
> "name": "customer",
> "label": "Customer"
>}'
1{
2 "id": "idtype_abc123",
3 "org_id": "string",
4 "name": "customer",
5 "label": "Customer",
6 "is_default": true,
7 "created_at": "2024-01-15T09:30:00Z",
8 "description": "string",
9 "statuses": [
10 "pending",
11 "verified",
12 "rejected",
13 "under_review",
14 "merged",
15 "redacted"
16 ],
17 "default_status": "pending",
18 "updated_at": "2024-01-15T09:30:00Z"
19}

Create a custom identity type. Identity types categorise verified identities (for example: “consumer”, “business officer”) and gate which custom fields are surfaced for that population.

Required scope: settings:write (or legacy identities:write).

Was this page helpful?
Previous

Get an identity type

Next
Built with

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:
Idempotency-KeystringOptional<=255 characters

Unique key for idempotent requests. Cached for 24 hours. Sending the same key with different parameters returns 422.

Request

This endpoint expects an object.
namestringRequired

Machine-readable name for the identity type.

labelstringRequired

Human-readable label.

descriptionstringOptional
Optional description of this identity type.
statuseslist of stringsOptional
Custom statuses for this identity type.
default_statusstringOptional
Default status for new identities of this type.
is_defaultbooleanOptionalDefaults to false
Whether this is the default identity type for the organization.

Response

Identity type created.
idstring
org_idstring
namestring
labelstring
is_defaultboolean
created_atdatetime
descriptionstring
statuseslist of strings
default_statusstring
updated_atdatetime

Errors

401
Unauthorized Error
409
Conflict Error
422
Unprocessable Entity Error