Submit Candidates for BGV (Bulk)
Submit one or more candidates for background verification. The checks listed in checks run asynchronously for every candidate; the response returns a case_id per candidate. See the page text for the full per-check field reference.
Overview
Submit one or more candidates for background verification in a single API call. The platform creates a BGV case for each candidate and triggers all requested checks asynchronously — the API returns immediately after accepting and validating the payload. You receive a webhook notification at your configured URL when each case reaches a terminal state.Authorization
Every request must include your API key as a Bearer token:BGV Lifecycle
case_id from the response to download the final report via the BGV Report Download endpoint.
Webhook Notification
When a case completes (all requested checks are processed), aPOST request is
sent to your configured webhook URL. The payload includes the case_id so you can
map it back to the candidate you submitted.
Webhook payload (example):
case_id to call the Report Download API
and fetch the final report.
Request Structure
A request has two top-level arrays:checks are applied uniformly to all candidates. Each candidate must carry the fields required by those checks (see the tables below).
Supported Checks
Input Fields Per Check
For each check you request, the candidate object must carry the fields below. Date fields acceptDD/MM/YYYY, DD-MM-YYYY or YYYY-MM-DD and must be past dates (unless noted). Phone numbers accept a bare 10-digit number or E.164 and are normalised to E.164.
criminal_check
aml_check
credit_report_check
detailed_epfo_check
education_check
Requires name and a non-empty education_details array. Each entry:
employment_verification_manual_check
Requires name and a non-empty employment_details array. Each entry:
ref_check
Requires name and a non-empty reference_details array. Each employer block:
physical_address_check
Requires name, email, phone and a non-empty addresses array. One verification runs per address entry.
social_media_check
Address object
Used bycredit_report_check, physical_address_check, and (for address_type) social_media_check. Each candidate may submit at most one Current and one Permanent address.
Responses
On success the API returns the created cases. Use eachcase_id to track the case and download its report.
Error responses
Notes
- Maximum 500 candidates per request.
- If any candidate (or any nested entry within a candidate) fails validation, the entire request is rejected — there are no partial submissions.
case_idandcandidate_idin the response are the same 32-character hex value.
Authorizations
API key issued by KonnectNXT. Pass as Authorization: Bearer <your_api_key>.
Body
List of check types to run for every candidate in this request. At least one check must be provided. Unknown keys are rejected with a 400.
1criminal_check, aml_check, credit_report_check, detailed_epfo_check, education_check, employment_verification_manual_check, ref_check, physical_address_check, social_media_check Array of candidate objects. Maximum 500 candidates per request. Every candidate must supply the fields required by the checks listed in checks.
1 - 500 elementsResponse
Candidates accepted, checks triggered asynchronously
success "success"
200
"BGV initiation+submission successful. Checks triggered asynchronously."
Always null on a successful response.
null
Credits consumed by this submission.
5
Credits remaining in the organisation account after this submission.
9962419

