Introduction
Welcome to the Mitek Identity Cloud! An API for authenticating and extracting data from identity documents.
Authentication
Mitek uses OAuth v2 with JWT tokens for authorization and OpenID for authentication. This token-based standard leverages temporary tokens that provide access to a resource for a limited duration. In our production environments, these tokens will be valid for 5 minutes from the time the token is first issued. When you are requesting one of these temporary tokens, you need to provide the resource you are trying to access (in OAuth this is called the scope). It is best practice to request only the minimally required scope(s) for the operation(s) in order to limit the rights of the access token provided.
Client Credential Flow
The client credential flow is used when one server is communicating with another server (and there is no person at a keyboard that can type in a password). In this flow, a client_id
and a client_secret
are issued to you. You must protect these credentials, because anyone with these credentials will be able to request tokens on your behalf. Each client has a list of scopes they are able to access; you will want to give clients access only to the scopes they need to do their job. You send the client_id
, client_secret
, and the scopes you are accessing in an authentication request, and an Access Token is returned. That access token should be included in the Authorization header of any requests to the API.
Authentication Request
Request Example
POST /connect/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded;
grant_type=client_credentials&
client_id=some.client.id&
client_secret=SecretPassword&
scope=standard.scope additional.scope
Token retrieval requires a basic POST request to our OAuth 2.0 based authentication server. Mitek recommends that developers pro-actively refresh tokens to ensure a valid token is always available for submission to the API.
In the authentication request, scopes must be included that the token will provide permissions to access. The token generated will only provide acccess to the specific operations for which the scope was requested. Mitek recommends that the token is requested with only the scopes that are minimally required to perform a specific operation.
Authentication Path
/connect/token
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
grant_type |
string | OAuth credential type | client_credentials |
client_id |
string | Mitek provided client identifier | None |
client_secret |
string | Mitek provided client secret | None |
scope |
string | Space delimited list of scopes requested | Based on the service being used (refer to individual products) |
Authentication Response
Response Example
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2Zvb2JhciIsImF1ZCI6Imh0dHBzOi8vZm9vYmFyL3Jlc291cmNlcyIsImV4cCI6MTUzNTQ5OTg4OCwibmJmIjoxNTM1NDk1ODYwLCJjbGllbnRfaWQiOiJzb21lLmNsaWVudC5pZCIsIlRlbmFudElkIjoiZm9vYmFyIiwiY2xpZW50X25hbWUiOiJzb21lLmNsaWVudC5uYW1lIiwic2NvcGUiOlsic3RhbmRhcmQuc2NvcGUiLCJhZGRpdGlvbmFsLnNjb3BlIl0sImp0aSI6IjA4ZDhlMWM4LWZmNmItNDk0NS1hYTZjLTFkM2ZhYTUwYzg2NyIsImlhdCI6MTUzNTQ5NjI4OH0.U5-4rWHw_zemjANu76zFNrWYutupu1l-vkpCEsqIkR4",
"expires_in": 300,
"token_type": "Bearer"
}
The authentication response includes the token to be used in subsequent requests and the number of seconds the token is valid for.
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
access_token |
String | Token to be submitted with any subsequent API request | None |
expires_in |
Number | Duration of token validity measured in seconds | None |
token_type |
String | Type of token returned (Mitek only supports Bearer tokens) | Bearer |
API Scopes
Scope | Scope Description |
---|---|
global.identity.api | Access to use the Mitek Identity Cloud API. All requests require this scope. |
dossier.creator | Ability to create new dossiers. Mobile Verify - Auto requires this scope (POST dossier). |
gip.document.creator | Ability to create new documents. Mobile Fill - Auto requires this scope (POST document). |
faceblocklist.write | Ability to create new Face Blocklist items. Face Blocklist - Create Item requires this scope. |
faceblocklist.read | Ability to get Face Blocklist items. Face Blocklist - Get Item and Face Blocklist - Get Items require this scope. |
faceblocklist.delete | Ability to delete Face Blocklist items. Face Blocklist - Delete Item requires this scope. |
biometric.enroll | Ability to create a new MiPass enrollment. MiPass - Enroll requires this scope. |
biometric.verify | Ability to verify against a MiPass enrollment. MiPass - Verify requires this scope. |
biometric.delete | Ability to delete a MiPass enrollment. MiPass - Delete requires this scope. |
biometric.quality | Ability to check the quality of a voice recording for MiPass enrollment or verification. MiPass - Check Quality requires this scope. |
aamva.process | Ability to perform AAMVA verification. AAMVA Verification requires this scope. |
Authentication Error Responses
400 Response Example (Bad Request)
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "invalid_request"
}
400 Response Example (Invalid Client)
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "invalid_client"
}
400 Response Example (Bad Scopes)
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "invalid_scope"
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"message": "An internal error has occurred. Please try again."
}
503 Service Unavailable
HTTP/1.1 503 Service Unavailable
Content-Type: text/plain
Service Unavailable
Standard HTTP response codes and messages are used to indicate authentication success or failure.
Mobile Verify - Auto
Each auto processing request is for the evaluation of a DOSSIER (a collection of evidence) which should include at least one identity document. An identity document can consist of one or two images depending on the type of document being processed. In the request, the API requires a single image for each page of a given identity document to be submitted. An example being if a drivers license is submitted, successful processing will require submission of images of both the front and back of the document. The API also supports the following optional submissions:
Any
encodedData
elements including apdf417
string in lieu of an image of the back of a document orqrcode
strings.The
nfc
data extracted from the RFID chip of an identity document.A
selfie
image as part of the request to support face comparison between the photo located on the identity document and a selfie provided, as well as perform liveness detection to determine if the selfie was from a live person. ThefaceComparison
andfaceLiveness
request configurations are required to be set totrue
as well.An
encryptedPayload
string, in support of Mitek’s optional injection attack detection feature. Requirements to use this feature are theencryptedPayload
, generated by MiSnap version 5.4.0 and newer, as well as theinjectionAttackDetection
request configuration set totrue
.
Verify Auto - Request
Request Example - All Options
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
},
"acquisitionParams": {
"isPrecropped": false,
"isScanner": false,
"scannerDevice": ""
}
}
],
"nfc": {
"sod": "DEVICE EXTRACTED NFC SOD STRING",
"com": "DEVICE EXTRACTED NFC COM STRING",
"dataFormat": "NFC DATA FORMATTING STANDARD",
"dataGroups": {
"DEVICE EXTRACTED NFC DATA GROUP KEY STRING": "DEVICE EXTRACTED NFC DATA GROUP VALUE STRING"
},
"activeAuthInput": {
"ecdsaPublicKey": "DEVICE EXTRACTED NFC PUBLIC KEY STRING",
"signature": "DEVICE EXTRACTED NFC SIGNATURE STRING",
"challenge": "DEVICE EXTRACTED NFC CHALLENGE STRING"
},
"portrait": "DEVICE EXTRACTED NFC PORTRAIT STRING"
}
},
{
"type": "Biometric",
"biometricType": "Selfie",
"data": "BASE64 ENCODED ENCRYPTED SELFIE PAYLOAD",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD"
}
],
"configuration": {
"verifications": {
"faceComparison": true,
"faceLiveness": true,
"faceBlocklist": true,
"faceVelocity": true,
"dataSignalAAMVA": true,
"injectionAttackDetection": true,
"injectionAttackDetectionAI": true,
"templateAttackDetection": true
},
"responseImages": [
"CroppedPortrait",
"CroppedSignature",
"CroppedDocument"
]
}
}
Request Example - Document Only
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
}
}
]
}
]
}
Request Example - Scanner Document Only
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
},
"acquisitionParams": {
"isPrecropped": true,
"isScanner": true,
"scannerDevice": "DEFAULT"
}
}
]
}
]
}
Request Example - Document with All Face Verifications
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
}
}
]
},
{
"type": "Biometric",
"biometricType": "Selfie",
"data": "BASE64 ENCODED IMAGE"
}
],
"configuration": {
"verifications": {
"faceComparison": true,
"faceLiveness": true,
"faceBlocklist": true,
"faceVelocity": true
}
}
}
Request Example - Document with NFC
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
}
],
"nfc": {
"sod": "DEVICE EXTRACTED NFC SOD STRING",
"com": "DEVICE EXTRACTED NFC COM STRING",
"dataFormat": "NFC DATA FORMATTING STANDARD",
"dataGroups": {
"DEVICE EXTRACTED NFC DATA GROUP KEY STRING": "DEVICE EXTRACTED NFC DATA GROUP VALUE STRING"
},
"activeAuthInput": {
"ecdsaPublicKey": "DEVICE EXTRACTED NFC PUBLIC KEY STRING",
"signature": "DEVICE EXTRACTED NFC SIGNATURE STRING",
"challenge": "DEVICE EXTRACTED NFC CHALLENGE STRING"
},
"chipAuthOutput": "DEVICE EXTRACTED NFC CHIP AUTHENTICATION OUTPUT",
"portrait": "DEVICE EXTRACTED NFC PORTRAIT STRING"
}
}
]
}
Request Example - Document with NFC and Mibi
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
}
],
"nfc": {
"sod": "DEVICE EXTRACTED NFC SOD STRING",
"com": "DEVICE EXTRACTED NFC COM STRING",
"dataFormat": "NFC DATA FORMATTING STANDARD",
"dataGroups": {
"DEVICE EXTRACTED NFC DATA GROUP KEY STRING": "DEVICE EXTRACTED NFC DATA GROUP VALUE STRING"
},
"activeAuthInput": {
"ecdsaPublicKey": "DEVICE EXTRACTED NFC PUBLIC KEY STRING",
"signature": "DEVICE EXTRACTED NFC SIGNATURE STRING",
"challenge": "DEVICE EXTRACTED NFC CHALLENGE STRING"
},
"chipAuthOutput": "DEVICE EXTRACTED NFC CHIP AUTHENTICATION OUTPUT",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
}
}
]
}
Request Example - Document with Data Signal - AAMVA
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
}
}
]
}
],
"configuration": {
"verifications": {
"dataSignalAAMVA": true
}
}
}
Request Example - Document with Injection Attack Detection
POST /api/verify/v2/dossier HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"dossierMetadata": {
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "DEVICE EXTRACTED PDF417 STRING"
}
}
]
},
{
"type": "Biometric",
"biometricType": "Selfie",
"data": "BASE64 ENCODED IMAGE",
"encryptedPayload": "BASE64 ENCODED ENCRYPTED PAYLOAD"
}
],
"configuration": {
"verifications": {
"faceComparison": true,
"faceLiveness": true,
"injectionAttackDetection": true
}
}
}
Path
POST /api/verify/v2/dossier
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
evidence |
object (array) | Array of evidence to be processed as part of the request | N/A |
type |
string | Type of evidence to be processed. | IdDocument: An identity document consisting of one or two pages (images) Biometric: [OPTIONAL] A biometric based evidence component |
images |
object (array) | Any images of the document that Mitek should process, one per document page or side | Limit of 2 images per document |
data |
string | A base64-encoded image containing a single page of the document to be processed. This field is optional when the document page is represented by a PDF417 string. Otherwise it is required. | |
encryptedPayload |
string | A base64-encoded string containing an encrypted real-time security payload generated by Mitek’s MiSnap Capture SDKs v5.4.0 and newer. This field is only required if Injection Attack Detection is enabled in the request configuration. | |
customerReferenceId |
string | [OPTIONAL] Customer provided identifier that will be returned in an identically named field within the body of any subsequent responses | None |
acquisitionParams |
object | [OPTIONAL] An object with information of the device used for capturing the images. | If isScanner is set to true, then isPrecropped must be present and scannerDevice must contain one of the allowed values. If isScanner is set to false, then scannerDevice must not be present (or set to empty string). |
isPrecropped |
Boolean | [OPTIONAL] Flag to set whether the image contains an already cropped document to be processed. | true or false |
isScanner |
Boolean | [OPTIONAL] Flag to set whether the image has been acquired using a scanner. | true or false |
scannerDevice |
string | [OPTIONAL] String containing the reference to the scanner device used to acquire the image. | Allowed values are: DEFAULT , PANINI_DEFAULT , PANINI_VISION_NEXT , PANINI_BIOCRED , PANINI_EVERNEXT , THALES_DEFAULT , THALES_AT10KI , VIEWSONIC_DEFAULT , VIEWSONIC_MA1014H , FLATBED_DEFAULT . |
encodedData |
object | [OPTIONAL] An object with data extracted on-device from an identity document from machine-readable document features, e.g., barcode. | N/A |
pdf417 |
string | A PDF417 string extracted from barcodes that support this encoding format. |
|
qrcode |
string | A QR code value extracted from the document. |
Supplementary document info which should be sent in with the 'data' field. This field should never be sent by itself in its own image. |
nfc |
object | [OPTIONAL] Data extracted from the chip in an electronic document. | MiSnap NFC SDK provides helper methods to extract NFC data. |
Optional Fields - Dossier Metadata
Name | Type | Description | Restrictions |
---|---|---|---|
dossierMetadata |
object | Additional metadata to be processed as part of the request | N/A |
customerReferenceId |
string | [OPTIONAL] Customer provided identifier that will be returned in an identically named field within the body of any subsequent responses | None |
Optional Fields - Biometric
Name | Type | Description | Restrictions |
---|---|---|---|
biometricType |
string | Type of biometric submitted to the API | Selfie |
data |
string | A base64-encoded image containing a selfie to be used for face comparison, face liveness, face blocklist, and face velocity. If Injection Attack Detection - AI ( injectionAttackDetectionAI ) is enabled, then this field is a base64-encoded string containing an encrypted payload generated by Mitek’s MiSnap Capture SDKs v5.7.0 and newer. |
|
encryptedPayload |
string | A base64-encoded string containing an encrypted real-time security payload generated by Mitek’s MiSnap Capture SDKs v5.4.0 and newer. This field is only required if Injection Attack Detection is enabled in the request configuration. |
Optional Fields - NFC
Name | Type | Description | Restrictions |
---|---|---|---|
sod |
string | The Document Security Object extracted from the chip in an electronic document. | Extracted by MiSnap NFC SDK. |
com |
string | [OPTIONAL] The Common Data Elements extracted from the chip in an electronic document. | Extracted by MiSnap NFC SDK. |
dataFormat |
string | [OPTIONAL] The NFC data formatting standard. | Allowed values are icao_9303 or eu_edl . |
dataGroups |
object | A map of Data Groups extracted from the chip in an electronic document. | Extracted by MiSnap NFC SDK. |
activeAuthInput |
object | [OPTIONAL] Security fields extracted from the chip in an electronic document. Needed to perform active authentication. | Extracted by MiSnap NFC SDK. |
ecdsaPublicKey |
string | The public key. | Extracted by MiSnap NFC SDK. |
signature |
string | The digital signature. | Extracted by MiSnap NFC SDK. |
challenge |
string | The random bit string for signature verfication. | Extracted by MiSnap NFC SDK. |
chipAuthOutput |
string | [OPTIONAL] The base64-encoded chip authentication output. | Extracted by MiSnap NFC SDK. |
portrait |
string | [OPTIONAL] The base64-encoded portrait photo extracted from the chip in an electronic document. | Extracted by MiSnap NFC SDK. |
mibi |
string | [OPTIONAL] The base64-encoded JSON object containing session analytics for the NFC capture. This should only be used in cases where the portrait is not submitted. |
Extracted by MiSnap NFC SDK. |
Optional Fields - Configuration (Also Included in Response)
Name | Type | Description | Restrictions |
---|---|---|---|
configuration |
object | A collection of properties a customer can use to request additional items be included in the response | N/A |
verifications |
object | Contains flags for configuring optional authenticators as part of the request | N/A |
faceComparison |
Boolean | Flag to set whether face comparison should be completed as part of this request. A Selfie Evidence object must be included in order to perform face comparison with the ID Document(s). Note, if the face comparison option is enabled and is unable to run, an error will be returned. | true or false |
faceLiveness |
Boolean | Flag to set whether face liveness should be completed as part of this request. A Selfie Evidence object and face comparison option must be included in order to perform face liveness detection. Note, if the face liveness option is enabled and is unable to run, an error will be returned. | true or false |
faceBlocklist |
Boolean | Flag to set whether face blocklist should be completed as part of this request. A Selfie Evidence object must be included in order to perform face blocklist. Note, if the face blocklist option is enabled and is unable to run, an error will be returned. | true or false |
faceVelocity |
Boolean | Flag to set whether Duplicate Identity Scan (DIS) face velocity should be completed as part of this request. A Selfie Evidence object, NFC data which includes a valid portrait image, or a suitable identity document image must be included in order to perform face velocity. A suitable identity document can take the form of either the front of an identity document with a clear portrait image or a passport picture page. Note, if the face velocity option is enabled and is unable to run, an error will be returned. | true or false |
dataSignalAAMVA |
Boolean | Flag to set whether the AAMVA data signal check should be completed as part of this request. Note, if the AAMVA data signal option is enabled and is unable to run, an error will be returned. | true or false |
injectionAttackDetection |
Boolean | Flag to set whether injection attack detection should be completed as part of this request. Note, if the injection attack detection option is enabled and is unable to run, an error will be returned. | true or false |
injectionAttackDetectionAI |
Boolean | Flag to set whether injection attack detection AI should be completed as part of this request. Note, if the injection attack detection AI option is enabled and is unable to run, an error will be returned. | true or false |
templateAttackDetection |
Boolean | Flag to set whether template attack detection should be completed as part of this request. Note, if the template attack detection option is enabled and is unable to run, an error will be returned. | true or false |
responseImages |
object (array) | A list of derived image types to be included in the response | CroppedPortrait CroppedSignature CroppedDocument |
Verify Auto - Response
Response Example - Document Only
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 0a240c77-25b3-45ff-86ef-cf4cf14acf61
mitek-ServerProcessingTime: 4021
{
"dossierMetadata": {
"dossierId": "0a240c77-25b3-45ff-86ef-cf4cf14acf61",
"processingStatus": "Successful",
"customerReferenceId": "b09ccca3-131d-4120-823a-31c643e52cf6",
"createdDateTime": "2018-05-03T16:02:54.3894483Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "68b83834-1f93-4cea-804a-697a82ec5fa2",
"customerReferenceId": "5d669c2b-8d15-4b5b-8186-b9115226bedf",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "68b83834-1f93-4cea-804a-697a82ec5fa2",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "68b83834-1f93-4cea-804a-697a82ec5fa2",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "68b83834-1f93-4cea-804a-697a82ec5fa2",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "716bf3f7-9e95-423e-8daa-02b2843735f5",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
}
],
"findings": {
"authenticated": true,
"probability": 998,
"verifications": [
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "68b83834-1f93-4cea-804a-697a82ec5fa2"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "68b83834-1f93-4cea-804a-697a82ec5fa2"
},
{
"verificationType": 700,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 996,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "68b83834-1f93-4cea-804a-697a82ec5fa2"
}
]
},
"configuration": {
"verifications": {},
"responseImages": []
}
}
Response Example - Document with NFC
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: c5c2ca63-6cec-4d45-a226-b59cab367328
mitek-ServerProcessingTime: 2540
{
"dossierMetadata": {
"dossierId": "c5c2ca63-6cec-4d45-a226-b59cab367328",
"processingStatus": "Successful",
"createdDateTime": "2022-09-19T19:54:42.1488225Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "3023d429-7c26-44cd-bf40-5747e01737e8",
"extractedData": {
"name": {
"givenNames": "Willeke Liselotte",
"surname": "De Bruijn",
"fullName": "Willeke Liselotte De Bruijn",
"dynamicProperties": {}
},
"address": {
"dynamicProperties": {}
},
"documentNumber": "SPECI2014",
"dateOfExpiry": "2024-03-09",
"dateOfBirth": "1965-03-10",
"dateOfIssue": "2014-03-09",
"dynamicProperties": {
"nationality": "Nederlandse",
"ocrDateOfBirth": "1965-03-10",
"ocrDateOfExpiry": "2024-03-09",
"ocrDateOfIssue": "2014-03-09",
"ocrDocumentNumber": "SPECI2014",
"ocrGivenNames": "Willeke Liselotte",
"ocrNationality": "Nederlandse",
"ocrSex": "F",
"ocrSurname": "De Bruijn",
"sex": "F"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.2.0.NLD..ID.STD.012014.01",
"imageType": "IdentificationCardFront"
},
"derivedImages": {},
"processingReasons": {}
}
],
"evidenceId": "9f3cb56f-c201-4954-97af-ba6e78818b93",
"extractedData": {
"name": {
"givenNames": "Willeke Liselotte",
"surname": "De Bruijn",
"fullName": "Willeke Liselotte De Bruijn",
"dynamicProperties": {}
},
"address": {
"dynamicProperties": {}
},
"documentNumber": "SPECI2014",
"dateOfExpiry": "2024-03-09",
"dateOfBirth": "1965-03-10",
"dateOfIssue": "2014-03-09",
"dynamicProperties": {
"nationality": "Nederlandse",
"sex": "F"
}
},
"nfcExtractedData": {
"name": {
"givenNames": "WILLEKE LISELOTTE",
"surname": "DE BRUIJN",
"fullName": "WILLEKE LISELOTTE DE BRUIJN",
"dynamicProperties": {}
},
"documentNumber": "SPECI2014",
"dateOfExpiry": "2024-03-09",
"dateOfBirth": "1965-03-10",
"dynamicProperties": {
"dOCUMENT_IDENTIFIER_CHARACTER": "I",
"dateOfBirth": "1965-03-10",
"dateOfExpiry": "2024-03-09",
"documentNumber": "SPECI2014",
"issuingCountry": "NLD",
"mrzGivenNames": "WILLEKE LISELOTTE",
"mrzLine1": "I\u003cNLDSPECI20142999999990\u003c\u003c\u003c\u003c\u003c8",
"mrzLine2": "6503101F2403096NLD\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c8",
"mrzLine3": "DE\u003cBRUIJN\u003c\u003cWILLEKE\u003cLISELOTTE\u003c\u003c",
"mrzSurname": "DE BRUIJN",
"nationality": "NLD",
"personalGovId": "999999990",
"sex": "F"
}
}
}
],
"findings": {
"authenticated": false,
"probability": 193,
"verifications": [
{
"verificationType": 202,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 193,
"notifications": {},
"version": "3.48.0.7224",
"documentId": "9f3cb56f-c201-4954-97af-ba6e78818b93"
},
{
"verificationType": 102,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 712,
"notifications": {},
"version": "3.48.0.7224",
"documentId": "3023d429-7c26-44cd-bf40-5747e01737e8"
},
{
"verificationType": 105,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.48.0.7224",
"documentId": "3023d429-7c26-44cd-bf40-5747e01737e8"
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 0,
"notifications": {
"212": "The image quality of the authenticator input image was poor"
},
"version": "3.48.0.7224",
"documentId": "3023d429-7c26-44cd-bf40-5747e01737e8"
},
{
"verificationType": 612,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 0,
"notifications": {
"692": "Document signing certificate is not verified."
},
"version": "1.0",
"documentId": "9f3cb56f-c201-4954-97af-ba6e78818b93"
},
{
"verificationType": 613,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "1.0",
"documentId": "9f3cb56f-c201-4954-97af-ba6e78818b93"
}
]
},
"configuration": {
"verifications": {},
"responseImages": []
}
}
Response Example - Document with Face Blocklist Verification (Authentic)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: b8af63d4-c590-40ce-a147-0d817859eb3c
mitek-ServerProcessingTime: 4381
{
"dossierMetadata": {
"dossierId": "b8af63d4-c590-40ce-a147-0d817859eb3c",
"processingStatus": "Successful",
"createdDateTime": "2022-12-22T21:43:41.4963761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"customerReferenceId": "1a59c599-bb5b-4ccc-baf7-e0e499495a3b",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "d63ae08e-e312-4db7-9b4f-1c8f06f1bfbe",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "1278439e-f003-4e0a-bbfa-94702f1907f8"
}
],
"findings": {
"authenticated": true,
"probability": 1000,
"verifications": [
{
"verificationType": 303,
"name": "DIS - Face Blocklist",
"judgement": "Authentic",
"probability": 1000,
"notifications": {},
"version": "0.1",
"documentId": "1278439e-f003-4e0a-bbfa-94702f1907f8",
"blocklistMatches": []
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
}
]
}
}
Response Example - Document with Face Blocklist Verification (Fraudulent)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 1c8c6615-6e17-4a3a-acd1-243897c89a2c
mitek-ServerProcessingTime: 4402
{
"dossierMetadata": {
"dossierId": "1c8c6615-6e17-4a3a-acd1-243897c89a2c",
"processingStatus": "Successful",
"createdDateTime": "2022-12-21T19:12:35.9833761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"customerReferenceId": "5e1755cb-6a02-4b79-b319-6e10d787c3c8",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "6a4fc277-b40e-4b00-b3df-fad201c56127",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "9dbbbee8-23e4-482b-adb8-5509b1b9ebd9"
}
],
"findings": {
"authenticated": false,
"probability": 0,
"verifications": [
{
"verificationType": 303,
"name": "DIS - Face Blocklist",
"judgement": "Fraudulent",
"probability": 0,
"notifications": {},
"version": "0.1",
"documentId": "9dbbbee8-23e4-482b-adb8-5509b1b9ebd9",
"blocklistMatches": [
{
"itemId": "be3e68e9-284e-44da-9e0a-a88797ad5d8e",
"blockTransactionId": "10491320-86ff-404b-93c5-68dcb4418762",
"createdAt": "2022-11-28T12:40:31.8733761Z"
},
{
"itemId": "93cb6368-3c50-48d2-a12d-5ef294a610d0",
"blockTransactionId": "9072222a-d464-4f1d-9477-1b67cf755434",
"createdAt": "2022-12-10T08:41:49.3213761Z"
},
{
"itemId": "3aa86c61-441f-469d-9dcb-fb852cf2a935",
"blockTransactionId": "daa66f62-0693-411d-b0c6-fe5077e584d5",
"createdAt": "2022-12-12T11:46:47.9453761Z"
}
]
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40"
}
]
}
}
Response Example - Document with Face Blocklist Verification (Undetermined)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 049a7dec-f4be-48de-8d5f-7b599a7dca51
mitek-ServerProcessingTime: 4192
{
"dossierMetadata": {
"dossierId": "049a7dec-f4be-48de-8d5f-7b599a7dca51",
"processingStatus": "Successful",
"createdDateTime": "2022-12-20T18:36:22.6493761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"customerReferenceId": "922f7781-c81c-4f0a-874d-6a9febca73ca",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "0bb61f24-8d36-47ea-815f-b7dbbfa348dd",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "bb5fedb1-cdc7-4d4b-b9a7-48714e0e40dc"
}
],
"findings": {
"authenticated": false,
"probability": 0,
"verifications": [
{
"verificationType": 303,
"name": "DIS - Face Blocklist",
"judgement": "Undetermined",
"probability": 0,
"notifications": {
"642": "The face could not be detected in the selfie image"
},
"version": "0.1",
"documentId": "bb5fedb1-cdc7-4d4b-b9a7-48714e0e40dc",
"blocklistMatches": []
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "65f26814-ae44-4b8c-9d63-07d7cccec46b"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "65f26814-ae44-4b8c-9d63-07d7cccec46b"
}
]
}
}
Response Example - Document with Face Velocity Verification (Authentic)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: fb1eeb0c-f0f4-11ed-a05b-0242ac120003
mitek-ServerProcessingTime: 4381
{
"dossierMetadata": {
"dossierId": "fb1eeb0c-f0f4-11ed-a05b-0242ac120003",
"processingStatus": "Successful",
"createdDateTime": "2023-05-12T21:43:41.4963761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"customerReferenceId": "1a59c599-bb5b-4ccc-baf7-e0e499495a3b",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "d63ae08e-e312-4db7-9b4f-1c8f06f1bfbe",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "1278439e-f003-4e0a-bbfa-94702f1907f8"
}
],
"findings": {
"authenticated": true,
"probability": 1000,
"verifications": [
{
"verificationType": 304,
"name": "DIS - Face Velocity",
"judgement": "Authentic",
"probability": 1000,
"notifications": {},
"version": "0.1",
"documentId": "1278439e-f003-4e0a-bbfa-94702f1907f8",
"velocityMatches": [
{
"requestId": "2c6faa24-0276-466b-9fb8-eefcec06303f",
"createdAt": "2023-05-10T20:27:54Z",
"expiresAt": "2023-08-08T20:27:54Z"
},
{
"requestId": "5bf8f607-86bd-40bf-9b14-468ba2deb962",
"createdAt": "2023-05-09T23:09:58Z",
"expiresAt": "2023-08-07T23:09:58Z"
}
]
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
}
]
}
}
Response Example - Document with Face Velocity Verification (Fraudulent)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: c01df1d0-d475-4ac3-8002-da26ad26eb00
mitek-ServerProcessingTime: 4402
{
"dossierMetadata": {
"dossierId": "c01df1d0-d475-4ac3-8002-da26ad26eb00",
"processingStatus": "Successful",
"createdDateTime": "2023-05-12T19:12:35.9833761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"customerReferenceId": "5e1755cb-6a02-4b79-b319-6e10d787c3c8",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "6a4fc277-b40e-4b00-b3df-fad201c56127",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "9dbbbee8-23e4-482b-adb8-5509b1b9ebd9"
}
],
"findings": {
"authenticated": false,
"probability": 0,
"verifications": [
{
"verificationType": 304,
"name": "DIS - Face Velocity",
"judgement": "Fraudulent",
"probability": 0,
"notifications": {},
"version": "0.1",
"documentId": "9dbbbee8-23e4-482b-adb8-5509b1b9ebd9",
"velocityMatches": [
{
"requestId": "e2b24f9d-4d0d-463a-95ce-8eb8b41f0122",
"createdAt": "2023-05-09T23:09:46Z",
"expiresAt": "2023-08-07T23:09:46Z"
},
{
"requestId": "67a01b3a-9c27-4e8e-8387-827ba40384ec",
"createdAt": "2023-05-09T23:38:54Z",
"expiresAt": "2023-08-07T23:38:54Z"
},
{
"requestId": "6509619a-4c53-40ca-805b-0db0d68e3b81",
"createdAt": "2023-05-09T23:39:06Z",
"expiresAt": "2023-08-07T23:39:06Z"
}
]
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "05565ef2-3baa-4b02-8264-cd1cdcee5c40"
}
]
}
}
Response Example - Document with Face Velocity Verification (Undetermined)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 52f1d6e1-ee18-4f49-bda0-65f3e02234e5
mitek-ServerProcessingTime: 4192
{
"dossierMetadata": {
"dossierId": "52f1d6e1-ee18-4f49-bda0-65f3e02234e5",
"processingStatus": "Successful",
"createdDateTime": "2023-05-12T18:36:22.6493761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"customerReferenceId": "922f7781-c81c-4f0a-874d-6a9febca73ca",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "65f26814-ae44-4b8c-9d63-07d7cccec46b",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "0bb61f24-8d36-47ea-815f-b7dbbfa348dd",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "bb5fedb1-cdc7-4d4b-b9a7-48714e0e40dc"
}
],
"findings": {
"authenticated": false,
"probability": 0,
"verifications": [
{
"verificationType": 304,
"name": "DIS - Face Velocity",
"judgement": "Undetermined",
"probability": 0,
"notifications": {
"642": "The face could not be detected in the selfie image"
},
"version": "0.1",
"documentId": "bb5fedb1-cdc7-4d4b-b9a7-48714e0e40dc",
"velocityMatches": []
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "65f26814-ae44-4b8c-9d63-07d7cccec46b"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "65f26814-ae44-4b8c-9d63-07d7cccec46b"
}
]
}
}
Response Example - Document with Template Attack Detection (Authentic)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: fb1eeb0c-f0f4-11ed-a05b-0242ac120003
mitek-ServerProcessingTime: 4381
{
"dossierMetadata": {
"dossierId": "fb1eeb0c-f0f4-11ed-a05b-0242ac120003",
"processingStatus": "Successful",
"createdDateTime": "2023-05-12T21:43:41.4963761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"customerReferenceId": "1a59c599-bb5b-4ccc-baf7-e0e499495a3b",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "d63ae08e-e312-4db7-9b4f-1c8f06f1bfbe",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "1278439e-f003-4e0a-bbfa-94702f1907f8"
}
],
"findings": {
"authenticated": true,
"probability": 1000,
"verifications": [
{
"verificationType": 109,
"name": "Template Attack Detection",
"judgement": "Authentic",
"probability": 1000,
"notifications": {},
"version": "1.0",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430",
"imageMatches": [
{
"requestId": "2c6faa24-0276-466b-9fb8-eefcec06303f",
"imageId": "3e2b4570-f041-416c-87c2-248a40241426",
"createdAt": "2023-05-10T20:27:54Z",
"expiresAt": "2023-08-08T20:27:54Z"
},
{
"requestId": "5bf8f607-86bd-40bf-9b14-468ba2deb962",
"imageId": "52a5b0cc-3391-476e-8c08-fbeec41c5845",
"createdAt": "2023-05-09T23:09:58Z",
"expiresAt": "2023-08-07T23:09:58Z"
}
]
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 0,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
}
]
}
}
Response Example - Document with Template Attack Detection (Fraudulent)
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: fb1eeb0c-f0f4-11ed-a05b-0242ac120003
mitek-ServerProcessingTime: 4381
{
"dossierMetadata": {
"dossierId": "fb1eeb0c-f0f4-11ed-a05b-0242ac120003",
"processingStatus": "Successful",
"createdDateTime": "2023-05-12T21:43:41.4963761Z",
"version": "v2.1.0"
},
"evidence": [
{
"type": "IdDocument",
"images": [
{
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"customerReferenceId": "1a59c599-bb5b-4ccc-baf7-e0e499495a3b",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
},
"derivedImages": {
"croppedPortrait": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded portrait image--"
},
"croppedSignature": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded signature image--"
},
"croppedDocument": {
"imageId": "24601e3a-4ec8-478e-9e01-a16414676430",
"data": "--base64 encoded document image--"
}
},
"processingReasons": {}
}
],
"evidenceId": "d63ae08e-e312-4db7-9b4f-1c8f06f1bfbe",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"property1": "string",
"property2": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"licenseClass": "R",
"sex": "F"
}
}
},
{
"type": "Biometric",
"evidenceId": "1278439e-f003-4e0a-bbfa-94702f1907f8"
}
],
"findings": {
"authenticated": false,
"probability": 0,
"verifications": [
{
"verificationType": 109,
"name": "Template Attack Detection",
"judgement": "Fraudulent",
"probability": 0,
"notifications": {},
"version": "1.0",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430",
"imageMatches": [
{
"requestId": "2c6faa24-0276-466b-9fb8-eefcec06303f",
"imageId": "3e2b4570-f041-416c-87c2-248a40241426",
"createdAt": "2023-05-10T20:27:54Z"
},
{
"requestId": "5bf8f607-86bd-40bf-9b14-468ba2deb962",
"imageId": "52a5b0cc-3391-476e-8c08-fbeec41c5845",
"createdAt": "2023-05-09T23:09:58Z"
}
]
},
{
"verificationType": 100,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 1000,
"notifications": {},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
},
{
"verificationType": 300,
"name": "Authenticator Name",
"judgement": "Authentic | Fraudulent | Undetermined",
"probability": 0,
"notifications": {
"202": "The image has glare"
},
"version": "3.6.2.17791",
"documentId": "24601e3a-4ec8-478e-9e01-a16414676430"
}
]
}
}
Returned HTTP Headers
Name | Type | Description | Restrictions |
---|---|---|---|
mitek-ServerProcessingTime |
integer | The total duration, in milliseconds, from the time the entire request was received until the response was sent. | None |
mitek-RequestId |
string | The id that Mitek Systems has assigned to this transaction. | None |
Returned Fields - Dossier Metadata
Name | Type | Description | Restrictions |
---|---|---|---|
dossierMetadata |
object | Details of processing outcomes for the submitted dossier | UUID |
dossierId |
string | The UUID assigned to the submitted dossier. | UUID |
processingStatus |
string | Overall processing status of the request | Successful Failed |
customerReferenceId |
string | A value that was submitted with the original request that is returned in the response | None |
createdDateTime |
string | Time at which the request was submitted | None |
version |
string | Version of the Mitek API that completed processing on the dossier | None |
Returned Fields - Evidence
Name | Type | Description | Restrictions |
---|---|---|---|
evidence |
object (array) | Array of evidence to be processed as part of the request | N/A |
type |
string | Type of evidence to be processed. | IdDocument: An identity document consisting of one or two pages (images) Biometric: [OPTIONAL] A biometric based evidence component |
images |
object (array) | Any images of the document that Mitek should process, one per document page or side | N/A |
customerReferenceId |
string | [OPTIONAL] Customer provided identifier that will be returned in an identically named field within the body of any subsequent responses | None |
imageId |
string | The UUID assigned to the submitted image. | |
extractedData |
object | Data extracted from the submitted image / encoded data provided. See link | |
processingStatus |
string | Indicator of whether the platform was able to process the provided images | Successful: Completed processing successfully Failed: Processing failed on this image. In the event of processing failure, processing reasons will be populated with details of why the image failed processing |
classification |
object | Details of the classification of the document present in the image | |
mdsid |
string | Mitek document classification identifier | |
imageType |
string | Top level classification of the type of identity document present in the provided image | Top Level classification response values:
|
derivedImages |
object (array) | [OPTIONAL] Collection of derived images optionally returned in the response (NOTE: These will only be returned if specifically requested in the API request) | |
croppedPortrait |
object | [OPTIONAL] Derived Image - Cropped Portrait | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped portrait | |
croppedSignature |
object | [OPTIONAL] Derived Image - Cropped signature | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped signature | |
croppedDocument |
object | [OPTIONAL] Derived Image - Cropped Document | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped document | |
evidenceId |
string | The UUID assigned to the submitted evidence | |
extractedData |
object | Data extracted and merged from all submitted images and encoded data See link | |
nfcExtractedData |
object | Data extracted from the NFC data groups See link |
Returned Fields - Extracted Data (Found Under Evidence)
Name | Type | Description | Restrictions |
---|---|---|---|
extractedData |
object | Extracted data from an image or id document | |
name |
object | The data extracted from the submitted document, specifically from fields that are related to the name of whom the document was issued. | |
givenNames |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the given names of the person to which the document was issued. | |
surname |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the surname of the person to which the document was issued. | |
fullName |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the full name of the person to which the document was issued. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. | |
address |
object | The data extracted from the submitted document, specifically from fields that are related to the address of whom the document was issued. | |
addressLine1 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the first line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine2 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the second line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine3 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the third line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine4 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the fourth line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
country |
string | The country of the address of the person to whom the document was issued. | |
city |
string | The parsed out city of the address of the person to whom the document was issued. | |
stateProvince |
string | The parsed out postal code of the address of the person to whom the document was issued. | |
postalCode |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the fourth line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. | |
documentNumber |
string | The document number that is visible on a physical document. | |
dateOfExpiry |
string | The date of expiry that is visible on a physical document. | |
dateOfBirth |
string | The date of birth that is visible on a physical document. | |
dateOfIssue |
string | The date of issuance that is visible on a physical document. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. |
Returned Fields - NFC Extracted Data (Found Under Evidence)
Name | Type | Description | Restrictions |
---|---|---|---|
nfcExtractedData |
object | Extracted data from the NFC chip | |
name |
object | The data extracted from the NFC chip of the submitted document, specifically from fields that are related to the name of whom the document was issued. | |
givenNames |
string | The data extracted from the NFC chip related to the given names of the person to which the document was issued. | |
surname |
string | The data extracted from the NFC chip related to the surname of the person to which the document was issued. | |
fullName |
string | The data extracted from the NFC chip related to the full name of the person to which the document was issued. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. | |
address |
object | The data extracted from the NFC chip of the submitted document, specifically from fields that are related to the address of whom the document was issued. | |
addressLine1 |
string | The data extracted from the NFC chip related to the lines of the address of the person to which the document was issued. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. | |
documentNumber |
string | The document number that is extracted from the NFC chip. | |
dateOfExpiry |
string | The date of expiry that is extracted from the NFC chip. | |
dateOfBirth |
string | The date of birth that is extracted from the NFC chip. | |
dateOfIssue |
string | The date of issuance that is extracted from the NFC chip. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document. NOTE: Field availability is not guaranteed; fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding. |
Returned Fields - Findings
Name | Type | Description | Restrictions |
---|---|---|---|
findings |
object | Contains details of the authenticity outcomes from processing of the dossier | N/A |
authenticated |
Boolean | Overall determination of the authenticity of the dossier based on the evidence presented | true or false |
probability |
integer | Overall authenticity score used in the determination of the overall authenticity of the dossier | N/A |
verifications |
object (array) | Details of authenticators that were a part of the dossier assessment | N/A |
verificationType |
integer | 3-digit code indicating the type of authenticator | N/A |
name |
string | Name of the individual authenticator | N/A |
judgement |
string | Overall determination of the authenticity of the dossier based on the evidence presented | Authentic: Fraudulent: Undetermined: |
probability |
integer | Overall authenticity score used in the determination of the overall authenticity of the dossier | N/A |
notifications |
object | In the event a given authenticator was unable to run, details will be provided in the notifications as to why the authenticator was unable to run | N/A |
version |
string | Version of the individual authenticator | N/A |
documentId |
string | Identifier for the document OR image to which this particular authenticator | N/A |
blocklistMatches |
object (array) | Face Blocklist matches corresponding to this dossier | N/A |
matchItem |
object | Details of matching blocklist item | N/A |
itemId |
string | The unique identifier associated with the blocklist item | UUID |
blockTransactionId |
string | The dossier ID of a previous Mobile Verify transaction containing the matching blocked face | UUID |
createdAt |
string | The timestamp for when this blocklist item was created | RFC 3339 Timestamp |
velocityMatches |
object (array) | Duplicate Identity Scan (DIS) Face Velocity matches corresponding to this dossier | N/A |
matchItem |
object | Details of matching face velocity item | N/A |
requestId |
string | The dossier ID of a previous Mobile Verify transaction containing the matching face | UUID |
createdAt |
string | The timestamp for when this Mobile Verify transaction took place | RFC 3339 Timestamp |
expiresAt |
string | The timestamp for when this Mobile Verify transaction expires | RFC 3339 Timestamp |
imageMatches |
object (array) | Template Attack Detection matches corresponding to this image | N/A |
matchItem |
object | Details of matching template attack detection item | N/A |
requestId |
string | The dossier ID of a previous Mobile Verify transaction containing the matching image | UUID |
imageId |
string | The image ID from the previous Mobile Verify transaction with the associated dossier ID containing the matching image | UUID |
createdAt |
string | For Authentic finding: The timestamp for the referenced Mobile Verify transaction. For Fraudulent finding: The timestamp indicating when this image was identified as a forgery template. | RFC 3339 Timestamp |
expiresAt |
string | The timestamp for when this Mobile Verify transaction expires (only applicable to Authentic finding) | RFC 3339 Timestamp |
Verify Auto - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The id that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The time (in milliseconds) from when the request was received and ending when the reponse is returned. |
Verify Auto - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
201 | Created | Created |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Verify Auto - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "There is an error with your Face Velocity configuration. Please contact support to resolve."
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to create a dossier."
}
408 Response Example
HTTP/1.1 408 Request Timeout
Content-Type: application/json
{
"statusCode": 408,
"message": "Request Timeout"
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
OR
{
"statusCode": 500,
"message": "An error has occurred."
}
Verify Auto - Processing Reasons
Category | Reason Code | Message | Description | User Action |
---|---|---|---|---|
Extraction - Barcode | 500 | The barcode could not be found. | The document was classified as a type that contains a barcode but the barcode could not be found. | Take a new image with a clear picture of the barcode. |
Extraction - Barcode | 501 | The barcode could not be extracted. | The barcode was found but could not be read. | This can be due to image quality, parts of the barcode being obscured, or a misprinted barcode. |
Extraction - Barcode | 502 | The barcode could not be parsed. | The barcode was read but the resulting data was not in the expected format. | For US drivers licenses, it means the PDF417 barcode was read but the AAMVA string was formatted incorrectly. |
Extraction - Barcode | 503 | The barcode could not be processed | A problem was encountered when trying to process barcode extraction and parsing. | This is likely due to the barcode parsing license file not found on the server. |
Extraction - General | 510 | No data could be extracted for this document. | Data could not be extracted | Retake Image |
Extraction - General | 511 | Data could not be extracted from the back of the document. | Data could not be extracted from the back of the document. | Retake image |
Extraction - General | 512 | The front of the ID document could not be extracted. | The front of the ID document could not be extracted. | Retake Image |
Extraction - General | 513 | Document not supported for extraction | The document may or may not be classified but it is currently not supported for extraction. | |
Extraction - General | 520 | Extraction acceptance failed. | The data was extracted, but did not pass our additional checks to ensure the extraction is accurate. | Retake Image |
Image Quality | 200 | Image quality check failed. | The image has failed image quality check. | Retake Image |
Image Quality | 201 | The image is not sharp. | The image is out of focus. | Retake Image |
Image Quality | 202 | The image has glare. | Glare was found on the document preventing extraction or authentication. | This will only be returned when the glare impacts our ability to extract or validate. Glare that is non-impactful will be ignored. |
Image Quality | 203 | The image is too dark. | The image is too dark. | Retake Image - Take a new picture in a brighter location. |
Image Quality | 204 | The document on the image is too small. The amount of the image that the document takes up is too small. | Retake Image - Try changing from portrait to landscape mode or getting closer to the image. | |
Image Quality | 205 | The ID document could not be found. This can be caused by the image not showing all four corners of the document. | Retake Image - Ensure all four sides of the document are visible. | |
Image Quality | 206 | The type of ID document could not be determined. | The type of document could not be identified. This could be caused by a low quality image or it could be a document that is not supported. | Retake Image - If it continues to fail, try a different document. |
Image Quality | 208 | Invalid Image Type The encoding of the image is incorrect. It is not in a format that Mitek is able to process. | Take a new image in a supported format. | |
Image Quality | 209 | Image is too small The input image had a width or height less than 400 pixels. | Take a larger image. | |
Image Quality | 210 | Image processing failed after resizing. The input image had a width or height greater than 2000 pixels and was resized. You will only receive this message if processing failed after resizing. | Take a smaller image. | |
Image Quality | 211 | The authenticator could not run because the input image was missing | The authenticator was not able to assess the document because the input image was missing. Ensure that at least one image of an identity document was captured and submitted in the service request. | |
Image Quality | 212 | The image quality of the authenticator input image was poor. | The authenticator was not able to assess the document because the image quality was too poor. Have the consumer capture a better quality image. | |
Verification - Data Comparison | 660 | The document does not have enough fields to perform data comparison | Field comparison could not be performed because there were not enough fields on the document to perform a data comparison. | |
Verification - ESF | 600 | The Enhanced Security Feature (ESF) was expected for this type of document and not found. The document should have contained an ESF feature but no ESF was found. | ||
Verification - ESF | 601 | Only part of the Enhanced Security Feature (ESF) was found; the ID document may have been altered. | Only part of the Enhanced Security Feature (ESF) was found; the ID document may have been altered. | |
Verification - ESF | 602 | Only part of the Enhanced Security Feature (ESF) was found; the ID document may have been altered. | Only part of the Enhanced Security Feature (ESF) was found; the ID document may have been altered. | |
Verification - ESF | 603 | The Enhanced Security Feature (ESF) was found but shows evidence of tampering. | The Enhanced Security Feature (ESF) was found but shows evidence of tampering. | |
Verification - Face Comparison | 640 | Unable to get portrait image from ID document. | Unable to get portrait image from ID document. | |
Verification - Face Comparison | 642 | The face could not be detected in the selfie image | Face Comparison requires two human faces; the face could not be detected in the selfie image. | Retake Selfie Image |
Verification - Face Comparison | 643 | The face could not be detected in the portrait image | Face Comparison requires two human faces; the face could not be detected in the cropped portrait image extracted from the document or in the document itself. | Retake Document Image |
Verification - Face Comparison | 644 | The selfie image base64 string could not be decoded | Face Comparison could not be performed, because there was a file decoding error with the selfie image. | |
Verification - Face Comparison | 645 | The portrait image base64 string could not be decoded | Face Comparison could not be performed, because there was a file decoding error with the cropped portrait image or the ID document image. | |
Verification - Face Detection | 610 | The picture area could not be identified. | The portrait on the document could not be located. | |
Verification - Face Detection | 611 | The picture image quality is too low. the portrait image quality is loo low. | Retake Image | |
Verification - Face Detection | 612 | The picture image has poor exposure. The picture image has poor exposure. | Retake Image | |
Verification - Font Consistency | 650 | The fields used to determine font consistency could not be extracted | The fields used to determine font consistency did not return any extraction results | |
Verification - Face Liveness | 670 | The face is too close to the camera | Face Liveness could not be performed, because the distance between face and image border is too small. | Retake Image - try holding the camera farther away from the face |
Verification - Face Liveness | 671 | The face could not be detected | Face Liveness could not be performed, because the face could not be detected in the image. | Retake Image |
Verification - Face Liveness | 672 | The face is too far from the camera | Face Liveness could not be performed, because the facial area is not big enough for analysis. | Retake Image - try holding the camera closer to the face |
Verification - Face Liveness | 673 | The angle between the face and camera is too large | Face Liveness could not be performed, because the facial out-of-plane rotation angle is extremely large. | Retake Image - try holding the camera parallel with the face |
Verification - Face Liveness | 674 | The selfie image base64 string could not be decoded | Face Liveness could not be performed, because there was a file decoding error. | |
Verification - Face Liveness | 675 | The selfie image could not be encoded | Face Liveness could not be performed, because there was a file encoding error. | |
Verification - Face Liveness | 676 | The selfie has failed the image quality check | Face Liveness could not be performed, because the selfie has failed an image quality check. | |
Verification - Face Liveness | 677 | There is more than one face in the image | Face Liveness could not be performed, because there is more than one face detected in the selfie image. | Retake Image |
Verification - Face Liveness | 678 | The face is cropped | Face Liveness could not be performed, because the complete face is not present. | Retake selfie and make sure that the complete face is present. |
Verification - Barcode Analysis | 680 | The barcode could not be found or was only partially detected on the document. | The PDF417 barcode, typically found on USA or Canadian driving licenses or ID cards, could not be detected. | The customer could instruct the consumer to retake the image if the document submitted was a USA or Canadian DL or ID. This may yield an image that could be read. |
Verification - NFC Passive Authentication | 687 | DG2 or DG6 is required when face comparison is requested | To ensure the integrity of the portrait image used for face comparison, DG2 or DG6 must be included when face comparison is requested. | Ensure the portrait image is read during the NFC capture and the associated data-group (DG2 or DG6) is included in the request when face comparison is requested. |
Verification - NFC Active Authentication | 688 | Failed to interpret unknown signature scheme. | Active Authentication could not be performed, because the signature scheme is unknown. | |
Verification - NFC Active Authentication | 689 | Weak signature algorithm used which cannot be trusted. | The eMRTD uses a weak signature algorithm such as SHA-1 for Active Authentication which cannot be trusted. | |
Verification - NFC Active Authentication | 690 | Active Authentication is not supported for this document. | The electronic document does not support NFC Active Authentication. | |
Verification - NFC Passive Authentication | 691 | Document is incorrectly signed. | We are unable to verify the signing certificate of the electronic document. | |
Verification - NFC Passive Authentication | 692 | Document signing certificate is not verified. | We are unable to verify the signing certificate of the electronic document. | |
Verification - NFC Passive Authentication | 693 | Document data is tampered. | The document is fraudulent as the data in the chip of this electronic document has been tampered with and is not valid. | |
Verification - NFC Passive Authentication | 694 | Document signing certificate is revoked. | NFC authentication is inconclusive as the certificate that the document was signed with has been revoked. The overall authentication will be based on Optical Authentication. | |
Verification - NFC Chip Authentication | 695 | This MiSnap version does not support Chip Authentication. Contact your Mitek representative for upgrade information. | This MiSnap version does not support Chip Authentication. Contact your Mitek representative for upgrade information. | |
Verification - NFC Chip Authentication | 696 | The document does not support Chip Authentication. | The document does not support Chip Authentication. | |
Verification - NFC Chip Authentication | 697 | Document has known defects that prevent authentication. | The document issuer has configured the data on the NFC chip in a non-standard way such that we cannot confidently perform chip authentication. | |
Verification - CIFD | 698 | The authenticator took too long to process. | The authenticator took longer to process than was allowed to ensure a quick Mobile Verify Auto response. | |
Verification - General | 699 | The authenticator is not available for this document. | This message is returned when an authenticity test was not applied to a document because the document doesn't have the necessary features or some design features prevent evaluation | |
Verification - MFTA | 620 | No MRZ was found on the document. | The document was expected to have an MRZ on it based on its classification but no MRZ could be found. | |
Verification - MFTA | 621 | The MRZ was detected but was not in the proper format. | The MRZ was detected but was not in the proper format. | |
Verification - MRZ | 630 | The MRZ check digits are invalid. | The MRZ check digits are invalid. | |
Verification - AAMVA | 700 | Unavailable due to scheduled maintenance | AAMVA or the document’s issuing jurisdiction is currently in a scheduled maintenance window. In order to avoid a billable event, this transaction was not submitted. | |
Verification - AAMVA | 701 | Jurisdiction temporarily unavailable | The document’s issuing jurisdiction is currently unable to process transactions. | |
Verification - AAMVA | 702 | Jurisdiction system error | The document’s issuing jurisdiction encountered an unknown error. | |
Verification - AAMVA | 703 | Jurisdiction did not respond in a timely manner | The document’s issuing jurisdiction did not respond in a timely manner. | |
Verification - Document Liveness | 801 | Document is too close to the camera | Document Liveness could not be performed, because the document is too close to the camera. | Retake Image - try holding the camera farther away from the document |
Verification - Document Liveness | 802 | Document is too close to the image border | Document Liveness could not be performed, because the distance between document and image border is too small. | Retake Image |
Verification - Document Liveness | 803 | Part of the document is not present in the image | Document Liveness could not be performed, because a part of the document is not visible in the image. | Retake Image |
Verification - Document Liveness | 804 | Document is not detected in the image | Document Liveness could not be performed, because the document could not be detected in the image. | Retake Image |
Verification - Document Liveness | 805 | Document size in the image is too small | Document Liveness could not be performed, because the document size in the image is too small. | Retake Image - try holding the camera closer to the document |
Verification - Document Liveness | 806 | Too many documents were detected in the image | Document Liveness could not be performed, because there are multiple documents in the image. | Retake Image |
Verification - Document Liveness | 807 | Document Liveness temporarily unavailable | Document Liveness service did not respond in a timely manner. | |
Verification - Document Liveness | 808 | Document is colorless | Document Liveness could not be performed, because the image is colorless. | |
Verification - Document Liveness | 809 | Document photo is not detected in the image | Document photo is not detected in the image, ensure that the document is completely visible in the image. | Retake Image |
Verification - DIS - Face Blocklist | 810 | Face Blocklist temporarily unavailable | Face Blocklist service did not respond in a timely manner. | Resubmit the transaction. If multiple attempts return the same error, please wait before trying again. |
Verification - Document Liveness | 811 | The document image base64 string could not be decoded | Document Liveness could not be performed, because there was a file decoding error with the image. | |
Verification - Document Liveness | 812 | Image quality check failed | Document Liveness could not be performed, because the quality check has failed. | Retake Image |
Verification - DIS - Face Velocity | 820 | Unable to obtain suitable image for Duplicate Identity Scan. | Duplicate Identity Scan requires an image of a face. If the transaction does not contain a selfie image or a suitable identity document image, the verification is unable to run. | |
Verification - DIS - Face Velocity | 821 | DIS - Face Velocity temporarily unavailable | DIS Face Velocity service did not respond in a timely manner. | Resubmit the transaction. If multiple attempts return the same error, please wait before trying again. |
Verification - Injection Attack Detection | 830 | Encrypted payload is missing. | Injection Attack Detection failed because the required encrypted payload associated with the image was not submitted in the service request. | Ensure that the encrypted payload associated with each image is submitted in the service request. |
Verification - Injection Attack Detection - AI | 831 | The image base64 string could not be decoded | This happens if the base64 data is not a correct encrypted blob payload or is corrupted. | |
Verification - Injection Attack Detection - AI | 832 | The image metadata could not be read | Encrypted blob data is not generated with the correct format. | |
Verification - Injection Attack Detection - AI | 833 | The message could not be decrypted | This happens if the data was encrypted using the wrong public key in the capture library. | |
Verification - Injection Attack Detection - AI | 834 | Injection Attack Detection AI temporarily unavailable | Injection Attack Detection AI did not respond in a timely manner. | Resubmit the transaction. If multiple attempts return the same error, please wait before trying again. |
Verification - Template Attack Detection | 840 | The image base64 string could not be decoded | Template Attack Detection could not be performed, because there was a file decoding error with the ID document image. | |
Verification - Template Attack Detection | 841 | Image does not meet requirements for Template Attack Detection | The encoding of the input image is not in a format that Mitek is able to process or the image had a width or height less than 3 pixels. | Take a new image in a supported format and ensure the size requirements are met. |
Verification - Template Attack Detection | 842 | Template Attack Detection temporarily unavailable | Template Attack Detection service did not respond in a timely manner. | Resubmit the transaction. If multiple attempts return the same error, please wait before trying again. |
Mobile Fill - Auto
Each auto processing request is for the evaluation of a single document that can consist of one to many images depending on the type of document being processed. In the submitted request, the API requires a single image for each page of a given identity document to be submitted. Mobile Fill does not require all pages of a document to be submitted for successful processing, however the Mobile Fill solution will work optimally with all document pages available.
Fill Auto - Request
Request Example
POST /api/extract/v2/document HTTP/1.1
Content-Type: application/json;
Authorization: Bearer $OAUTH_TOKEN
{
"images": [
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID"
},
{
"data": "BASE64 ENCODED IMAGE",
"customerReferenceId": "OPTIONAL CUSTOMER IMAGE REFERENCE ID",
"encodedData": {
"PDF417": "OPTIONAL DEVICE EXTRACTED PDF417 STRING"
}
}
]
}
Path
POST /api/extract/v2/document
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
images |
object (array) | Any images of the document that Mitek should process, one per document page or side | Limit of 2 images per document |
data |
string | A base64-encoded image containing a single page of the document to be processed. |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | [OPTIONAL] Customer provided identifier that will be returned in an identically named field within the body of any subsequent responses | None |
encodedData |
object (array) | [OPTIONAL] An array of data extracted on-device from an identity document from machine-readable document features, e.g., barcode. | N/A |
pdf417 |
string | A PDF417 string extracted from barcodes that support this encoding format. |
|
qrcode |
string | A QR code value extracted from the document. |
Supplementary document info which should be sent in with the 'data' field. This field should never be sent by itself in its own image. |
Each auto processing request is for the evaluation of a single DOCUMENT that can consist of one to many images depending on the type of document being processed.
Fill Auto - Response
Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-ServerProcessingTime: 4021
{
"type": "IdDocument",
"images": [
{
"customerReferenceId": "5d669c2b-8d15-4b5b-8186-b9115226bedf",
"imageId": "68b83834-1f93-4cea-804a-697a82ec5fa2",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"string": "string",
"string": "string"
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"sex": "F"
}
},
"processingStatus": "Successful",
"classification": {
"mdsid": "MDS.1.0.USA.CO.DL.012011",
"imageType": "DriversLicenseFront"
}
}
"processingReasons": {}
}
],
"evidenceId": "716bf3f7-9e95-423e-8daa-02b2843735f5",
"extractedData": {
"name": {
"givenNames": "LYNN SHERRY",
"surname": "ZUMAN",
"fullName": "LYNN SHERRY ZUMAN",
"dynamicProperties": {
"string": "string",
"string": "string"
}
}
},
"address": {
"addressLine1": "201 EAST COLFAX AVE",
"country": "USA",
"city": "DENVER",
"stateProvince": "CO",
"postalCode": "80203",
"dynamicProperties": {
"string": "string",
"string": "string"
}
},
"documentNumber": "99-765-4321",
"dateOfExpiry": "2015-12-29",
"dateOfBirth": "1989-03-16",
"dateOfIssue": "2009-02-07",
"dynamicProperties": {
"string": "string",
"string": "string"
}
}
}
}
Returned Fields - Document Response
Name | Type | Description | Restrictions |
---|---|---|---|
type |
string | Type of evidence to be processed. | IdDocument: An identity document consisting of one or more pages (images). |
images |
object (array) | Any images of the document that Mitek should process, one per document page or side | N/A |
customerReferenceId |
string | [OPTIONAL] Customer provided identifier that will be returned in an identically named field within the body of any subsequent responses | None |
imageId |
string | The UUID assigned to the submitted image. | |
extractedData |
object | Data extracted from the submitted image / encoded data provided. See link | |
processingStatus |
string | Indicator of whether the platform was able to process the provided images | Successful: Completed processing successfully Failed: Processing failed on this image. In the event of processing failure, processing reasons will be populated with details of why the image failed processing |
classification |
object | Details of the classification of the document present in the image | |
mdsid |
string | Mitek document classification identifier | |
imageType |
string | Top level classification of the type of identity document present in the provided image | Top Level classification response values:
|
derivedImages |
object (array) | [OPTIONAL] Collection of derived images optionally returned in the response (NOTE: These will only be returned if specifically requested in the API request) | |
croppedPortrait |
object | [OPTIONAL] Derived Image - Cropped Portrait | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped portrait | |
croppedSignature |
object | [OPTIONAL] Derived Image - Cropped signature | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped signature | |
croppedDocument |
object | [OPTIONAL] Derived Image - Cropped Document | |
imageId |
string | The UUID associated to the submitted image | |
data |
string | Base64 string representation of the cropped document | |
processingReasons |
object (array) | Key / Value pairs of Processing Reasons (Code/Message). See Processing Reasons section | |
evidenceId |
string | The UUID assigned to the submitted evidence | |
extractedData |
object | Data extracted and merged from all submitted image / encoded data provided. See link |
Returned Fields - Extracted Data (Found Under Document Response)
Name | Type | Description | Restrictions |
---|---|---|---|
extractedData |
object | Extracted data from an image or id document | |
name |
object | The data extracted from the submitted document, specifically from fields that are related to the name of whom the document was issued. | |
givenNames |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the given names of the person to which the document was issued. | |
surname |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the surname of the person to which the document was issued. | |
fullName |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the full name of the person to which the document was issued. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document (NOTE: Field availability is not guaranteed, fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding | |
address |
object | The data extracted from the submitted document, specifically from fields that are related to the name of whom the document was issued. | |
addressLine1 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the first line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine2 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the second line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine3 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the third line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
addressLine4 |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the fourth line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
country |
string | The country of the address of the person to whom the document was issued. | |
city |
string | The parsed out city of the address of the person to whom the document was issued. | |
stateProvince |
string | The parsed out postal code of the address of the person to whom the document was issued. | |
postalCode |
string | The data extracted from an MRZ, PDF417 barcode, or biozone field related to the fourth line of the address, as printed, of the person to which the document was issued. This does not contain any data that was parsed out into other fields. | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document (NOTE: Field availability is not guaranteed, fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding | |
documentNumber |
string | An identifier which uniquely identifies a document from other documents of the same classification | |
dateOfExpiry |
string | The date of expiry that is visible on a physical document | |
dateOfBirth |
string | The year, month, and day of the person born to whom the document was issued | |
dateOfIssue |
string | The year, month, and day that the document was issued | |
dynamicProperties |
object (array) | Key / Value pairs of fields made available on the document (NOTE: Field availability is not guaranteed, fields in dynamic properties are returned on a best effort basis dependent on the document type or specific document encoding |
Fill Auto - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The id that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The time (in milliseconds) from when the request was received and ending when the reponse is returned. |
Fill Auto - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
201 | Created | Created |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Fill Auto - Processing Reasons
Category | Reason Code | Message | Description | User Action |
---|---|---|---|---|
Extraction - Barcode | 500 | The barcode could not be found. | The document was classified as a type that contains a barcode but the barcode could not be found. | Take a new image with a clear picture of the barcode. |
Extraction - Barcode | 501 | The barcode could not be extracted. | The barcode was found but could not be read. | This can be due to image quality, parts of the barcode being obscured, or a misprinted barcode. |
Extraction - Barcode | 502 | The barcode could not be parsed. | The barcode was read but the resulting data was not in the expected format. | For US drivers licenses, it means the PDF417 barcode was read but the AAMVA string was formatted incorrectly. |
Extraction - Barcode | 503 | The barcode could not be processed | A problem was encountered when trying to process barcode extraction and parsing. | This is likely due to the barcode parsing license file not found on the server. |
Extraction - General | 510 | No data could be extracted for this document. | Data could not be extracted | Retake Image |
Extraction - General | 511 | Data could not be extracted from the back of the document. | Data could not be extracted from the back of the document. | Retake image |
Extraction - General | 512 | The front of the ID document could not be extracted. | The front of the ID document could not be extracted. | Retake Image |
Extraction - General | 513 | Document not supported for extraction | The document may or may not be classified but it is currently not supported for extraction. | |
Extraction - General | 520 | Extraction acceptance failed. | The data was extracted, but did not pass our additional checks to ensure the extraction is accurate. | Retake Image |
Image Quality | 200 | Image is too blurry. | The image has failed sharpness image quality check. | Retake Image |
Image Quality | 201 | The image is not sharp. | The image is out of focus. | Retake Image |
Image Quality | 202 | The image has glare. | Glare was found on the document preventing extraction or authentication. | This will only be returned when the glare impacts our ability to extract or validate. Glare that is non-impactful will be ignored. |
Image Quality | 203 | The image is too dark. | The image is too dark. | Retake Image - Take a new picture in a brighter location. |
Image Quality | 204 | The document on the image is too small. The amount of the image that the document takes up is too small. | Retake Image - Try changing from portrait to landscape mode or getting closer to the image. | |
Image Quality | 205 | The ID document could not be found. This can be caused by the image not showing all four corners of the document. | Retake Image - Ensure all four sides of the document are visible. | |
Image Quality | 206 | The type of ID document could not be determined. | The type of document could not be identified. This could be caused by a low quality image or it could be a document that is not supported. | Retake Image - If it continues to fail, try a different document. |
Image Quality | 207 | The pose of the document could not be determined. This means the orientation of the document could not be determined and extraction could not continue. | Retake Image | |
Image Quality | 208 | Invalid Image Type The encoding of the image is incorrect. It is not in a format that Mitek is able to process. | Take a new image in a supported format. | |
Image Quality | 209 | Image is too small The input image had a width or height less than 400 pixels. | Take a larger image. | |
Image Quality | 210 | Image processing failed after resizing. The input image had a width or height greater than 2000 pixels and was resized. You will only receive this message if processing failed after resizing. | Take a smaller image. | |
Image Quality | 211 | The authenticator could not run because the input image was missing | The authenticator was not able to assess the document because the input image was missing. Ensure that at least one image of an identity document was captured and submitted in the service request. | |
Image Quality | 212 | The image quality of the authenticator input image was poor. | The authenticator was not able to assess the document because the image quality was too poor. Have the consumer capture a better quality image. |
Fill Auto - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid Request Format - [... details ...]"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to create a document."
}
408 Response Example
HTTP/1.1 408 Request Timeout
Content-Type: application/json
{
"statusCode": 408,
"message": "Request Timeout"
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
OR
{
"statusCode": 500,
"message": "An error has occurred."
}
Face Blocklist - Create Item
The Create Item endpoint enables the addition of new faces to the blocklist. A prior transaction ID is required which contains the selfie image to be blocked.
Create Item - Request
Request Example - New Face Blocklist Item Using Transaction ID
POST /api/faceblocklist/v1/items HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"blockTransactionId": "de545132-2942-4df0-b89e-d87bd447ac60"
}
Path
POST /api/faceblocklist/v1/items
Required Fields
A Face Blocklist item can be created with a request ID (AKA dossier ID) of a previous Mobile Verify transaction.
Name | Type | Description | Restrictions |
---|---|---|---|
blockTransactionId |
string | Request ID (AKA dossier ID) of a previous Mobile Verify transaction. The selfie image used in the Mobile Verify transaction will be added to the blocklist. | UUID |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
Create Item - Response
"Successful" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"status": "Successful",
"item": {
"itemId": "c45c8b05-fa95-4331-89fa-91f7732fdd21",
"blockTransactionId": "de545132-2942-4df0-b89e-d87bd447ac60",
"createdAt": "2022-02-13T17:23:44Z"
}
}
"Failed" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"status": "Failed",
"reasons": ["TRANSACTION_NOT_FOUND"]
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
status |
string | Status of the create operation. | Successful Failed |
reasons |
string (array) | Reasons for create failure. | N/A |
item |
object | Details of created item. | N/A |
itemId |
string | The unique identifier associated with this item. | UUID |
blockTransactionId |
string | Request ID of a previous Mobile Verify transaction used to create this item. | UUID |
createdAt |
string | The timestamp for when this item was created. | RFC 3339 Timestamp |
Create Item - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Create Item - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
201 | Created | Created |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Create Item - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid FaceBlocklist Create Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "Tenant has reached the gallery enrollment limit. Please reach out to customer support to increase the limit."
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to create a Face Blocklist item."
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Create Item - Processing Reasons
Processing Reasons
Reason | Description | User Action |
---|---|---|
TRANSACTION_NOT_FOUND | Referenced transaction was not found. | Ensure request ID of referenced transaction is valid. |
TRANSACTION_NO_SELFIE | Referenced transaction does not contain a selfie image. | Referenced transaction must have a selfie image to add to the blocklist. |
TRANSACTION_EXPIRED | Referenced transaction has expired and can no longer be used to add to the blocklist. | Use a more recent Mobile Verify transaction. |
TRANSACTION_NOT_SUPPORTED | Referenced transaction is not a supported type. | Referenced transaction must be a Mobile Verify transaction that includes a supported document. |
TRANSACTION_ERROR | An unknown error occurred while attempting to process the referenced transaction. | Try using a different Mobile Verify transaction. |
Face Blocklist - Get Item
The Get Item endpoint receives a single blocklist item ID and responds with all associated metadata for the item.
Get Item - Request
Request Example
GET /api/faceblocklist/v1/items/b6db77ab-b5d4-47e9-b978-0c4277a7af03?customerReferenceId=e759256b-46c0-475a-97eb-fe1c0a18a3bc HTTP/1.1
Authorization: Bearer $OAUTH_TOKEN
Path
GET /api/faceblocklist/v1/items/{itemId}?customerReferenceId={customerReferenceId}
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
itemId |
string | Mitek provided unique identifier for an existing item. | UUID |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
Get Item - Response
Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"item": {
"itemId": "b6db77ab-b5d4-47e9-b978-0c4277a7af03",
"blockTransactionId": "274a9688-98f6-4b04-9ad9-48dca53522eb,
"createdAt": "2022-02-13T17:23:44Z"
}
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
item |
object | Details of retrieved item. | N/A |
itemId |
string | The unique identifier associated with this item. | UUID |
blockTransactionId |
string | Request ID of a previous Mobile Verify transaction used to create this item. | UUID |
createdAt |
string | The timestamp for when this item was created. | RFC 3339 Timestamp |
Get Item - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Get Item - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
404 | Not Found | Not Found |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Get Item - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid FaceBlocklist GetItem Request Format - [... details ...]"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to retrieve a Face Blocklist item."
}
404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json
{
"statusCode": 404,
"message": "The given Item ID does not exist or is invalid."
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Face Blocklist - Get Items
The Get Items endpoint returns a list of existing blocklist metadata associated to the Mobile Verify tenant, sorted by item ID. The response is limited to the first N records with subsequent pages called using cursor-based pagination.
Get Items - Request
Request Example
GET /api/faceblocklist/v1/items?customerReferenceId=e759256b-46c0-475a-97eb-fe1c0a18a3bc&cursor=b6db77ab-b5d4-47e9-b978-0c4277a7af03&limit=50 HTTP/1.1
Authorization: Bearer $OAUTH_TOKEN
Path
GET /api/faceblocklist/v1/items?customerReferenceId={customerReferenceId}&cursor={cursor}&limit={limit}
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
cursor |
string | Paging field that specifies where retrieval should start from. This value comes from a Get Items response. | UUID |
limit |
integer | Paging field that specifies the number of items to return in the response. If limit is not specified, the result set is limited to the first 1MB of data. | int32 |
Get Items - Response
Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"items": [
{
"itemId": "b6db77ab-b5d4-47e9-b978-0c4277a7af03",
"blockTransactionId": "09a1c618-7114-488f-b7a6-ca0a93a92a21",
"createdAt": "2022-02-13T17:23:44Z"
},
{
"itemId": "c45c8b05-fa95-4331-89fa-91f7732fdd21",
"blockTransactionId": "de545132-2942-4df0-b89e-d87bd447ac60",
"createdAt": "2022-03-23T13:23:12Z"
},
{
"itemId": "087ddea4-a2df-4b0c-b8fb-f7865d827cbc",
"blockTransactionId": "274a9688-98f6-4b04-9ad9-48dca53522eb,
"createdAt": "2022-04-07T06:23:17Z"
}
],
"paging": {
"cursor": "f168549f-c29b-4f09-bb69-973c09815640",
"limit": 50
}
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
items |
object (array) | Array of items in blocklist. | N/A |
item |
object | Details of retrieved item. | N/A |
itemId |
string | The unique identifier associated with this item. | UUID |
blockTransactionId |
string | Request ID of a previous Mobile Verify transaction used to create this item. | UUID |
createdAt |
string | The timestamp for when this item was created. | RFC 3339 Timestamp |
paging |
object | Paging details to be used in the next retrieval. | N/A |
cursor |
string | Paging field that specifies where the next retrieval should start from. | UUID |
limit |
integer | Paging field that specifies the number of items returned in the response. | int32 |
Get Items - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Get Items - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Get Items - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid FaceBlocklist GetItems Request Format - [... details ...]"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to retrieve Face Blocklist items."
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Face Blocklist - Delete Item
The Delete Item endpoint enables the deletion of a single face image from the blocklist. Upon success the face image is immediately and permanently deleted, and no further Mobile Verify transactions may be compared with that blocklist item.
Delete Item - Request
Request Example
DELETE /api/faceblocklist/v1/items/89034a0e-5908-45bd-9627-6d133c8def3d?customerReferenceId=e759256b-46c0-475a-97eb-fe1c0a18a3bc HTTP/1.1
Authorization: Bearer $OAUTH_TOKEN
Path
DELETE /api/faceblocklist/v1/items/{itemId}?customerReferenceId={customerReferenceId}
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
itemId |
string | Mitek provided unique identifier for an existing item. | UUID |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
Delete Item - Response
Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"itemId": "89034a0e-5908-45bd-9627-6d133c8def3d",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24"
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
itemId |
string | Unique identifier for the item that was deleted. | UUID |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
Delete Item - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Delete Item - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
404 | Not Found | Not Found |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Delete Item - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid Biometric Delete Request Format - [... details ...]"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to delete a Face Blocklist item."
}
404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json
{
"statusCode": 404,
"message": "The given Item ID does not exist or has already been deleted."
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
MiPass - Enroll
The enroll endpoint is used to store the face and/or voice samples of an individual. It may also be used to update an individual’s biometrics with a more recent sample, or to append an additional biometric sample when only one was previously enrolled. Note: all biometric samples in a request must pass their respective liveness checks to achieve a successful enrollment or update.
Upon enrollment, each individual biometric sample is assigned an expiration date in accordance with the customer’s data retention policy, after which time the data is irrevocably deleted. Updating an enrollment will reset the expiration date for the updated biometric only; for example, an updated face sample will not modify the expiration date of the voice data. A record’s biometrics may be updated at any time, even after data expiration, unless the record is affirmatively deleted.
Enroll - Request
Request Example - New Enrollment
POST /api/biometric/v1/enroll HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"voiceFeatures": [
{
"data": "BASE64 ENCODED VOICE RECORDING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING"
}
],
"selfieImages": [
{
"data": "BASE64 ENCODED IMAGE"
}
]
}
Request Example - New Enrollment with Mibi
POST /identity/biometric/v3/enroll HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"voiceFeatures": [
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
}
],
"selfieImages": [
{
"data": "BASE64 ENCODED IMAGE"
}
]
}
Request Example - Update Enrollment
POST /api/biometric/v1/enroll HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"voiceFeatures": [
{
"data": "BASE64 ENCODED VOICE RECORDING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING"
}
],
"selfieImages": [
{
"data": "BASE64 ENCODED IMAGE"
}
]
}
Request Example - Update Enrollment with Mibi
POST /identity/biometric/v3/enroll HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"voiceFeatures": [
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
},
{
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
}
],
"selfieImages": [
{
"data": "BASE64 ENCODED IMAGE"
}
]
}
Path
POST /api/biometric/v1/enroll
Required Fields
An enrollment can be created/updated with a face, a set of voice recordings, or both. At least three voice recordings in the voiceFeatures
object or one image in the selfieImages
object must be present in the request.
Name | Type | Description | Restrictions |
---|---|---|---|
voiceFeatures |
object (array) | Array of voice recordings to process and enroll. | At least 3 voice recordings are required to ensure template accuracy. |
data |
string | Base64-encoded WAV, WebM, or MP4 file containing voice recording. | N/A |
mibi |
String | [OPTIONAL] Base64-encoded JSON object containing session analytics data for the voice recording. Only applicable to MiSnap WebSDK capture events. | N/A |
selfieImages |
object (array) | Array of selfie images to process and enroll. | Currently only supports a single image. |
data |
string | Base64-encoded selfie image file. | N/A |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
enrollmentId |
string | Mitek provided unique identifier from a previous enrollment. If provided, will attempt an update operation. | Do not populate when requesting a new enrollment. It is required if updating an existing enrollment. |
Enroll - Response
"Enrolled" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"enrollmentStatus": "Enrolled",
"details": {
"faceProcessing": {
"status": "Successful",
"dataExpiration": "2025-02-13T17:23:44Z"
},
"voiceProcessing": {
"status": "Successful",
"dataExpiration": "2025-02-13T17:23:44Z"
}
}
}
"Updated" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"enrollmentStatus": "Updated",
"details": {
"faceProcessing": {
"status": "Successful",
"dataExpiration": "2026-01-27T11:57:03Z"
},
"voiceProcessing": {
"status": "Successful",
"dataExpiration": "2026-01-27T11:57:03Z"
}
}
}
"Failed" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"enrollmentStatus": "Failed",
"details": {
"faceProcessing": {
"status": "Failed",
"reasons": ["FACE_TOO_CLOSE"]
},
"voiceProcessing": {
"status": "Failed",
"reasons": ["VOICE_NOT_DETECTED"]
}
}
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
enrollmentId |
string | Unique identifier for the enrollment. Used in verify, update, or delete operations. | UUID |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
enrollmentStatus |
string | Status of the enrollment operation. | Enrolled Updated Failed |
details |
object | Details of processing outcomes for the enrollment operation. | N/A |
faceProcessing |
object | Contains details regarding processing of faces. | N/A |
status |
string | Status of face processing. | Successful Failed |
reasons |
string (array) | Reasons for face processing failure. | N/A |
dataExpiration |
string | The expiration timestamp for the enrolled face data. | RFC 3339 Timestamp |
voiceProcessing |
object | Contains details regarding processing of voices. | N/A |
status |
string | Status of voice processing. | Successful Failed |
reasons |
string (array) | Reasons for voice processing failure. | N/A |
dataExpiration |
string | The expiration timestamp for the enrolled voice data. | RFC 3339 Timestamp |
Enroll - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Enroll - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
201 | Created | Created |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Enroll - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid MiPass Enrollment Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "Invalid Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "The given Enrollment ID does not exist. If this is a new Enrollment, the Enrollment ID should be omitted."
}
OR
{
"statusCode": 400,
"message": "Invalid MiPass Enrollment request format - a minimum of 3 voice features are required to enroll voice."
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to perform MiPass Enrollment."
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Enroll - Processing Reasons
Face Processing Reasons
Reason | Description | User Action |
---|---|---|
FACE_TOO_CLOSE | Face is too close to the camera to accurately detect features. | Move face back from the camera so all edges are completely visible. |
FACE_NOT_DETECTED | Face was not detected in the image. | Ensure face is clearly visible and unobstructed. |
FACE_TOO_SMALL | Face is not large enough to accurately detect features. | Move face closer to the camera and ensure all edges are completely visible. |
FACE_ANGLE_TOO_LARGE | Face is not directly facing the camera. | Ensure face is pointed straight at the camera and not rotated in any direction. |
FAILED_TO_READ_IMAGE | There was an error reading the image file. | Ensure raw image bytes are saved and not modified in any way. Make sure an accepted image format is used. |
FAILED_QUALITY_CHECK | Image does not meet our quality standards. | Ensure image is taken in a location with sufficient lighting and meets our minimum requirements. |
TOO_MANY_FACES | More than one face was detected in the image. | Ensure only one face is present in the image. |
FACE_CROPPED | A full face cannot be detected. | Ensure the full face is visible and not obstructed in any way. |
FACE_FAILED_LIVENESS | Face failed liveness check. | Indicates a fraudulent transaction. |
Voice Processing Reasons
Reason | Description | User Action |
---|---|---|
VOICE_NOT_DETECTED | Unable to detect a voice in the recording. | Submit a clear recording with a voice present. |
VOICE_FILE_INVALID | There was an error reading the voice file. | Ensure raw voice recording bytes are saved and not modified in any way. Make sure an accepted voice recording format is used. |
VOICE_FAILED_LIVENESS | Voice failed liveness check. | Indicates a fraudulent transaction. |
VOICE_TOO_NOISY | Audio is too noisy. | Ask user to repeat the recording in quieter conditions. |
VOICE_TOO_SMALL_SPEECH_TOTAL_LENGTH | Total speech length in the audio is too small. | Ask user to repeat the given phrase more slowly. |
DIFFERENT_VOICES_DETECTED | There were different voices detected in the voice files. | Ask user to repeat enrollment phrases and ensure no other voices can be heard while speaking. |
MiPass - Verify
The verify endpoint is used for biometric authentication of an individual’s face and/or voice against a previously-enrolled sample. There are two components to the authentication of each biometric: comparison against the enrolled reference data, and liveness checks on the new sample(s). When authenticating a face and voice simultaneously, the top-level verificationStatus will return the lesser of the two individual biometric judgments. For example, status values of ‘Authentic’ and ‘Undetermined’ will result in a top-level verificationStatus of ‘Undetermined’.
Note: references to nonexistent biometric data will result in a status of ‘Undetermined’. Therefore, overall authentication cannot succeed even if a second biometric is successfully matched and judged to be live.
Verify - Request
Request Example
POST /api/biometric/v1/verify HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"voiceFeature": {
"data": "BASE64 ENCODED VOICE RECORDING"
},
"selfieImage": {
"data": "BASE64 ENCODED IMAGE"
}
}
Request Example with Mibi
POST /identity/biometric/v3/verify HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"voiceFeature": {
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
},
"selfieImage": {
"data": "BASE64 ENCODED IMAGE"
}
}
Path
POST /api/biometric/v1/verify
Required Fields
An enrollment can be verified with a face, a voice, or both. At least one of voiceFeatures
or selfieImages
must be present in the request.
Name | Type | Description | Restrictions |
---|---|---|---|
enrollmentId |
string | Mitek provided unique identifier from a previous enrollment. | UUID |
voiceFeature |
object | Voice recording to verify. | N/A |
data |
string | Base64-encoded WAV, WebM, or MP4 file containing voice recording. | N/A |
mibi |
String | [OPTIONAL] Base64-encoded JSON object containing session analytics data for the voice recording. Only applicable to MiSnap WebSDK capture events. | N/A |
selfieImage |
object | Selfie image to verify. | N/A |
data |
string | Base64-encoded selfie image file. | N/A |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
Verify - Response
"Authentic" Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"verificationStatus": "Authentic",
"details": {
"faceVerify": {
"status": "Authentic",
"dataExpiration": "2025-02-13T17:23:44Z"
},
"voiceVerify": {
"status": "Authentic",
"dataExpiration": "2025-02-13T17:23:44Z"
}
}
}
"Fraudulent" Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"verificationStatus": "Fraudulent",
"details": {
"faceVerify": {
"status": "Fraudulent",
"reasons": ["FACE_FAILED_LIVENESS"]
},
"voiceVerify": {
"status": "Fraudulent",
"reasons": ["VOICE_FAILED_COMPARE"]
}
}
}
"Undetermined" Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"verificationStatus": "Undetermined",
"details": {
"faceVerify": {
"status": "Undetermined",
"reasons": ["FAILED_QUALITY_CHECK", "FACE_NOT_DETECTED"]
},
"voiceVerify": {
"status": "Authentic"
}
}
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
enrollmentId |
string | Unique identifier for the enrollment. Used in verify, update, or delete operations. | UUID |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
verificationStatus |
string | Overall status of the verify operation. | Authentic Fraudulent Undetermined |
details |
object | Details of processing outcomes for the verify operation. | N/A |
faceVerify |
object | Contains details regarding face verification. | N/A |
status |
string | Status of face verification. | Authentic Fraudulent Undetermined |
reasons |
string (array) | Reasons for face verification failure. | N/A |
dataExpiration |
string | The expiration timestamp for the enrolled face data. | RFC 3339 Timestamp |
voiceVerify |
object | Contains details regarding voice verification. | N/A |
status |
string | Status of voice verification. | Authentic Fraudulent Undetermined |
reasons |
string (array) | Reasons for voice verification failure. | N/A |
dataExpiration |
string | The expiration timestamp for the enrolled voice data. | RFC 3339 Timestamp |
Verify - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Verify - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Verify - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid MiPass Verify Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "Invalid Request Format - [... details ...]"
}
OR
{
"statusCode": 400,
"message": "The given Enrollment ID does not exist or is invalid."
}
OR
{
"statusCode": 400,
"message": "The Enrolled Face is no longer valid. Enrollment needs to be updated before running Verify operation."
}
OR
{
"statusCode": 400,
"message": "The Enrolled Voice is no longer valid. Enrollment needs to be updated before running Verify operation."
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to perform MiPass Verify."
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Verify - Processing Reasons
Face Processing Reasons
Reason | Description | User Action |
---|---|---|
FACE_TOO_CLOSE | Face is too close to the camera to accurately detect features. | Move face back from the camera so all edges are completely visible. |
FACE_NOT_DETECTED | Face was not detected in the image. | Ensure face is clearly visible and unobstructed. |
FACE_TOO_SMALL | Face is not large enough to accurately detect features. | Move face closer to the camera and ensure all edges are completely visible. |
FACE_ANGLE_TOO_LARGE | Face is not directly facing the camera. | Ensure face is pointed straight at the camera and not rotated in any direction. |
FAILED_TO_READ_IMAGE | There was an error reading the image file. | Ensure raw image bytes are saved and not modified in any way. Make sure an accepted image format is used. |
FAILED_QUALITY_CHECK | Image does not meet our quality standards. | Ensure image is taken in a location with sufficient lighting and meets our minimum requirements. |
TOO_MANY_FACES | More than one face was detected in the image. | Ensure only one face is present in the image. |
FACE_CROPPED | A full face cannot be detected. | Ensure the full face is visible and not obstructed in any way. |
FACE_NOT_ENROLLED | Face has not been previously enrolled. | Ensure a face has been previously enrolled before attempting this operation. |
FACE_FAILED_LIVENESS | Face failed liveness check. | Indicates a fraudulent transaction. |
FACE_FAILED_COMPARE | Face did not match with enrolled face. | Indicates a fraudulent transaction. |
FACE_DATA_EXPIRED | The previously enrolled face data has expired. | Update the enrollment before attempting this operation. |
Voice Processing Reasons
Reason | Description | User Action |
---|---|---|
VOICE_NOT_DETECTED | Unable to detect a voice in the recording. | Submit a clear recording with a voice present. |
VOICE_NOT_ENROLLED | Voice has not been previously enrolled. | Ensure a voice has been previously enrolled before attempting this operation. |
VOICE_FILE_INVALID | There was an error reading the voice file. | Ensure raw voice recording bytes are saved and not modified in any way. Make sure an accepted voice recording format is used. |
VOICE_FAILED_LIVENESS | Voice failed liveness check. | Indicates a fraudulent transaction. |
VOICE_FAILED_COMPARE | Voice did not match with enrolled voice. | Indicates a fraudulent transaction. |
VOICE_DATA_EXPIRED | The previously enrolled voice data has expired. | Update the enrollment before attempting this operation. |
VOICE_TOO_NOISY | Audio is too noisy. | Ask user to repeat the recording in quieter conditions. |
VOICE_TOO_SMALL_SPEECH_TOTAL_LENGTH | Total speech length in the audio is too small. | Ask user to repeat the given phrase more slowly. |
MiPass - Delete
A DELETE request to the enroll endpoint will flag an enrollment record as permanently deleted and immediately delete the associated biometric data.
Delete - Request
Request Example
DELETE /api/biometric/v1/enroll/32609347-d962-4ec9-9984-5597d7b4c842?customerReferenceId=e759256b-46c0-475a-97eb-fe1c0a18a3bc HTTP/1.1
Authorization: Bearer $OAUTH_TOKEN
Path
DELETE /api/biometric/v1/enroll/{enrollmentId}?customerReferenceId={customerReferenceId}
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
enrollmentId |
string | Mitek provided unique identifier from a previous enrollment. | UUID |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
Delete - Response
Response Example
HTTP/1.1 200 OK
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"enrollmentId": "32609347-d962-4ec9-9984-5597d7b4c842",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24"
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
enrollmentId |
string | Unique identifier for the enrollment. Used in verify, update, or delete operations. | UUID |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
Delete - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Delete - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
404 | Not Found | Not Found |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Delete - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid MiPass Delete Request Format - [... details ...]"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "You do not have the correct permissions to delete a MiPass Enrollment."
}
404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json
{
"statusCode": 404,
"message": "The given Enrollment ID does not exist or has already been deleted."
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
MiPass - Check Quality
The Check Quality endpoint is used to evaluate the quality of the voice recording and determine if it meets the reasonable criteria for biometric enrollment or verification.
Check Quality Request
Request Example
POST /api/biometric/v1/check-quality HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"transactionType": "Enroll",
"voiceFeature": {
"data": "BASE64 ENCODED VOICE RECORDING"
}
}
Request Example with Mibi
POST /api/biometric/v1/check-quality HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"transactionType": "Enroll",
"voiceFeature": {
"data": "BASE64 ENCODED VOICE RECORDING",
"mibi": "BASE64 ENCODED MIBI JSON STRING"
}
}
Path
POST /api/biometric/v1/check-quality
Required Fields
Name | Type | Description | Restrictions |
---|---|---|---|
transactionType |
String | The transaction type for which the voice recording will be used. | Enroll or Verify |
voiceFeature |
Object | Voice recording to check quality. | N/A |
data |
String | Base64-encoded WAV, WebM, or MP4 file containing voice recording. | N/A |
mibi |
String | [OPTIONAL] Base64-encoded JSON object containing session analytics data for the voice recording. Only applicable to MiSnap WebSDK capture events. | N/A |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
String | Customer provided identifier that will be returned within the body of the response. | N/A |
Check Quality Response
"Pass" Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Mitek-Request-Id: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
Mitek-Server-Processing-Time: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"transactionType": "Enroll",
"qualityResult": {
"status": "Pass"
}
}
"Fail" Response Example
HTTP/1.1 200 OK
Content-Type: application/json
Mitek-Request-Id: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
Mitek-Server-Processing-Time: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"transactionType": "Enroll",
"qualityResult": {
"status": "Fail",
"reasons": [
"VOICE_TOO_NOISY",
"VOICE_TOO_SMALL_SPEECH_TOTAL_LENGTH"
]
}
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
String | A value submitted with the original request that is returned in the response. | N/A |
requestId |
String | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
transactionType |
String | A value submitted with the original request that is returned in the response. | Enroll or Verify |
qualityResult |
Object | Details of processing outcomes for the check quality operation. | N/A |
status |
String | Status of check quality operation. | Pass or Fail |
reasons |
String (array) | Reasons for check quality failure. | N/A |
Check Quality - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Check Quality - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
200 | OK | OK |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Check Quality - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Transaction type is required; allowed values are Enroll or Verify."
}
OR
{
"statusCode": 400,
"message": "Voice data not provided in voice feature."
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "MiPass is not enabled on your account."
}
OR
{
"statusCode": 403,
"message": "You do not have the correct permissions to perform a voice quality check."
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Standard HTTP REST-based response codes and messages are used to indicate success or failure for a request.
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
message |
String | A message describing the error. | None |
Check Quality - Processing Reasons
Voice Processing Reasons
Reason | Description | User Action |
---|---|---|
VOICE_FILE_INVALID | There was an error reading the voice file. | Ensure raw voice recording bytes are saved and not modified in any way. Make sure an accepted voice recording format is used. |
VOICE_TOO_NOISY | Audio is too noisy. | Ask user to repeat the recording in quieter conditions. |
VOICE_TOO_SMALL_SPEECH_TOTAL_LENGTH | Total speech length in the audio is too small. | Ask user to repeat the given phrase more slowly. |
AAMVA Verification
Performs verification of biodata against DMV record through the AAMVA Driver License Data Verification (DLDV) service. Not all U.S. states are currently supported. Please see Supported Jurisdictions.
Verification - Request
Request Example
POST /api/v2/aamva HTTP/1.1
Content-Type: application/json
Authorization: Bearer $OAUTH_TOKEN
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"issuingAuthority": "GA",
"documentNumber": "XYZ-123",
"dateOfBirth": "2022-02-02",
"surname": "Smith",
"eyeColor": "BLU"
}
Path
POST /api/v2/aamva
Required Fields
A verification request must contain the issuing authority, document number, and date of birth.
Name | Type | Description | Restrictions |
---|---|---|---|
issuingAuthority |
string | A two(2) character state code of the ID document issuer. | None |
documentNumber |
string | The document number of the ID document. | None |
dateOfBirth |
string | The date of birth of the person to which the ID document was issued. | YYYY-MM-DD |
Optional Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | Customer provided identifier that will be returned within the body of the response. | N/A |
surname |
string | The surname of the person to which the ID document was issued. | None |
eyeColor |
string | The eye color of the person to which the ID document was issued. | BLK , BLU , BRO , GRY , GRN , HAZ , MAR , PNK , DIC |
Verification - Response
"Successful" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"status": "Successful",
"matchResults":
{
"documentNumber": true,
"dateOfBirth": true,
"surname": false,
"eyeColor": true
}
}
"Failed" Response Example
HTTP/1.1 201 Created
Content-Type: application/json
mitek-RequestId: 5b55449e-bec3-4cff-b2d2-a8e6e4a3af24
mitek-ServerProcessingTime: 4021
{
"customerReferenceId": "e759256b-46c0-475a-97eb-fe1c0a18a3bc",
"requestId": "5b55449e-bec3-4cff-b2d2-a8e6e4a3af24",
"status": "Failed",
"reasons":["JURISDICTION_TIMEOUT"]
}
Returned Fields
Name | Type | Description | Restrictions |
---|---|---|---|
customerReferenceId |
string | A value submitted with the original request that is returned in the response. | N/A |
requestId |
string | The unique identifier that Mitek Systems has assigned to this transaction. | UUID |
status |
string | Status of the verification operation. | Successful Failed |
reasons |
string (array) | Reasons for failure to complete the verification operation. | Appears only if the status is Failed |
matchResults |
object | Details of processing outcomes for the verification operation. | N/A |
documentNumber |
Boolean | Indicates whether the document number matches the DMV record. | true or false |
dateOfBirth |
Boolean | Indicates whether the Date of Birth matches the DMV record. | true or false Omitted if |
surname |
Boolean | Indicates whether the Surname, if requested, matches the DMV record. | true or false Omitted if |
eyeColor |
Boolean | Indicates whether the eye color, if requested, matches the DMV record. | true or false Omitted if |
Verification - HTTP Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
default | mitek-RequestId | string | UUID | The ID that Mitek Systems has assigned to this transaction. |
default | mitek-ServerProcessingTime | integer | int32 | The total duration, in milliseconds, from the time the entire request was received until the response was sent. |
Verification - HTTP Response Codes
Status | Meaning | Description |
---|---|---|
201 | Created | Created |
400 | Bad Request | Bad Request |
401 | Unauthorized | Unauthorized |
403 | Forbidden | Forbidden |
408 | Request Timeout | Request Timeout |
415 | Unsupported Media Type | Unsupported Media Type |
500 | Internal Server Error | Internal Server Error |
Verification - HTTP Error Responses
400 Response Example
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"statusCode": 400,
"message": "Invalid AAMVA Request - no issuing authority provided in the request"
}
OR
{
"statusCode": 400,
"message": "Invalid AAMVA Request - the issuing authority is not a valid two letter state code."
}
OR
{
"statusCode": 400,
"message": "Invalid AAMVA Request - no document number provided in the request"
}
OR
{
"statusCode": 400,
"message": "Invalid AAMVA Request - no date of birth provided in the request"
}
OR
{
"statusCode": 400,
"message": "Invalid AAMVA Request - the date of birth is not formatted correctly. The accepted format is: yyyy-MM-dd"
}
401 Response Example
HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
"statusCode": 401,
"message": "Authorization has been denied for this request."
}
403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"statusCode": 403,
"message": "AAMVA is not enabled on your account."
}
413 Response Example
HTTP/1.1 413 Payload Too Large
Content-Type: application/json
{
"statusCode": 413,
"message": "Request entity too large"
}
415 Response Example
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json
{
"statusCode": 415,
"message": "The request entity's media type '...' is not supported for this resource."
}
500 Response Example
HTTP/1.1 500 Internal Server Error
Content-Type: application/json
{
"statusCode": 500,
"message": "There was a technical problem processing your request. Please try again."
}
Verification - Processing Reasons
Reason | Description | User Action |
---|---|---|
DOCUMENT_NOT_SUPPORTED | Verification is not available for this document, because the document's issuing authority is not a supported jurisdiction. | |
SCHEDULED_MAINTENANCE | Unavailable due to scheduled maintenance. (Note: To avoid a billable event, this transaction was not submitted.) | Try again later. |
JURISDICTION_TEMPORARILY_UNAVAILABLE | Jurisdiction temporarily unavailable. | Try again later. |
JURISDICTION_SYSTEM_ERROR | Jurisdiction system error. | |
JURISDICTION_TIMEOUT | Jurisdiction did not respond in a timely manner. | Try again later. |
Verification - Supported Jurisdictions
State | State Code | Restriction |
---|---|---|
Alabama | AL | |
Arkansas | AR | |
Arizona | AZ | |
Colorado | CO | |
Connecticut | CT | |
Washington D.C. | DC | |
Delaware | DE | Driver's License only |
Florida | FL | |
Georgia | GA | |
Hawaii | HI | |
Iowa | IA | |
Idaho | ID | |
Illinois | IL | |
Indiana | IN | |
Kansas | KS | |
Kentucky | KY | |
Massachusetts | MA | |
Maryland | MD | |
Maine | ME | |
Michigan | MI | |
Missouri | MO | |
Mississippi | MS | |
Montana | MT | |
Nebraska | NE | |
New Jersey | NJ | |
New Mexico | NM | |
Nevada | NV | |
North Carolina | NC | |
North Dakota | ND | |
Ohio | OH | |
Oregon | OR | |
Rhode Island | RI | |
South Dakota | SD | |
Tennessee | TN | |
Texas | TX | |
Virginia | VA | |
Vermont | VT | |
Washington | WA | |
West Virginia | WV | |
Wisconsin | WI | |
Wyoming | WY |