{
  "openapi": "3.0.4",
  "info": {},
  "paths": {},
  "components": {
    "schemas": {
      "ProcessingStatus": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "NotAvailable",
          "ExtractionFailed",
          "PartiallyCompleted",
          "Completed",
          "CompletedAfterFront",
          "ServerModelError",
          "FullyCroppedDocument"
        ],
        "type": "string",
        "format": "string"
      },
      "FieldValueType": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "FirstName",
          "LastName",
          "FullName",
          "AdditionalNameInformation",
          "LocalizedName",
          "FathersName",
          "MothersName",
          "Address",
          "AdditionalAddressInformation",
          "AdditionalOptionalAddressInformation",
          "PlaceOfBirth",
          "Nationality",
          "Race",
          "Religion",
          "Profession",
          "MaritalStatus",
          "ResidentialStatus",
          "Employer",
          "Sex",
          "DateOfBirth",
          "DateOfIssue",
          "DateOfExpiry",
          "DocumentNumber",
          "PersonalIdNumber",
          "DocumentAdditionalNumber",
          "DocumentOptionalAdditionalNumber",
          "AdditionalPersonalIdNumber",
          "IssuingAuthority",
          "DriverLicenseDetailedInfo",
          "Mrz",
          "ClassEffectiveDate",
          "ClassExpiryDate"
        ],
        "type": "string",
        "format": "string"
      },
      "FieldCheck": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Check"
          },
          {
            "type": "object",
            "properties": {
              "field": {
                "$ref": "#/components/schemas/FieldValueType"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "MatchLevel": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Level1",
          "Level2",
          "Level3",
          "Level4",
          "Level5",
          "Level6",
          "Level7",
          "Level8",
          "Level9",
          "Level10",
          "Disabled"
        ],
        "type": "string",
        "format": "string"
      },
      "TieredCheck": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Check"
          },
          {
            "type": "object",
            "properties": {
              "matchLevel": {
                "$ref": "#/components/schemas/MatchLevel"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "CheckResult": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "NotPerformed",
          "Pass",
          "Fail"
        ],
        "type": "string",
        "format": "string"
      },
      "Check": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "result": {
            "$ref": "#/components/schemas/CheckResult"
          },
          "performedChecks": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "details": {
            "type": "object",
            "additionalProperties": {},
            "nullable": true
          },
          "checks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Check"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CertaintyLevel": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "NotPerformed",
          "High",
          "Medium",
          "Low"
        ],
        "type": "string",
        "format": "string"
      },
      "RecommendedOutcome": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Undeterminable",
          "Reject",
          "Accept",
          "Retry",
          "ManuallyReview"
        ],
        "type": "string",
        "format": "string"
      },
      "DetailedCheck": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Check"
          },
          {
            "type": "object",
            "properties": {
              "certaintyLevel": {
                "$ref": "#/components/schemas/CertaintyLevel"
              },
              "recommendedOutcome": {
                "$ref": "#/components/schemas/RecommendedOutcome"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "MessageStatus": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Debug",
          "Info",
          "Warning",
          "Error"
        ],
        "type": "string",
        "format": "string"
      },
      "ResponseMessage": {
        "required": [
          "code",
          "message",
          "status"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/MessageStatus"
          }
        },
        "additionalProperties": false
      },
      "IndicatorType": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "ImageQuality",
          "ScanProcess"
        ],
        "type": "string",
        "format": "string"
      },
      "IndicatorResult": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "NotPerformed",
          "Pass",
          "Fail",
          "Warn"
        ],
        "type": "string",
        "format": "string"
      },
      "Indicator": {
        "required": [
          "name",
          "result",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/IndicatorType"
          },
          "result": {
            "$ref": "#/components/schemas/IndicatorResult"
          }
        },
        "additionalProperties": false
      },
      "ExtrProcessingStatus": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Success",
          "DetectionFailed",
          "ImagePreprocessingFailed",
          "StabilityTestFailed",
          "ScanningWrongSide",
          "FieldIdentificationFailed",
          "MandatoryFieldMissing",
          "InvalidCharactersFound",
          "ImageReturnFailed",
          "BarcodeRecognitionFailed",
          "MrzParsingFailed",
          "ClassFiltered",
          "UnsupportedClass",
          "UnsupportedByLicense",
          "AwaitingOtherSide",
          "NotScanned",
          "BarcodeDetectionFailed"
        ],
        "type": "string",
        "format": "string"
      },
      "ResultState": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Empty",
          "Uncertain",
          "Valid",
          "StageValid"
        ],
        "type": "string",
        "format": "string"
      },
      "StringResult": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Result"
          },
          {
            "required": [
              "value"
            ],
            "type": "object",
            "properties": {
              "value": {
                "type": "string"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "Point2df": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "float"
          },
          "y": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "Dimensions": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "format": "float"
          },
          "height": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "LocationInfo": {
        "type": "object",
        "properties": {
          "topLeftCorner": {
            "$ref": "#/components/schemas/Point2df"
          },
          "dimensions": {
            "$ref": "#/components/schemas/Dimensions"
          }
        },
        "additionalProperties": false
      },
      "Side": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Front",
          "Back"
        ],
        "type": "string",
        "format": "string"
      },
      "ExtractedScript": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Latin",
          "Cyrillic",
          "Arabic",
          "Greek"
        ],
        "type": "string",
        "format": "string"
      },
      "DetailedStringResult": {
        "allOf": [
          {
            "$ref": "#/components/schemas/StringResult"
          },
          {
            "type": "object",
            "properties": {
              "location": {
                "$ref": "#/components/schemas/LocationInfo"
              },
              "side": {
                "$ref": "#/components/schemas/Side"
              },
              "script": {
                "$ref": "#/components/schemas/ExtractedScript"
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "DetailedDateResult": {
        "allOf": [
          {
            "$ref": "#/components/schemas/DateResult"
          },
          {
            "type": "object",
            "properties": {
              "originalResult": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/DetailedStringResult"
                },
                "nullable": true
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "DateResult": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Result"
          },
          {
            "required": [
              "day",
              "filledByDomainKnowledge",
              "month",
              "successfullyParsed",
              "year"
            ],
            "type": "object",
            "properties": {
              "day": {
                "type": "integer",
                "format": "int32"
              },
              "month": {
                "type": "integer",
                "format": "int32"
              },
              "year": {
                "type": "integer",
                "format": "int32"
              },
              "isPermanent": {
                "type": "boolean",
                "nullable": true
              },
              "successfullyParsed": {
                "type": "boolean"
              },
              "filledByDomainKnowledge": {
                "type": "boolean"
              },
              "originalResult": {
                "type": "string",
                "nullable": true
              }
            },
            "additionalProperties": false
          }
        ]
      },
      "Result": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "readOnly": true
          },
          "field": {
            "type": "string",
            "nullable": true
          },
          "details": {
            "type": "object",
            "additionalProperties": {},
            "nullable": true
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VizResult": {
        "type": "object",
        "properties": {
          "front": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          },
          "back": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Country": {
        "uniqueItems": true,
        "enum": [
          "None",
          "Albania",
          "Algeria",
          "Argentina",
          "Australia",
          "Austria",
          "Azerbaijan",
          "Bahrain",
          "Bangladesh",
          "Belgium",
          "BosniaAndHerzegovina",
          "Brunei",
          "Bulgaria",
          "Cambodia",
          "Canada",
          "Chile",
          "Colombia",
          "CostaRica",
          "Croatia",
          "Cyprus",
          "Czechia",
          "Denmark",
          "DominicanRepublic",
          "Egypt",
          "Estonia",
          "Finland",
          "France",
          "Georgia",
          "Germany",
          "Ghana",
          "Greece",
          "Guatemala",
          "HongKong",
          "Hungary",
          "India",
          "Indonesia",
          "Ireland",
          "Israel",
          "Italy",
          "Jordan",
          "Kazakhstan",
          "Kenya",
          "Kosovo",
          "Kuwait",
          "Latvia",
          "Lithuania",
          "Malaysia",
          "Maldives",
          "Malta",
          "Mauritius",
          "Mexico",
          "Morocco",
          "Netherlands",
          "NewZealand",
          "Nigeria",
          "Pakistan",
          "Panama",
          "Paraguay",
          "Philippines",
          "Poland",
          "Portugal",
          "PuertoRico",
          "Qatar",
          "Romania",
          "Russia",
          "SaudiArabia",
          "Serbia",
          "Singapore",
          "Slovakia",
          "Slovenia",
          "SouthAfrica",
          "Spain",
          "Sweden",
          "Switzerland",
          "Taiwan",
          "Thailand",
          "Tunisia",
          "Turkey",
          "Uae",
          "Uganda",
          "Uk",
          "Ukraine",
          "Usa",
          "Vietnam",
          "Brazil",
          "Norway",
          "Oman",
          "Ecuador",
          "ElSalvador",
          "SriLanka",
          "Peru",
          "Uruguay",
          "Bahamas",
          "Bermuda",
          "Bolivia",
          "China",
          "EuropeanUnion",
          "Haiti",
          "Honduras",
          "Iceland",
          "Japan",
          "Luxembourg",
          "Montenegro",
          "Nicaragua",
          "SouthKorea",
          "Venezuela",
          "Afghanistan",
          "AlandIslands",
          "AmericanSamoa",
          "Andorra",
          "Angola",
          "Anguilla",
          "Antarctica",
          "AntiguaAndBarbuda",
          "Armenia",
          "Aruba",
          "BailiwickOfGuernsey",
          "BailiwickOfJersey",
          "Barbados",
          "Belarus",
          "Belize",
          "Benin",
          "Bhutan",
          "BonaireSaintEustatiusAndSaba",
          "Botswana",
          "BouvetIsland",
          "BritishIndianOceanTerritory",
          "BurkinaFaso",
          "Burundi",
          "Cameroon",
          "CapeVerde",
          "CaribbeanNetherlands",
          "CaymanIslands",
          "CentralAfricanRepublic",
          "Chad",
          "ChristmasIsland",
          "CocosIslands",
          "Comoros",
          "Congo",
          "CookIslands",
          "Cuba",
          "Curacao",
          "DemocraticRepublicOfTheCongo",
          "Djibouti",
          "Dominica",
          "EastTimor",
          "EquatorialGuinea",
          "Eritrea",
          "Ethiopia",
          "FalklandIslands",
          "FaroeIslands",
          "FederatedStatesOfMicronesia",
          "Fiji",
          "FrenchGuiana",
          "FrenchPolynesia",
          "FrenchSouthernTerritories",
          "Gabon",
          "Gambia",
          "Gibraltar",
          "Greenland",
          "Grenada",
          "Guadeloupe",
          "Guam",
          "Guinea",
          "GuineaBissau",
          "Guyana",
          "HeardIslandAndMcdonaldIslands",
          "Iran",
          "Iraq",
          "IsleOfMan",
          "IvoryCoast",
          "Jamaica",
          "Kiribati",
          "Kyrgyzstan",
          "Laos",
          "Lebanon",
          "Lesotho",
          "Liberia",
          "Libya",
          "Liechtenstein",
          "Macau",
          "Madagascar",
          "Malawi",
          "Mali",
          "MarshallIslands",
          "Martinique",
          "Mauritania",
          "Mayotte",
          "Moldova",
          "Monaco",
          "Mongolia",
          "Montserrat",
          "Mozambique",
          "Myanmar",
          "Namibia",
          "Nauru",
          "Nepal",
          "NewCaledonia",
          "Niger",
          "Niue",
          "NorfolkIsland",
          "NorthernCyprus",
          "NorthernMarianaIslands",
          "NorthKorea",
          "NorthMacedonia",
          "Palau",
          "Palestine",
          "PapuaNewGuinea",
          "Pitcairn",
          "Reunion",
          "Rwanda",
          "SaintBarthelemy",
          "SaintHelenaAscensionAndTristianDaCunha",
          "SaintKittsAndNevis",
          "SaintLucia",
          "SaintMartin",
          "SaintPierreAndMiquelon",
          "SaintVincentAndTheGrenadines",
          "Samoa",
          "SanMarino",
          "SaoTomeAndPrincipe",
          "Senegal",
          "Seychelles",
          "SierraLeone",
          "SintMaarten",
          "SolomonIslands",
          "Somalia",
          "SouthGeorgiaAndTheSouthSandwichIslands",
          "SouthSudan",
          "Sudan",
          "Suriname",
          "SvalbardAndJanMayen",
          "Eswatini",
          "Syria",
          "Tajikistan",
          "Tanzania",
          "Togo",
          "Tokelau",
          "Tonga",
          "TrinidadAndTobago",
          "Turkmenistan",
          "TurksAndCaicosIslands",
          "Tuvalu",
          "UnitedStatesMinorOutlyingIslands",
          "Uzbekistan",
          "Vanuatu",
          "VaticanCity",
          "VirginIslandsBritish",
          "VirginIslandsUs",
          "WallisAndFutuna",
          "WesternSahara",
          "Yemen",
          "Yugoslavia",
          "Zambia",
          "Zimbabwe",
          "SchengenArea",
          "SaintThomasAndPrince"
        ],
        "type": "string",
        "format": "string"
      },
      "Type": {
        "uniqueItems": true,
        "enum": [
          "None",
          "ConsularId",
          "Dl",
          "DlPublicServicesCard",
          "EmploymentPass",
          "FinCard",
          "Id",
          "MultipurposeId",
          "MyKad",
          "MyKid",
          "MyPr",
          "MyTentera",
          "PanCard",
          "ProfessionalId",
          "PublicServicesCard",
          "ResidencePermit",
          "ResidentId",
          "TemporaryResidencePermit",
          "VoterId",
          "WorkPermit",
          "IKad",
          "MilitaryId",
          "MyKas",
          "SocialSecurityCard",
          "HealthInsuranceCard",
          "Passport",
          "SPass",
          "AddressCard",
          "AlienId",
          "AlienPassport",
          "GreenCard",
          "MinorsId",
          "PostalId",
          "ProfessionalDl",
          "TaxId",
          "WeaponPermit",
          "Visa",
          "BorderCrossingCard",
          "DriverCard",
          "GlobalEntryCard",
          "MyPolis",
          "NexusCard",
          "PassportCard",
          "ProofOfAgeCard",
          "RefugeeId",
          "TribalId",
          "VeteranId",
          "CitizenshipCertificate",
          "MyNumberCard",
          "ConsularPassport",
          "MinorsPassport",
          "MinorsPublicServicesCard",
          "DrivingPrivilegeCard",
          "AsylumRequest",
          "DriverQualificationCard",
          "ProvisionalDl",
          "RefugeePassport",
          "SpecialId",
          "UniformedServicesId",
          "ImmigrantVisa",
          "ConsularVoterId",
          "TwicCard",
          "ExitEntryPermit",
          "MainlandTravelPermitTaiwan",
          "NbiClearance",
          "ProofOfRegistration",
          "TemporaryProtectionPermit",
          "AfghanCitizenCard",
          "Eid",
          "Pass",
          "SisId",
          "AsicCard",
          "BidoonCard",
          "InterimHealthInsuranceCard",
          "NonVoterId",
          "ReciprocalHealthInsuranceCard",
          "VehicleRegistration",
          "EsaadCard",
          "RegistrationCertificate",
          "MedicalMarijuanaId",
          "NonCardTribalId",
          "DiplomaticId",
          "EmergencyPassport",
          "TemporaryPassport",
          "MetisFederationCard",
          "AdrCertificate",
          "NinCard",
          "MysssCard",
          "GendarmerieId",
          "PoliceId"
        ],
        "type": "string",
        "format": "string"
      },
      "Region": {
        "uniqueItems": true,
        "enum": [
          "None",
          "Alabama",
          "Alaska",
          "Alberta",
          "Arizona",
          "Arkansas",
          "AustralianCapitalTerritory",
          "BritishColumbia",
          "California",
          "Colorado",
          "Connecticut",
          "Delaware",
          "DistrictOfColumbia",
          "Florida",
          "Georgia",
          "Hawaii",
          "Idaho",
          "Illinois",
          "Indiana",
          "Iowa",
          "Kansas",
          "Kentucky",
          "Louisiana",
          "Maine",
          "Manitoba",
          "Maryland",
          "Massachusetts",
          "Michigan",
          "Minnesota",
          "Mississippi",
          "Missouri",
          "Montana",
          "Nebraska",
          "Nevada",
          "NewBrunswick",
          "NewHampshire",
          "NewJersey",
          "NewMexico",
          "NewSouthWales",
          "NewYork",
          "NorthernTerritory",
          "NorthCarolina",
          "NorthDakota",
          "NovaScotia",
          "Ohio",
          "Oklahoma",
          "Ontario",
          "Oregon",
          "Pennsylvania",
          "Quebec",
          "Queensland",
          "RhodeIsland",
          "Saskatchewan",
          "SouthAustralia",
          "SouthCarolina",
          "SouthDakota",
          "Tasmania",
          "Tennessee",
          "Texas",
          "Utah",
          "Vermont",
          "Victoria",
          "Virginia",
          "Washington",
          "WesternAustralia",
          "WestVirginia",
          "Wisconsin",
          "Wyoming",
          "Yukon",
          "CiudadDeMexico",
          "Jalisco",
          "NewfoundlandAndLabrador",
          "NuevoLeon",
          "BajaCalifornia",
          "Chihuahua",
          "Guanajuato",
          "Guerrero",
          "Mexico",
          "Michoacan",
          "NewYorkCity",
          "Tamaulipas",
          "Veracruz",
          "Chiapas",
          "Coahuila",
          "Durango",
          "GuerreroCocula",
          "GuerreroJuchitan",
          "GuerreroTepecoacuilco",
          "GuerreroTlacoapa",
          "Gujarat",
          "Hidalgo",
          "Karnataka",
          "Kerala",
          "KhyberPakhtunkhwa",
          "MadhyaPradesh",
          "Maharashtra",
          "Morelos",
          "Nayarit",
          "Oaxaca",
          "Puebla",
          "Punjab",
          "Queretaro",
          "SanLuisPotosi",
          "Sinaloa",
          "Sonora",
          "Tabasco",
          "TamilNadu",
          "Yucatan",
          "Zacatecas",
          "Aguascalientes",
          "BajaCaliforniaSur",
          "Campeche",
          "Colima",
          "QuintanaRooBenitoJuarez",
          "QuintanaRoo",
          "QuintanaRooSolidaridad",
          "Tlaxcala",
          "QuintanaRooCozumel",
          "SaoPaolo",
          "RioDeJaneiro",
          "RioGrandeDoSul",
          "NorthwestTerritories",
          "Nunavut",
          "PrinceEdwardIsland",
          "DistritoFederal",
          "Maranhao",
          "MatoGrosso",
          "MinasGerais",
          "Para",
          "Parana",
          "Pernambuco",
          "SantaCatarina",
          "AndhraPradesh",
          "Ceara",
          "Goias",
          "GuerreroAcapulcoDeJuarez",
          "Haryana",
          "Sergipe",
          "Alagoas",
          "Bangsamoro",
          "Telangana",
          "Acre",
          "EspiritoSanto",
          "MatoGrossoDoSul",
          "Paraiba",
          "Piaui",
          "RioGrandeDoNorte",
          "Tocantins",
          "Odisha",
          "Uttarakhand"
        ],
        "type": "string",
        "format": "string"
      },
      "ClassInfo": {
        "required": [
          "country",
          "region",
          "type"
        ],
        "type": "object",
        "properties": {
          "country": {
            "$ref": "#/components/schemas/Country"
          },
          "type": {
            "$ref": "#/components/schemas/Type"
          },
          "region": {
            "$ref": "#/components/schemas/Region"
          },
          "isoAlpha3CountryCode": {
            "type": "string",
            "nullable": true
          },
          "isoAlpha2CountryCode": {
            "type": "string",
            "nullable": true
          },
          "isoNumericCountryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RecognitionMode": {
        "uniqueItems": true,
        "enum": [
          "None",
          "MrzId",
          "MrzVisa",
          "MrzPassport",
          "PhotoId",
          "FullRecognition",
          "BarcodeId"
        ],
        "type": "string",
        "format": "string"
      },
      "FieldType": {
        "uniqueItems": true,
        "enum": [
          "ADDITIONAL_ADDRESS_INFORMATION",
          "ADDITIONAL_NAME_INFORMATION",
          "ADDITIONAL_OPTIONAL_ADDRESS_INFORMATION",
          "ADDITIONAL_PERSONAL_ID_NUMBER",
          "ADDRESS",
          "BLOOD_TYPE",
          "CLASS_EFFECTIVE_DATE",
          "CLASS_EXPIRY_DATE",
          "CONDITIONS",
          "DATE_OF_BIRTH",
          "DATE_OF_EXPIRY",
          "DATE_OF_ISSUE",
          "DOCUMENT_ADDITIONAL_NUMBER",
          "DOCUMENT_NUMBER",
          "DOCUMENT_OPTIONAL_ADDITIONAL_NUMBER",
          "EMPLOYER",
          "ENDORSEMENTS",
          "FATHERS_NAME",
          "FIRST_NAME",
          "FULL_NAME",
          "ISSUING_AUTHORITY",
          "LAST_NAME",
          "LICENCE_TYPE",
          "MARITAL_STATUS",
          "MOTHERS_NAME",
          "MRZ",
          "NATIONALITY",
          "PERSONAL_ID_NUMBER",
          "PLACE_OF_BIRTH",
          "PROFESSION",
          "RACE",
          "RELIGION",
          "RESIDENTIAL_STATUS",
          "RESTRICTIONS",
          "SEX",
          "SPONSOR",
          "VEHICLE_CLASS",
          "VISA_TYPE",
          "CERTIFICATE_NUMBER",
          "COUNTRY_CODE",
          "DOCUMENT_SUBTYPE",
          "NATIONAL_INSURANCE_NUMBER",
          "REMARKS",
          "RESIDENCE_PERMIT_TYPE",
          "LOCALIZED_NAME",
          "STATE_NAME",
          "STATE_CODE",
          "SECTION_CODE",
          "REGISTRATION_CENTER_CODE",
          "MAIDEN_NAME",
          "MUNICIPALITY_OF_REGISTRATION",
          "LOCALITY_CODE",
          "DATE_OF_ENTRY",
          "MUNICIPALITY_CODE",
          "POLLING_STATION_CODE",
          "EFFECTIVE_DATE",
          "PARENTS_LAST_NAME",
          "PARENTS_LAST_NAME2",
          "PARENTS_FIRST_NAME2",
          "WORK_RESTRICTION",
          "PARENTS_FIRST_NAME",
          "SOCIAL_SECURITY_STATUS",
          "LEGAL_STATUS",
          "HUSBAND_NAME",
          "CHIN_PERMANENT_EXPIRY"
        ],
        "type": "string",
        "format": "string"
      },
      "AdditionalProcessingInfo": {
        "type": "object",
        "properties": {
          "missingMandatoryFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldType"
            },
            "nullable": true
          },
          "invalidCharacterFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldType"
            },
            "nullable": true
          },
          "extraPresentFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldType"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AdditionalInfo": {
        "required": [
          "firstSideAdditionalProcessingInfo",
          "secondSideAdditionalProcessingInfo"
        ],
        "type": "object",
        "properties": {
          "frontProcessingStatus": {
            "$ref": "#/components/schemas/ExtrProcessingStatus"
          },
          "backProcessingStatus": {
            "$ref": "#/components/schemas/ExtrProcessingStatus"
          },
          "recognitionMode": {
            "$ref": "#/components/schemas/RecognitionMode"
          },
          "firstSideAdditionalProcessingInfo": {
            "$ref": "#/components/schemas/AdditionalProcessingInfo"
          },
          "secondSideAdditionalProcessingInfo": {
            "$ref": "#/components/schemas/AdditionalProcessingInfo"
          }
        },
        "additionalProperties": false
      },
      "ExtractionResult": {
        "type": "object",
        "properties": {
          "processingStatus": {
            "$ref": "#/components/schemas/ExtrProcessingStatus"
          },
          "recognitionStatus": {
            "$ref": "#/components/schemas/ResultState"
          },
          "overall": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          },
          "viz": {
            "$ref": "#/components/schemas/VizResult"
          },
          "mrz": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          },
          "barcode": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Result"
            },
            "nullable": true
          },
          "classInfo": {
            "$ref": "#/components/schemas/ClassInfo"
          },
          "additionalInfo": {
            "$ref": "#/components/schemas/AdditionalInfo"
          }
        },
        "additionalProperties": false
      },
      "RuntimeInformation": {
        "required": [
          "clientSdkName",
          "clientSdkVersion",
          "extractionRecognizerVersion",
          "runnerInstanceKey",
          "runnerVersion",
          "serviceVersion",
          "verificationRecognizerVersion",
          "wrapperVersion"
        ],
        "type": "object",
        "properties": {
          "startedOn": {
            "type": "string",
            "format": "date-time"
          },
          "finishedOn": {
            "type": "string",
            "format": "date-time"
          },
          "elapsedMs": {
            "type": "integer",
            "format": "int64"
          },
          "serviceVersion": {
            "type": "string"
          },
          "runnerVersion": {
            "type": "string"
          },
          "runnerInstanceKey": {
            "type": "string"
          },
          "runnerInstanceIndex": {
            "type": "integer",
            "format": "int32"
          },
          "wrapperVersion": {
            "type": "string"
          },
          "extractionRecognizerVersion": {
            "type": "string"
          },
          "verificationRecognizerVersion": {
            "type": "string"
          },
          "clientSdkName": {
            "type": "string"
          },
          "clientSdkVersion": {
            "type": "string"
          },
          "traceId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ImageResult": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "base64": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ImageQualityInterpretation": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Ignore",
          "Conservative",
          "HighAssurance",
          "HighConversion",
          "VeryHighConversion"
        ],
        "type": "string",
        "format": "string"
      },
      "VerificationSideMode": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "MultiSide",
          "FrontOnly",
          "BackOnly"
        ],
        "type": "string",
        "format": "string"
      },
      "DocumentVerificationProcessingOptionsResponse": {
        "type": "object",
        "properties": {
          "screenMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "photocopyMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "barcodeAnomalyMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "photoForgeryMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "staticSecurityFeaturesMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "dataMatchMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "generativeAiMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "blurMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "glareMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "lightingMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "sharpnessMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "handOcclusionMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "dpiMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "tiltMatchLevel": {
            "$ref": "#/components/schemas/MatchLevel"
          },
          "imageQualityInterpretation": {
            "$ref": "#/components/schemas/ImageQualityInterpretation"
          },
          "sideMode": {
            "$ref": "#/components/schemas/VerificationSideMode"
          },
          "treatExpirationAsFraud": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DocumentVerificationPolicy": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Permissive",
          "Standard",
          "Strict",
          "VeryStrict"
        ],
        "type": "string",
        "format": "string"
      },
      "VerificationContext": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Remote",
          "InPerson"
        ],
        "type": "string",
        "format": "string"
      },
      "ReviewStrategy": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Never",
          "RejectedAndAccepted",
          "RejectedOnly",
          "AcceptedOnly"
        ],
        "type": "string",
        "format": "string"
      },
      "ReviewSensitivity": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "Low",
          "Default",
          "High"
        ],
        "type": "string",
        "format": "string"
      },
      "CaptureConditions": {
        "uniqueItems": true,
        "enum": [
          "Unknown",
          "NoControl",
          "Basic",
          "Hybrid"
        ],
        "type": "string",
        "format": "string"
      },
      "DocumentVerificationUseCaseOptions": {
        "type": "object",
        "properties": {
          "documentVerificationPolicy": {
            "$ref": "#/components/schemas/DocumentVerificationPolicy"
          },
          "verificationContext": {
            "$ref": "#/components/schemas/VerificationContext"
          },
          "manualReviewStrategy": {
            "$ref": "#/components/schemas/ReviewStrategy"
          },
          "manualReviewSensitivity": {
            "$ref": "#/components/schemas/ReviewSensitivity"
          },
          "captureConditions": {
            "$ref": "#/components/schemas/CaptureConditions"
          }
        },
        "additionalProperties": false
      },
      "DocumentVerificationResponse": {
        "type": "object",
        "properties": {
          "processingStatus": {
            "$ref": "#/components/schemas/ProcessingStatus"
          },
          "verification": {
            "$ref": "#/components/schemas/DetailedCheck"
          },
          "messages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ResponseMessage"
            },
            "readOnly": true
          },
          "checks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Check"
            },
            "nullable": true
          },
          "processIndicators": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Indicator"
            },
            "nullable": true
          },
          "extraction": {
            "$ref": "#/components/schemas/ExtractionResult"
          },
          "runtime": {
            "$ref": "#/components/schemas/RuntimeInformation"
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImageResult"
            },
            "nullable": true
          },
          "optionsUsed": {
            "$ref": "#/components/schemas/DocumentVerificationProcessingOptionsResponse"
          },
          "useCaseUsed": {
            "$ref": "#/components/schemas/DocumentVerificationUseCaseOptions"
          }
        },
        "additionalProperties": false
      }
    }
  }
}