Document API
Call this API to do a Document Verification without AAI's Frontend.
Request Example:
curl -X POST \
https://ph-api.advance.ai/intl/openapi/identity-risk/idvs-h5/ekyc/v1/api/document \
-H 'Content-Type: application/json' \
-H 'X-ACCESS-TOKEN:{Your Access Token}' \
-d '{
"callbackUrl": "https://www.example.com/callback",
"bizId": "7ac66c0f148de9519b8bd264312c4d64",
"userId":"8e44f0089b076e18a718eb9ca3d94674",
"region":"THA",
"language": "en-US",
"docType": "TH-ID-N",
"solutionCode": "05",
"frontImageBase64":"YWJjZGVmZw==", // use real image base64 string
"noForgeryDetect": false,
"bizCode":"WhiteCard"
}'Request Url
https://th-api.advance.ai/intl/openapi/identity-risk/idvs-h5/ekyc/v1/api/document
POST (application/json)https://api.advance.ai/intl/openapi/identity-risk/idvs-h5/ekyc/v1/api/document
POST (application/json)https://sg-api.advance.ai/intl/openapi/identity-risk/idvs-h5/ekyc/v1/api/document
POST (application/json)Request Header Parameters
| Parameter | Description |
|---|---|
| X-ACCESS-TOKEN | string Please use Token Authentication API to get your access token |
Request Parameters
Parameter | Description |
|---|---|
callbackUrl |
|
bizId |
|
userId |
|
region |
|
language |
|
solutionCode |
|
docType |
|
frontImageBase64 |
|
frontImageUrl |
|
backImageBase64 |
|
backImageUrl |
|
bizCode |
|
solutionCode
the solutionCode determine the product form of the Identity Verification , please choose the product form that suits your needs.
| Supported Values | Product Form |
|---|---|
| 05 | DOCUMENT(API) |
Region and DocType
| Region | Country | DocType | DocType Explained |
|---|---|---|---|
| THA | Thailand | TH-ID-N | Thailand National ID ( two-sides) |
| TH-ID-PINK (will support later) | Thailand Pink ID (two-sides) | ||
| TH-PP-N | Thailand Passport | ||
| TH-DL-N | Thailand Driver’s License (two-sides) | ||
| IDN | Indonesia | ID-ID-KTP | Indonesia National ID |
| ID-PP-N | Indonesia Passport |
Response Description
the response data structure is similar with Get Result API's Response.
| Parameter | Description |
|---|---|
| code | Response's Status Code |
| transactionId | The request id, the max length is 64 |
| pricingStrategy | Deprecated, Always return FREE |
| message | Status Code Explanation |
| data | object : the business result of Identity Verification |
| extra | Extra response info (Exception Message) |
Response.code
| Status Code | Message |
|---|---|
| SUCCESS | OK |
| PARAMETER_ERROR | Parameter error, please check you input. |
| Parameter should not be empty | |
| Solution code is wrong | |
| Region is wrong | |
| Invalid image format, image format should be one of jpeg/jpg/png, and request content type should be image/jpeg or image/png | |
| Invalid image size, max image size should be less than 2M, and image dimension should be between 256 * 256 and 4096 * 4096 | |
| The image download has exceeded 3 seconds. Please check the network and operate again. | |
| SIGNATURE_NOT_EXIST | This signatureId is not exist. |
| ERROR | Server error. |
Response.data
Field | Description |
|---|---|
signatureId |
|
idvResult |
|
errorCode |
|
docDetail |
|
feeDetail |
|
idvResult
idvResult is the result code of the identity verification, the value is same with DocDetail.orcResult.
| Value | Description |
|---|---|
| PASS | the user passed the identity verification check. |
| FAIL | the user failed the identity verification check. |
errorCode
Response.data.idvResult | Value | Description |
|---|---|---|
PASS | SUCCESS | The user passed the identity verification. |
FAIL | NO_FACE_DETECTED | No face detected on the front image of the document. |
CARD_INFO_MISMATCH | The front part and the back part of the two-side document do not match with each other. | |
ID_FORGERY_DETECTED | The document ( only the front part if the document is two-side) is forgery. | |
NO_SUPPORTED_CARD | The card type detected from the document image is not supported. | |
CARD_TYPE_MISMATCH | The card type detected from the document image doesn't match with the docType | |
CARD_LOW_QUALITY_IMAGE | The document images are too poor to do identity verification. | |
INCOMPLETED_CARD | The card is not completed in the document images. | |
TOO_MANY_CARDS | More than one cards were detected. | |
CARD_NOT_FOUND | Can't detect card from the document image. | |
OCR_NO_RESULT | Can't extract ocr result from the docImages | |
PARAMETER_ERROR | the data submitted by our frontend is not valid. this may indicates a frontend bug. | |
USER_TIMEOUT | User did not complete the operation within the specified time(1 hour) | |
ERROR | Error during processing in our backend. this may indicates a backend bug. |
Response Examples
SUCCESS
{
"code": "SUCCESS",
"message": "OK",
"data": {
"signatureId":"f302f5d2454a85c2",
"idvResult": "PASS",
"errorCode": "SUCCESS",
"docDetail": {
"ocrResult": "PASS",
"docFrontImage": "https://abc.com/idFrontImage.jpg",
"docBackImage": "https://abc.com/idBackImage.jpg",
"ocrInfo": {
"front": {
"gender": "PEREMPUAN",
"name": "****** ******",
"address": "****** ****** ****** ******",
"idNumber": "************",
"religion": "",
"birthday": "1977/10/28",
"citizen": "MYS"
},
"back": {
"secondaryIdNumber": "************"
}
},
"qualityLabels": {
"front": [],
"back": []
},
"forgeryLabels": [
"photocopy"
],
"eventDetails": [
{
"event": "BE_DOCUMENT",
"result": "PASS",
"createTimestmap": 1665993522952
}
]
},
feeDetail: [
{
"name": "SOLUTION",
"type": "SOLUTION"
}
]
},
"extra": null,
"transactionId": "d3fde1547eeaf226",
"pricingStrategy": "FREE"
}{
"code": "SUCCESS",
"message": "OK",
"data": {
"signatureId":"f302f5d2454a85c2",
"idvResult":"FAIL",
"errorCode":"NOT_SUPPORTED_CARD",
"faceDetail": {
"faceResult": null,
"faceImageFar": null,
"faceImageNear": null,
"auditImageUrl": null,
"faceLivenessScore": null,
"faceSimilarityScore": null
},
"docDetail": {
"docResult": null,
"docFrontImage": null,
"docBackImage": null,
"ocrInfo": null,
"qualityLabels": null,
"forgeryLabels": null
},
feeDetail: [
{
"name": "SOLUTION",
"type": "SOLUTION"
}
]
},
"extra": null,
"transactionId": "d3fde1547eeaf226",
"pricingStrategy": "FREE"
}{
"code": "SUCCESS",
"message": "OK",
"data": {
"idvResult": null, // still in processing
"errorCode": null,
"docDetail": {
"ocrResult": "PASS",
"docFrontImage": "https://abc.com/idFrontImage.jpg",
"docBackImage": "https://abc.com/idBackImage.jpg",
"ocrInfo": {
"front": {
"birthday": "OCTOBER 28,1977",
"name": "**************",
"birthdayParsed": "1977/10/28",
"idNumber": "09-*******-*"
},
"back": null
},
"qualityLabels": {
"front": [],
"back": []
},
"forgeryLabels": null, // in processing
"eventDetails": [
{
"event": "BE_DOCUMENT",
"result": "PASS",
"createTimestmap": 1665993522952
}
]
},
feeDetail: [
{
"name": "SOLUTION",
"type": "SOLUTION"
}
]
},
"extra": null,
"transactionId": "d3fde1547eeaf226",
"pricingStrategy": "FREE"
}SIGNATURE_NOT_EXIST
{
"code":"SIGNATURE_NOT_EXIST",
"message":"This signatureId is not exist",
"data":null,
"extra":null,
"transactionId":"b6d722f7e9f553ae",
"pricingStrategy":"FREE"
}ERROR
Updated 24 days ago
