Perform Multi-Bureau Check
You can run this check immediately via our Demo Postman collection. It's publicly available and doesn't require an account.

Overview of flow

Multi-Bureau check API flow

1. Create a client

The first step in creating any check is to create a client from your backend server. For this type of check, a client of type person must be created.

Example request for creating a client

cURL
Node.js
Python
PHP
.NET
curl -X POST https://api.complycube.com/v1/clients \
-H 'Authorization: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"type": "person",
"email": "[email protected]",
"personDetails": {
"firstName": "John",
"lastName": "Doe",
"dob": "1990-01-01",
"ssn": "123456789"
}
}'
const { ComplyCube } = require("@complycube/api");
const complycube = new ComplyCube({ apiKey: "<YOUR_API_KEY>" });
const client = await complycube.client.create({
type: "person",
personDetails: {
firstName: "John",
lastName: "Doe",
dob: "1990-01-01",
ssn: "123456789"
}
});
from complycube import ComplyCubeClient
cc_api = ComplyCubeClient(api_key='<YOUR_API_KEY>')
new_client = {
'type':'person',
'email':'[email protected]',
'personDetails': {
'firstName':'John',
'lastName':'Doe',
'dob': '1990-01-01',
'ssn': '123456789'
}
}
client = cc_api.clients.create(**new_client)
use ComplyCube\ComplyCubeClient;
$ccapi = new ComplyCubeClient('<YOUR_API_KEY>');
$result = $ccapi->clients()->create(['type' => 'person',
'email' => '[email protected]',
'personDetails' => ['firstName' => 'John',
'lastName' => 'Doe',
'dob' => '1990-01-01',
'ssn' => '123456789']]);
using ComplyCube.Net;
using ComplyCube.Net.Resources.Clients;
var clientApi = new ClientApi(new ComplyCubeClient("<YOUR_API_KEY>"));
var newClient = new ClientRequest {
type = "person",
email = "[email protected]",
personDetails = new PersonDetails {
firstName = "John",
lastName = "Doe",
dob = "1990-01-01",
ssn = "123456789"
}
}
var client = await clientApi.CreateAsync(newClient);

Example response

The response will contain an id (the Client ID). It is required for the next step.
{
"id": "5eb04fcd0f3e360008035eb1",
"type": "person",
"email": "[email protected]",
"personDetails": {
"firstName": "John",
"lastName": "Doe",
"dob": "1990-01-01",
"ssn": "123456789"
},
"createdAt": "2021-01-04T17:24:29.146Z",
"updatedAt": "2021-01-04T17:24:29.146Z"
}

2. Create an address

Create an address by providing the Client ID and address details.

Example request for creating an address

cURL
Node.js
Python
PHP
.NET
curl -X POST https://api.complycube.com/v1/addresses \
-H 'Authorization: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"clientId":"5eb04fcd0f3e360008035eb1",
"line": "47th Test Avenue 323",
"city": "Manhattan",
"postalCode": "10001",
"state": "NY",
"country": "US"
}'
const address = await complycube.address.create("5eb04fcd0f3e360008035eb1", {
line: "47th Test Avenue 323",
city: "Manhattan",
postalCode: "10001",
state: "NY",
country: "US"
});
new_address = {
'line': '47th Test Avenue 323',
'city': 'Manhattan',
'postalCode': '10001',
'state': 'NY',
'country': 'US'
}
address = cc_api.addresses.create('5eb04fcd0f3e360008035eb1',**new_address)
$address = $ccapi->address()->create('5eb04fcd0f3e360008035eb1',
['line'=>'47th Test Avenue 323',
'city'=>'Manhattan',
'postalCode'=>'10001',
'state'=>'NY',
'country'=>'US']);
var addressRequest = new AddressRequest
{
clientId = "5eb04fcd0f3e360008035eb1",
line = "47th Test Avenue 323",
city = "Manhattan",
postalCode = "10001",
state = "NY",
country = "US"
};
var address = await addressApi.CreateAsync(addressRequest);

Example response

The response will contain an id (the Address ID). It is required for the next step.
{
"id": "5ebd40714f23960008c81528",
"clientId":"5eb04fcd0f3e360008035eb1",
"line": "47th Test Avenue 323",
"city": "Manhattan",
"postalCode": "10001",
"state": "NY",
"country": "US",
"createdAt": "2021-01-04T17:25:21.116Z",
"updatedAt": "2021-01-04T17:25:21.116Z"
}

3. Create a check

Create a check by providing the Client ID, Address ID and check type.

Example request for creating a check

cURL
Node.js
Python
PHP
.NET
curl -X POST https://api.complycube.com/v1/checks \
-H 'Authorization: <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"clientId":"5eb04fcd0f3e360008035eb1",
"addressId":"5ebd40714f23960008c81528",
"type": "multi_bureau_check"
}'
const check = await complycube.check.create("5eb04fcd0f3e360008035eb1", {
addressId: "5ebd40714f23960008c81528",
type: "multi_bureau_check"
});
check = cc_api.checks.create( '5eb04fcd0f3e360008035eb1',
'multi_bureau_check',
addressId='5ebd40714f23960008c81528' )
$result = $ccapi->checks()->create('5eb04fcd0f3e360008035eb1',
['type' => 'multi_bureau_check',
'addressId' => '5ebd40714f23960008c81528']);
var checkRequest = new CheckRequest
{
clientId = "5eb04fcd0f3e360008035eb1",
addressId = "5ebd40714f23960008c81528",
type = "multi_bureau_check"
};
var check = await checkApi.CreateAsync(checkRequest);

Example response

The response will contain an id (the Check ID). It is required for the next step.
{
"id": "5ebd40714f23960008c81527",
"entityName": "John Doe",
"type": "multi_bureau_check",
"clientId": "5eb04fcd0f3e360008035eb1",
"addressId": "5ebd40714f23960008c81528",
"status": "pending",
"createdAt": "2021-01-04T17:25:21.116Z",
"updatedAt": "2021-01-04T17:25:21.116Z"
}

Perform check

ComplyCube will perform the check. You can retrieve a check's outcome and breakdown via the API.
If you have set up webhooks, a notification is sent upon completion of the check.

Example request for retrieving the check outcome

cURL
Node.js
Python
PHP
.NET
curl -X GET https://api.complycube.com/v1/checks/5ebd40714f23960008c81527 \
-H 'Authorization: <YOUR_API_KEY>'
const check = await complycube.check.get("5ebd40714f23960008c81527");
check = cc_api.checks.get('5ebd40714f23960008c81527')
$check = $ccapi->checks()->get('5ebd40714f23960008c81527');
var check = await checkApi.GetAsync("5ebd40714f23960008c81527");

Example response

{
"id": "5ebd40714f23960008c81527",
"entityName": "John Doe",
"type": "multi_bureau_check",
"clientId": "5eb04fcd0f3e360008035eb1",
"addressId": "5ebd40714f23960008c81528",
"status": "complete",
"result": {
"outcome": "clear",
"breakdown": {
"name": {
"outcome": "clear",
"breakdown": [
{
"status": "clear",
"source": "commercial_database",
"country": "US",
"hits": 1
},
{
"status": "clear",
"source": "government_authority",
"country": "US",
"hits": 1
}
]
},
"address": {
"outcome": "clear",
"breakdown": [
{
"status": "clear",
"source": "government_authority",
"country": "US",
"hits": 1
}
]
},
"dob": {
"outcome": "clear",
"breakdown": [
{
"status": "clear",
"source": "commercial_database",
"country": "US",
"hits": 1
},
{
"status": "clear",
"source": "government_authority",
"country": "US",
"hits": 1
}
]
},
"idNumber": {
"outcome": "clear",
"breakdown": [
{
"status": "clear",
"source": "commercial_database",
"country": "US",
"hits": 1
}
]
},
"additionalChecks": {
"outcome": "not_processed"
}
}
},
"createdAt": "2021-01-04T17:25:21.116Z",
"updatedAt": "2021-01-04T17:25:21.116Z"
}
Copy link
Outline
Overview of flow
1. Create a client
2. Create an address
3. Create a check
Perform check