Skip to content

Checkr Trust API (1.0)

Checkr Trust is a modern, RESTful API-driven service designed to enhance trust and safety for your platform. The Checkr Trust API uses resource-oriented URLs, supports HTTPS for authentication and requests, and returns JSON responses.

The Checkr Trust API provides access to a rich set of data, including criminal records, traffic infractions, and registry checks. Once credentialed, you can start testing locally in minutes.

Intended Use Cases

Important: Checkr Trust is not a “consumer reporting agency” or otherwise a producer of “consumer reports,” as those terms are defined in the Fair Credit Reporting Act (“FCRA”). Checkr Trust data must not be accessed, obtained, disclosed, or otherwise used to make any decisions related to credit, insurance, employment, or any other purposes described in 15 U.S.C. § 1681b of FCRA

Download OpenAPI description
Overview
Languages
Servers
Mock server
https://api.docs.checkrtrust.com/_mock/v1
Checkr Trust API
https://api.checkrtrust.com/v1

Endpoints and operations having to do with accounts and authorization. Account creation and credentialing will be done with a Checkr Trust team member.

Operations

Instant Checks provide the resulting information relevant to the requested check for a set of PII. Checks will include the Check type and results.

Operations

Criminal Checks provide criminal record check results delivered asynchronously via webhook.

Operations

County Checks provide county-level criminal background check results for a specific jurisdiction. Results are retrieved from county court records and can be cancelled while in pending status.

Operations

Driver Checks provide the resulting information relevant to the requested driver license. The response will include the driver check type and results.

Operations

Request

Get a set of previously created driver checks

Security
get-bearer-token-using-oauth2
Query
limitinteger[ 0 .. 999999 ]

limit the number of records returned

Default 10
skipinteger[ 0 .. 999999 ]

skip a number of records before returning (for paging)

Default 0
includeArray of strings

include related resources in the response

Examples:

Including the profile parameter will embed the full profile object in place of the profile_id

include=profile
curl -i -X GET \
  'https://api.docs.checkrtrust.com/_mock/v1/driver_checks?limit=10&skip=0&include=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/jsonArray [
Any of:
One of:
profile_idstring(uuid)(profile_id)required

Identifier of an existing profile containing search criteria.

check_typestring
Value"driver_license_status"
idstring(uuid)(uuid)

A universally unique identifier (UUID) in standard format.

created_atstring(date-time)(datetime)

An ISO 8601 formatted date-time string.

completed_atdatetime (string) or null

A datetime, or null if not completed.

One of:

An ISO 8601 formatted date-time string.

string(date-time)(datetime)
resultsdriver_license_status_result (object) or null

Results, or null if not completed.

One of:

Results, or null if not completed.

results.​requested_profileobject

The inputs used to create the driver check. Fields that weren't provided will not be included.

results.​requested_profile.​first_namestring

The first name of the person.

results.​requested_profile.​middle_namestring

The middle name of the person. Can be null if not provided.

results.​requested_profile.​last_namestring

The last name of the person.

results.​requested_profile.​dobstring= 8 characters\d{8}

Date of birth in the form YYYYMMDD. Must be a valid date and cannot be in the future. If invalid, the API returns a 400 with a validation_error pointing to /dob.

Example: "19950401"
results.​requested_profile.​phonestring(phone_string)^\+[1-9]\d{1,14}$

A phone number in the form +[country code][number including area code]. (E.164 format)

results.​requested_profile.​emailstring(email)(email_string)

An email address.

results.​requested_profile.​ssnstring(ssn_string)^\d{3}-?\d{2}-?\d{4}$

A US Social Security Number in XXX-XX-XXXX format. Hyphens are optional.

results.​requested_profile.​addressobject(address)

A physical address in the United States.

results.​requested_profile.​custom_idstring(custom_id_string)^[a-zA-Z0-9_-]{1,64}$

An identifier of your choice, if you wish to use one. Limited to 64 alphanumeric characters, underscores, and hyphens.

results.​requested_profile.​driver_license_statestring(state_code)^[A-Z]{2}$

A two-letter US state code.

results.​requested_profile.​driver_license_numberstring

The driver license number. Format dependent on State.

Example: "D1234567"
results.​passengerobject
results.​passenger.​validitystring
Enum ValueDescription
VALID

The license number is valid and reflects the authorization to drive a passenger vehicle.

INVALID

The license number is invalid and cannot be used to drive a passenger vehicle.

NOT FOUND

We did not find a definitive result for this license. This could indicate the 'requested_profile' values had an error / typo. Another possibility is that we were unable to determine the 'ssn' and/or 'zip_code' fields, they are required for the requested state, and they weren't provided in the requested_profile.

reference_idstring(reference_id)^[a-zA-Z0-9_-]{1,64}$

A reference identifier for linking related records. Limited to 64 alphanumeric characters, underscores, and hyphens.

]
Response
application/json
[ { "id": "2b8313e8-4efd-45a1-b578-952b8313e890", "created_at": "2020-01-01T00:00:00Z", "completed_at": "2020-01-01T00:00:00Z", "results": {}, "check_type": "driver_license_status", "reference_id": "ref-123", "profile_id": "2b8313e8-4efd-45a1-b578-952b8313e890" } ]

Request

Create a new driver check

Security
get-bearer-token-using-oauth2
Bodyapplication/json

the request to create a driver check

One of:
first_namestringrequired

First name of the person

last_namestringrequired

Last name of the person

dobstring(date)(date)

Date of birth (ISO 8601 date string). Must be a valid date and cannot be in the future. If invalid, the API returns a 400 with a validation_error pointing to /dob.

driver_license_numberstringrequired

Driver license number

driver_license_statestring(state_code)^[A-Z]{2}$required

State that issued the driver license

check_typestring(driver_check_type)required
Enum"driver_license_status""motor_vehicle_report"
reference_idstring(reference_id)^[a-zA-Z0-9_-]{1,64}$

A reference identifier for linking related records. Limited to 64 alphanumeric characters, underscores, and hyphens.

curl -i -X POST \
  https://api.docs.checkrtrust.com/_mock/v1/driver_checks \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "first_name": "string",
    "last_name": "string",
    "dob": "2020-01-01",
    "driver_license_number": "string",
    "driver_license_state": "CA",
    "check_type": "driver_license_status",
    "reference_id": "ref-123"
  }'

Responses

Created. When the product has usage limits configured, the response includes X-RateLimit-Limit, X-RateLimit-Remaining, and optionally X-RateLimit-Expires.

Bodyapplication/json
One of:
One of:
profile_idstring(uuid)(profile_id)required

Identifier of an existing profile containing search criteria.

check_typestring
Value"driver_license_status"
idstring(uuid)(uuid)

A universally unique identifier (UUID) in standard format.

created_atstring(date-time)(datetime)

An ISO 8601 formatted date-time string.

completed_atdatetime (string) or null

A datetime, or null if not completed.

One of:

An ISO 8601 formatted date-time string.

string(date-time)(datetime)
resultsdriver_license_status_result (object) or null

Results, or null if not completed.

One of:

Results, or null if not completed.

results.​requested_profileobject

The inputs used to create the driver check. Fields that weren't provided will not be included.

results.​requested_profile.​first_namestring

The first name of the person.

results.​requested_profile.​middle_namestring

The middle name of the person. Can be null if not provided.

results.​requested_profile.​last_namestring

The last name of the person.

results.​requested_profile.​dobstring= 8 characters\d{8}

Date of birth in the form YYYYMMDD. Must be a valid date and cannot be in the future. If invalid, the API returns a 400 with a validation_error pointing to /dob.

Example: "19950401"
results.​requested_profile.​phonestring(phone_string)^\+[1-9]\d{1,14}$

A phone number in the form +[country code][number including area code]. (E.164 format)

results.​requested_profile.​emailstring(email)(email_string)

An email address.

results.​requested_profile.​ssnstring(ssn_string)^\d{3}-?\d{2}-?\d{4}$

A US Social Security Number in XXX-XX-XXXX format. Hyphens are optional.

results.​requested_profile.​addressobject(address)

A physical address in the United States.

results.​requested_profile.​custom_idstring(custom_id_string)^[a-zA-Z0-9_-]{1,64}$

An identifier of your choice, if you wish to use one. Limited to 64 alphanumeric characters, underscores, and hyphens.

results.​requested_profile.​driver_license_statestring(state_code)^[A-Z]{2}$

A two-letter US state code.

results.​requested_profile.​driver_license_numberstring

The driver license number. Format dependent on State.

Example: "D1234567"
results.​passengerobject
results.​passenger.​validitystring
Enum ValueDescription
VALID

The license number is valid and reflects the authorization to drive a passenger vehicle.

INVALID

The license number is invalid and cannot be used to drive a passenger vehicle.

NOT FOUND

We did not find a definitive result for this license. This could indicate the 'requested_profile' values had an error / typo. Another possibility is that we were unable to determine the 'ssn' and/or 'zip_code' fields, they are required for the requested state, and they weren't provided in the requested_profile.

reference_idstring(reference_id)^[a-zA-Z0-9_-]{1,64}$

A reference identifier for linking related records. Limited to 64 alphanumeric characters, underscores, and hyphens.

Response
application/json
{ "id": "2b8313e8-4efd-45a1-b578-952b8313e890", "created_at": "2020-01-01T00:00:00Z", "completed_at": "2020-01-01T00:00:00Z", "results": { "requested_profile": {}, "passenger": {} }, "check_type": "driver_license_status", "reference_id": "ref-123", "profile_id": "2b8313e8-4efd-45a1-b578-952b8313e890" }

Callbacks

Driver Check Completion Webhook
post

Request

Get a previously created driver check with a given id

Security
get-bearer-token-using-oauth2
Path
driver_check_idstring(uuid)required

the uuid identifying the driver check

Example: 2b8313e8-4efd-45a1-b578-952b8313e890
Query
includeArray of strings

include related resources in the response

curl -i -X GET \
  'https://api.docs.checkrtrust.com/_mock/v1/driver_checks/2b8313e8-4efd-45a1-b578-952b8313e890?include=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
One of:
One of:
profile_idstring(uuid)(profile_id)required

Identifier of an existing profile containing search criteria.

check_typestring
Value"driver_license_status"
idstring(uuid)(uuid)

A universally unique identifier (UUID) in standard format.

created_atstring(date-time)(datetime)

An ISO 8601 formatted date-time string.

completed_atdatetime (string) or null

A datetime, or null if not completed.

One of:

An ISO 8601 formatted date-time string.

string(date-time)(datetime)
resultsdriver_license_status_result (object) or null

Results, or null if not completed.

One of:

Results, or null if not completed.

results.​requested_profileobject

The inputs used to create the driver check. Fields that weren't provided will not be included.

results.​requested_profile.​first_namestring

The first name of the person.

results.​requested_profile.​middle_namestring

The middle name of the person. Can be null if not provided.

results.​requested_profile.​last_namestring

The last name of the person.

results.​requested_profile.​dobstring= 8 characters\d{8}

Date of birth in the form YYYYMMDD. Must be a valid date and cannot be in the future. If invalid, the API returns a 400 with a validation_error pointing to /dob.

Example: "19950401"
results.​requested_profile.​phonestring(phone_string)^\+[1-9]\d{1,14}$

A phone number in the form +[country code][number including area code]. (E.164 format)

results.​requested_profile.​emailstring(email)(email_string)

An email address.

results.​requested_profile.​ssnstring(ssn_string)^\d{3}-?\d{2}-?\d{4}$

A US Social Security Number in XXX-XX-XXXX format. Hyphens are optional.

results.​requested_profile.​addressobject(address)

A physical address in the United States.

results.​requested_profile.​custom_idstring(custom_id_string)^[a-zA-Z0-9_-]{1,64}$

An identifier of your choice, if you wish to use one. Limited to 64 alphanumeric characters, underscores, and hyphens.

results.​requested_profile.​driver_license_statestring(state_code)^[A-Z]{2}$

A two-letter US state code.

results.​requested_profile.​driver_license_numberstring

The driver license number. Format dependent on State.

Example: "D1234567"
results.​passengerobject
results.​passenger.​validitystring
Enum ValueDescription
VALID

The license number is valid and reflects the authorization to drive a passenger vehicle.

INVALID

The license number is invalid and cannot be used to drive a passenger vehicle.

NOT FOUND

We did not find a definitive result for this license. This could indicate the 'requested_profile' values had an error / typo. Another possibility is that we were unable to determine the 'ssn' and/or 'zip_code' fields, they are required for the requested state, and they weren't provided in the requested_profile.

reference_idstring(reference_id)^[a-zA-Z0-9_-]{1,64}$

A reference identifier for linking related records. Limited to 64 alphanumeric characters, underscores, and hyphens.

Response
application/json
{ "id": "2b8313e8-4efd-45a1-b578-952b8313e890", "created_at": "2020-01-01T00:00:00Z", "completed_at": "2020-01-01T00:00:00Z", "results": { "requested_profile": {}, "passenger": {} }, "check_type": "driver_license_status", "reference_id": "ref-123", "profile_id": "2b8313e8-4efd-45a1-b578-952b8313e890" }

Identity Verifications provide the resulting information relevant to the requested verification for a set of PII. The response will include the IDV type and results.

Operations

Profiles represent a set of Personally Identifiable Information (PII) for a person who will be checked. Profiles can be updated with the latest information for a person and be referenced to generate checks.

Operations

Regulated Checks provide instant criminal record check results with legal annotation. Results include checks at the record, case, and charge levels indicating compliance with applicable legal rules. A permissible purpose is required for FCRA compliance.

Operations

Regulated Criminal Reports provide asynchronous criminal record check results with legal annotation. Results are delivered via webhook once processing is complete. A permissible purpose is required for Fair Credit Reporting Act (FCRA) compliance.

Operations