Skip to content

Checkmate REST API (1.0.0)

Checkmate API for launching background checks from your side using Checkmate.

Contact

Download OpenAPI description
Languages
Servers
Mock server
https://docs.checkmate.tech/_mock/api
Staging
https://staging-api.checkmate.tech/partners/v1
Production
https://api.checkmate.tech/partners/v1

OAuth

OAuth token authorization

Basic Authorization

If you are not planning to build a multi-tenant integration then, we encorauge you to skip OAuth authentication and use your Checkmate account token instead. You can grab it from your Partner's page under "Account API"

Remember to store it safely!

Basic Authorization

placeholder

Operations

Brands

Company branding

Operations

Check Types

Available check types

Operations

Bundles

Pre-configured check bundles

Operations

Candidates

Candidate management

Operations

Checks

Candidate checks

Operations

Sub-checks

Sub-check results

Operations

Referees

Reference check referees

Operations

Companies

Company details

Operations

Company Checks

Company-enabled checks

Operations

Forms

Forms (reference, questionnaire, etc.)

Operations

Uploads

File uploads

Operations

Webhooks

Webhooks are unique per partner and company!

Only one webhook can exists for a partner and company. You will only get updates notifications on candidates created under this context.

E.g. If you subscribe to a webhook using your Account API token you won't be get notified about updates on candidates created directly on the web application or other partners.

:global parameter

:global parameter is the only exception to the above. If global=true you will get notifications on all candidates created through the API. You still won't get notifications on candidates created from the web application as they don't belog to the API.

Operations

Create or update webhook

Request

Creates or updates the Webhook for the company. Only one webhook per company and partner. The Webhook will POST to the provided URL whenever a candidate check created using the same partner (unless global) changes status.

Security
bearerAuth
Bodyapplication/jsonrequired
uristring(uri)required
Example: "https://your_webhook_uri/endpoint"
id_in_pathboolean

Send partner_application_id in path

Example: true
globalboolean

Set it to true if you want to receive notifications indistinctly the partner it was created from

Example: false
authorizationstring

Value for Authorization header

Example: "Bearer your_authorization_token"
headersobject
curl -i -X POST \
  https://docs.checkmate.tech/_mock/api/webhooks \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "uri": "https://your_webhook_uri/endpoint",
    "id_in_path": true,
    "global": false,
    "authorization": "Bearer your_authorization_token",
    "headers": {
      "property1": "custom_auth_value",
      "property2": "custom_auth_value"
    }
  }'

Responses

Webhook configuration

Bodyapplication/json
resultobject(Webhook)
statusinteger
Example: 200
errorobject or null
Response
application/json
{ "result": { "uri": "https://your_webhook_uri/endpoint", "id_in_path": true, "global": false, "authorization": "Bearer your_authorization_token", "headers": {} }, "status": 200, "error": {} }