Skip to main content

Access Screening API (2.0)

Download OpenAPI specification:Download

Introduction

This documentation is designed to provide assistance to Access Screening customers wishing to integrate with our API

The API allows you to view your Brands, Candidates, Background Checks and create new background checks.

Overview

This page sets out a high level overview of the integration that can be created between 3rd party applications & Screening.

Terminology

To understand this document the following definitions are essential:

Candidate

Individual who will be Screened, assigned to a Background Check

Workflow

Definition of a compliance process, assigned to a Brand. Often align to specific roles, or levels of screening activity

Background Check

Collection of evidence obtained from a Candidate by processing a Workflow, sometimes referred to as ‘Cases’

Brand

Organisational unit for data segmentation & configuration. Often align to Customers or Business Units

Scope

The scope of the Screening API is to support the following activities

Initiate

Start Background Checks by submitting candidate & process information

Observe

Repeatedly poll for progress of Background Checks status updates

Retrieve

Obtain the results of a Background Check (as a PDF or raw data) & update records in 3rd party applications

Common Process Integration

Every integration & application is different, however the following sections expand on the activities required for each step of the above scope.

1. Initiate

The Add a new Background Check method is used to initiate a Background Check. 3rd party applications need to submit the following information:

  1. Candidate Information - At a minimum: Title, Name & Email. Additional data such as Addresses, Contact Details & Date of Birth can also be sent

  2. Brand & Workflow - Process to which the Candidate will be Screened

The Candidate Information will likely already exist in your application. The identifiers for Brand & Workflow are available in dedicated API methods.

There are two possibilities to select a Brand & Workflow.

Pre-Configuration

It may be possible to pre-configure the brand & workflow that will be suitable for a candidate, for example in an Applicant Tracking System the job for which they have applied may have a Brand & Workflow assigned.

Interactive Selection

It is also possible create an interface such as the wireframe below to allow users of your application to select the Process Information when initiating a background check

2. Observe

Once initiated the Background Check will move through several statuses, starting at ‘Waiting for Candidate’ and ending at ‘Completed’ or ‘Stopped’.

It is recommended to create a service that will request status updates from the Background Check List method(s) on a recurring basis - at a minimum-interval of every 30 minutes.

You may wish to update internal records as the Background Check status progresses to monitor key performance indicators etc.

3. Retrieve

When a Background Check moves to a Completed/Stopped status you may wish to extract the results of the Screening Process.

There are two primary methods of achieving this

Background Check Detail API Method

Via the Background Check Detail the granular details of a background check & candidate are available in JSON as discrete fields. For details on the possible content available please see the ‘Show detailed view of a Background Check’ section

Suitable for updating records in 3rd party applications

Background Check PDF Report

The methods in the Reporting section detail how to obtain a singular PDF file including information obtained from the Candidate, References, External Checks, Attachments etc.

Suitable for print/email or attaching to Candidate/Applicant records.

Authentication and Security

Overview

The API requires that all requests are authenticated using API Token. For security all requests must use HTTPS.

API Token

You will be assigned an API token.

All requests to the API must be sent with a HTTP Header called “Authorization”. The value of this header will start with the string literal “Token ” followed by the supplied API token, e.g.:

Authorization: Token a250105d1c477534c624fadb1b3a384567e77bab

There is space after the word "Token".

Access to the API is only allowed from whitelisted IP addresses.

You need to provide Safe Screening IP address(es) to be added to your customer profile.

Webhooks

We offer webhook notifications to keep you informed about key events as they happen in real-time. These webhooks can automatically send data to your system whenever specific events occur, allowing you to seamlessly integrate our platform into your existing workflows.

If you're interested in setting up webhook notifications, please contact our implementation or support team. We'll assist you with the configuration process.

You will need to provide us an https endpoint that will accept a POST request and return a 200 status code to signify you have received and processed the message. Any other status codes will be retried with an exponential backoff up to 5 times.

You may provide us any additional headers you want sent on the request.

All webhooks are sent to the same endpoint, you can check the event_type field on the payload to identify the type of webhook received.

Headers

Each webhook request will contain the following headers.

Header Description
content-type The type of content being sent, in this case, application/json
x-webhook-timestamp The timestamp of when the webhook was sent
x-webhook-uuid A unique identifier for the webhook request
x-webhook-signature A HMAC signature to verify the authenticity of the webhook request

e.g

{
    "content-type": "application/json",
    "x-webhook-timestamp": "1731486900",
    "x-webhook-uuid": "3edfcafe-043f-4f59-bc8d-94a18554f9cf",
    "x-webhook-signature": "65a11518dcab2bd403958d2988f31c77be6ea34ae9b254601d0afab25e5026f9",
}

x-webhook-signature

The x-webhook-signature is an HMAC signature generated using the contents of the payload and a secret which we will provide to you. It is optional to check this signature, but we do recommend it to ensure the authenticity of the webhook request.

Below is the example of how we generate the signature. You can perform the same operation and ensure the signatures match.

Python Example

    def generate_hmac_signature(
        secret: str,
        timestamp: int,
        payload: str
    ):
        combined_payload = (
            f"{timestamp}:{payload}"
        )

        return hmac.new(
            key=secret.encode(),
            msg=combined_payload.encode(),
            digestmod=hashlib.sha256
        ).hexdigest()

C# example

using System;
using System.Security.Cryptography;
using System.Text;

public class HmacSignatureGenerator
{
    public static string GenerateHmacSignature(string secret, long timestamp, string payload)
    {
        // Combine timestamp and payload as per your Python implementation
        string combinedPayload = $"{timestamp}:{payload}";

        // Create a new HMAC using SHA256
        using (var hmac = new HMACSHA256(Encoding.UTF8.GetBytes(secret)))
        {
            // Compute the HMAC hash
            byte[] hashBytes = hmac.ComputeHash(Encoding.UTF8.GetBytes(combinedPayload));

            // Convert the byte array to a hex string
            return BitConverter.ToString(hashBytes).Replace("-", "").ToLower();
        }
    }
}

Backgroundcheck Status Changed Event

This event is raised when ever the background check status changes.

Status Code Description
new Waiting For Candidate
await_dci Awaiting Data Check Input
ref_ns Referencing Not Started
open In Progress
app_wait Awaiting Approval
await_fso Awaiting Final Signoff
closed Completed
stopped Stopped
{
    "event_type": "BackgroundCheckStatusChangedEvent",
    "event_uuid": "041322cd-265e-4a3e-9050-d85b4d2d4ab2",
    "delivery_uuid": "3edfcafe-043f-4f59-bc8d-94a18554f9cf",
    "delivery_created_utc": "2024-11-13T08:30:00.491763Z",
    "delivery_sent_utc": "2024-11-13T08:35:00.285527Z",
    "payload": {
        "customer_id": 27,
        "status": "closed",
        "uuid": "919c8d0c-c6ec-4f16-9bb3-95602f4106f1",
        "brand_id": 87,
        "workflow_id": 340,
        "reference": "appuat:1:4657",
        "updated_at": "2024-11-12T12:51:56.551198"
    }
}

Reference Response Received Event

This event is raised once a reference response has been received either by the contact completing the referee portal or the operator adding a manual reference response.

{
    "event_type": "ReferenceResponseReceivedEvent",
    "event_uuid": "041322cd-265e-4a3e-9050-d85b4d2d4ab2",
    "delivery_uuid": "3edfcafe-043f-4f59-bc8d-94a18554f9cf",
    "delivery_created_utc": "2024-11-13T08:30:00.491763Z",
    "delivery_sent_utc": "2024-11-13T08:35:00.285527Z",
    "payload": {
        "customer_id": 27,
        "brand_id": 70,
        "workflow_id": 267,
        "backgroundcheck_uuid": "ed7decf3-92ea-496a-b293-9132c73a7ee3",
        "backgroundcheck_reference": "",
        "reference_request_uuid": "9a3c58c7-2c00-47ba-b94b-3ce0d3881576",
        "reference_response_received_at": "2024-11-07T09:26:53.151334"
    }
}

DataCheck Status Changed Event

This event is raised whenever a data check status on a background check changes.

Status Description
candidate Waiting for Candidate
operator Waiting for Operator
pending Pending
success Completed
failed Failed
screening Waiting for Screening
{
    "event_type": "DataCheckStatusChangedEvent",
    "event_uuid": "041322cd-265e-4a3e-9050-d85b4d2d4ab2",
    "delivery_uuid": "3edfcafe-043f-4f59-bc8d-94a18554f9cf",
    "delivery_created_utc": "2024-11-13T08:30:00.491763Z",
    "delivery_sent_utc": "2024-11-13T08:35:00.285527Z",
    "payload": {
        "customer_id": 3,
        "status": "failed",
        "backgroundcheck_uuid": "64562cfa-95d7-46c6-8f06-89b322230a48",
        "brand_id": 20,
        "workflow_id": 93,
        "backgroundcheck_reference": "",
        "updated_at": "2024-11-13T08:30:00.481351",
        "check_id": 4580,
        "check_type_id": "dbs_direct_basic",
        "check_type_name": "DBS Basic E & W"
    }
}

Attachments

Download a attachment

This method returns a url that can be used to download the attachment.

Authorizations:
tokenAuth
path Parameters
attachment_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

Background Checks

Get all Background Checks

This method returns all background checks, for every brand you have access to and allows filtering on certain fields.

This end point will return 2 different responses if you request to show_purged background checks the light details will be returned, ensure your serializer handles this.

Authorizations:
tokenAuth
query Parameters
brand_uuid
string <uuid>
candidate_completed_after
string <date-time>
candidate_completed_before
string <date-time>
completed_after
string <date-time>
completed_before
string <date-time>
include_archived
boolean
limit
integer

Number of results to return per page.

needs_review
string
offset
integer

The initial index from which to return the results.

operator_username
string
order
Array of strings
Items Enum: "-candidate_completed" "-completed" "-operator" "-started" "-status" "-updated_at" "candidate_completed" "completed" "operator" "started" "status" "updated_at"

Ordering

  • completed - Completed
  • -completed - Completed (descending)
  • operator - Operator
  • -operator - Operator (descending)
  • status - Status
  • -status - Status (descending)
  • started - Started
  • -started - Started (descending)
  • candidate_completed - Candidate completed
  • -candidate_completed - Candidate completed (descending)
  • updated_at - Updated at
  • -updated_at - Updated at (descending)
show_purged
boolean
started_after
string <date-time>
started_before
string <date-time>
status
string
Enum: "app_wait" "archived" "await_dci" "await_fso" "closed" "new" "open" "purged" "ref_ns" "stopped"
  • new - Waiting For Candidate
  • await_dci - Awaiting Data Check Input
  • ref_ns - Referencing Not Started
  • open - In Progress
  • app_wait - Awaiting Approval
  • await_fso - Awaiting Final Signoff
  • closed - Completed
  • stopped - Stopped
  • archived - Archived
  • purged - Purged
updated_after
string <date-time>
updated_before
string <date-time>
updated_since
string <date-time>
workflow_id
integer

Responses

Response samples

Content type
application/json
{
  • "count": 123,
  • "results": [
    ]
}

Create a background check

This method starts a creates background check.

Authorizations:
tokenAuth
Request Body schema: application/json
required
TitleEnum (string) or BlankEnum (any)
first_name
required
string
last_name
required
string
email
required
string <email>
brand_uuid
required
string <uuid>
workflow_id
required
string
your_reference
required
string
customer_name_tag_type_id
integer
customer_name
string
redirect_url
string <uri>
middle_name
string
date_of_birth
string <date>
contact_number
string
gender
string (GenderEnum)
Enum: "f" "m"
  • f - Female
  • m - Male
n_i_number
string
nationality
string <= 2 characters

Country ISO code e.g GB,US

Array of objects (AddAddress)
Array of objects (Tag)
completion_redirect
string <uri>
suppress_invite
boolean
single_session
boolean
operator_email
string
employment_timeline_start
string or null <date>

The start date for recording a candidate's employment history, if configured on the workflow.

Array of objects (AcademicReferenceInput)
Array of objects (EmploymentReferenceInput)
Array of objects (PersonalReferenceInput)
Array of objects (GapReferenceInput)
require_gdpr_consent
boolean
Default: false
identity_externally_verified
boolean
Default: false
Array of objects (BackgroundCheckSigningDocument)
complete_by
string <date>
object (DisclosureInput)

Responses

Request samples

Content type
application/json
{
  • "title": "Mr",
  • "first_name": "string",
  • "last_name": "string",
  • "email": "user@example.com",
  • "brand_uuid": "609591e0-6f26-457f-b94a-6b6e0ada8cbd",
  • "workflow_id": "string",
  • "your_reference": "string",
  • "customer_name_tag_type_id": 0,
  • "customer_name": "string",
  • "redirect_url": "http://example.com",
  • "middle_name": "string",
  • "date_of_birth": "2019-08-24",
  • "contact_number": "string",
  • "gender": "f",
  • "n_i_number": "string",
  • "nationality": "st",
  • "addresses": [
    ],
  • "tags": [
    ],
  • "completion_redirect": "http://example.com",
  • "suppress_invite": true,
  • "single_session": true,
  • "operator_email": "string",
  • "employment_timeline_start": "2019-08-24",
  • "academic_references": [
    ],
  • "employment_references": [
    ],
  • "personal_references": [
    ],
  • "activity_references": [
    ],
  • "require_gdpr_consent": false,
  • "identity_externally_verified": false,
  • "signing_documents": [
    ],
  • "complete_by": "2019-08-24",
  • "disclosure": {
    }
}

Response samples

Content type
application/json
{
  • "detail": "string",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "cand_uuid": "2bf760b2-8a12-48ae-a120-f1ae4c5d5e8c",
  • "form_url": "string",
  • "url": "string"
}

Get background check detail

This method shows a detailed view for an individual Background Check.

This end point will return 2 different responses if a background check is restricted,archived or purged the light details will be returned, ensure your serializer handles this based on status.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>
query Parameters
include_fields
string

A csv of fields to include. Valid options are

  • actions
  • stages
  • candidate
  • references
  • questions
  • supplied_documents
  • attachments
  • tags
  • datachecks

Responses

Response samples

Content type
application/json
Example
{
  • "brand_uuid": "string",
  • "candidate_completed": "2019-08-24T14:15:22Z",
  • "candidate_completion_redirect": "http://example.com",
  • "complete_by": "2019-08-24T14:15:22Z",
  • "completed": "2019-08-24T14:15:22Z",
  • "completed_on_time": true,
  • "exported": "2019-08-24T14:15:22Z",
  • "first_completed_at": "2019-08-24T14:15:22Z",
  • "force_complete": true,
  • "is_overdue": true,
  • "is_overdue_by": 0,
  • "needs_review": true,
  • "needs_review_candidate_declined_payment": true,
  • "needs_review_disclosure_content": true,
  • "needs_review_referee_verification_email_address_altered": true,
  • "needs_review_reference_altered": true,
  • "needs_review_reference_rejected": true,
  • "needs_review_references_declined": true,
  • "operator": "string",
  • "ref": "string",
  • "reference": "string",
  • "single_session_enabled": true,
  • "started": "2019-08-24T14:15:22Z",
  • "status": "new",
  • "stopped_at": "2019-08-24T14:15:22Z",
  • "stopped_by": "string",
  • "stopped_or_completed_reason": "string",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "url": "string",
  • "uuid": "string",
  • "workflow_id": "string",
  • "actions": [
    ],
  • "stages": [
    ],
  • "candidate": {
    },
  • "references": [
    ],
  • "questions": [
    ],
  • "supplied_documents": [
    ],
  • "attachments": [
    ],
  • "tags": [
    ],
  • "datachecks": [
    ]
}

Archive Background Check

This method is used to archive a background check.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "detail": "Background check archived successfully",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Create attachment

This method is used to create an attachment for a background check.It will return a url you can upload the file to using a form upload.Eg curl -H 'Authorization ' -F 'upload_file=@' /

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>
Request Body schema: application/json
required
type
required
string

document type id or name

description
string
issueDate
string or null <date>
expiryDate
string or null <date>

Responses

Request samples

Content type
application/json
{
  • "type": "string",
  • "description": "string",
  • "issueDate": "2019-08-24",
  • "expiryDate": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "url": "string"
}

Get Bank Details

This method is used to get the bank details.

The details are encrypted using your PGP Key, you will need to decrypt the contents using your private key.

Example of the bank details in JSON format once decrypted:

{
    "account_type": "Bank Account",
    "account_holders_name": "Bridget Jones",
    "bank_name": "Test Bank Name",
    "bank_address": "123 Bank Lane",
    "account_number": "123456789",
    "sort_code": "12-34-56",
    "roll_number_or_reference": "123456"
}
Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "encrypted_details": "-----BEGIN PGP MESSAGE-----hQIMAQ..-----END PGP MESSAGE-----"
}

Purge Bank Details

This method is used to purge bank details.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "detail": "Data has been purged successfully"
}

Purge Background Check

This method is used to purge a background check.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "detail": "Background check purged successfully",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Re-run a background check

This method starts a new background check for an existing candidate on a given workflow.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>
Request Body schema: application/json
required
workflow_id
required
integer
new_reference
required
string
stop_previous
boolean
suppress_invite
boolean
operator_email
string or null
TitleEnum (string) or BlankEnum (any)
first_name
string
last_name
string
email
string
employment_timeline_start
string or null <date>

The start date for recording a candidate's employment history, if configured on the workflow.

Array of objects (Tag)

Responses

Request samples

Content type
application/json
{
  • "workflow_id": 0,
  • "new_reference": "string",
  • "stop_previous": true,
  • "suppress_invite": true,
  • "operator_email": "string",
  • "title": "Mr",
  • "first_name": "string",
  • "last_name": "string",
  • "email": "string",
  • "employment_timeline_start": "2019-08-24",
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "detail": "string",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "cand_uuid": "2bf760b2-8a12-48ae-a120-f1ae4c5d5e8c",
  • "form_url": "string",
  • "url": "string"
}

Start Referencing

This method is used to start the referencing process.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "detail": "Referencing started successfully",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Unlock a Candidate Portal

This method is used to open a candidate portal link which is closed by background service.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "detail": "string",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "cand_uuid": "2bf760b2-8a12-48ae-a120-f1ae4c5d5e8c",
  • "form_url": "string"
}

Purge Data Check

This method is used to purge a data check from a background check.

Authorizations:
tokenAuth
path Parameters
data_check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "detail": "Data check has been purged successfully"
}

Background Check Reports

Fetch PDF Report

This will get the report download URL once completed.

Reports are generated in a background task, which means that you will need to poll until the report is generated. When it is generated, you will receive a URL to download the report.

There are two possible responses:

{"status": "pending"}

This means the report is still generating, another request will be required after a period of time. Please allow at least 30 seconds between poll requests.:

{
    "status": "ready",
    "download_url": "<download-report-url>"
}
Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>
task_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "pending",
  • "download_url": "string"
}

Generate PDF Report

This will start the report generation.

These methods allow you to generate PDF Report.

This is a 2 stage-process, generating and fetching.

Authorizations:
tokenAuth
path Parameters
background_check_uuid
required
string <uuid>
Request Body schema: application/json
required
report_type
required
string (BackgroundCheckReportRequestReportTypeEnum)
Enum: "short" "standard" "candidate summary"
  • short - short
  • standard - standard
  • candidate summary - candidate summary

Responses

Request samples

Content type
application/json
{
  • "report_type": "short"
}

Response samples

Content type
application/json
{
  • "report_link": "string"
}

Brands

View Brands and Workflows

The method returns all Brands and their Workflows.

Authorizations:
tokenAuth
query Parameters
exclude_archived_brands
boolean
include_archived_workflows
boolean
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Candidates

View all candidates

This method shows a list of candidates, and information on associated background checks.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{
  • "count": 123,
  • "results": [
    ]
}

View candidate details

This method candidate information on associated background checks.

Authorizations:
tokenAuth
path Parameters
candidate_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "url": "string",
  • "uuid": "string",
  • "title": "Mr",
  • "first_name": "string",
  • "middle_name": "string",
  • "last_name": "string",
  • "email": "user@example.com",
  • "contact_number": "string",
  • "n_i_number": "string",
  • "nationality": "string",
  • "addresses": [
    ],
  • "backgroundchecks": [
    ],
  • "date_of_birth": "2019-08-24",
  • "gender": "f"
}

Add addresses to a candidate

This method allows you to add new addresses to an existing candidate.

Authorizations:
tokenAuth
path Parameters
candidate_uuid
required
string <uuid>
Request Body schema: application/json
required
required
Array of objects (AddAddress)
Array
line_1
required
string <= 60 characters
line_2
required
string <= 60 characters
post_town
required
string <= 50 characters
county
required
string <= 50 characters
post_code
required
string <= 50 characters
country
required
string <= 2 characters

Country ISO code e.g GB,US

from_date
required
string <date>
to_date
string or null <date>
to_present
required
boolean
address_type
string

Addrsss Type (either an option of brand address types or None)

Responses

Request samples

Content type
application/json
{
  • "addresses": [
    ]
}

Response samples

Content type
application/json
{
  • "detail": "Address added to candidate successfully"
}

Config

Get Brands

This method returns all brands.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

updated_since
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{}

Get Data Check

This method returns all data checks.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Get Digital Forms

This method returns all digital forms.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

updated_since
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{}

Get Document types

This method returns all document types.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

updated_since
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{}

Get Position Settings

This method returns all Disclosure Services Position Settings.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Get Positions

This method returns all Disclosure Services Positions.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Get Questions

This method returns all questions.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

updated_since
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{
  • "count": 123,
  • "results": [
    ]
}

Get Tag Types

This method returns all tag types.

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

updated_since
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{}

Get Updated Objects

This method returns config items that have been updated since the data passed.

Authorizations:
tokenAuth
query Parameters
updated_since
required
string <date-time>

Format 'YYYY-MM-DDThh:mm'

Responses

Response samples

Content type
application/json
{
  • "document_types": [
    ],
  • "questions": [
    ],
  • "tags": [
    ],
  • "digital_forms": [
    ],
  • "brands": [
    ]
}

Documents

Download a document

This method returns a url that can be used to download a document.

Authorizations:
tokenAuth
path Parameters
document_type_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

Operators

Get all operators

The method returns the operators, their groups and brands.

Authorizations:
tokenAuth
query Parameters
brand_uuid
string or null <uuid>
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Get operator

The method returns the operator, their groups and brands.

Authorizations:
tokenAuth
path Parameters
user_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "username": "string",
  • "email": "user@example.com",
  • "id": 0,
  • "name": "string",
  • "contact": "string",
  • "brands": [
    ],
  • "groups": [
    ]
}

Reference Documents

Download a reference document

This method returns a url that can be used to download the reference document.

Authorizations:
tokenAuth
path Parameters
reference_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

Reports

Fetch Report

This will get the report download URL once completed.

Reports are generated in a background task, which means that you will need to poll until the report is generated. When it is generated, you will receive a URL to download the report.

There are two possible responses:

{"status": "pending"}

This means the report is still generating, another request will be required after a period of time. Please allow at least 30 seconds between poll requests.:

{
    "status": "ready",
    "download_url": "<download-report-url>"
}
Authorizations:
tokenAuth
path Parameters
report_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "status": "pending",
  • "download_url": "string"
}

Generate Report

This will start the report generation.

These methods allow you to generate XML Data Extract Report.

This is a 2 stage-process, generating and fetching.

Authorizations:
tokenAuth
Request Body schema: application/json
required
report_type
required
string
Value: "xml-backgroundcheck"

The report type to generate

  • xml-backgroundcheck - xml-backgroundcheck
date_scope
required
string
Enum: "started" "last_updated"

Do you want the report to contain background checks started in the range provided or updated in the range provided

  • started - started
  • last_updated - last_updated
date_from
required
string <date>

The start of the date range you wish the report to be generated for

date_to
required
string <date>

The end of the date range you wish the report to be generated for

show_stopped_checks
boolean

Do you want the report to contain background checks that have been stopped

show_waiting_for_candidate
boolean

Do you want the report to contain background checks that are waiting for candidate

show_restricted
boolean

Do you want the report to contain background checks that are restricted

brand
integer

A brand ID to filter the report by

tags
Array of integers

A list of tag IDs to filter the report by

Responses

Request samples

Content type
application/json
{
  • "report_type": "xml-backgroundcheck",
  • "date_scope": "started",
  • "date_from": "2019-08-24",
  • "date_to": "2019-08-24",
  • "show_stopped_checks": true,
  • "show_waiting_for_candidate": true,
  • "show_restricted": true,
  • "brand": 0,
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "report_link": "string"
}

Remote ID Checks

View all Remote ID Checks

This method returns all Remote ID checks for every Brand you have access to.

Authorizations:
tokenAuth
query Parameters
brand
string non-empty
completed
boolean or null
created_after
string <date-time>
created_before
string <date-time>
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

operator
string <email> non-empty
status
string non-empty
Enum: "approved" "review" "declined" "abandoned" "error" "awaiting_input"
  • approved - approved
  • review - review
  • declined - declined
  • abandoned - abandoned
  • error - error
  • awaiting_input - awaiting_input
workflow
string non-empty
Enum: "idvt_rtw" "biometric" "passport_and_driving_license"
  • idvt_rtw - idvt_rtw
  • biometric - biometric
  • passport_and_driving_license - passport_and_driving_license

Responses

Response samples

Content type
application/json
{}

Start Check

Start a remote id check

Authorizations:
tokenAuth
Request Body schema: application/json
required
brand_uuid
required
string <uuid>
workflow
required
string (WorkflowEnum)
Enum: "idvt_rtw" "biometric" "passport_and_driving_license"
  • idvt_rtw - idvt_rtw
  • biometric - biometric
  • passport_and_driving_license - passport_and_driving_license
first_name
required
string
last_name
required
string
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "brand_uuid": "609591e0-6f26-457f-b94a-6b6e0ada8cbd",
  • "workflow": "idvt_rtw",
  • "first_name": "string",
  • "last_name": "string",
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "detail": "remote id check started successfully",
  • "remote_id_check_uuid": "d0a14204-8965-486f-8c43-a284e098afaf"
}

Get Check Details

Get remote id check details

Authorizations:
tokenAuth
path Parameters
remote_id_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "brand": "string",
  • "workflow": "string",
  • "applicant_name": "string",
  • "applicant_email": "string",
  • "operator_email": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "completed_at": "2019-08-24T14:15:22Z",
  • "status": "string",
  • "documents": [
    ],
  • "videos": [
    ],
  • "checks": [
    ],
  • "id_number": 0
}

Fetch Report

This will return the report download URL once it has completed generating.

Reports are generated in a background task, which means that you will need to poll until the report is generated. When it is generated, you will receive a URL to download the report.

There are two possible responses:

{"status": "pending"}

This means the report is still generating, another request will be required after a period of time. Please allow at least 30 seconds between poll requests.:

{
    "status": "ready",
    "download_url": "<download-report-url>"
}
Authorizations:
tokenAuth
path Parameters
remote_id_check_uuid
required
string <uuid>
task_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "pending",
  • "download_url": "string"
}

Generate Report

This will start the report generation.

These methods allow you to generate a report for a remote id worker.

This is a 2 stage-process, generating and fetching.

Authorizations:
tokenAuth
path Parameters
remote_id_check_uuid
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "report_link": "string"
}

Tags

View Tags

The method returns all tags, and their details, associated to a workflow.

Authorizations:
tokenAuth
path Parameters
workflow_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "tag_type": {
    },
  • "mandatory": true
}

Workflows

Get worklows

This method returns a list of workflows and the associated data

Authorizations:
tokenAuth
query Parameters
limit
integer

Number of results to return per page.

offset
integer

The initial index from which to return the results.

Responses

Response samples

Content type
application/json
{}

Get worklow

This returns a workflow and the associated data

Authorizations:
tokenAuth
path Parameters
workflow_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "id": 0,
  • "description": "string",
  • "brand": 0,
  • "tags": {
    },
  • "candidate_first_reminder_after": 1,
  • "candidate_second_reminder_after": 1,
  • "candidate_third_reminder_after": 1,
  • "referee_first_reminder_after": 1,
  • "referee_second_reminder_after": 1,
  • "referee_third_reminder_after": 1,
  • "send_candidate_summary": true,
  • "minimum_months_employment_history": 4294967295,
  • "maximum_days_employment_gap": 4294967295,
  • "employment_gaps_coverage": true,
  • "maximum_hours_client_access": 4294967295,
  • "service_level_agreement": 4294967295,
  • "auto_reference": true,
  • "academic_referencing": true,
  • "activity_claims": true,
  • "activity_referencing": true,
  • "employment_referencing": true,
  • "personal_referencing": true,
  • "minimum_employment_references": 4294967295,
  • "consider_employment_references_in_total": true,
  • "consider_personal_references_in_total": true,
  • "consider_academic_references_in_total": true,
  • "minimum_employment_references_in_total": 4294967295,
  • "minimum_personal_references_in_total": 4294967295,
  • "minimum_academic_references_in_total": 4294967295,
  • "awaiting_final_signoff": true,
  • "mandatory_fields": [
    ],
  • "minimum_months_address_coverage": 4294967295,
  • "required_documents": {
    },
  • "supplied_documents": {
    },
  • "referencing_policy": "online",
  • "paper_referencing_overdue_threshold": 4294967295,
  • "online_referencing_overdue_threshold": 4294967295,
  • "candidate_main_message": "string",
  • "candidate_details_message": "string",
  • "candidate_address_history_message": "string",
  • "candidate_activity_message": "string",
  • "candidate_personal_message": "string",
  • "candidate_employment_message": "string",
  • "candidate_academic_message": "string",
  • "candidate_supplied_literature_message": "string",
  • "candidate_attachments_message": "string",
  • "candidate_review_message": "string",
  • "candidate_terms_and_conditions_message": "string",
  • "candidate_terms_and_conditions_button": "string",
  • "candidate_completion_message": "string",
  • "candidate_saved_for_later_message": "string",
  • "candidate_miicard_message": "string",
  • "candidate_dbs_certificate_presentation_instructions": "string",
  • "candidate_additional_questions_message": "string",
  • "referee_acknowledgement": "string",
  • "referee_submission_confirm": "",
  • "referee_submission_reject": "",
  • "candidate_identity_details": true,
  • "candidate_dbs_option_1_final_consent": "string",
  • "candidate_dbs_option_2_final_consent": "string",
  • "candidate_ds_final_consent": "string",
  • "candidate_ds_completion_message": "string",
  • "employment_paper_referencing_template": 0,
  • "academic_paper_referencing_template": 0,
  • "personal_paper_referencing_template": 0,
  • "miicard_verification": true,
  • "position": "string",
  • "group": "other",
  • "organisation_name": "string",
  • "working_with_adults": true,
  • "working_with_children": true,
  • "adult_first": true,
  • "candidate_thank_you_message": "string",
  • "check_types": {
    },
  • "roles": {
    },
  • "candidate_questions": {
    },
  • "last_modified": "2019-08-24T14:15:22Z",
  • "enable_address_types": true,
  • "address_types": [
    ],
  • "employment_contract_types": [
    ],
  • "require_employment_contract_type": true,
  • "academic_enrolment_types": [
    ],
  • "require_academic_enrolment_type": true
}

Results

Get a result for a DBS England and Wales check.

This method retrieves a result for a DBS England and Wales check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get Digital Identity Verification Check Result

Get the result details for a digital identity verification check

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get a result for a Disclosure Services check.

This method retrieves a result for a Disclosure Services check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get a result for an Adverse Financial Detail check.

This method retrieves a result for an Adverse Financial Detail check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get a result for an Adverse Financial Summary check.

This method retrieves a result for an Adverse Financial Summary check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get a result for a Identity check.

This method retrieves a result for a Identity check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get the results for a mrz document scan.

This method retrieves results for mrz document scan.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get result for a Rapid Employment Verification check.

This method returns the result of a Rapid Employment Verification check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}

Get a result for a Sanctions check.

This method retrieves a result for a Sanctions check.

Authorizations:
tokenAuth
path Parameters
check_id
required
integer

Responses

Response samples

Content type
application/json
{
  • "check_id": 0,
  • "status": "candidate",
  • "check_type": "string",
  • "created": "string",
  • "completed": "string",
  • "errors": [
    ],
  • "data": {
    }
}