KYC (API keys) Verification session lifecycle. Requires tenant API keys.
POST https://www.verifi360.com/api/kyc/start
Start session Creates a session. Secret key only. Consumes one credit when successful.
Auth: x-api-key (secret). HMAC (x-timestamp, x-signature) when enabled.
Parameter Type Description docTypesstring[] passport, id_card, driving_license, driver_license, auto requireSelfieboolean Default true requireLivenessboolean Default false metadataobject Optional metadata (may include endUser)
Request Copy
1 {
2 "docTypes" : [ "passport" ],
3 "requireSelfie" : true ,
4 "requireLiveness" : false
5 }
Response Copy
1 {
2 "sessionId" : "..." ,
3 "clientToken" : "..." ,
4 "stepsRequired" : { "doc" : true , "selfie" : true , "liveness" : false },
5 "expiresAt" : "..."
6 }
POST https://www.verifi360.com/api/kyc/upload
Upload document Multipart upload of ID image (JPEG/PNG, max 10 MB).
Auth: x-publishable-key or x-api-key
Parameter Type Description sessionId* string Session ID docType* string Document type side* string front or back document* file Image file
POST https://www.verifi360.com/api/kyc/upload-url
Get signed upload URL Returns a presigned S3 URL for direct client upload.
Auth: x-publishable-key or x-api-key
POST https://www.verifi360.com/api/kyc/upload/confirm
Confirm upload Confirms a completed presigned upload.
Auth: x-publishable-key or x-api-key
POST https://www.verifi360.com/api/kyc/selfie
Upload selfie Multipart selfie upload for the session.
Auth: x-publishable-key or x-api-key
POST https://www.verifi360.com/api/kyc/liveness
Liveness check Submit liveness data for the session.
Auth: x-publishable-key or x-api-key
GET https://www.verifi360.com/api/kyc/status/:sessionId
Session status Returns status, steps, decision, and signed artifact URLs when available.
Auth: x-publishable-key or x-api-key
Response Copy
1 {
2 "sessionId" : "..." ,
3 "status" : "completed" ,
4 "steps" : { "doc" : {}, "selfie" : {}, "liveness" : {} },
5 "decision" : {},
6 "expiresAt" : "..."
7 }
Tenant (API key) Server-side tenant operations with API keys.
POST https://www.verifi360.com/api/tenant/:tenantId/rotate-keys
Rotate API keys Rotates publishable and secret keys.
Auth: x-api-key (secret). HMAC when signing enabled.
PEPs & Sanctions Screening (API keys) Standalone URIM screening for other apps. Uses the same tenant secret key model as KYC.
POST https://www.verifi360.com/api/urim/search
Create screening search Runs one URIM screening and charges 1.99 credits on successful completion. Returns 403 without calling URIM if credits are insufficient.
Auth: x-api-key (secret). HMAC (x-timestamp, x-signature) when enabled.
Parameter Type Description name* string Subject full name (min 2 chars). clientReferencestring Your reference id for reconciliation. yearOfBirthstring DOB as year or date (e.g. 1992 or 1992-06-01). countrystring Nationality/country. locationstring Location context for matching. aliasstring Known alias for subject matching. idempotencyKeystring Prevents duplicate charges on retried requests.
Request Copy
1 {
2 "name" : "John Smith" ,
3 "yearOfBirth" : "1986" ,
4 "country" : "GB" ,
5 "clientReference" : "cust_12345" ,
6 "idempotencyKey" : "urim-single-cust-12345-v1"
7 }
Response Copy
1 {
2 "search" : {
3 "_id" : "..." ,
4 "status" : "completed" ,
5 "creditsCharged" : 1 . 99 ,
6 "creditTransactionReference" : "urim-search:..."
7 },
8 "requestId" : "..." ,
9 "creditPrecheck" : true
10 }
POST https://www.verifi360.com/api/urim/searches/batch
Create batch screening Runs batch URIM screening (JSON searchTerms array or CSV/XLS/XLSX file). Maximum 500 rows. Charges 1.99 per completed valid row.
Auth: x-api-key (secret). HMAC when signing enabled.
Parameter Type Description searchTermsobject[] Array of subjects when using JSON body. filefile CSV/XLS/XLSX upload with required name column. namestring Required per row. Invalid rows are stored as validation_error.
Response Copy
1 {
2 "batchId" : "batch_..." ,
3 "summary" : {
4 "total" : 10 ,
5 "success" : 8 ,
6 "failed" : 2 ,
7 "chargedCount" : 8 ,
8 "totalCharged" : 15 . 92
9 },
10 "results" : []
11 }
GET https://www.verifi360.com/api/urim/searches
List screening searches Returns paginated URIM searches for the authenticated tenant.
Auth: x-api-key (secret). HMAC when signing enabled.
GET https://www.verifi360.com/api/urim/searches/:searchId
Get screening search by id Returns one URIM search record including status, summary, and raw result payload.
Auth: x-api-key (secret). HMAC when signing enabled.
GET https://www.verifi360.com/api/urim/searches/:searchId/report
Download screening PDF report Downloads PDF report for completed searches with raw response and screen id.
Auth: x-api-key (secret). HMAC when signing enabled.
POST https://www.verifi360.com/api/urim/searches/:searchId/retry
Retry screening search Retries a prior search as a new idempotent run and charges on successful completion.
Auth: x-api-key (secret). HMAC when signing enabled.
Tenant (dashboard JWT) Logged-in dashboard routes. Authorization: Bearer <JWT>.
PATCH https://www.verifi360.com/api/tenant/:tenantId/settings
Update tenant settings Webhook URL, webhook secret, rateLimitPerMinute, retention, etc.
Auth: Bearer JWT (dashboard)
Parameter Type Description webhookUrlstring HTTPS webhook endpoint webhookSecretstring Webhook HMAC secret rateLimitPerMinutenumber Default 300 if unset
POST https://www.verifi360.com/api/enduser
Create end user Creates a customer record for hosted verification.
Auth: Bearer JWT (dashboard)
POST https://www.verifi360.com/api/hosted-link
Create hosted link Creates a hosted verification link.
Auth: Bearer JWT (dashboard)
POST https://www.verifi360.com/api/tenant/:tenantId/urim/search
URIM screening search Single-subject screening from dashboard UI flow.
Auth: Bearer JWT (dashboard). API-key alternative exists at /urim/search.
POST https://www.verifi360.com/api/tenant/:tenantId/urim/searches/batch
URIM batch screening Batch screening from dashboard UI flow.
Auth: Bearer JWT (dashboard). API-key alternative exists at /urim/searches/batch.
GET https://www.verifi360.com/api/credits/balance
Credit balance Current verification credit balance.
Auth: Bearer JWT (dashboard)
POST https://www.verifi360.com/api/credits/checkout
Buy credits Creates a Stripe checkout session for credits.
Auth: Bearer JWT (dashboard)
GET https://www.verifi360.com/api/analytics/usage
Usage analytics Tenant usage metrics for the dashboard.
Auth: Bearer JWT (dashboard)