For an API request, you will receive a Status value each one conveying a specific meaning.
There are 4 different status values:

 0 - Indicates that a full match on the identity has been returned.

 1 - Indicates that the Identity was matched but some of the input information provided was incorrect.

 2 - Indicates the information provided was not found in the database.

 3 - Indicates the data source(s) error and an associated error message will be displayed.

-1   Indicates the search failed pre-validation.

-2   Indicates the search was canceled by the client

A status will be returned for each transaction even if it is unsuccessful. Please use the following as a guide to understanding how the Status is returned for an API request.

Status 0

When you receive a REST response in JSON format, you will get a status result for each data source you have used in your request.
Using the below as an example, we can see that for "Australia Government Identity Documents 1", the Status 0 has been returned specifying that we have got a full match on that individual's identity.

{
"countryCode": "Australia",
"clientReference": "Test_0001",
"reportingReference": "DZ-75a3b350-0aaa-4380-8fca-b69ed570bb4c",
"matchStatus": "Full Match 1+1 Verification",
"searchErrorMessage": "",
"safeHarbour": false,
"searchStatus": "Successful",
"serviceResponses": {
"Australia Government Identity Documents 1": {
"status": 0,
"sourceStatus": "Successful",
"errorMessage": "",
"identityVerified": true,
"safeHarbourScore": "M2",
"nameMatchScore": "1.000",
"addressMatchScore": "N/A",
"verifications": {
"dateOfBirth": true,
"documentNo": true,
"firstName": true,
"lastName": true
},
"returnedData": {}
}
},
"remarks": []
}

Status 1
The identity was matched with the data source "Australia Government Identity Documents 6" but since the documentNo was false, we got a Status value of 1.

{
"countryCode": "Australia",
"clientReference": "Test_0001",
"reportingReference": "DZ-8fbe2067-6479-4387-963b-791a0a3c606f",
"matchStatus": "Full Match 1+1 Verification",
"searchErrorMessage": "",
"safeHarbour": false,
"searchStatus": "Successful",
"serviceResponses": {
"Australia Government Identity Documents 6": {
"status": 1,
"sourceStatus": "Successful",
"errorMessage": "",
"identityVerified": true,
"safeHarbourScore": "M2",
"nameMatchScore": "1.000",
"addressMatchScore": "N/A",
"verifications": {
"dateOfBirth": true,
"documentNo": false,
"firstName": true,
"lastName": true
},
"returnedData": {}
}
},
"remarks": []
}

Status 2
Here we got Status 2 because the identity wasn't matched due to false information.

{
"countryCode": "Indonesia",
"clientReference": "DZ_0057",
"reportingReference": "DZ-17b94d35-796a-4d5e-ba76-02bd425fd903",
"matchStatus": "No Match",
"searchErrorMessage": "",
"safeHarbour": false,
"searchStatus": "Successful",
"serviceResponses": {
"Indonesia Tax Registration": {
"status": 2,
"sourceStatus": "Successful",
"errorMessage": "",
"identityVerified": false,
"safeHarbourScore": "none",
"nameMatchScore": "0.000",
"addressMatchScore": "N/A",
"verifications": {
"addressElement3": false,
"dateOfBirth": false,
"fullName": false,
"nik": false,
"npwp": false
},
"returnedData": {}
}
},
"remarks": []
}

Status 3
Due to some technical reasons such as an ongoing maintenance activity, a data source can be temporarily non-operational therefore prohibiting successful transactions. In that scenario, the Status will be 3.

{
"countryCode": "Morocco",
"clientReference": "MoroccoTest_002",
"reportingReference": "DZ-843746f4-1d69-4336-9eaa-98d21b1575ea",
"matchStatus": "No Match",
"searchErrorMessage": "",
"safeHarbour": false,
"searchStatus": "Not Successful",
"serviceResponses": {
"Morocco Utility": {
"status": 3,
"sourceStatus": "Not Successful",
"errorMessage": "Error querying data source",
"identityVerified": false,
"safeHarbourScore": "none",
"nameMatchScore": "N/A",
"addressMatchScore": "N/A",
"verifications": {},
"returnedData": {}
}
},
"remarks": []
}

Status -1
At the moment, this particular Status value is not shown in the REST API response. It is, however, shown in the transaction logs telling us that the search didn't go through due to one or more pre-validation errors. In the below example using the data source "Indonesia Tax Registration", a mandatory field dataOfBirth was empty due to which the following error occurred. 

{
"clientReference": "DZ_0057",
"reportingReference": "DZ-11fec839-d4bb-475f-93b6-661bcfccfcde",
"validationErrors": [
"dateOfBirth: not provided"
],
"searchErrorMessage": "The following data source requests failed validation: Indonesia Tax Registration",
"searchStatus": "Not Successful"
}

Status -2
This can be achieved by canceling the request manually or by placing your own timeout. In the second scenario, if the response is not received within the timeout period, the response is simply not provided. In other words, the request gets canceled. And so instead of Status 3 (which is normally returned in case of timeout), the Status returned is -2

{
"Status": -2,
"ErrorMessage": "Request canceled",
"ReturnedData": {},
"SourceStatus": "Not Successful",
"Verifications": {},
"NameMatchScore": "N/A",
"IdentityVerified": false,
"SafeHarbourScore": "none",
"AddressMatchScore": "N/A"
}


In case of a query, please raise a ticket at our Support Portal or connect with us via Live Chat.