Overview

Trusona’s ID Proofing solution utilizes driver’s license verification using data from the American Association of Motor Vehicle Administrators (AAMVA). The service is the only one to utilize patented anti-replay technology, delivering an even more powerful method to accurately verify users and reduce identity fraud.

Trusona’s ID Proofing service includes:

  • Anti-replay technology — Patented technology ensures an identification request is authentic and not a replay of any previous request, providing unparalleled security insight.
  • Web and mobile use — Service can be used in web, mobile web and mobile apps, with support for both Apple iOS and Android.
  • RESTful API — The service exposes modern JSON REST APIs to facilitate fast and convenient integration.
  • State-based knowledge — Built-in logic layer to accommodate the nuances across each state in the way driver’s license data is stored and presented on the driver’s license.

Integration Setup

The integration setup is quick and easy! Contact support@trusona.com to get started. The general steps are noted below.

  1. Trusona will supply you with Production and Sandbox environment access when an evaluation agreement is signed.
  2. Trusona will walk you through the Anti-Replay payload required for integration use.
  3. Trusona will describe the sandbox environment and how to utilize it.

Using A PDF417 Barcode

Forwards identity document information to the AAMVA service to check for matches on each field and analyzes anti-replay data to determine if this request has been seen before.

Parameters

TypeNameDescriptionSchema
Bodybody requiredIdentity document data for verification.body

body

NameSchema
aamva requiredaamva
anti_replay requiredanti_replay

aamva

NameDescriptionSchema
barcode_data requiredThe PDF417 AAMVA barcode. This element is should be a URL encoded text string of the PDF417 barcode which complies to the AAMVA Specification. An example PDF417 AAMVA barcode: %40%0A%1E%0DANSI+636000090001DL00330023DLDAQT64235789%0ADCSSAMPLE%0A Transformation indicator: No Character length: N/A PII: Yes Data classification: Restrictedstring
transaction_locator_id optionalAn optional ID to use for tracking this request. If not provided, one will be generated. It must be unique. Transformation indicator: No Character length: 1-255 PII: No Data classification: Confidentialstring

anti_replay

NameSchema
accel_x optionalstring
accel_y optionalstring
accel_z optionalstring
checksum requiredstring
gyro_x optionalstring
gyro_y optionalstring
gyro_z optionalstring
nonce requiredstring
scan_height optionalstring
scan_width optionalstring
scan_x optionalstring
scan_y optionalstring
timestamp requiredstring

Responses

HTTP CodeDescriptionSchema
201The verification was successfully createdResponse 201
400Invalid JSON data was providedNo Content
403Either the API key was not provided or it was invalid.No Content
422Unable to process the request due to validation errors.Response 422
500An internal server error occurred.No Content

Response 201

NameDescriptionSchema
address_city_match_indicator optionalboolean
address_line1_match_indicator optionalboolean
address_line2_match_indicator optionalboolean
address_state_code_match_indicator optionalboolean
address_zip4_match_indicator optionalboolean
address_zip5_match_indicator optionalboolean
document_category_match_indicator optionalboolean
drivers_license_expiration_date_match_indicator optionalboolean
drivers_license_issue_date_match_indicator optionalboolean
drivers_license_number_match_indicator requiredboolean
person_birth_date_match_indicator optionalboolean
person_eye_color_match_indicator optionalboolean
person_first_name_exact_match_indicator optionalboolean
person_first_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the first name. The alternate fuzzy match is for a compare of the alternate keys from the first names. This element is returned when the exact match indicator for the First Name indicates a mismatch. A value of true, is an indication of a loose match on the first name.boolean
person_first_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the first name. The primary fuzzy match is for a compare of the primary keys from the first names. This element is returned when the exact match indicator for the First Name indicates a mismatch. A value of true, is an indication of a strong match on the first name.boolean
person_height_match_indicator optionalboolean
person_last_name_exact_match_indicator optionalboolean
person_last_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the last name. The alternate fuzzy match is for a compare of the alternate keys from the last names. This element is returned when the exact match indicator for the Last Name indicates a mismatch. A value of true, is an indication of a loose match on the last name.boolean
person_last_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the last name supplied by the user and the last name supplied by the state. This element is returned when the exact match indicator for the Last Name indicates a mismatch, to show if the supplied name is similar to the name on record. Double Metaphone is used to create keys for the fuzzy matching. The last name primary fuzzy match is for a compare of the primary keys from the last names. A value of true, is an indication of a strong match on the last name.boolean
person_middle_initial_match_indicator optionalboolean
person_middle_name_exact_match_indicator optionalboolean
person_middle_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the middle name. The alternate fuzzy match is for a compare of the alternate keys from the middle names. This element is returned when the exact match indicator for the Middle Name indicates a mismatch. A value of true, is an indication of a loose match on the middle name.boolean
person_middle_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the middle name. The primary fuzzy match is for a compare of the primary keys from the middle names. This element is returned when the exact match indicator for the Middle Name indicates a mismatch. A value of true, is an indication of a strong match on the middle name.boolean
person_name_suffix_match_indicator optionalboolean
person_sex_code_match_indicator optionalboolean
person_weight_match_indicator optionalboolean
replay optionalboolean
transaction_locator_id requiredstring
verification_request optionalAAMVA verification request created from the PDF417 AAMVA barcode data.verification_request

verification_request

NameDescriptionSchema
address_delivery_point_text_1 optionalstreet address 1 Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
address_delivery_point_text_2 optionalstreet address 2 Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
document_category_code optionalA coded categorization of a state document issued by a jurisdiction to an individual (i.e. License, Permit, ID Card). For a driver license the code is not required but may be included. For other types of documents it must be included. The values are: 1 = Driver License 2 = Driver Permit 3 = ID Card Transformation indicator: No Character length: 1 PII: No Data classification: Confidentialstring
drivers_license_expiration_date optionalA date a credential expires in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
drivers_license_issue_date optionalA date a credential was issued in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
identification_id optionalAn identifier of the License or Card (aka. Driver License Number). Matching is not case sensitive, so a number will match if it is entered as “A123” or “a123”. Transformation indicator: Yes Character length: N/A PII: Yes Data classification: Restrictedstring
location_city_name optionalA name of a city or town. Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
location_postal_code optionalAn identifier of a post office-assigned zone for an address. Include the ZIP code on the credential. A 5 digit code should be presented as “12345” and a 9 digit code as “123456789”. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
location_state_us_postal_service_code optionalA state, commonwealth, province, or other such geopolitical subdivision of a country. Transformation indicator: No Character length: 2 PII: Yes Data classification: Restrictedstring
message_destination_id optionalAn identifier of the jurisdiction which issues a person’s driving privileges. This element is the two letter state code defined by the USPS. Transformation indicator: No Character length: 2 PII: Yes Data classification: Restrictedstring
person_birth_date optionalA date a person was born in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
person_eye_color_code optionalA code identifying the eye color of a person. The values are: BLK = Black BLU = Blue BRO = Brown DIC = Dichromatic GRY = Gray GRN = Green HAZ = Hazel MAR = Maroon PNK = Pink From the ANSI D20 standard. (https://www.aamva.org/D20/) Transformation indicator: No Character length: 3 PII: Yes Data classification: Restrictedstring
person_given_name optionalA first name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_height_measure optionalA measurement of a person’s height. The height is provided in feet-inches. For example 5 foot 10 inches is encoded as “510” Transformation indicator: No Character length: 3 PII: Yes Data classification: Restrictedinteger
person_middle_name optionalA middle name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_name_suffix_text optionalA term appended after the family name that qualifies the name. (e.g. “Jr”) Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_sex_code optionalA code identifying the sex of a person. The values are: 1 = Male 2 = Female Transformation indicator: No Character length: 1 PII: Yes Data classification: Restrictedstring
person_sur_name optionalA last name or family name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_weight_measure optionalA measurement of a person’s weight in pounds. For example 195 pounds is encoded as “195” Transformation indicator: No Character length: 2-4 PII: Yes Data classification: Restrictedinteger

Response 422

NameDescriptionSchema
aamva_error optionalAn error occurred with the request sent to AAMVAaamva_error
errors optionalValidation errors in the aamva portion of the request.< string, < string > array > map

aamva_error

NameDescriptionSchema
details optionalIf provided by AAMVA, the list of error codes and messages.details > array
message optionalA generic description of the error that occurred.string

details

NameDescriptionSchema
exception_actor_text optionalThe Exception Actor Text contains the description of the actor that raised the exception.string
exception_id optionalAn identification of an individual issue.string
exception_text optionalstring

Consumes

  • application/json

Produces

  • application/json

Example HTTP response

Response 422
{
                "errors" : {
                  "message_destination_id" : [ "can't be blank", "XX is not a supported state" ],
                  "identification_id" : [ "can't be blank", "not suppported within cert environment" ],
                  "checksum" : [ "Supplied checksum is incorrect" ],
                  "transaction_locator_id" : [ "has already been taken" ]
                },
                "aamva_error" : {
                  "message" : "DLDV VSS - ExceptionId: 0019, ExceptionText: User not Authorized to send requests to MVA, ExceptionTypeCode: I, ExceptionFatalIndicatorCode: true, ExceptionActorText: AAMVA ESB Message Broker",
                  "details" : [ {
                    "exception_id" : "0001",
                    "exception_text" : "Destination's connection is not active",
                    "exception_actor_text" : "AAMVA NCS"
                  }, {
                    "exception_id" : "0001 or 0009",
                    "exception_text" : "MVA system is unavailable",
                    "exception_actor_text" : "MVA"
                  }, {
                    "exception_id" : "0002",
                    "exception_text" : "MVA system error",
                    "exception_actor_text" : "MVA"
                  }, {
                    "exception_id" : "0017",
                    "exception_text" : "User not authorized to use this endpoint of the service",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0018",
                    "exception_text" : "Destination's connection is not active",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0019",
                    "exception_text" : "User not Authorized to send requests to MVA",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0026",
                    "exception_text" : "Origin Site Not Participating",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0047",
                    "exception_text" : "MVA did not respond in a timely fashion",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0076",
                    "exception_text" : "AAMVA System error",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "3401",
                    "exception_text" : "Driver License ID is required",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9925",
                    "exception_text" : "Destination of the request is missing the Destination SiteID",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9926",
                    "exception_text" : "Origin of the request is missing the Origin SiteID",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9995",
                    "exception_text" : "TransactionLocatorID of the request is missing or invalid",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9999",
                    "exception_text" : "Unable to complete transaction, please contact AAMVA",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "X001",
                    "exception_text" : "Invalid Authentication Token Provided",
                    "exception_actor_text" : "AAMVA Authentication"
                  } ]
                }
              }

Checking The API Status

Provides an endpoint to check API status

GET /api/v2/status

Responses

HTTP CodeDescriptionSchema
200The current API statusResponse 200

Response 200

NameSchema
success optionalstring

Produces

  • application/json

Checking The Supported States

Provides information about states participating in the AAMVA verification program.

GET /api/v2/supported_states

Responses

HTTP CodeDescriptionSchema
200The states participating in the AAMVA program and their documented, scheduled downtimes for each day of the week.< string, Response 200 > map
403Either the API key was not provided or it was invalid.No Content
500An internal server error occurred.No Content

Response 200

NameSchema
downtime optionaldowntime

downtime

NameSchema
Friday optionalDowntimeWindow > array
Monday optionalDowntimeWindow > array
Saturday optionalDowntimeWindow > array
Sunday optionalDowntimeWindow > array
Thursday optionalDowntimeWindow > array
Tuesday optionalDowntimeWindow > array
Wednesday optionalDowntimeWindow > array

Produces

  • application/json

Example HTTP response

Response 200
{
                      "AZ" : {
                        "downtime" : {
                          "Sunday" : [ {
                            "start" : "02:00 ET",
                            "end" : "05:00 ET"
                          } ],
                          "Monday" : [ ],
                          "Tuesday" : [ ],
                          "Wednesday" : [ ],
                          "Thursday" : [ ],
                          "Friday" : [ ],
                          "Saturday" : [ ]
                        }
                      },
                      "MD" : {
                        "downtime" : {
                          "Sunday" : [ {
                            "start" : "01:00 ET",
                            "end" : "05:00 ET"
                          }, {
                            "start" : "06:00 ET",
                            "end" : "14:00 ET"
                          } ],
                          "Monday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ],
                          "Tuesday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ],
                          "Wednesday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ],
                          "Thursday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ],
                          "Friday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ],
                          "Saturday" : [ {
                            "start" : "01:00 ET",
                            "end" : "04:00 ET"
                          } ]
                        }
                      }
                    }

Verifying Data Elements

Forwards identity document information to the AAMVA service to check for matches on each field and analyzes anti-replay data to determine if this request has been seen before.

Parameters

TypeNameDescriptionSchema
Bodybody requiredIdentity document data for verification.body

body

NameDescriptionSchema
aamva requiredaamva
anti_replay requiredanti_replay
client_id optionalIdentifier used by channel partners to identify the originating client Transformation indicator: No Character length: 1-255 PII: No Data classification: Confidentialstring

aamva

NameDescriptionSchema
address_delivery_point_text_1 optionalstreet address 1 Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
address_delivery_point_text_2 optionalstreet address 2 Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
document_category_code optionalA coded categorization of a state document issued by a jurisdiction to an individual (i.e. License, Permit, ID Card). For a driver license the code is not required but may be included. For other types of documents it must be included. The values are: 1 = Driver License 2 = Driver Permit 3 = ID Card Transformation indicator: No Character length: 1 PII: No Data classification: Confidentialstring
drivers_license_expiration_date optionalA date a credential expires in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
drivers_license_issue_date optionalA date a credential was issued in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
identification_id requiredAn identifier of the License or Card (aka. Driver License Number). Matching is not case sensitive, so a number will match if it is entered as “A123” or “a123”. Transformation indicator: Yes Character length: N/A PII: Yes Data classification: Restrictedstring
location_city_name optionalA name of a city or town. Transformation indicator: Yes Character length: 1-255 PII: Yes Data classification: Restrictedstring
location_postal_code optionalAn identifier of a post office-assigned zone for an address. Include the ZIP code on the credential. A 5 digit code should be presented as “12345” and a 9 digit code as “123456789”. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
location_state_us_postal_service_code optionalA state, commonwealth, province, or other such geopolitical subdivision of a country. Transformation indicator: No Character length: 2 PII: Yes Data classification: Restrictedstring
message_destination_id requiredAn identifier of the jurisdiction which issues a person’s driving privileges. This element is the two letter state code defined by the USPS. Transformation indicator: No Character length: 2 PII: Yes Data classification: Restrictedstring
person_birth_date optionalA date a person was born in the format of YYYYMMDD. Transformation indicator: No Character length: 8 PII: Yes Data classification: Restrictedstring (date)
person_eye_color_code optionalA code identifying the eye color of a person. The values are: BLK = Black BLU = Blue BRO = Brown DIC = Dichromatic GRY = Gray GRN = Green HAZ = Hazel MAR = Maroon PNK = Pink From the ANSI D20 standard. (https://www.aamva.org/D20/) Transformation indicator: No Character length: 3 PII: Yes Data classification: Restrictedstring
person_given_name optionalA first name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_height_measure optionalA measurement of a person’s height. The height is provided in feet-inches. For example 5 foot 10 inches is encoded as “510” Transformation indicator: No Character length: 3 PII: Yes Data classification: Restrictedinteger
person_middle_name optionalA middle name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_name_suffix_text optionalA term appended after the family name that qualifies the name. (e.g. “Jr”) Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_sex_code optionalA code identifying the sex of a person. The values are: 1 = Male 2 = Female Transformation indicator: No Character length: 1 PII: Yes Data classification: Restrictedstring
person_sur_name optionalA last name or family name of a person. Transformation indicator: No Character length: 1-255 PII: Yes Data classification: Restrictedstring
person_weight_measure optionalA measurement of a person’s weight in pounds. For example 195 pounds is encoded as “195” Transformation indicator: No Character length: 2-4 PII: Yes Data classification: Restrictedinteger
transaction_locator_id optionalAn optional ID to use for tracking this request. If not provided, one will be generated. It must be unique. Transformation indicator: No Character length: 1-255 PII: No Data classification: Confidentialstring

anti_replay

NameSchema
accel_x optionalstring
accel_y optionalstring
accel_z optionalstring
checksum requiredstring
gyro_x optionalstring
gyro_y optionalstring
gyro_z optionalstring
nonce requiredstring
scan_height optionalstring
scan_width optionalstring
scan_x optionalstring
scan_y optionalstring
timestamp requiredstring

Responses

HTTP CodeDescriptionSchema
201The verification was successfully createdResponse 201
400Invalid JSON data was providedNo Content
403Either the API key was not provided or it was invalid.No Content
422Unable to process the request due to validation errors.Response 422
500An internal server error occurred.No Content

Response 201

NameDescriptionSchema
address_city_match_indicator optionalboolean
address_line1_match_indicator optionalboolean
address_line2_match_indicator optionalboolean
address_state_code_match_indicator optionalboolean
address_zip4_match_indicator optionalboolean
address_zip5_match_indicator optionalboolean
document_category_match_indicator optionalboolean
drivers_license_expiration_date_match_indicator optionalboolean
drivers_license_issue_date_match_indicator optionalboolean
drivers_license_number_match_indicator requiredboolean
person_birth_date_match_indicator optionalboolean
person_eye_color_match_indicator optionalboolean
person_first_name_exact_match_indicator optionalboolean
person_first_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the first name. The alternate fuzzy match is for a compare of the alternate keys from the first names. This element is returned when the exact match indicator for the First Name indicates a mismatch. A value of true, is an indication of a loose match on the first name.boolean
person_first_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the first name. The primary fuzzy match is for a compare of the primary keys from the first names. This element is returned when the exact match indicator for the First Name indicates a mismatch. A value of true, is an indication of a strong match on the first name.boolean
person_height_match_indicator optionalboolean
person_last_name_exact_match_indicator optionalboolean
person_last_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the last name. The alternate fuzzy match is for a compare of the alternate keys from the last names. This element is returned when the exact match indicator for the Last Name indicates a mismatch. A value of true, is an indication of a loose match on the last name.boolean
person_last_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the last name supplied by the user and the last name supplied by the state. This element is returned when the exact match indicator for the Last Name indicates a mismatch, to show if the supplied name is similar to the name on record. Double Metaphone is used to create keys for the fuzzy matching. The last name primary fuzzy match is for a compare of the primary keys from the last names. A value of true, is an indication of a strong match on the last name.boolean
person_middle_initial_match_indicator optionalboolean
person_middle_name_exact_match_indicator optionalboolean
person_middle_name_fuzzy_alternate_match_indicator optionalAn indication of a fuzzy match on the middle name. The alternate fuzzy match is for a compare of the alternate keys from the middle names. This element is returned when the exact match indicator for the Middle Name indicates a mismatch. A value of true, is an indication of a loose match on the middle name.boolean
person_middle_name_fuzzy_primary_match_indicator optionalAn indication of a fuzzy match on the middle name. The primary fuzzy match is for a compare of the primary keys from the middle names. This element is returned when the exact match indicator for the Middle Name indicates a mismatch. A value of true, is an indication of a strong match on the middle name.boolean
person_name_suffix_match_indicator optionalboolean
person_sex_code_match_indicator optionalboolean
person_weight_match_indicator optionalboolean
replay optionalboolean
transaction_locator_id requiredstring

Response 422

NameDescriptionSchema
aamva_error optionalAn error occurred with the request sent to AAMVAaamva_error
errors optionalValidation errors in the aamva portion of the request.< string, < string > array > map

aamva_error

NameDescriptionSchema
details optionalIf provided by AAMVA, the list of error codes and messages.details > array
message optionalA generic description of the error that occurred.string

details

NameDescriptionSchema
exception_actor_text optionalThe Exception Actor Text contains the description of the actor that raised the exception.string
exception_id optionalAn identification of an individual issue.string
exception_text optionalstring

Consumes

  • application/json

Produces

  • application/json

Example HTTP response

Response 422
{
                "errors" : {
                  "message_destination_id" : [ "can't be blank", "XX is not a supported state" ],
                  "identification_id" : [ "can't be blank", "not suppported within cert environment" ],
                  "checksum" : [ "Supplied checksum is incorrect" ],
                  "transaction_locator_id" : [ "has already been taken" ]
                },
                "aamva_error" : {
                  "message" : "DLDV VSS - ExceptionId: 0019, ExceptionText: User not Authorized to send requests to MVA, ExceptionTypeCode: I, ExceptionFatalIndicatorCode: true, ExceptionActorText: AAMVA ESB Message Broker",
                  "details" : [ {
                    "exception_id" : "0001",
                    "exception_text" : "Destination's connection is not active",
                    "exception_actor_text" : "AAMVA NCS"
                  }, {
                    "exception_id" : "0001 or 0009",
                    "exception_text" : "MVA system is unavailable",
                    "exception_actor_text" : "MVA"
                  }, {
                    "exception_id" : "0002",
                    "exception_text" : "MVA system error",
                    "exception_actor_text" : "MVA"
                  }, {
                    "exception_id" : "0017",
                    "exception_text" : "User not authorized to use this endpoint of the service",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0018",
                    "exception_text" : "Destination's connection is not active",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0019",
                    "exception_text" : "User not Authorized to send requests to MVA",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0026",
                    "exception_text" : "Origin Site Not Participating",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0047",
                    "exception_text" : "MVA did not respond in a timely fashion",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "0076",
                    "exception_text" : "AAMVA System error",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "3401",
                    "exception_text" : "Driver License ID is required",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9925",
                    "exception_text" : "Destination of the request is missing the Destination SiteID",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9926",
                    "exception_text" : "Origin of the request is missing the Origin SiteID",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9995",
                    "exception_text" : "TransactionLocatorID of the request is missing or invalid",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "9999",
                    "exception_text" : "Unable to complete transaction, please contact AAMVA",
                    "exception_actor_text" : "DLDV VSS"
                  }, {
                    "exception_id" : "X001",
                    "exception_text" : "Invalid Authentication Token Provided",
                    "exception_actor_text" : "AAMVA Authentication"
                  } ]
                }
              }

Looking Up A Previous Transaction

Look up a verification record by the transaction locator ID.

GET /api/v2/verifications/{transaction_locator_id}

Parameters

TypeNameDescriptionSchema
Pathtransaction_locator_id requiredThe transaction locator ID of the verification request to look up.string

Responses

HTTP CodeDescriptionSchema
200If the verification request was received, the transaction locator ID and the time it was created are returned.Response 200
403Either the API key was not provided or it was invalid.No Content
404The verification request for the given transaction locator ID was not received.No Content
500An internal server error occurred.No Content

Response 200

NameSchema
created_at requiredstring (date)
transaction_locator_id requiredstring

Produces

  • application/json

Example HTTP response

Response 200
{
                  "transaction_locator_id" : "2AB2AE59-4E28-4E3A-9480-57B19E09BBAD",
                  "created_at" : "2019-03-20T16:47:58.520Z"
                }

The Trusona Anti-Replay Payload

The anti-replay payload is patented by Trusona and the Trusona team will work with you and your team to craft and build this payload.

Further Reading

Trusona ID Proofing Sandbox Environment Guide