7.6. Biometrics

This is version 1.5.1 of this interface.

Get the OpenAPI file: abis.yaml

7.6.1. Services

7.6.1.1. CRUD

POST /v1/persons

Create one encounter and generate ID for both the person and the encounter

Scope required: abis.encounter.write

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

  • algorithm (string) – Hint about the algorithm to be used. Object of type string.

Form Parameters
Status Codes

Example request:

POST /v1/persons?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1&algorithm=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: createResponse

POST ${request.query.callback}

Create one encounter and generate both IDs response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
POST /v1/persons/{personId}/encounters

Create one encounter and generate its ID

Create one encounter in the person identified by his/her id. If the person does not yet exist, it is created automatically.

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

  • algorithm (string) – Hint about the algorithm to be used. Object of type string.

Form Parameters
Status Codes

Example request:

POST /v1/persons/{personId}/encounters?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1&algorithm=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: createResponse

POST ${request.query.callback}

Create one encounter and generate its ID response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
GET /v1/persons/{personId}/encounters

Read all encounters of one person

Scope required: abis.encounter.read

Parameters
  • personId (string) – the id of the person. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example request:

GET /v1/persons/{personId}/encounters?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1 HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

[
    {
        "encounterId": "string",
        "status": "ACTIVE",
        "encounterType": "string",
        "galleries": [
            "string"
        ],
        "clientData": "c3RyaW5n",
        "contextualData": {
            "enrollmentDate": "2019-01-11",
            "...": "..."
        },
        "biographicData": {
            "dateOfBirth": "1985-11-30",
            "gender": "M",
            "nationality": "FRA",
            "...": "..."
        },
        "biometricData": [
            {
                "biometricType": "FINGER",
                "biometricSubType": "RIGHT_INDEX",
                "instance": "string",
                "encounterId": "string",
                "image": "c3RyaW5n",
                "imageRef": "http://imageserver.com/image?id=00003",
                "captureDate": "2019-05-21T12:00:00Z",
                "captureDevice": "string",
                "impressionType": "LIVE_SCAN_PLAIN",
                "width": 1,
                "height": 1,
                "bitdepth": 1,
                "mimeType": "string",
                "resolution": 1,
                "compression": "WSQ",
                "missing": [
                    {
                        "biometricSubType": "RIGHT_INDEX",
                        "presence": "BANDAGED"
                    }
                ],
                "metadata": "string",
                "comment": "string",
                "template": "c3RyaW5n",
                "templateRef": "http://dataserver.com/template?id=00014",
                "templateFormat": "string",
                "quality": 1,
                "qualityFormat": "string",
                "algorithm": "string",
                "vendor": "string"
            }
        ]
    }
]

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: readAllResponse

POST ${request.query.callback}

Read all encounters response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
  • body – Encounter data. Array of Encounter.

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

[
    {
        "status": "ACTIVE",
        "encounterType": "string",
        "galleries": [
            "string"
        ],
        "clientData": "c3RyaW5n",
        "contextualData": {
            "enrollmentDate": "2019-01-11",
            "...": "..."
        },
        "biographicData": {
            "dateOfBirth": "1985-11-30",
            "gender": "M",
            "nationality": "FRA",
            "...": "..."
        },
        "biometricData": [
            {
                "biometricType": "FINGER",
                "biometricSubType": "RIGHT_INDEX",
                "instance": "string",
                "image": "c3RyaW5n",
                "imageRef": "http://imageserver.com/image?id=00003",
                "captureDate": "2019-05-21T12:00:00Z",
                "captureDevice": "string",
                "impressionType": "LIVE_SCAN_PLAIN",
                "width": 1,
                "height": 1,
                "bitdepth": 1,
                "mimeType": "string",
                "resolution": 1,
                "compression": "WSQ",
                "missing": [
                    {
                        "biometricSubType": "RIGHT_INDEX",
                        "presence": "BANDAGED"
                    }
                ],
                "metadata": "string",
                "comment": "string",
                "template": "c3RyaW5n",
                "templateRef": "http://dataserver.com/template?id=00014",
                "templateFormat": "string",
                "quality": 1,
                "qualityFormat": "string",
                "algorithm": "string",
                "vendor": "string"
            }
        ]
    }
]

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
POST /v1/persons/{personId}/encounters/{encounterId}

Create one encounter

Create one encounter in the person identified by his/her id. If the person does not yet exist, it is created automatically.

If the encounter already exists, an error 409 is returned.

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

  • algorithm (string) – Hint about the algorithm to be used. Object of type string.

Form Parameters
Status Codes

Example request:

POST /v1/persons/{personId}/encounters/{encounterId}?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1&algorithm=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: createResponse

POST ${request.query.callback}

Create one encounter response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
GET /v1/persons/{personId}/encounters/{encounterId}

Read one encounter

Scope required: abis.encounter.read

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example request:

GET /v1/persons/{personId}/encounters/{encounterId}?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1 HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "encounterId": "string",
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "encounterId": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: readResponse

POST ${request.query.callback}

Read one encounter response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
  • body – Encounter data. Object of type Encounter.

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
PUT /v1/persons/{personId}/encounters/{encounterId}

Update one encounter

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

  • algorithm (string) – Hint about the algorithm to be used. Object of type string.

Form Parameters
Status Codes

Example request:

PUT /v1/persons/{personId}/encounters/{encounterId}?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1&algorithm=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "status": "ACTIVE",
    "encounterType": "string",
    "galleries": [
        "string"
    ],
    "clientData": "c3RyaW5n",
    "contextualData": {
        "enrollmentDate": "2019-01-11",
        "...": "..."
    },
    "biographicData": {
        "dateOfBirth": "1985-11-30",
        "gender": "M",
        "nationality": "FRA",
        "...": "..."
    },
    "biometricData": [
        {
            "biometricType": "FINGER",
            "biometricSubType": "RIGHT_INDEX",
            "instance": "string",
            "image": "c3RyaW5n",
            "imageRef": "http://imageserver.com/image?id=00003",
            "captureDate": "2019-05-21T12:00:00Z",
            "captureDevice": "string",
            "impressionType": "LIVE_SCAN_PLAIN",
            "width": 1,
            "height": 1,
            "bitdepth": 1,
            "mimeType": "string",
            "resolution": 1,
            "compression": "WSQ",
            "missing": [
                {
                    "biometricSubType": "RIGHT_INDEX",
                    "presence": "BANDAGED"
                }
            ],
            "metadata": "string",
            "comment": "string",
            "template": "c3RyaW5n",
            "templateRef": "http://dataserver.com/template?id=00014",
            "templateFormat": "string",
            "quality": 1,
            "qualityFormat": "string",
            "algorithm": "string",
            "vendor": "string"
        }
    ]
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: updateResponse

POST ${request.query.callback}

Update one encounter response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "personId": "string",
    "encounterId": "string",
    "others": {
        "...": "..."
    }
}

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
DELETE /v1/persons/{personId}/encounters/{encounterId}

Delete one encounter

Delete one encounter from the person identified by his/her id. If this is the last encounter in the person, the person is also deleted.

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: deleteResponse

POST ${request.query.callback}

Delete one encounter response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
POST /v1/persons/{personIdTarget}/merge/{personIdSource}

Merge two sets of encounters

Merge two sets of encounters into a single set. Merging a set of N encounters with a set of M encounters will result in a single set of N+M encounters. Encounter ID are preserved and in case of duplicates an error 409 is returned and no changes are done.

Scope required: abis.encounter.write

Parameters
  • personIdTarget (string) – the id of the person receiving new encounters. Object of type string.

  • personIdSource (string) – the id of the person giving the encounters. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: mergeResponse

POST ${request.query.callback}

Merge two persons response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
POST /v1/persons/{personIdTarget}/move/{personIdSource}/encounters/{encounterId}

Move one encounter

Move one encounter from the source person to the target person. Encounter ID is preserved and in case of duplicate an error 409 is returned and no changes are done.

Scope required: abis.encounter.write

Parameters
  • personIdTarget (string) – the id of the person receiving the encounter. Object of type string.

  • personIdSource (string) – the id of the person giving the encounter. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: mergeResponse

POST ${request.query.callback}

Merge two persons response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
PUT /v1/persons/{personId}/encounters/{encounterId}/status

Update status of an encounter

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • status (string) – New status of encounter. Object of type string. (Required)

  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

Status Codes

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: updateEncounterStatusResponse

POST ${request.query.callback}

Update encounter status response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
PUT /v1/persons/{personId}/encounters/{encounterId}/galleries

Update the galleries of an encounter

This service is used to move one encounter from one gallery to another one without updating the full encounter, which maybe resource consuming in a biometric system.

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

Form Parameters
  • body – Array of string.

Status Codes

Example request:

PUT /v1/persons/{personId}/encounters/{encounterId}/galleries?transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback HTTP/1.1
Host: example.com
Content-Type: application/json

[
    "VIP",
    "CRIMINAL"
]

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: updateEncounterGalleriesResponse

POST ${request.query.callback}

Update encounter galleries response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
GET /v1/persons/{personId}/encounters/{encounterId}/templates

Read biometrics templates

Scope required: abis.encounter.read

Parameters
  • personId (string) – the id of the person. Object of type string.

  • encounterId (string) – the id of the encounter. Object of type string.

Query Parameters
  • biometricType (string) – the type of biometrics to return. Object of type string. Constraints: possible values are FACE, FINGER, IRIS, SIGNATURE, UNKNOWN.

  • biometricSubType (string) – the sub-type of biometrics to return. Object of type string. Constraints: possible values are UNKNOWN, RIGHT_THUMB, RIGHT_INDEX, RIGHT_MIDDLE, RIGHT_RING, RIGHT_LITTLE, LEFT_THUMB, LEFT_INDEX, LEFT_MIDDLE, LEFT_RING, LEFT_LITTLE, PLAIN_RIGHT_FOUR_FINGERS, PLAIN_LEFT_FOUR_FINGERS, PLAIN_THUMBS, UNKNOWN_PALM, RIGHT_FULL_PALM, RIGHT_WRITERS_PALM, LEFT_FULL_PALM, LEFT_WRITERS_PALM, RIGHT_LOWER_PALM, RIGHT_UPPER_PALM, LEFT_LOWER_PALM, LEFT_UPPER_PALM, RIGHT_OTHER, LEFT_OTHER, RIGHT_INTERDIGITAL, RIGHT_THENAR, RIGHT_HYPOTHENAR, LEFT_INTERDIGITAL, LEFT_THENAR, LEFT_HYPOTHENAR, RIGHT_INDEX_AND_MIDDLE, RIGHT_MIDDLE_AND_RING, RIGHT_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE, LEFT_MIDDLE_AND_RING, LEFT_RING_AND_LITTLE, RIGHT_INDEX_AND_LEFT_INDEX, RIGHT_INDEX_AND_MIDDLE_AND_RING, RIGHT_MIDDLE_AND_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE_AND_RING, LEFT_MIDDLE_AND_RING_AND_LITTLE, EYE_UNDEF, EYE_RIGHT, EYE_LEFT, EYE_BOTH, PORTRAIT, LEFT_PROFILE, RIGHT_PROFILE.

  • instance (string) – Used to separate two distincts biometric items of the same type and subtype. Object of type string.

  • templateFormat (string) – the format of the template to return. Object of type string. Format of the template. One of ISO_19794_2, ISO_19794_2_NS, ISO_19794_2_CS, ISO_19794_2_2011, ANSI_378_2009 or ANSI_378. Can be extended to include additional proprietary template format.

  • qualityFormat (string) – the format of the quality to return. Object of type string. Format of the quality. One of ISO_19794, NFIQ, or NFIQ2. Can be extended to include additional proprietary quality format.

  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example request:

GET /v1/persons/{personId}/encounters/{encounterId}/templates?biometricType=FINGER&biometricSubType=RIGHT_INDEX&instance=string&templateFormat=string&qualityFormat=string&transactionId=string&callback=http%3A%2F%2Fclient.com%2Fcallback&priority=1 HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

[
    {
        "biometricType": "FINGER",
        "biometricSubType": "RIGHT_INDEX",
        "instance": "string",
        "template": "c3RyaW5n",
        "templateFormat": "string",
        "quality": 1,
        "qualityFormat": "string",
        "algorithm": "string",
        "vendor": "string"
    }
]

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: readTemplateResponse

POST ${request.query.callback}

Read biometrics templates response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Form Parameters
Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

[
    {
        "biometricType": "FINGER",
        "biometricSubType": "RIGHT_INDEX",
        "instance": "string",
        "template": "c3RyaW5n",
        "templateFormat": "string",
        "quality": 1,
        "qualityFormat": "string",
        "algorithm": "string",
        "vendor": "string"
    }
]

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}
DELETE /v1/persons/{personId}

Delete a person and all its encounters

Scope required: abis.encounter.write

Parameters
  • personId (string) – the id of the person. Object of type string.

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • callback (string) – the callback address, where the result will be sent when available. Object of type string/uri.

  • priority (integer) – the request priority (0: lowest priority; 9: highest priority). Object of type integer.

Status Codes

Example response:

HTTP/1.1 202 Accepted
Content-Type: application/json

{
    "taskId": "123e4567-e89b-12d3-a456-426655440000",
    "others": {
        "...": "..."
    }
}

Example response:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

Callback: deleteResponse

POST ${request.query.callback}

Delete a person response callback

Query Parameters
  • transactionId (string) – The id of the transaction. Object of type string. (Required)

  • taskId (string) – The id of the task, used to match this response with the request. Object of type string. (Required)

Status Codes

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/json

"OK"

Example request:

POST ${request.query.callback}?transactionId=string&taskId=string HTTP/1.1
Host: example.com
Content-Type: application/error+json

{
    "code": 1,
    "message": "string"
}

Example response:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
    "code": 1,
    "message": "string"
}

7.6.2. Data Model

7.6.2.1. Error

Table 7.29 Error

Attribute

Type

Description

Required

code

integer/int32

Error code.

Yes

message

string

Error message.

Yes

7.6.2.2. Encounter

Table 7.30 Encounter

Attribute

Type

Description

Required

encounterId

string

Constraints: read only

Yes

status

string

Constraints: possible values are ACTIVE, INACTIVE

Yes

encounterType

string

Type of the encounter.

Yes

galleries

Array of string

The list of galleries for this object. Constraints: minItems is 1; items must be unique

clientData

string/byte

contextualData

Object of type ContextualData

biographicData

Object of type BiographicData

The set of biographic data.

biometricData

Array of BiometricData

Yes

7.6.2.3. ContextualData

Table 7.31 ContextualData

Attribute

Type

Description

Required

*

Additional properties

Example #1:

{
  "enrollmentDate": "2019-01-11"
}

7.6.2.4. BiographicData

The set of biographic data.

Table 7.32 BiographicData

Attribute

Type

Description

Required

*

Additional properties

Example #1:

{
  "dateOfBirth": "1985-11-30",
  "gender": "M",
  "nationality": "FRA"
}

7.6.2.5. BiometricData

Table 7.33 BiometricData

Attribute

Type

Description

Required

biometricType

string

Constraints: possible values are FACE, FINGER, IRIS, SIGNATURE, UNKNOWN

Yes

biometricSubType

string

Constraints: possible values are UNKNOWN, RIGHT_THUMB, RIGHT_INDEX, RIGHT_MIDDLE, RIGHT_RING, RIGHT_LITTLE, LEFT_THUMB, LEFT_INDEX, LEFT_MIDDLE, LEFT_RING, LEFT_LITTLE, PLAIN_RIGHT_FOUR_FINGERS, PLAIN_LEFT_FOUR_FINGERS, PLAIN_THUMBS, UNKNOWN_PALM, RIGHT_FULL_PALM, RIGHT_WRITERS_PALM, LEFT_FULL_PALM, LEFT_WRITERS_PALM, RIGHT_LOWER_PALM, RIGHT_UPPER_PALM, LEFT_LOWER_PALM, LEFT_UPPER_PALM, RIGHT_OTHER, LEFT_OTHER, RIGHT_INTERDIGITAL, RIGHT_THENAR, RIGHT_HYPOTHENAR, LEFT_INTERDIGITAL, LEFT_THENAR, LEFT_HYPOTHENAR, RIGHT_INDEX_AND_MIDDLE, RIGHT_MIDDLE_AND_RING, RIGHT_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE, LEFT_MIDDLE_AND_RING, LEFT_RING_AND_LITTLE, RIGHT_INDEX_AND_LEFT_INDEX, RIGHT_INDEX_AND_MIDDLE_AND_RING, RIGHT_MIDDLE_AND_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE_AND_RING, LEFT_MIDDLE_AND_RING_AND_LITTLE, EYE_UNDEF, EYE_RIGHT, EYE_LEFT, EYE_BOTH, PORTRAIT, LEFT_PROFILE, RIGHT_PROFILE

instance

string

Used to separate two distincts biometric items of the same type and subtype.

encounterId

string

the id of the encounter owner of this biometric. Constraints: read only

image

string/byte

Base64-encoded image.

imageRef

string/uri

URI to an image.

captureDate

string/date-time

captureDevice

string

A string identifying the device used to capture the biometric.

impressionType

string

Constraints: possible values are LIVE_SCAN_PLAIN, LIVE_SCAN_ROLLED, NONLIVE_SCAN_PLAIN, NONLIVE_SCAN_ROLLED, LATENT_IMPRESSION, LATENT_TRACING, LATENT_PHOTO, LATENT_LIFT, LIVE_SCAN_SWIPE, LIVE_SCAN_VERTICAL_ROLL, LIVE_SCAN_PALM, NONLIVE_SCAN_PALM, LATENT_PALM_IMPRESSION, LATENT_PALM_TRACING, LATENT_PALM_PHOTO, LATENT_PALM_LIFT, LIVE_SCAN_OPTICAL_CONTACTLESS_PLAIN, OTHER, UNKNOWN

width

integer

the width of the image.

height

integer

the height of the image.

bitdepth

integer

mimeType

string

the nature and format of the image. The mime type definitions should be in compliance with RFC 6838.

resolution

integer

the image resolution (in DPI).

compression

string

Constraints: possible values are NONE, WSQ, JPEG, JPEG2000, PNG

missing

Array of MissingType

Optional properties indicating if a part of the biometric data is missing.

metadata

string

An optional string used to convey information vendor-specific.

comment

string

A comment about the biometric data.

template

string/byte

Base64-encoded template.

templateRef

string/uri

URI to the template when it is managed in a dedicated data server.

templateFormat

string

Format of the template. One of ISO_19794_2, ISO_19794_2_NS, ISO_19794_2_CS, ISO_19794_2_2011, ANSI_378_2009 or ANSI_378. Can be extended to include additional proprietary template format.

quality

integer/int64

Quality, as a number, of the biometric.

qualityFormat

string

Format of the quality. One of ISO_19794, NFIQ, or NFIQ2. Can be extended to include additional proprietary quality format.

algorithm

string

vendor

string

7.6.2.6. MissingType

Table 7.34 MissingType

Attribute

Type

Description

Required

biometricSubType

string

Constraints: possible values are UNKNOWN, RIGHT_THUMB, RIGHT_INDEX, RIGHT_MIDDLE, RIGHT_RING, RIGHT_LITTLE, LEFT_THUMB, LEFT_INDEX, LEFT_MIDDLE, LEFT_RING, LEFT_LITTLE, PLAIN_RIGHT_FOUR_FINGERS, PLAIN_LEFT_FOUR_FINGERS, PLAIN_THUMBS, UNKNOWN_PALM, RIGHT_FULL_PALM, RIGHT_WRITERS_PALM, LEFT_FULL_PALM, LEFT_WRITERS_PALM, RIGHT_LOWER_PALM, RIGHT_UPPER_PALM, LEFT_LOWER_PALM, LEFT_UPPER_PALM, RIGHT_OTHER, LEFT_OTHER, RIGHT_INTERDIGITAL, RIGHT_THENAR, RIGHT_HYPOTHENAR, LEFT_INTERDIGITAL, LEFT_THENAR, LEFT_HYPOTHENAR, RIGHT_INDEX_AND_MIDDLE, RIGHT_MIDDLE_AND_RING, RIGHT_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE, LEFT_MIDDLE_AND_RING, LEFT_RING_AND_LITTLE, RIGHT_INDEX_AND_LEFT_INDEX, RIGHT_INDEX_AND_MIDDLE_AND_RING, RIGHT_MIDDLE_AND_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE_AND_RING, LEFT_MIDDLE_AND_RING_AND_LITTLE, EYE_UNDEF, EYE_RIGHT, EYE_LEFT, EYE_BOTH, PORTRAIT, LEFT_PROFILE, RIGHT_PROFILE

presence

string

Constraints: possible values are BANDAGED, AMPUTATED, DAMAGED

7.6.2.7. BiometricComputedData

Table 7.35 BiometricComputedData

Attribute

Type

Description

Required

biometricType

string

Constraints: possible values are FACE, FINGER, IRIS, SIGNATURE, UNKNOWN

Yes

biometricSubType

string

Constraints: possible values are UNKNOWN, RIGHT_THUMB, RIGHT_INDEX, RIGHT_MIDDLE, RIGHT_RING, RIGHT_LITTLE, LEFT_THUMB, LEFT_INDEX, LEFT_MIDDLE, LEFT_RING, LEFT_LITTLE, PLAIN_RIGHT_FOUR_FINGERS, PLAIN_LEFT_FOUR_FINGERS, PLAIN_THUMBS, UNKNOWN_PALM, RIGHT_FULL_PALM, RIGHT_WRITERS_PALM, LEFT_FULL_PALM, LEFT_WRITERS_PALM, RIGHT_LOWER_PALM, RIGHT_UPPER_PALM, LEFT_LOWER_PALM, LEFT_UPPER_PALM, RIGHT_OTHER, LEFT_OTHER, RIGHT_INTERDIGITAL, RIGHT_THENAR, RIGHT_HYPOTHENAR, LEFT_INTERDIGITAL, LEFT_THENAR, LEFT_HYPOTHENAR, RIGHT_INDEX_AND_MIDDLE, RIGHT_MIDDLE_AND_RING, RIGHT_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE, LEFT_MIDDLE_AND_RING, LEFT_RING_AND_LITTLE, RIGHT_INDEX_AND_LEFT_INDEX, RIGHT_INDEX_AND_MIDDLE_AND_RING, RIGHT_MIDDLE_AND_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE_AND_RING, LEFT_MIDDLE_AND_RING_AND_LITTLE, EYE_UNDEF, EYE_RIGHT, EYE_LEFT, EYE_BOTH, PORTRAIT, LEFT_PROFILE, RIGHT_PROFILE

instance

string

Used to separate two distincts biometric items of the same type and subtype.

template

string/byte

Base64-encoded template.

Yes

templateFormat

string

Format of the template. One of ISO_19794_2, ISO_19794_2_NS, ISO_19794_2_CS, ISO_19794_2_2011, ANSI_378_2009 or ANSI_378. Can be extended to include additional proprietary template format.

quality

integer/int64

Quality, as a number, of the biometric.

qualityFormat

string

Format of the quality. One of ISO_19794, NFIQ, or NFIQ2. Can be extended to include additional proprietary quality format.

algorithm

string

vendor

string

7.6.2.8. Filter

Table 7.36 Filter

Attribute

Type

Description

Required

*

Additional properties

Example #1:

{
  "dateOfBirthMin": "1980-01-01",
  "dateOfBirthMax": "2019-12-31"
}

7.6.2.9. Candidate

Identification of a candidate result of a biometric search. This structure can be extended by vendors able to include additional information to the three mandatory properties.

Table 7.37 Candidate

Attribute

Type

Description

Required

personId

string

the identifier of the person.

Yes

rank

integer/int32

the rank of the candidate in relation to other candidates for the same biometric identification operation.

Yes

score

number/float

the score of the candidate in relation to other candidates for the same biometric identification operation.

Yes

scores

Array of ScoreDetail

a list of comparison score(s) and optionally the type and subtype of the relating biometric.

others.*

Additional properties

7.6.2.10. ScoreDetail

Scoring information calculated after a biometric search. It includes at least the score (a float) and optionnally the encounterId, type and subtype of the matching bometric item. It can also be extended with proprietary information to better describe the matching result (for instance: rotation needed to align the probe and the candidate)

Table 7.38 ScoreDetail

Attribute

Type

Description

Required

score

number/float

the score.

Yes

encounterId

string

biometricType

string

Constraints: possible values are FACE, FINGER, IRIS, SIGNATURE, UNKNOWN

biometricSubType

string

Constraints: possible values are UNKNOWN, RIGHT_THUMB, RIGHT_INDEX, RIGHT_MIDDLE, RIGHT_RING, RIGHT_LITTLE, LEFT_THUMB, LEFT_INDEX, LEFT_MIDDLE, LEFT_RING, LEFT_LITTLE, PLAIN_RIGHT_FOUR_FINGERS, PLAIN_LEFT_FOUR_FINGERS, PLAIN_THUMBS, UNKNOWN_PALM, RIGHT_FULL_PALM, RIGHT_WRITERS_PALM, LEFT_FULL_PALM, LEFT_WRITERS_PALM, RIGHT_LOWER_PALM, RIGHT_UPPER_PALM, LEFT_LOWER_PALM, LEFT_UPPER_PALM, RIGHT_OTHER, LEFT_OTHER, RIGHT_INTERDIGITAL, RIGHT_THENAR, RIGHT_HYPOTHENAR, LEFT_INTERDIGITAL, LEFT_THENAR, LEFT_HYPOTHENAR, RIGHT_INDEX_AND_MIDDLE, RIGHT_MIDDLE_AND_RING, RIGHT_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE, LEFT_MIDDLE_AND_RING, LEFT_RING_AND_LITTLE, RIGHT_INDEX_AND_LEFT_INDEX, RIGHT_INDEX_AND_MIDDLE_AND_RING, RIGHT_MIDDLE_AND_RING_AND_LITTLE, LEFT_INDEX_AND_MIDDLE_AND_RING, LEFT_MIDDLE_AND_RING_AND_LITTLE, EYE_UNDEF, EYE_RIGHT, EYE_LEFT, EYE_BOTH, PORTRAIT, LEFT_PROFILE, RIGHT_PROFILE

instance

string

Used to separate two distincts biometric items of the same type and subtype.

others.*

Additional properties

7.6.2.11. PersonIds

Table 7.39 PersonIds

Attribute

Type

Description

Required

personId

string

Yes

encounterId

string

Yes

7.6.2.12. ExtendablePersonIds

The IDs of a record (personId and encounterId) extendable with additional properties if needed by an implementation. This is used for the response of insert & update operations, when additional properties (such as: quality evaluation, proof of record, etc.) might be returned by the server.

Table 7.40 ExtendablePersonIds

Attribute

Type

Description

Required

personId

string

Yes

encounterId

string

Yes

others.*

Additional properties

7.6.2.13. TaskId

Information about the asynchronous result. Only the taskId is mandatory but the implementation is free to return additional details such as: expected duration, URL to monitor the task, etc.

Table 7.41 TaskId

Attribute

Type

Description

Required

taskId

string

Yes

others.*

Additional properties