Kredibel API
  • Home
  • Knowledge Base
    • Security
    • Scoring Engine
    • Blacklist & Whitelist
    • Team Management
  • API Guide
  • Getting Started
  • Environment
  • Authorization
  • Responses & Errors
  • API References
    • Account Screening
      • Watchlist Screening
      • Bank Account
      • Phone Number
      • Email Address
      • IP Address
    • Electronic Certificate
      • Certificate Issuance
    • Identity Verification [Deprecated]
      • Biometric Verification
      • Demography Verification
      • Full Verification
    • Text Recognition
      • National Identity
      • Driver License
      • Passport
    • Face Recognition
      • Face Comparison
    • Billing
      • Credit
Powered by GitBook
On this page
  • Endpoints
  • Headers
  • Request
  • Response
  • Errors

Was this helpful?

  1. API References
  2. Identity Verification [Deprecated]

Full Verification

Demography and Biometric verification to dukcapil database.

PreviousDemography VerificationNextText Recognition

Last updated 11 months ago

Was this helpful?

This module only support verification for indonesian identity card (KTP)

Endpoints

Method

URL

POST

$synapses/v1/identity/verification/full

Headers

Header

Value

Content-Type

application/json

Authorization

Request

Field

Type

Description

identityId

(required)

String (len: 16)

Nomor induk kependudukan (NIK).

fullName

(required)

String

Full name.

birthPlace (required)

String

Birth Place.

birthDate (required)

String (format: yyyy-mm-dd)

Birth Date.

address (required)

String

Address.

faceImage

(required)

Base64

Image binary encoded in base64 without <data:image/png;>. - Supports: JPG, JPEG, PNG, SVG - Max Size: 1MB

threshold (optional)

Float (0-1)

Matched threshold for demography data (fullName, birthPlace, address) - 0=0% match, 0.5=50% match, 1=100% match

faceThreshold (optional)

(0-1)

Matched threshold for biometric data (face) - 0=0% match, 0.5=50% match, 1=100% match

{
    "identityId": "1234567890123456",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}

Testing

In the sandbox environment, we only response api call with dummy data. To get valid response data, you can use our production environment instead.

You can use identityId=1234567890123456 to produce all-match result.

Example:

{
    "identityId": "1234567890123456",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "57746ec6-8b36-404c-890f-8a683f2372ef",
        "identityId": "1234567890123456",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": true,
            "fullNameSimilarity": 1.0,
            "address": true,
            "addressSimilarity": 1.0,
            "birthPlace": true,
            "birthPlaceSimilarity": 1.0,
            "birthDate": true,
            "face": true,
            "face_similarity": 1.0
        }
    }
}

You can use any identityId except 1234567890123456 to produce identity not valid result.

Example:

{
    "identityId": "1234567890123450",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "f9f66616-12f0-402f-93bf-5b7f165ab23d",
        "identityId": "1234567890123450",
        "isValid": false,
        "isActive": false,
        "response": {}
    }
}

You can use identityId =1234567890123451 to produce full name is not valid.

Example:

{
    "identityId": "1234567890123451",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "df25614d-dce8-436e-9318-b3ac9bbda179",
        "identityId": "1234567890123451",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": false,
            "fullNameSimilarity": 0.43,
            "address": true,
            "addressSimilarity": 1.0,
            "birthPlace": true,
            "birthPlaceSimilarity": 1.0,
            "birthDate": true,
            "face": false,
            "face_similarity": 0.12
        }
    }
}

You can use identityId=234567890123452 to produce address is not valid.

Example:

{
    "identityId": "1234567890123452",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "b26ebc48-20fa-4f53-8bb4-652058def9b0",
        "identityId": "1234567890123452",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": true,
            "fullNameSimilarity": 1.0,
            "address": true,
            "addressSimilarity": 0.58,
            "birthPlace": true,
            "birthPlaceSimilarity": 1.0,
            "birthDate": true,
            "face": false,
            "face_similarity": 0.73
        }
    }
}

You can use identityId=234567890123453 to produce birth place is not valid.

Example:

{
    "identityId": "1234567890123453",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "6fbf106c-ad7e-4371-8571-3e9615a9590d",
        "identityId": "1234567890123453",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": true,
            "fullNameSimilarity": 1.0,
            "address": true,
            "addressSimilarity": 1.0,
            "birthPlace": false,
            "birthPlaceSimilarity": 0.23,
            "birthDate": true,
            "face": false,
            "face_similarity": 0.65
        }
    }
}

You can use identityId=234567890123454 to produce birth date is not valid.

Example:

{
    "identityId": "1234567890123454",
    "fullName": "ASEP SUPRIYADI",
    "address": "JL SESAMA NO 123",
    "birthPlace": "JAKARTA",
    "birthDate": "1990-07-06",
    "faceImage": "<base64>"
}
{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "84ede311-7eb7-462b-80ae-0795fafcf368",
        "identityId": "1234567890123454",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": true,
            "fullNameSimilarity": 1.0,
            "address": true,
            "addressSimilarity": 1.0,
            "birthPlace": true,
            "birthPlaceSimilarity": 1.0,
            "birthDate": true,
            "face": false,
            "face_similarity": 0.46
        }
    }
}

Response

Field

Type

Description

id

String

Unique identifier.

identityId

String

Nomor induk kependudukan (NIK).

isValid

Boolean

Return true if identityId is exist in the Dukcapil database.

isActive

Boolean

Return true if identityId is active in the Dukcapil database.

response:fullName

Boolean

Return true if input fullName match with the fullName in Dukcapil database.

response:fullNameSimilarity

Float (0-1)

Similarity between the input fullName and the fullName in Dukcapil database.

response:address

Boolean

Return true if input birth date match with the birth date in Dukcapil database.

response:addressSimilarity

Float (0-1)

Similarity between the input address and the address in Dukcapil database.

response:birthPlace

Boolean

Return true if input birth place match with the birth place in Dukcapil database.

response:birthPlaceSimilarity

Float (0-1)

Similarity between the input birthPlace and the birthPlace in Dukcapil database.

response:birthDate

Boolean

Return true if input birth date match with the birth date in Dukcapil database.

response:face

Boolean

Return true if input face match with the face in dukcapil database. - Default threshold: >= 0.75: True

response:faceSimilarity

Float (0-1)

Similarity between the input face and the face in Dukcapil database. - Default threshold: >= 0.8: True

{
    "message": "Identity full verification succeeded.",
    "data": {
        "id": "68224a77-60f4-40f6-85ff-35801f4d6541",
        "identityId": "1234567890123451",
        "isValid": true,
        "isActive": true,
        "response": {
            "fullName": false,
            "fullNameSimilarity": 0.43,
            "address": true,
            "addressSimilarity": 1.0,
            "birthPlace": true,
            "birthPlaceSimilarity": 1.0,
            "birthDate": true,
            "face": true,
            "faceSimilarity": 0.81
        }
    }
}

Errors

Error 4XX

Error Type
Description
Is charged?

invalid_base64_encoding

Invalid base64 encoding.

False

image_too_large

Input image is greater than the maximum size allowed.

False

no_face_detected

No face was detected from the input image or the input image is blurry.

True

request_error

Cannot get response from Dukcapil server.

False

{
   "errors":{
      "errorId": <log_id:uuid>,
      "errorType": <error_type:str>
   },
   "message": <message:str>
}

Error 5XX

For every 5XX http code response, there will be no charge.

Bearer

Please read this to know more about response.

page <Responses & Errors>
YOUR_API_KEY