---
title: "Verify"
method: POST
path: "/v3/verifications/verify"
tags: ["Verifications"]
---

# Verify

`POST /v3/verifications/verify`

Calling this method will perform a verification. You can query configuration to get what fields are available to you in each each country. It is also possible to get sample requests from the customer portal.

## Request body

- VerifyRequest — The verification call for the Normalized API is a POST method call
  - `VerificationType` 'Demo' — The type of verification to perform. Please use 'Demo' to try it.
  - `PackageId` string — The Package ID to run the transaction under which can be obtained by your Customer Success Manager or via a support ticket.
  - `CallBackUrl` string, nullable
  - `Timeout` integer, nullable — If set, Trulioo will try to update the client synchronously within the timeout in seconds. If failed to accomplish, the transaction will be canceled.
  - `ConsentForDataSources` string[], nullable — Some datasources required your customer provide consent to access them. Set that the customer has provided consent for each datasource that requires one. If consent is not provided the datasource will not be queried.
  - `CountryCode` string — The country code for which the verification needs to be performed.
  - `CustomerReferenceID` string, nullable — Customer Reference Id
  - `DataFields` DataFields — The data field name-value pairs for the data elements on which the verification is to be performed
    - `PersonInfo` PersonInfo — Personal Information
      - `FirstGivenName` string, nullable — First name of the individual to be verified
      - `MiddleName` string, nullable — Second given name of the individual to be verified
      - `FirstSurName` string, nullable — First (paternal) family name of the individual to be verified
      - `SecondSurname` string, nullable — second family name of the individual to be verified
      - `isoLatin1Name` string, nullable — Enter full name in ISO Latin-1 character set
      - `DayOfBirth` integer, nullable — Day of birth date (e.g. 23 for a date of birth of 23/11/1975)
      - `MonthOfBirth` integer, nullable — Month of birth date (e.g. 11 for a date of birth of 23/11/1975)
      - `YearOfBirth` integer, nullable — Year of birth date (e.g. 1975 for a date of birth of 23/11/1975)
      - `MinimumAge` integer, nullable — Minimum permitted age of the individual
      - `Gender` string, nullable — Single character M / F (M = Male, F = Female)
      - `AdditionalFields` PersonInfoAdditionalFields
        - `FullName` string, nullable — Full name of of the individual to be verified
    - `Location` Location
      - `BuildingNumber` string, nullable — House / Civic / Building number of home address
      - `BuildingName` string, nullable — Name of building of home address
      - `UnitNumber` string, nullable — Flat/Unit/Apartment number of home address
      - `StreetName` string, nullable — Street name of primary residence
      - `StreetType` string, nullable — Street type of primary residence (e.g. St, Rd etc)
      - `City` string, nullable — City of home address
      - `Suburb` string, nullable — Suburb / Subdivision / Municipality of home address
      - `County` string, nullable — County / District of home address
      - `StateProvinceCode` string, nullable — State of primary residence. US sources expect 2 characters. Australian sources expect 2 or 3 characters.
      - `Country` string, nullable — Country of physical address (ISO 3166-1 alpha-2)
      - `PostalCode` string, nullable — ZIP Code or Postal Code of home address
      - `poBox` string, nullable — Post Office Box
      - `AdditionalFields` LocationAdditionalFields — Additional Fields for Location
        - `Address1` string, nullable — Address1 is available in certain countries. It can be used to pass a compiled address field instead of sending individual address attributes (such as UnitNumber, BuidlingNumber, BuildingName, StreetName and StreetType). GlobalGateway will provide a pass through of Address1 directly to connected datasources for the selected country. Please note: each datasource requires the address fields to be configured in a certain manner, implementing and sending Address1 instead of individual address fields may affect your ability to verify this address.
    - `Communication` Communication
      - `MobileNumber` string, nullable — Mobile phone number
      - `Telephone` string, nullable — Telephone number of the individual to be verified
      - `Telephone2` string, nullable — Additional Phone/Mobile Number of the individual to be verified
      - `EmailAddress` string, nullable — Email address of the individual to be verified
    - `DriverLicence` DriverLicence
      - `Number` string, nullable — Driver's Licence Number of the individual to be verified
      - `State` string, nullable — State of issue for Driver's Licence
      - `DayOfExpiry` integer, nullable — Driver's Licence day of expiry of the individual to be verified
      - `MonthOfExpiry` integer, nullable — Driver's Licence month of expiry of the individual to be verified
      - `YearOfExpiry` integer, nullable — Driver's Licence year of expiry of the individual to be verified
    - `NationalIds` NationalId[], nullable — National Identification Information
      - `Number` string, nullable
      - `Type` string, nullable — Supported Types: NationalID, Health, SocialService, TaxIDNumber
      - `DistrictOfIssue` string, nullable — District that issued the ID
      - `CityOfIssue` string, nullable — City that issued the ID
      - `ProvinceOfIssue` string, nullable — Province that issued the ID
      - `CountyOfIssue` string, nullable — County that issued the ID
    - `Passport` Passport
      - `Mrz1` string, nullable — Line 1 of the passport MRZ
      - `Mrz2` string, nullable — line 2 of the passport MRZ
      - `Number` string, nullable — Passport Number
      - `DayOfExpiry` integer, nullable — Passport's Licence day of expiry of the individual to be verified
      - `MonthOfExpiry` integer, nullable — Passport's Licence month of expiry of the individual to be verified
      - `YearOfExpiry` integer, nullable — Passport's Licence year of expiry of the individual to be verified
    - `Document` Document
      - `documentType` 'PASSPORT' | 'DRIVERS_LICENSE' | 'ID_CARD' | 'RESIDENCE_PERMIT' | 'MILITARY_ID' | 'VISA' | 'HEALTH_CARD' | 'TRAVEL_DOCUMENT' | 'VOTER_ID' | 'OTHER' | 'UNKNOWN' | 'UNSUPPORTED' | 'NOT_STARTED' | 'ERROR' | '' — Type of the identification document provided.
      - `documentName` string
      - `dlCategory` string — The driving license category if the submitted document is of type DRIVERS_LICENSE
      - `documentNumber` string — The primary document identifier apparent in all documents.
      - `documentNumber2` string — The second document identifier that is apparent in some documents.
      - `documentNumber3` string — The third document identifier that is apparent in some documents.
      - `documentNumber4` string — The fourth document identifier that is apparent in some documents.
      - `documentCountry` string — The ISO alpha-2 code of issuing country of the document.
      - `jurisdictionCode` string — The code of issuing jurisdiction of the document.
      - `issueDate` string — Date at which document is issued by a governing body.
      - `expirationDate` string — Date at which document will or has expired.
      - `alternateDocumentNumber` string — Document number that is non-iso latin
      - `alternateDocumentNumber2` string — Document number that is non-iso latin
      - `alternateDocumentNumber3` string — Document number that is non-iso latin
      - `alternateDocumentNumber4` string — Document number that is non-iso latin
      - `alternateExpiryDate` string — Expiry date that is non-iso latin
      - `alternateIssueDate` string — Issue date that is non-iso latin
    - `Business` Business
      - `BusinessName` string, nullable — Name of the business to be verified
      - `TradestyleName` string, nullable — Trade Style Name of the business to be verified
      - `TaxIDNumber` string, nullable — Tax ID Number of the business to be verified
      - `BusinessRegistrationNumber` string, nullable — Registration number of business to be verified
      - `DayOfIncorporation` integer, nullable — Day of incorporation of the business to be verified
      - `MonthOfIncorporation` integer, nullable — Month of incorporation of the business to be verified
      - `YearOfIncorporation` integer, nullable — Year of incorporation of the business to be verified
      - `JurisdictionOfIncorporation` string, nullable — Jurisdiction Of Incorporation of the business to be verified
      - `ShareholderListDocument` boolean, nullable — Whether or not to retrieve shareholderList document
      - `FinancialInformationDocument` boolean, nullable — Whether or not to retrieve financial information document
      - `DunsNumber` string, nullable — Duns Number
      - `Entities` boolean, nullable — Whether or not to retrieve entity detail
      - `PeopleOfSignificantControl` PersonOfSignificantControl[], nullable — A list of people to check for their matchstatus
        - `FirstGivenName` string, nullable
        - `MiddleName` string, nullable
        - `FirstSurname` string, nullable
        - `SecondSurname` string, nullable
        - `FullName` string, nullable
        - `BusinessName` string, nullable
      - `Filings` boolean, nullable — Whether or not to retrieve filing detail
      - `ArticleOfAssociation` boolean, nullable — Whether or not to retrieve article of association document
      - `RegistrationDetails` boolean, nullable — Whether or not to retrieve registration detail document
      - `AnnualReport` boolean, nullable — Whether or not to retrieve annual report document
    - `Risk` RiskMonitorSettings — Fraud Monitoring (Risk) Information
      - `Frequency` string, nullable — Frequency to run a fraud check on the enrolled entity
      - `CallbackUrl` string, nullable — Callback Url for Fraud product
      - `Ip` string, nullable — The IP address of the end user
      - `Email` string, nullable — Email of end user
      - `Action` string, nullable — Contextual input for datasource
      - `UserAgent` string, nullable — User Agent of end user
      - `DeviceID` string, nullable — Device ID of end user
      - `Phone` string, nullable — Phone number of end user
    - `CountrySpecific` object, nullable — CountrySpecific fields {"CountryCode" : {"Field1" : "Value", "Field2" : "Value" }}
  - `RequestErrors` ServiceError[], nullable
    - `Code` string, nullable
    - `Message` string, nullable
  - `VerboseMode` boolean — To return additional appended fields of watch list hit details in the response

## Response `200`

Success

- VerifyResult
  - `TransactionID` string, nullable — The id for the transaction it will be a GUID
  - `UploadedDt` string, date-time — Time in UTC
  - `CompletedDt` string, date-time, nullable — Time in UTC
  - `CountryCode` string, nullable — Country Code
  - `ProductName` string, nullable — Product Name
  - `Record` Record
    - `TransactionRecordID` string, nullable — The TransactionRecordID, this is the ID you will use to fetch the transaction again.
    - `RecordStatus` string, nullable — 'match' or 'nomatch' if the verification passed the rules configured on your account this will be 'match'.
    - `SecondaryRecordStatus` string, nullable — 'match' or 'nomatch' if the secondary verification was run and passed the rules configured on your account this will be 'match'.
    - `DatasourceResults` DatasourceResult[], nullable — Results for each datasource that was queried
      - `DatasourceStatus` string, nullable
      - `DatasourceName` string, nullable
      - `DatasourceFields` DatasourceField[], nullable
        - `FieldName` string, nullable
        - `Status` string, nullable
        - `FieldGroup` string, nullable
      - `AppendedFields` AppendedField[], nullable
        - `FieldName` string, nullable
        - `Data` unknown
      - `Errors` ServiceError[], nullable
        - `Code` string, nullable
        - `Message` string, nullable
      - `FieldGroups` string[], nullable
    - `Errors` ServiceError[], nullable
      - `Code` string, nullable
      - `Message` string, nullable
    - `Rule` RecordRule — RecordRule used for the transaction.
      - `RuleName` string, nullable — Name of RecordRule.
      - `Note` string, nullable — Rule Description.
      - `SecondaryRuleName` string, nullable — Name of the Secondary RecordRule.
      - `SecondaryRuleNote` string, nullable — Secondary Rule Description.
  - `CustomerReferenceID` string, nullable — Customer Reference Id
  - `Errors` ServiceError[], nullable
    - `Code` string, nullable
    - `Message` string, nullable

## Other responses

- `400` — Your request could not be processed, there should be more details in the response.
- `401` — The token you provided is not valid or you are using an account that is not enabled.
- `408` — The request took longer to process than we waited.
- `415` — You asked for a media type that we do not support. You should request application/json in the Content-Type header.
- `500` — An error happened on the server without a specific message.

---

[API](https://skmtc.net/trulioo/apis/trulioo-platform-api.md) · [All operations](https://skmtc.net/trulioo/apis/trulioo-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/trulioo/trulioo-platform-api/versions/a825565ee177/schema)
