Experian_V1 — Credit Analytics API
Experian_V1 v1 live
Download as Markdownthe full page as a single .md file — for offline reading or as context for an AI assistantAuthentication
Every request must carry your API key in the X-API-Key header.
Your key is issued to you separately by ops and is never shown in this document.
X-API-Key: <your-key>Base URL
All endpoints are served through the gateway:
https://api.pehchaantech.comEndpoints
/experian/v1
| URL | https://api.pehchaantech.com/experian/v1 |
|---|---|
| Timeout | 35000 ms |
| Rate limit | 60 req/min · 100000 req/day |
Overview
Pull a consumer credit report and Experian bureau score for an Indian mobile number. One call returns the full report — the platform handles bureau connectivity, name matching, the masked-mobile verification step, consent, and retries behind the scenes.
The mobile number is the only field you need: {"mobile_no": "9876543210"} is a complete request, and the bureau resolves the identity from the number itself. first_name and last_name are still accepted so existing integrations don’t break, but they are IGNORED — they take no part in the lookup, so sending them cannot improve a match and sending a wrong one cannot cause a miss. A not_found means the bureau genuinely has nothing for that number, not a spelling problem.
Every response — success or not — uses the same envelope, so branch on the status field. Latency is capped under 30 seconds; if the bureau is still working you receive pending and retry with the same client_ref_num. Set your client timeout to at least 35 seconds. Every call is billed and audited individually.
Request example
{
"mobile_no": "9876543210",
"client_ref_num": "loanapp-7f3a2b"
}Response example
{
"result": {
"INProfileResponse": {
"SCORE": {
"BureauScore": "772"
}
}
},
"status": "completed",
"success": true,
"description": "Record found successfully",
"client_ref_num": "pehchaan-b5f08841d8f1"
}Fields
| Field | Description |
|---|---|
mobile_no | Required — the only field you need. Exactly 10 digits (^\d{10}$). |
first_name | Optional and IGNORED — accepted only so existing integrations don’t break; the bureau derives the identity from the mobile number. If sent: 1–50 chars, letters plus space, period, apostrophe, hyphen (e.g. O’Brien, D. Kumar). |
last_name | Optional and ignored — same rules as first_name. |
client_ref_num | Optional trace id; 6–64 chars of A-Z a-z 0-9 . _ -. Omit and the platform generates one. Reuse the SAME value when retrying a pending response. |
success | true only when a report was delivered. |
status | Machine-readable outcome — branch on this (see Outcomes below). |
result | The credit report (INProfileResponse) — present only when status = completed, otherwise null. Useful paths: result.INProfileResponse.SCORE.BureauScore, .CAIS_Account.CAIS_Summary. Your trace id is also returned in the X-Client-Ref-Num response header. |
Errors
| Code | Meaning |
|---|---|
completed (HTTP 200) | Report delivered in result — consume it. |
pending (HTTP 202) | Not ready within the 30 s budget. Retry after 30–60 s with the SAME client_ref_num; give up after ~5 tries. |
not_found (HTTP 200) | "No data found" — the bureau has no record for this number/name. Definitive; do NOT retry. |
invalid_mobile (HTTP 200) | "Invalid mobile number" — the bureau holds this person’s records under a different number. Collect an alternate number and start a new check. |
no_data (HTTP 200) | Checked, but no usable result. Treat as a no-hit; contact support if frequent. |
failed (HTTP 502) | "Source down — please retry later." Temporary vendor/processing issue; retry with exponential backoff. |
401 / 403 | Missing or invalid API key, or the key is not granted this API. |
422 | Validation failed — bad mobile_no, or a name that breaks the character rules. |
429 | Rate limited — respect the Retry-After header. |
503 / 504 | Gateway protecting itself, or the call exceeded the 35 s budget — retry. |
Changelog
- 2026-07-27 The mobile number is now the only input. first_name and last_name became optional and are ignored — the bureau derives the identity from the number. Backward compatible: integrations that still send names keep working, their names simply no longer affect the lookup, so a misspelling can no longer cause a false not_found.
- 2026-07-18 Initial release: names (first_name/last_name) required, automatic masked-mobile verification, sub-30 s latency budget, uniform response envelope.