KYC history
curl --request GET \
--url https://api.example.com/api/v1/auth/kyc/historyconst options = {method: 'GET'};
fetch('https://api.example.com/api/v1/auth/kyc/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.example.com/api/v1/auth/kyc/history"
response = requests.get(url)
print(response.text)KYC
KYC history
Get the full history of KYC verification attempts for the authenticated user.
GET
/
api
/
v1
/
auth
/
kyc
/
history
KYC history
curl --request GET \
--url https://api.example.com/api/v1/auth/kyc/historyconst options = {method: 'GET'};
fetch('https://api.example.com/api/v1/auth/kyc/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.example.com/api/v1/auth/kyc/history"
response = requests.get(url)
print(response.text)Requires
Authorization: Bearer <user-access-token> — the token from Verify login code. No X-Api-Key/X-Api-Secret needed; this is a post-login endpoint.Request
GET /api/v1/auth/kyc/history
Authorization: Bearer <user-access-token>
Response
200 OK{
"success": true,
"data": {
"total": 2,
"history": [
{
"id": "verif_xyz789",
"status": "approved",
"verificationLevel": "identity",
"riskLevel": "low",
"riskScore": 12,
"provider": "persona",
"providerVerificationId": "inq_abc123xyz",
"submittedAt": "2026-06-10T14:00:00.000Z",
"reviewedAt": "2026-06-10T14:05:00.000Z",
"approvedAt": "2026-06-10T14:05:00.000Z",
"rejectionReasons": null,
"complianceNotes": null,
"createdAt": "2026-06-10T13:55:00.000Z"
},
{
"id": "verif_abc123",
"status": "failed",
"verificationLevel": "identity",
"riskLevel": null,
"riskScore": null,
"provider": "persona",
"providerVerificationId": "inq_prev000",
"submittedAt": "2026-06-08T09:00:00.000Z",
"reviewedAt": "2026-06-08T09:10:00.000Z",
"approvedAt": null,
"rejectionReasons": ["document_expired"],
"complianceNotes": null,
"createdAt": "2026-06-08T08:55:00.000Z"
}
]
}
}
| Field | Type | Description |
|---|---|---|
total | number | Total number of attempts |
history[].id | string | Internal verification record ID |
history[].status | string | approved, failed, processing, manual_review, created |
history[].verificationLevel | string | Level of verification performed |
history[].riskLevel | string | null | Risk classification from the provider |
history[].riskScore | number | null | Numeric risk score |
history[].provider | string | Verification provider — e.g. "persona" |
history[].providerVerificationId | string | null | Inquiry ID from the provider |
history[].submittedAt | string | null | When the user submitted the verification |
history[].reviewedAt | string | null | When the review was completed |
history[].approvedAt | string | null | When it was approved — null if not yet approved |
history[].rejectionReasons | array | null | Reasons for rejection if status is failed |
history[].createdAt | string | When the verification record was created |
Errors
| HTTP status | Error | Cause |
|---|---|---|
401 | Invalid or expired token | Missing, expired, or malformed access token |