Xaqiiji
Getting StartedQuick Start

Quick Start

Step-by-step guidance for secure Xaqiiji API integration.

Integration steps

1

Register business account

Complete this step to finish a working integration.
2

Create xq_test_* API key in portal

Complete this step to finish a working integration.
3

POST /verify/citizen from your backend

Complete this step to finish a working integration.
4

Handle success and error responses

Complete this step to finish a working integration.
5

Add webhook URL in portal

Complete this step to finish a working integration.
6

Switch to xq_live_* when approved

Complete this step to finish a working integration.

First request

fetch / Node.js
// Official @xaqiiji/sdk package is coming soon.// Use REST from your backend today:const response = await fetch("http://localhost:8080/api/v1/verify/citizen", {  method: "POST",  headers: {    Authorization: `Bearer ${process.env.XAQIIJI_API_KEY}`,    "Content-Type": "application/json",    "Idempotency-Key": "verify-2026-06-02-001",  },  body: JSON.stringify({    nationalId: "12345678901",    purpose: "pre_employment",  }),});const result = await response.json();console.log(result.data?.result);

cURL example

cURL
curl -X POST "http://localhost:8080/api/v1/verify/citizen" \  -H "Authorization: Bearer xq_test_xxxxxxxxxxxxxx" \  -H "Content-Type: application/json" \  -H "Idempotency-Key: verify-2026-06-02-001" \  -d '{   "nationalId": "12345678901",   "purpose": "pre_employment" }'

Success response

application/json
{  "message": "Verification completed",  "cached": false,  "creditDeducted": true,  "data": {    "id": "uuid",    "result": "verified",    "purpose": "pre_employment",    "channel": "api",    "creditsUsed": 1  },  "citizen": {    "fullName": "Example Citizen",    "dateOfBirth": "1990-01-01"  }}
Edit this page
Was this page helpful?