Background Verification API
Run the background checks you choose on one person in a single request, and read back one report with an overall result and every check’s outcome.
The documentation opens in the VerifyAll dashboard after sign-in, for accounts with approved API access. New to the API? Start with the developer guide.
Overview
What the Background Verification API does
The Background Verification API runs several checks on one person from a single request. You choose the modules: PAN, GST registrations linked to the PAN, credit score, court records, adverse media (AML screening), employment (UAN employment history), driving licence, voter ID, passport and mobile number. They run in the background into one record with each module’s status, summary and result.
HR teams, staffing firms and platforms onboarding drivers and delivery partners use it to replace a chain of separate calls with one. overall is clear when every module ran and nothing adverse was found, review when court records or adverse media were found or the court result is unresolved, and incomplete when a module could not be completed.
For people without a PAN to hand, such as many gig workers, POST /full-verification/create/gig-worker runs the same checks except pan, gstin and credit_score. GET /full-verification/quote gives the charge of a selection first; send it back as quoted_total and a changed price is refused with 409 price_changed, not charged.
How it works
- 1
Optionally call GET /full-verification/quote with the package (with_pan or without_pan) and the modules to see what the create call will debit; nothing is charged.
- 2
Send POST /full-verification/create (or /create/gig-worker) with modules, name, surname, mobile, address, pan where the package needs it, the inputs each chosen module uses, quoted_total and the consent object. A module chosen without its input is refused with 400 before any charge.
- 3
The request is accepted at once with outcome pending and a data.id, and charged once from your prepaid wallet. Modules run in the background and finish later, from minutes to a few business days; a module that fails is refunded.
- 4
Poll GET /full-verification/list/{id} for status and progress, or receive check.completed by webhook, then read the report and download its PDF with POST /pdf-reports/full-bgv-individual.
Request and response
Background verification API endpoints and fields
The main fields; the full reference with every field, error code and a cURL sample is in the dashboard docs.
| Endpoint | What it does |
|---|---|
| GET/full-verification/quote | Charge of a package and module selection, before you create anything |
| POST/full-verification/create | Start a background verification of a person with PAN |
| POST/full-verification/create/gig-worker | Start a background verification of a person without PAN |
| GET/full-verification/list | Your background verifications with status and module progress (Production key) |
| GET/full-verification/list/{id} | Read one background verification report (Production key) |
| DELETE/full-verification/list/{id} | Delete a background verification and its module results (Production key) |
Request fields
| Field | What it is |
|---|---|
| modulesRequired | The checks to run: pan, gstin, credit_score, court_records, adverse_media, employment, driving_licence, voter_id, passport, mobile. Without PAN: court_records, adverse_media, employment, driving_licence, voter_id, passport, mobile. |
| name / surnameRequired | First name (with any middle name) and last name. |
| mobileRequired | The person’s mobile number (mobile module, and employment when no UAN is sent). |
| addressRequired | Current address on one line. |
| pincodeOptional | PIN code of the address; the credit_score module needs it, here or written in the address. |
| panOptional | The person’s PAN; required on /full-verification/create, not sent on the gig-worker endpoint. |
| dob / relative_nameOptional | Date of birth (driving_licence, passport, credit_score; helps court records) and father’s, husband’s or wife’s name for court records. |
| district / state / aliasesOptional | Optional details (with city, past_addresses and spouse_name) that help the court records module confirm cases. |
| uan_numbersOptional | Up to 5 UANs for the employment module; without them the UANs linked to the mobile number are used. |
| licence_number / epic_number / file_numberOptional | Driving licence number, voter ID (EPIC) number and passport application file number, for those modules. |
| quoted_totalOptional | The total from the quote; if the price is now different, the request is refused with 409 price_changed and nothing is charged. |
| consentRequired | obtained: true and a purpose of up to 200 characters. |
| client_refOptional | Your reference, such as a candidate or employee id. |
What the answer returns
| Field | What it is |
|---|---|
| status | processing, partially_completed (court records still running), completed or failed. |
| overall | clear, review (court records or adverse media found, or an unresolved court result), incomplete or pending. |
| package | with_pan or without_pan. |
| subject | The person’s details as sent: name, relative’s name, date of birth, PAN, mobile and address. |
| modules_requested | The modules you selected. |
| modules | One entry per module: name, status (processing, completed, no_record, failed or invalid_input), a one-sentence summary and the module’s full result. |
| progress | Counts of modules in total, completed, failed and pending. |
Base URL https://api.verifyall.ai. Authenticate with the X-API-Key header (a va_sandbox_ or va_live_ key). Every answer carries data, status_code, success, message and message_code; checks add outcome, checkResultId, charged and charged_amount.
Key features
Background Verification API features and capabilities
Modules chosen per request
Run only what a role needs: a delivery partner might get mobile, driving_licence and court_records; a finance hire might add pan, credit_score and employment.
Works without PAN
The gig-worker endpoint runs court records, adverse media, employment, ID and mobile checks for people who cannot give a PAN at onboarding.
Price confirmed, failures refunded
Quote first and send quoted_total so a price change is refused, not charged. Modules that fail are refunded to the wallet.
One overall result
overall turns many module results into clear, review or incomplete, while each module keeps its own status, summary and full result for the reviewer.
Use cases
Where businesses use the Background Verification API
Pre-employment screening
Verify identity, UAN employment history and court records of a candidate before the offer letter.
Gig and delivery partner onboarding
Check drivers and delivery partners without PAN, with driving licence, mobile and court records modules.
Staffing and contract workforce
Run the same module set on every contractor a staffing firm deploys, and keep each report for the client.
Re-verification of existing staff
Run court records and adverse media again on staff moving into sensitive roles.
Industries
Coverage
Individuals in India, with or without a PAN. Each module covers its own check; court records cover cases of the person in Indian courts.
Limitations to plan for
- Each module needs its own input; a module chosen without it is refused with 400 before anything is charged.
- The court records module can take from minutes to a few business days, so a report can sit at partially_completed while the other modules are done.
- The pan, gstin and credit_score modules are not available on the gig-worker endpoint.
- Listing, reading and deleting reports work with the Production key only; Sandbox requests return sample data and are never charged.
Integration
How to integrate the Background Verification API
From a business account to your first live call.
Step 1
Create a business account on VerifyAll and get it approved, as for running checks in the dashboard.
Step 2
Request Developer API access under Developers in the dashboard: the APIs you need, your expected monthly volume and your use case. The VerifyAll team reviews it and shares the API Services Agreement.
Step 3
Once the agreement is signed and access is approved, create your Sandbox key and build against sample data. Sandbox calls are never charged.
Step 4
Create your Production key, recharge your wallet and switch the key in your code: the endpoint and fields stay the same.
Get started
Request access to the Background Verification API
Tell us what you want to verify. We reply within one business day with access steps, Sandbox details and your API pricing.
View API documentation
The full reference for Background Verification API (endpoints, fields, errors, cURL) opens in the dashboard once your access is approved.
Open the docs (sign-in)Create a business account
API keys are issued to an approved business account. Sign up, then request access under Developers.
Create account
Pricing
Production calls are charged per check from your prepaid VerifyAll wallet, at your account’s API price; GST is added separately when you recharge. Sandbox calls are never charged. Your API prices are shown in the dashboard once access is approved. How pricing works
Already have a business account? Sign in to request access
Background Verification API: frequently asked questions
Answers for teams planning an integration.
Still have questions? Our team is happy to help.
Contact SupportRelated APIs
Court Records Verification API
LiveFinishes laterFind the civil and criminal court cases of a person or a business, with each case’s court, status and next hearing, in one asynchronous API.
View API detailsAML Screening API
LiveInstant answerScreen a person or an entity against sanctions, enforcement and regulatory watch lists and adverse media in one call, with every hit scored.
View API detailsUAN Verification API
LiveInstant answerSend a 12-digit UAN and get the person’s employment history back: every employer, the months with each and the most recent job.
View API detailsPAN Verification API
LiveInstant answerConfirm a PAN exists, see who holds it and match the name and date of birth your customer typed, in one call.
View API details
All background verification APIsRun Background verification in the dashboard, without codeBrowse the API Marketplace
Start with the Background Verification API
Request access, build against the Sandbox, then go live with your Production key.
