Skip to main content

API Reference

The Kora IDV API is organized around REST. It accepts JSON request bodies, returns JSON responses, and uses standard HTTP status codes.

Base URL​

https://idv.korastratum.com/api/v1/idv

Authentication​

All endpoints require two headers:

Authorization: Bearer <your-api-key>
X-Tenant-ID: <your-tenant-id>

See Authentication for details on API key formats and environments.

Endpoints​

Verifications​

MethodEndpointDescription
POST/verificationsCreate a new verification session
GET/verifications/{id}Retrieve a verification by ID
GET/subjects/{subjectId}/verificationsList verifications for a subject
POST/verifications/{id}/completeComplete verification and get decision
POST/verifications/{id}/reviewSubmit a manual review decision

Documents​

MethodEndpointDescription
POST/verifications/{id}/documentUpload document front image
POST/verifications/{id}/document/backUpload document back image

Biometrics​

MethodEndpointDescription
POST/verifications/{id}/selfieUpload a selfie image

Liveness​

MethodEndpointDescription
POST/verifications/{id}/liveness/sessionCreate a liveness session
POST/verifications/{id}/liveness/challengeSubmit a liveness challenge response
POST/verifications/{id}/liveness/framesSubmit video frames for temporal analysis
GET/verifications/{id}/livenessGet liveness session result

Images​

MethodEndpointDescription
GET/verifications/{id}/imagesList available verification images
GET/verifications/{id}/images/{imageType}Get a signed URL for an image

Fraud Alerts​

MethodEndpointDescription
GET/alertsList fraud alerts
POST/alerts/{id}/resolveResolve a fraud alert

Reference​

MethodEndpointDescription
GET/document-typesList supported document types
GET/healthHealth check (no auth required)

Response format​

Successful responses return the resource directly:

{
"id": "ver_abc123",
"status": "pending",
"tier": "standard",
"createdAt": "2025-01-15T10:30:00Z"
}

Error responses follow a consistent structure:

{
"code": "VALIDATION_ERROR",
"error": "Missing required field 'externalId'",
"details": {
"field": "externalId",
"constraint": "required"
}
}

See Error Codes for the complete list.