# Identity Verification Report

The Identity Verification report offers a detailed summary of the fields extracted from the signer-uploaded document for a specified signer. This report is accessible upon either successful or failed completion of the verification process by the signer and is only accessible to the sender.

{% post /%}
{% path text="/v1/identityVerification/report" /%}

## Code snippet

{% codetab %}

cURL

```shell
curl -X POST 'https://api.boldsign.com/v1/identityVerification/report?documentId=55a6f0cf-xxx-xxxx-xxxx-796d02cb0977' \
-h 'accept: application/json' \
-h 'X-API-KEY: {your-api-key}' \
-h 'Content-Type: application/json' \
-d '{
    "EmailId": "alex.gayle@cubeflakes.com",
    "Order": 1
}'
```

C#

```csharp
var apiClient = new ApiClient("https://api.boldsign.com", "{your-api-key}");
var idVerificationClient = new IdVerificationClient(apiClient);

var documentId = "55a6f0cf-xxx-xxxx-xxxx-796d02cb0977";

var verificationReportRequest = new VerificationReportRequest()
{
    EmailId = "alex.gayle@cubeflakes.com",
    Order = 1,
};

var idVerificationReport = idVerificationClient.GetReport(documentId, verificationReportRequest);
```

Python

```python

import boldsign

configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key = "YOUR_API_KEY")

with boldsign.ApiClient(configuration) as api_client:
  identity_verification_api = boldsign.IdentityVerificationApi(api_client)
  identity_verification_report = boldsign.VerificationDataRequest(
      emailId="david@cubeflakes.com",
      countryCode="+91",
      phoneNumber="9876678921",
      order=1
  )
  report_response = identity_verification_api.report("YOUR_DOCUMENT_ID", identity_verification_report)
```

PHP

```php
<?php

require 'vendor/autoload.php';

$config = new BoldSign\Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');

$apiInstance = new BoldSign\Api\IdentityVerificationApi($config);

$verification_report_request  = new \BoldSign\Model\VerificationDataRequest();
$verification_report_request ->setEmailId("hankwhite@cubeflakes.com");
$verification_report_request ->setCountryCode("+91");
$verification_report_request ->setPhoneNumber("9999768299");
$verification_report_request ->setOrder(1);
$result = $apiInstance->report("YOUR_DOCUMENT_ID", $verification_report_request);
```

NodeJS

```js
import { IdentityVerificationApi, VerificationDataRequest} from "boldsign";

const identityVerificationApi = new IdentityVerificationApi("https://api.boldsign.com");
identityVerificationApi.setApiKey("YOUR_API_KEY");

var data_request = new VerificationDataRequest();
data_request.emailId = "luthercooper@cubeflakes.com";
data_request.countryCode = "+91";
data_request.phoneNumber = "8973782972";

var verification_report = identityVerificationApi.report("YOUR_DOCUMENT_ID",data_request);
```

Java

```java
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");

IdentityVerificationApi identityVerificationApi = new IdentityVerificationApi(apiClient);

VerificationDataRequest verificationDataRequest = new VerificationDataRequest();
verificationDataRequest.setEmailId("luthercooper@cubeflakes.com");
verificationDataRequest.setCountryCode("+91");
verificationDataRequest.setPhoneNumber("6543278901");

IdReport verificationReport = identityVerificationApi.report("YOUR_DOCUMENT_ID",verificationDataRequest);
```

{% /codetab %}

## Query parameters

{% nestedtable %}

- {% arguments name="documentId" /%}{% batch datatype="string" /%} {% required /%}
- The document ID of the signer uploaded document for which the report is to be fetched.

---

{% /nestedtable %}

## Request body

{% nestedtable %}

- {% arguments name="EmailId" /%}{% batch datatype="string" /%}
- The email address of the user for which the report is to be fetched. Required when Email delivery mode is assigned for the signer.

---

- {% arguments name="CountryCode" /%}{% batch datatype="string" /%}
- The country code of the user for which the report is to be fetched. Required when SMS delivery mode is assigned for the signer.

---

- {% arguments name="PhoneNumber" /%}{% batch datatype="string" /%}
- The phone number of the user for which the report is to be fetched. Required when SMS delivery mode is assigned for the signer.

---

- {% arguments name="Order" /%}{% batch datatype="integer" /%}
- The order of the signer.

---

- {% arguments name="OnBehalfOf" /%}{% batch datatype="string" /%}
- The email address of the user on behalf of whom the report is to be fetched. Required when the sender is fetching the report on behalf of the sender identity.

---

{% /nestedtable %}

## Example response

***200 Success***

```json
{
  "verificationResult": "requires_input",
  "verifiedDate": "2025-08-28T10:16:24Z",
  "error": {
    "code": "document_unverified_other",
    "message": "The document is invalid."
  },
  "document": {
    "type": "passport",
    "firstName": "Jenny",
    "lastName": "Rosen",
    "country": "US",
    "documentNumber": "000000000",
    "address": null,
    "dob": null,
    "issuedDate": {
      "day": 1,
      "month": 1,
      "year": 2015
    },
    "expirationDate": {
      "day": 12,
      "month": 1,
      "year": 2030
    },
    "documentFiles": [
      "5f9afa85-4a64-4702-93f6-5240ff84ffd3"
    ],
    "selfieFile": "831f420f-a865-4120-9d0f-5b3db3a74b78"
  }
}
```
## Error code response

When identity verification fails, the response return an error code along with a descriptive message. Below are some of the potential error codes you may encounter.

{% nestedtable %}

- {% arguments name="Error Code" /%}
- {% arguments name="Description" /%}

---

- `consent_declined`
- The user declined to proceed with the identity verification process.

---

- `under_supported_age`
- The user is below the minimum age required for identity verification.

---

- `country_not_supported`
- Identity verification is not available for users from the specified country.

---

- `document_expired`
- The submitted identity document is no longer valid due to expiration.

---

- `document_unverified_other`
- The identity document could not be verified. Ensure the document is clear, valid, and meets the supported requirements.

---

- `document_type_not_supported`
- The submitted document type is not permitted for this verification session.

---

- `selfie_document_missing_photo`
- The submitted identity document does not contain a visible facial image.

---

- `selfie_face_mismatch`
- The captured selfie does not match the face shown in the identity document.

---

- `selfie_unverified_other`
- The submitted selfie could not be verified. Ensure the image is clear and meets the verification requirements.

---

- `selfie_manipulated`
- The captured selfie appears to have been altered or manipulated.

---

- `id_number_unverified_other`
- The provided ID number could not be verified. Ensure it is valid and supported for verification.

---

- `id_number_insufficient_document_data`
- The submitted document did not contain enough information to validate the ID number.

---

- `id_number_mismatch`
- The provided information could not be matched against official or global databases.

---

- `address_mismatch`
- The provided address information could not be matched against official or global databases.

---


{% /nestedtable %}
