Returns a candidate's own view of their background check progress. Takes no API key — the tracking reference is the credential, so treat it as one and do not publish it anywhere the candidate would not expect.
This is the candidate-facing counterpart to the timeline, and returns less: progress only, not your internal notes or provider detail. Link candidates here if you want them to self-serve on status.
Authorization
ApiKeyAuth In: header
Path Parameters
The candidate request reference, used here as the tracking reference.
uuidResponse Body
application/json
curl -X GET "https://example.com/api/v1/api/bgc/track/497f6eca-6276-4993-bfeb-53cbbbba6f08/"{ "data": [ { "id": 0, "event_type": "package_created", "event_type_display": "string", "title": "string", "description": "string", "actor_type": "string", "actor_name": "string", "is_milestone": true, "is_error": true, "created_at": "2019-08-24T14:15:22Z", "time_ago": "string" } ], "status": true, "message": "Request successful.", "errors": {}, "meta": { "timestamp": "2019-08-24T14:15:22Z", "version": "v1", "request_id": "string" }, "pagination": { "page": 0, "page_size": 0, "total_pages": 0, "total_items": 0 }}response_code values (e.g., 00 Success, 01 Not Found, 02 Unavailable).Join our developer Slack channel for real-time integration support, engineering updates, and direct Q&A with the Prembly team.
Join Slack ChannelSubmit candidate form POST
Submits a candidate's completed background check form. Takes no API key — the caller is whichever page the candidate filled in, identified only by the `request_key` issued when the request was created. **Which page that is depends on the `callback_url` you set when creating the request.** Leave it pointing at the Prembly-hosted form and the candidate is sent there, and you need not call this endpoint at all. Point it at a page of your own and you are hosting the form: you collect the candidate's details and post them here yourself. ### If you host the form You take on the obligations that come with collecting this data. The form gathers personal information — identity, address, employment and education history, and named references — so you are responsible for obtaining the candidate's consent and for telling them what the data will be used for, before you submit it. This endpoint performs no consent check and will accept whatever it is given. Consent to the background check itself is captured later in the provider's own flow and reported back as a `consent_signed` webhook event; that is a separate step and does not cover your collection of the data here. Your page must also be served from the host you registered as `callback_url`. A `redirect_url` on an unrecognised host is ignored, because these endpoints are unauthenticated and honouring one would be an open redirect. ### Submitting Accepts JSON or `multipart/form-data`. Inline file blobs inside `request_data` are converted to storage URLs before the verification engine is called; multipart file fields on the same request are stored and replaced with URLs. Submitting twice for the same `request_key` is rejected.
List all check types GET
Returns every check type, optionally narrowed by country. **Prices are yours, not list prices.** Where your organisation has negotiated an override it replaces the country default in the response. Currency follows `country_code` when you pass one, and otherwise your wallet's currency — so the same check can come back priced differently depending on how you ask.