---
title: Photo ID Verification
slug: photo-id-verification
description: API documentation and reference for BlueCheck's photo ID verification API - verify ID documents, driver's licenses, and passports.
docTags: 
createdAt: 2023-04-11T15:38:44.000Z
---

This service allows you verify different types of data using submitted images of a Photo ID as well as a selfie image of a user holding a photo ID. You can choose to just verify the validity and possesion of the ID document, or you can pass additional information such as name, address, and DOB and request that that data is verified alongside the ID.

If you have a BlueCheck domain token you can try out the API in the Swagger utility below. Just click the "Authorize" button and add in you domain token after the entering the "Bearer" prefix. If you do not have a domain token, you can [[register for one](https://customer.bluecheck.me/login) here.](https://customer.bluecheck.me/register)

## Field Reference

You can find descriptions for the fields used in the verification order, verification, data, and config objects used by the API. Click on the headings to expand the objects.

:::ExpandableHeading{isOpen="true"}
### Verification Order

The verification order object contains the info used to start the verification process. It is where you can set the return\_url as well as check on the status of the order.

| Field / Object    | Description                                                                                                                                                                                                                                                                                                                                             |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| status            | There are three statuses:<br /><br />**New:&#x20;**&#x54;he verification order has been created, but the images have nit yet been submitted and the order has not been billed.<br />**Processing:&#x20;**&#x54;he images have been submitted and the verification is now under way.<br />**Completed:&#x20;**&#x54;he verification process is finished. |
| uuid              | A unique identifier for the order provided by BlueCheck. Can be used to look up the order using the Get method.                                                                                                                                                                                                                                         |
| external\_id      | An identifier provided by the client. Used to link the order to client records.                                                                                                                                                                                                                                                                         |
| notification\_url | The url used for webhook notifications.                                                                                                                                                                                                                                                                                                                 |
| return\_url       | The url the user returns to after completing verification. **Note:** This is only if the verification is completed using the public url.                                                                                                                                                                                                                |
| public\_url       | A url where the user can go to upload the documents needed to complete the verification.                                                                                                                                                                                                                                                                |
| type              | The type of verification being performed, in this case "photo\_id"                                                                                                                                                                                                                                                                                      |
| created\_at       | The time the verification orders was created.                                                                                                                                                                                                                                                                                                           |
| updated\_at       | The time of the last update to the verification order.                                                                                                                                                                                                                                                                                                  |
:::

:::ExpandableHeading{isOpen="true"}
### Verification

The verification object holds information relating to the verification requested in the initial verification order, such as its status.

| &#x20;      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| uuid        | A unique identifier for the verification provided by BlueCheck. Can be used to look up the order using the Get method.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| workflow    | The type of verification to be performed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| process     | Either automated or manual, depending if human review was used during the verification process.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| status      | There are three statuses:<br /><br />**Waiting:&#x20;**&#x54;he verification is waiting on additional information and or data from the user.<br />**Pending:&#x20;**&#x42;lueCheck is currently processing the verification.<br />**Approved:&#x20;**&#x54;he verification has been completed and the data was verified.<br />**Failed:&#x20;**&#x54;he verification has been completed but the data could not be verified.<br />**Expired:&#x20;**&#x49;f BlueCheck does not receive the data to complete the verification before the verificationc expires, the verification is cancelled and unable to be completed by the end user.                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| reason      | A reason that exmplains why the verification is in the current status.<br /><br />**invalid\_seflie:** The selfie image submitted in the verification attempt was unable to be used.<br /><br />**invalid\_id:** The id image submitted in the verification attempt was unable to be used.<br />**invalid\_selfie\_id:** Both images submitted in the verification attempt were unable to be used.<br /><br />**edited\_images:** The images submitted for verification were edited.<br />**name\_mismatch:** The name submitted with the verification does not match the name on the id document.<br />**address\_mismatch:** The address submitted with the verification does not match the name on the id document.<br />**dob\_mismatch:** The date of birth submitted with the verification does not match the name on the id document.<br />**other:** Rarely used, the user's verification was rejected for an undefined reason.<br />**expired:** The user did not submit all the information required to complete the verification before the verification's expiration time. |
| expires\_at | The timestamp when the verification will expire and no longer be able to be completed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| created\_at | The timestamp when the verification was created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| updated\_at | The timestamp for the last time the verification was updated.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
:::

:::ExpandableHeading{isOpen="true"}
### Data

The data object contains the information that will be used to perform the verification.

| &#x20;       |                                                                                              |
| ------------ | -------------------------------------------------------------------------------------------- |
| email        | The email of the user being verified. This field is always required.                         |
| phone        | The phone number of the user being verified. Should be submitted in the +11234567890 format. |
| address      | The address object. This object contains all of the fields composing the users full address. |
| line\_1      | The first line of the user's street address. Ex 123 Main Street.                             |
| line\_2      | Any additional street address information. Ex. Apt #12                                       |
| city         | The city of the user.                                                                        |
| postal\_code | The postal code or zip code of the user's address.                                           |
| disctrict    | The state, province, region, etc where the                                                   |
| country      | The name of the user's Country/                                                              |
:::

:::ExpandableHeading{isOpen="true"}
### Config

The values in the config object are set by the requester and determine the parameters of the verification including which information is verified.

| &#x20;             |                                                                                                                                       |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| max\_attempts      | The maximum number of attempts the user has to submit data to complete the verification.                                              |
| checkups           | The additional data fields that are to be verified. This endpoint supports name, address, and dob.                                    |
| document\_liveness | The threshold score required to pass BlueCheck's automated document livliness AI. The default is 0.8.                                 |
| face\_detection    | The number of faces required to be detected by face BlueCheck's face detection AI. The default is 2 - we recommend using 2 or 3 here. |
| face\_comparison   | The number of matched faces required to pass BlueCheck's face comparison AI. The default is 2 - we recommend using 2 or 3 her         |


:::

## Try It Out

:::Swagger
```json
{
  "headers": [],
  "jsonFileLocation": "https://customer.bluecheck.me/docs/photo_id.yaml"
}
```
:::

