Verification API
v1.0Programmatically create verification sessions, evaluate zero-knowledge proofs, and query session outcomes.
The Verification API allows your backend or kiosk system to initiate verification sessions, generate dynamic challenge nonces, and evaluate student cryptographic proofs.
Create Verification Session
POST
/verification/v1/sessionsBearer Auth
Create Verification Session
Generates a new verification session with a unique challenge nonce and QR code payload.
| Parameter | Type | Required | Description |
|---|---|---|---|
appId | string | Required | The Application UUID creating the session. |
purpose | string | Required | Human-readable explanation presented to the student. |
requiredClaims | string[] | Required | List of required verification attributes. |
expiresInSeconds | number | Optional | Session validity window in seconds (max 900). |
curl
| 1 | curl -X POST "https://api.business.syncnexa.co/verification/v1/sessions" \ |
| 2 | -H "Authorization: Bearer sk_live_YOUR_SECRET_KEY" \ |
| 3 | -H "Content-Type: application/json" \ |
| 4 | -d '{ |
| 5 | "appId": "app_8a7b6c5d4e3f", |
| 6 | "purpose": "Verify student status for 20% discount", |
| 7 | "requiredClaims": ["is_active_student", "university_domain"] |
| 8 | }' |
create-session-response.jsonjson
| 1 | { |
| 2 | "success": true, |
| 3 | "data": { |
| 4 | "sessionId": "sess_9f8e7d6c5b4a", |
| 5 | "status": "pending", |
| 6 | "challengeNonce": "nonce_3f8a9b0c1d2e", |
| 7 | "qrPayload": "syncid://verify?session=sess_9f8e7d6c5b4a&nonce=nonce_3f8a9b0c1d2e", |
| 8 | "verificationUrl": "https://portal.syncnexa.co/verify/sess_9f8e7d6c5b4a", |
| 9 | "expiresAt": "2026-08-20T12:20:00.000Z" |
| 10 | } |
| 11 | } |
Get Session Status
GET
/verification/v1/sessions/:sessionIdBearer Auth
Poll Verification Session
Checks the current state of a verification session and retrieves the proof result once completed.
Verify Proof Payload
POST
/verification/v1/verifyBearer Auth
Direct Proof Verification
Validates a raw zero-knowledge proof or signed student credential payload directly.
Was this page helpful?