# Verifications

## Verifications

The Verifications action is one of the primary services within the ID3global API. This action enables to submit available information about a data subject and performs an identity verification.

## Input

| Attribute                                         | Type   | Description                                                                 |
| ------------------------------------------------- | ------ | --------------------------------------------------------------------------- |
| [`person`](#person)                               | Object | Personal details of the subject (See Person Details below)                  |
| [`additionalInformation`](#additionalinformation) | Object | Additional information about the subject (See Additional Information below) |

### **person**

| Attribute                           | Type   | Description                                         |
| ----------------------------------- | ------ | --------------------------------------------------- |
| `firstName`                         | String | First name of the subject.                          |
| `middleNames`                       | Array  | Array of middle names (if any).                     |
| `lastNames`                         | Array  | Array of last names.                                |
| `dateOfBirth`                       | String | Date of birth of the subject.                       |
| [`currentAddress`](#currentaddress) | Object | Current address details (See Address Details below) |
| [`phones`](#phones)                 | Array  | Array of phone details (See Phone Details below)    |

### **currentAddress**

| Attribute      | Type   | Description                              |
| -------------- | ------ | ---------------------------------------- |
| `building`     | String | Building number of the current address.  |
| `thoroughfare` | String | Street name of the current address.      |
| `locality`     | String | Locality or city of the current address. |
| `postalCode`   | String | Postal code of the current address.      |
| `country`      | String | Country of the current address.          |

### phones

| Attribute | Type   | Description                     |
| --------- | ------ | ------------------------------- |
| `type`    | String | Type of phone (e.g., Landline). |
| `number`  | String | Phone number.                   |

### additionalInformation

| Attribute                                 | Type  | Description                                                       |
| ----------------------------------------- | ----- | ----------------------------------------------------------------- |
| [`identityDocuments`](#identitydocuments) | Array | Array of identity documents (See Identity Document Details below) |

### **identityDocuments**

| Attribute        | Type   | Description                                      |
| ---------------- | ------ | ------------------------------------------------ |
| `documentType`   | String | Type of identity document (e.g., Identity Card). |
| `documentNumber` | String | Number of the identity document.                 |
| `country`        | String | Country of issuance of the identity document.    |

#### profiles

| Attribute | Type    | Description                        |
| --------- | ------- | ---------------------------------- |
| `id`      | String  | Unique identifier for the profile. |
| `version` | Integer | Version number of the profile.     |

## Example Input

```json
{
    "profiles": [
        {
            "id": "3fe7ba48-ff56-4703-bd8c-961cfcb569c7",
            "version": 1
        }
    ],
    "subject": {
        "person": {
            "firstName": "Jakub",
            "middleNames": [
                "Jan"
            ],
            "lastNames": [
                "Nowak"
            ],
            "dateOfBirth": "1955-07-07",
            "currentAddress": {
                "building": "123",
                "thoroughfare":  "ul. Nowy Świat",
                "locality": "Warsaw",
                "postalCode": "00-373",
                "country": "Poland"
            },
            "phones": [{
                "type": "Landline",
                "number": "+48221234567"
            }]
        },
        "additionalInformation": {
            "identityDocuments": [
                {
                    "documentType": "Identity Card",
                    "documentNumber": "ADX061643",
                    "country": "Poland"
                }
            ]
        }
    }
}
```

## Response Content

| Attribute             | Type   | Description                                            |
| --------------------- | ------ | ------------------------------------------------------ |
| `timestamp`           | String | Timestamp of the authentication result.                |
| `authenticationID`    | String | Unique identifier for the authentication process.      |
| [`profile`](#profile) | Object | Profile information (See Profile Information below)    |
| `country`             | String | Country associated with the authentication result.     |
| [`result`](#result)   | Object | Detailed result information (See Result Details below) |

#### **profile**

| Attribute  | Type    | Description                                |
| ---------- | ------- | ------------------------------------------ |
| `id`       | String  | Unique identifier for the profile.         |
| `name`     | String  | Name of the profile.                       |
| `version`  | Integer | Version number of the profile.             |
| `revision` | Integer | Revision number of the profile.            |
| `state`    | String  | State of the profile (e.g., Test, Active). |

#### **result**

| Attribute                               | Type | Description                                              |
| --------------------------------------- | ---- | -------------------------------------------------------- |
| [`itemCheckResults`](#itemcheckresults) | List | List of item check results (See Item Check Result below) |

#### itemCheckResults

| Attribute                    | Type    | Description                                                 |
| ---------------------------- | ------- | ----------------------------------------------------------- |
| `id`                         | Integer | Unique identifier for the item check result.                |
| `name`                       | String  | Name or identifier of the item check.                       |
| `description`                | String  | Description of the item check.                              |
| [`resultCodes`](#resultcode) | Array   | List of result codes (See Result Code below)                |
| [`flags`](#flags)            | Object  | Flags object indicating the result status (See Flags below) |

#### **resultCode**

| Attribute     | Type    | Description                                   |
| ------------- | ------- | --------------------------------------------- |
| `type`        | String  | Type of result code (e.g., Comment or Match). |
| `code`        | Integer | Numeric code representing the result.         |
| `description` | String  | Description of the result code.               |

#### flags

| Attribute | Type   | Description                                                                                                                                                                                                                                |
| --------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `pass`    | String | Status indicating whether the check passed (e.g., Match).                                                                                                                                                                                  |
| `alert`   | String | Status indicating whether an alert was triggered (e.g., Nomatch).                                                                                                                                                                          |
| `person`  | Object | Object is generated during the verification process based on provided input data. It includes various attributes related to an individual's personal information, with each field containing a status flag indicating a match or no match. |

## Example Response

```json
[
    {
        "timestamp": "2023-10-04T06:25:38.9386341+01:00",
        "authenticationID": "15c6aa68-fae4-4852-a49a-5fbfbdb407ef",
        "profile": {
            "id": "3fe7ba48-ff56-4703-bd8c-961cfcb569c7",
            "name": "0475 Poland ID 1",
            "version": 1,
            "revision": 0,
            "state": "Test"
        },
        "country": "Poland",
        "result": {
            "itemCheckResults": [
                {
                    "id": 475,
                    "name": "Poland ID 1",
                    "description": "Poland identity check searching for a single source match against Forename, Surname, DOB, Address, ID Number, Telephone Number",
                    "resultCodes": [
                        {
                            "type": "Match",
                            "code": 3618,
                            "description": "(Credit) Full Name, DOB, Address and ID Number matched on first source"
                        },
                        {
                            "type": "Match",
                            "code": 3642,
                            "description": "(Commercial) Full Name, DOB, Address and ID Number matched on first source"
                        },
                        {
                            "type": "Match",
                            "code": 3513,
                            "description": "(Credit) Forename valid/matched"
                        },
                        {
                            "type": "Match",
                            "code": 3514,
                            "description": "(Credit) Surname valid/matched"
                        },
                        {
                            "type": "Match",
                            "code": 3515,
                            "description": "(Credit) Date of birth valid/matched"
  
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.transactionlink.io/docs/v1/integrations/gbg/verifications.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
