Request Body Parameters
UUID of the verification profile to use. Profiles define the steps, thresholds, and document types for the session.
Applicant’s email address
Your internal reference ID for this session
URL to redirect the applicant after completing the hosted flow
Session expiration in seconds (min: 300, max: 86400, default: 3600)
Arbitrary key-value pairs attached to the session
curl -X POST \
"https://verilock.io/api/v1/sessions" \
-H "Authorization: Bearer qi_live_your_api_key_here" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"profile_id": "01234567-89ab-cdef-0123-456789abcdef",
"applicant_email": "jean.dupont@example.com",
"applicant_name": "Jean Dupont",
"external_id": "usr_12345",
"redirect_url": "https://example.com/kyc/complete",
"metadata": {
"plan": "premium"
}
}'
{
"id": "ses_a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"session_token": "tok_abc123def456...",
"session_url": "https://verilock.io/verify/tok_abc123def456...",
"status": "created",
"expires_at": "2026-03-15T11:30:00Z"
}
Use session_token to initialize the Web, Flutter, or React Native SDK. Use session_url to redirect the user to the hosted verification flow.