API Reference
Search…
Identity Check

Run an identity check

To run an Identity Check, you must create a check with type set to identity_check.
The documentId provided must have associated image attachments that adhere to our image specifications.
We will use the front side of the document for the Identity Check.

Identity check request

Attribute
Type
Description
clientId
string
The ID of the client associated with this check. (Required)
type
string
This must be set to identity_check. (Required)
documentId
string
The ID of the document. (Required)
livePhotoId
string
The ID of the live photo. (Required)

Example request

cURL
Node.js
Python
PHP
.NET
1
curl -X POST https://api.complycube.com/v1/checks \
2
-H 'Authorization: <YOUR_API_KEY>' \
3
-H 'Content-Type: application/json' \
4
-d '{
5
"clientId":"CLIENT_ID",
6
"livePhotoId":"LIVE_PHOTO_ID",
7
"documentId":"DOCUMENT_ID",
8
"type": "identity_check"
9
}'
Copied!
1
const check = await complycube.check.create("CLIENT_ID", {
2
livePhotoId: "LIVE_PHOTO_ID",
3
documentId: "DOCUMENT_ID",
4
type: "identity_check"
5
});
Copied!
1
check = cc_api.check.create('CLIENT_ID',
2
'identity_check',
3
livePhotoId='LIVE_PHOTO_ID'
4
documentId='DOCUMENT_ID')
Copied!
1
$result = $ccapi->checks()->create('CLIENT_ID',
2
['type' => 'identity_check',
3
'livePhotoId' => 'LIVE_PHOTO_ID',
4
'documentId' => 'DOCUMENT_ID']);
Copied!
1
var checkRequest = new CheckRequest
2
{
3
clientId = "CLIENT_ID",
4
documentId = "DOCUMENT_ID",
5
livePhotoId = "LIVE_PHOTO_ID",
6
type = "identity_check"
7
};
8
9
var check = await checkApi.CreateAsync(checkRequest);
Copied!

Result object

The result object is only returned when the status of the check is complete . It has two components - outcome and breakdown.

Outcome

The outcome attribute represents the overall check result. Returned values include:
  1. 1.
    clear: Indicates every analysis conducted returned a successful result, and hence the identity is authentic.
  2. 2.
    attention: Indicates at least one of the analysis results requires attention.

Breakdown

The breakdown comprises the following objects:

faceAnalysis object

The facial analysis results. It has the following constituents:
  • faceDetection: Indicates whether a face is detected and that number of faces detected on the ID and live photo are valid.
  • facialSimilarity: Indicates whether the faces on the live photo and document belong to the same person.
  • previouslyEnrolledFace: Indicates whether the face on the live photo has been previously enrolled as a different client.
  • breakdown: Breakdown related to facial analysis.
    • facialSimilarityScore: Indicates the similarity level of whether two faces belong to the same person. The score will be 100 for a perfect match.
    • enrolledFacesMatches: If a face is deemed to have been enrolled previously, this will contain an array of objects that contain the following:
      • clientId: The unique identifier for the matching client.
      • entityName: The client's full name.
      • livePhotoId: The unique identifier for the matching live photo.
      • liveVideoId: The unique identifier for the matching live video. Either a liveVideoId or livePhotoId will exist in the object, not both.
      • facialSimilarityScore: The similarity level of the client's face against the live photo associated with the check.

authenticityAnalysis object

The facial analysis results. It has the following constituents:
  • spoofedImageAnalysis: Indicates whether the images are spoofed, copied from the internet, or are known blacklisted images.
  • livenessCheck: Indicates if the live photo is genuine and not a photo-of-an-image or photo-of-a-screen.
  • breakdown: Breakdown related to authenticity analysis.
    • specimenCheckMatches: If an image is deemed copied from the internet, this will contain an array of URLs pointing to the image.
    • livenessCheckScore: Indicates the liveness score of the live photo. The score will be 100 when it is assumed to be authentic.

integrityAnalysis object

The integrity analysis results. It has the following constituents:
  • faceDetection: Indicates whether the images contained the expected number of faces.
  • vpnDetected: Indicates whether the client was using a Virtual Private Network (VPN) when conducting the check.

Sample Response

1
{
2
"id": "5e94b88a01bce00008c86f06",
3
"entityName": "John Doe",
4
"type": "identity_check",
5
"clientId": "5e94b75d01bce00008c86f02",
6
"documentId": "5e94b87b01bce00008c86f03",
7
"livePhotoId": "5e94b88901bce00008c86f05",
8
"status": "complete",
9
"result": {
10
"outcome": "clear",
11
"breakdown": {
12
"faceAnalysis": {
13
"faceDetection": "clear",
14
"facialSimilarity": "clear",
15
"previouslyEnrolledFace": "clear",
16
"breakdown": {
17
"facialSimilarityScore": 100
18
}
19
},
20
"authenticityAnalysis": {
21
"spoofedImageAnalysis": "clear",
22
"livenessCheck": "clear",
23
"breakdown": {
24
"livenessCheckScore": 100
25
}
26
},
27
"integrityAnalysis": {
28
"faceDetection": "clear",
29
"vpnDetected": "clear"
30
}
31
}
32
},
33
"createdAt": "2020-01-04T17:25:21.116Z",
34
"updatedAt": "2020-01-04T17:25:21.116Z"
35
}
Copied!