diff --git a/certified-connectors/README.md b/certified-connectors/IDAnalyzer/README.md similarity index 98% rename from certified-connectors/README.md rename to certified-connectors/IDAnalyzer/README.md index 15885caca8..c657acc386 100644 --- a/certified-connectors/README.md +++ b/certified-connectors/IDAnalyzer/README.md @@ -1,49 +1,49 @@ -## ID Analyzer Connector - -ID scan technology to extract and verify data from global ID documents including passport, driver license and identification card, verify remote user age and identity with our digital onboarding solutions. - -## Prerequisites - -You will need the following to proceed: - -- [Sign Up](https://www.idanalyzer.com/signup.html) for ID Analyzer account. -- log into ID Analyzer's [web portal](https://portal.idanalyzer.com/) with your account details and click on `API Credentials` to get your private API key. - -## Supported Operations - -The connector supports the following operations: - -#### Core API - -- `Core API Setting`: Build your own identity verification application by uploading images of government-issued documents. - -#### DocuPass API - -- `Creating DocuPass Session`: Create a verification session for every user requiring identity verification. -- `Validating Callback`: To make sure the data was sent from our server. - -#### Vault API - -- `Get Vault Entry Content`: When entries are added to the vault, both Core API and DocuPass API will return a vault entry identifier named vaultid. -- `List and Filter Entries`: List all the entries stored inside the vault or search for entries with specific values. -- `Update Vault Entry`: Update the value of a single field or values of multiple fields in a vault entry. -- `Delete Entry From Vault`: Delete single or multiple vault entries. -- `Add Image To Vault`: Upload an image and add it to an existing vault entry. -- `Delete Image From Vault`: Delete an image inside a vault entry. -- `Create or update secret value`: Sets a secret in a specified key vault -- `Face Search`: Face search allows you to search the entire vault using an image of a person. -- `Face Search Training`: Before performing face search, you must issue a train command to train the document datasets inside your vault. You may also train your vault data through web portal. The training task is asynchronous, training time depends on the number of vault entries and images. It could take from several seconds to an hour. -- `Training Status`: Check whether vault training is still ongoing or has completed. - -## Deployment instructions - -Please use [these instructions](https://docs.microsoft.com/en-us/connectors/custom-connectors/paconn-cli) to deploy this connector as custom connector in Microsoft Power Automate and Power Apps. - -## API documentation - -API documentation can be found [here](https://developer.idanalyzer.com/index.html). - -## Further Support - -Feel free to write to us or give us a call for support or further information regarding our service. We will reply to you as soon as possible. But yes, it can take up to 24 hours. For all the support requests and general queries you can contact support@idanalyzer.com -or visit [contact-us](https://www.idanalyzer.com/contact.html). +## ID Analyzer Connector + +ID scan technology to extract and verify data from global ID documents including passport, driver license and identification card, verify remote user age and identity with our digital onboarding solutions. + +## Prerequisites + +You will need the following to proceed: + +- [Sign Up](https://www.idanalyzer.com/signup.html) for ID Analyzer account. +- log into ID Analyzer's [web portal](https://portal.idanalyzer.com/) with your account details and click on `API Credentials` to get your private API key. + +## Supported Operations + +The connector supports the following operations: + +#### Core API + +- `Core API Setting`: Build your own identity verification application by uploading images of government-issued documents. + +#### DocuPass API + +- `Creating DocuPass Session`: Create a verification session for every user requiring identity verification. +- `Validating Callback`: To make sure the data was sent from our server. + +#### Vault API + +- `Get Vault Entry Content`: When entries are added to the vault, both Core API and DocuPass API will return a vault entry identifier named vaultid. +- `List and Filter Entries`: List all the entries stored inside the vault or search for entries with specific values. +- `Update Vault Entry`: Update the value of a single field or values of multiple fields in a vault entry. +- `Delete Entry From Vault`: Delete single or multiple vault entries. +- `Add Image To Vault`: Upload an image and add it to an existing vault entry. +- `Delete Image From Vault`: Delete an image inside a vault entry. +- `Create or update secret value`: Sets a secret in a specified key vault +- `Face Search`: Face search allows you to search the entire vault using an image of a person. +- `Face Search Training`: Before performing face search, you must issue a train command to train the document datasets inside your vault. You may also train your vault data through web portal. The training task is asynchronous, training time depends on the number of vault entries and images. It could take from several seconds to an hour. +- `Training Status`: Check whether vault training is still ongoing or has completed. + +## Deployment instructions + +Please use [these instructions](https://docs.microsoft.com/en-us/connectors/custom-connectors/paconn-cli) to deploy this connector as custom connector in Microsoft Power Automate and Power Apps. + +## API documentation + +API documentation can be found [here](https://developer.idanalyzer.com/index.html). + +## Further Support + +Feel free to write to us or give us a call for support or further information regarding our service. We will reply to you as soon as possible. But yes, it can take up to 24 hours. For all the support requests and general queries you can contact support@idanalyzer.com +or visit [contact-us](https://www.idanalyzer.com/contact.html). diff --git a/certified-connectors/apiDefinition.swagger.json b/certified-connectors/IDAnalyzer/apiDefinition.swagger.json similarity index 97% rename from certified-connectors/apiDefinition.swagger.json rename to certified-connectors/IDAnalyzer/apiDefinition.swagger.json index c60435f428..19877fda21 100644 --- a/certified-connectors/apiDefinition.swagger.json +++ b/certified-connectors/IDAnalyzer/apiDefinition.swagger.json @@ -1,2149 +1,2149 @@ -{ - "swagger": "2.0", - "info": { - "title": "ID Analyzer", - "description": "ID Analyzer provides several different identity verification products, you need to acquire basic knowledge of each product in order to choose the best solution for your application.", - "version": "1.0", - "contact": { - "name": "ID Analyzer Support", - "url": "https://www.idanalyzer.com/contact.html", - "email": "support@idanalyzer.com" - } - }, - "host": "api.idanalyzer.com", - "basePath": "/", - "schemes": ["https"], - "consumes": [], - "produces": [], - "paths": { - "/": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "result": { - "type": "object", - "properties": { - "documentNumber": { - "type": "string", - "description": "documentNumber" - }, - "firstName": { - "type": "string", - "description": "firstName" - }, - "lastName": { - "type": "string", - "description": "lastName" - }, - "fullName": { - "type": "string", - "description": "fullName" - }, - "sex": { - "type": "string", - "description": "sex" - }, - "height": { - "type": "string", - "description": "height" - }, - "weight": { - "type": "string", - "description": "weight" - }, - "age": { - "type": "integer", - "format": "int32", - "description": "age" - }, - "dob": { - "type": "string", - "description": "dob" - }, - "dob_day": { - "type": "integer", - "format": "int32", - "description": "dob_day" - }, - "dob_month": { - "type": "integer", - "format": "int32", - "description": "dob_month" - }, - "dob_year": { - "type": "integer", - "format": "int32", - "description": "dob_year" - }, - "expiry": { - "type": "string", - "description": "expiry" - }, - "expiry_day": { - "type": "integer", - "format": "int32", - "description": "expiry_day" - }, - "expiry_month": { - "type": "integer", - "format": "int32", - "description": "expiry_month" - }, - "expiry_year": { - "type": "integer", - "format": "int32", - "description": "expiry_year" - }, - "daysToExpiry": { - "type": "integer", - "format": "int32", - "description": "daysToExpiry" - }, - "issued": { - "type": "string", - "description": "issued" - }, - "issued_day": { - "type": "integer", - "format": "int32", - "description": "issued_day" - }, - "issued_month": { - "type": "integer", - "format": "int32", - "description": "issued_month" - }, - "issued_year": { - "type": "integer", - "format": "int32", - "description": "issued_year" - }, - "daysFromIssue": { - "type": "integer", - "format": "int32", - "description": "daysFromIssue" - }, - "address1": { - "type": "string", - "description": "address1" - }, - "address2": { - "type": "string", - "description": "address2" - }, - "postcode": { - "type": "string", - "description": "postcode" - }, - "documentType": { - "type": "string", - "description": "documentType" - }, - "documentSide": { - "type": "string", - "description": "documentSide" - }, - "issuerOrg_region_full": { - "type": "string", - "description": "issuerOrg_region_full" - }, - "issuerOrg_region_abbr": { - "type": "string", - "description": "issuerOrg_region_abbr" - }, - "issuerOrg_full": { - "type": "string", - "description": "issuerOrg_full" - }, - "issuerOrg_iso2": { - "type": "string", - "description": "issuerOrg_iso2" - }, - "issuerOrg_iso3": { - "type": "string", - "description": "issuerOrg_iso3" - }, - "nationality_full": { - "type": "string", - "description": "nationality_full" - }, - "nationality_iso2": { - "type": "string", - "description": "nationality_iso2" - }, - "nationality_iso3": { - "type": "string", - "description": "nationality_iso3" - }, - "internalId": { - "type": "string", - "description": "internalId" - } - }, - "description": "result" - }, - "face": { - "type": "object", - "properties": { - "isIdentical": { - "type": "boolean", - "description": "isIdentical" - }, - "confidence": { - "type": "string", - "description": "confidence" - } - }, - "description": "face" - }, - "verification": { - "type": "object", - "properties": { - "passed": { - "type": "boolean", - "description": "passed" - }, - "result": { - "type": "object", - "properties": { - "face": { - "type": "boolean", - "description": "face" - }, - "notexpired": { - "type": "boolean", - "description": "notexpired" - } - }, - "description": "result" - } - }, - "description": "verification" - }, - "authentication": { - "type": "object", - "properties": { - "score": { - "type": "integer", - "format": "int32", - "description": "score" - } - }, - "description": "authentication" - }, - "vaultid": { - "type": "string", - "description": "vaultid" - }, - "matchrate": { - "type": "number", - "format": "float", - "description": "matchrate" - }, - "executionTime": { - "type": "number", - "format": "float", - "description": "executionTime" - }, - "responseID": { - "type": "string", - "description": "responseID" - }, - "quota": { - "type": "integer", - "format": "int32", - "description": "quota" - }, - "credit": { - "type": "integer", - "format": "int32", - "description": "credit" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - }, - "executionTime": { - "type": "number", - "format": "float", - "description": "executionTime" - }, - "responseID": { - "type": "string", - "description": "responseID" - } - } - } - } - }, - "summary": "Core API Setting", - "description": "Multi-function ID verification API to verify remote physical document, its authenticity and face match the document with your user photo.", - "operationId": "SettingCoreAPI", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your web portal.", - "title": "apikey" - }, - "file_base64": { - "type": "string", - "description": "", - "title": "file_base64" - }, - "url": { - "type": "string", - "description": "Core API is capable of downloading remote image from your server.", - "title": "url" - }, - "file_back_base64": { - "type": "string", - "description": "Base64-encoded image of the back of the document to perform a dual-side scan.", - "title": "file_back_base64" - }, - "url_back": { - "type": "string", - "description": "Remote image of the back of the document to perform a dual-side scan.", - "title": "url_back" - }, - "face_base64": { - "type": "string", - "description": "Base64-encoded image of a person's face to perform photo biometric verification.", - "title": "face_base64" - }, - "faceurl": { - "type": "string", - "description": "Remote image of of a person's face to perform photo biometric verification.", - "title": "faceurl" - }, - "video_base64": { - "type": "string", - "description": "Base64-encoded selfie video to perform video biometric verification.", - "title": "video_base64" - }, - "videourl": { - "type": "string", - "description": "Remote hosted selfie video to perform video biometric verification.", - "title": "videourl" - }, - "passcode": { - "type": "string", - "description": "4 digit number", - "title": "passcode" - }, - "accuracy": { - "type": "integer", - "format": "int32", - "description": "Configure the speed and accuracy of document recognition and ocr results. Low accuracy will reduce response time to under 1 second while high accuracy will generally takes 2~3 seconds.", - "title": "accuracy", - "default": 2 - }, - "authenticate": { - "type": "boolean", - "description": "Validate the document to check whether the document is authentic and has not been tampered.", - "title": "authenticate", - "enum": [true, false], - "default": false - }, - "authenticate_module": { - "type": "integer", - "format": "int32", - "description": "Specify module used for validating the document.", - "title": "authenticate_module", - "default": 1 - }, - "biometric_threshold": { - "type": "number", - "format": "float", - "description": "Specify the minimum score to pass facial biometric verification", - "title": "biometric_threshold", - "default": 0.4 - }, - "ocr_scaledown": { - "type": "integer", - "format": "int32", - "description": "Number between 500 to 4000 or 0", - "title": "ocr_scaledown", - "default": 150 - }, - "outputimage": { - "type": "boolean", - "description": "Produce a cropped image of the document.", - "title": "outputimage", - "enum": [true, false], - "default": false - }, - "outputface": { - "type": "boolean", - "description": "Produce a cropped image of the face region on the document.", - "title": "outputface", - "enum": [true, false], - "default": false - }, - "outputmode": { - "type": "string", - "description": "Output the cropped document and face as either URL or base64-encoded content.", - "title": "outputmode", - "default": "url" - }, - "dualsidecheck": { - "type": "boolean", - "description": "Check if the names, document number and document type matches between the front and the back of the document when performing dual-side scan. If any information mismatches error 14 will be thrown.", - "title": "dualsidecheck", - "enum": [true, false], - "default": false - }, - "verify_expiry": { - "type": "boolean", - "description": "Check if the document is still valid based on its expiry date.", - "title": "verify_expiry", - "enum": [true, false], - "default": false - }, - "verify_documentno": { - "type": "string", - "description": "Check if supplied document number matches with document.", - "title": "verify_documentno" - }, - "verify_dob": { - "type": "string", - "description": "Check if supplied date of birth matches with document. (YYYY/MM/DD)", - "title": "verify_dob" - }, - "verify_age": { - "type": "string", - "description": "Check if the document holder is aged between the given range. (range, example: 18-40)", - "title": "verify_age" - }, - "verify_address": { - "type": "string", - "description": "Check if supplied address matches with document.", - "title": "verify_address" - }, - "verify_postcode": { - "type": "string", - "description": "Check if supplied postcode matches with document.", - "title": "verify_postcode" - }, - "country": { - "type": "string", - "description": "Check if the document was issued by specified countries, if not error code 10 will be thrown. Separate multiple values with comma. For example \"US,CA\" would accept documents from United States and Canada.", - "title": "country" - }, - "region": { - "type": "string", - "description": "Check if the document was issued by specified state, if not error code 11 will be thrown. Separate multiple values with comma. For example \"CA,TX\" would accept documents from California and Texas.", - "title": "region" - }, - "type": { - "type": "string", - "description": "Check if the document was one of the specified types, if not error code 12 will be thrown. For example \"PD\" would accept both passport and drivers license.", - "title": "type" - }, - "heckblocklist": { - "type": "boolean", - "description": "Check the document data against blocked entries in your vault. If the document matches one of the blocked entry error 15 will be thrown", - "title": "checkblocklist", - "enum": [true, false], - "default": false - }, - "vault_save": { - "type": "boolean", - "description": "Save document image and parsed information in your secured vault. You can list, search and update document entries in your vault through Vault API or web portal.", - "title": "vault_save", - "enum": [true, false], - "default": true - }, - "vault_saveunrecognized": { - "type": "boolean", - "description": "Save document image in your vault even if the document cannot be recognized.", - "title": "vault_saveunrecognized", - "enum": [true, false], - "default": false - }, - "vault_noduplicate": { - "type": "boolean", - "description": "Prevent duplicated images from being saved.", - "title": "vault_noduplicate", - "enum": [true, false], - "default": false - }, - "vault_automerge": { - "type": "boolean", - "description": "Automatically merge images with same document number into a single entry inside vault.", - "title": "vault_automerge", - "enum": [true, false], - "default": false - }, - "vault_customdata1": { - "type": "string", - "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", - "title": "vault_customdata1" - }, - "vault_customdata2": { - "type": "string", - "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", - "title": "vault_customdata2" - }, - "vault_customdata3": { - "type": "string", - "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", - "title": "vault_customdata3" - }, - "vault_customdata4": { - "type": "string", - "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", - "title": "vault_customdata4" - }, - "vault_customdata5": { - "type": "string", - "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", - "title": "vault_customdata5" - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/vault/get": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - }, - "data": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "id" - }, - "createtime": { - "type": "string", - "description": "createtime" - }, - "updatetime": { - "type": "string", - "description": "updatetime" - }, - "trustlevel": { - "type": "string", - "description": "trustlevel" - }, - "trustnote": { - "type": "string", - "description": "trustnote" - }, - "docupass_reference": { - "type": "string", - "description": "docupass_reference" - }, - "docupass_success": { - "type": "string", - "description": "docupass_success" - }, - "docupass_failedreason": { - "type": "string", - "description": "docupass_failedreason" - }, - "docupass_customid": { - "type": "string", - "description": "docupass_customid" - }, - "documentNumber": { - "type": "string", - "description": "documentNumber" - }, - "documentNumber_formatted": { - "type": "string", - "description": "documentNumber_formatted" - }, - "personalNumber": { - "type": "string", - "description": "personalNumber" - }, - "firstName": { - "type": "string", - "description": "firstName" - }, - "middleName": { - "type": "string", - "description": "middleName" - }, - "lastName": { - "type": "string", - "description": "lastName" - }, - "fullName": { - "type": "string", - "description": "fullName" - }, - "firstName_local": { - "type": "string", - "description": "firstName_local" - }, - "middleName_local": { - "type": "string", - "description": "middleName_local" - }, - "lastName_local": { - "type": "string", - "description": "lastName_local" - }, - "fullName_local": { - "type": "string", - "description": "fullName_local" - }, - "dob": { - "type": "string", - "description": "dob" - }, - "issued": { - "type": "string", - "description": "issued" - }, - "expiry": { - "type": "string", - "description": "expiry" - }, - "sex": { - "type": "string", - "description": "sex" - }, - "height": { - "type": "string", - "description": "height" - }, - "weight": { - "type": "string", - "description": "weight" - }, - "hairColor": { - "type": "string", - "description": "hairColor" - }, - "eyeColor": { - "type": "string", - "description": "eyeColor" - }, - "address1": { - "type": "string", - "description": "address1" - }, - "address2": { - "type": "string", - "description": "address2" - }, - "postcode": { - "type": "string", - "description": "postcode" - }, - "placeOfBirth": { - "type": "string", - "description": "placeOfBirth" - }, - "documentType": { - "type": "string", - "description": "documentType" - }, - "documentName": { - "type": "string", - "description": "documentName" - }, - "vehicleClass": { - "type": "string", - "description": "vehicleClass" - }, - "restrictions": { - "type": "string", - "description": "restrictions" - }, - "endorsement": { - "type": "string", - "description": "endorsement" - }, - "email": { - "type": "string", - "description": "email" - }, - "mobile": { - "type": "string", - "description": "mobile" - }, - "landline": { - "type": "string", - "description": "landline" - }, - "issueAuthority": { - "type": "string", - "description": "issueAuthority" - }, - "issuerOrg_region_full": { - "type": "string", - "description": "issuerOrg_region_full" - }, - "issuerOrg_region_abbr": { - "type": "string", - "description": "issuerOrg_region_abbr" - }, - "issuerOrg_iso2": { - "type": "string", - "description": "issuerOrg_iso2" - }, - "nationality_iso2": { - "type": "string", - "description": "nationality_iso2" - }, - "optionalData": { - "type": "string", - "description": "optionalData" - }, - "optionalData2": { - "type": "string", - "description": "optionalData2" - }, - "customdata1": { - "type": "string", - "description": "customdata1" - }, - "customdata2": { - "type": "string", - "description": "customdata2" - }, - "customdata3": { - "type": "string", - "description": "customdata3" - }, - "customdata4": { - "type": "string", - "description": "customdata4" - }, - "customdata5": { - "type": "string", - "description": "customdata5" - }, - "block": { - "type": "string", - "description": "block" - }, - "image": { - "type": "array", - "items": {}, - "description": "image" - } - }, - "description": "data" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Get Vault Entry Content", - "description": "When entries are added to the vault, both Core API and DocuPass API will return a vault entry identifier named vaultid. You can use the identifier to query the content of an entry in the vault by submitting an HTTP POST request to the following endpoint.", - "operationId": "GetVault", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "id": { - "type": "string", - "description": "Vault entry identifier.", - "title": "id" - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/vault/list": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "limit": { - "type": "integer", - "format": "int32", - "description": "limit" - }, - "offset": { - "type": "integer", - "format": "int32", - "description": "offset" - }, - "nextoffset": { - "type": "integer", - "format": "int32", - "description": "nextoffset" - }, - "total": { - "type": "integer", - "format": "int32", - "description": "total" - }, - "items": { - "type": "array", - "items": {}, - "description": "items" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "List and Filter Entries", - "description": "To list all the entries stored inside the vault or search for entries with specific values, send an HTTP POST request to the following endpoint.", - "operationId": "ListVaultEntries", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "orderby": { - "type": "string", - "description": "Name of the field used to order the result.", - "title": "orderby", - "default": "createtime" - }, - "sort": { - "type": "string", - "description": "ASC to sort results in ascending order, DESC to sort in descending order.", - "title": "sort", - "default": "ASC" - }, - "limit": { - "type": "integer", - "format": "int32", - "description": "Number of vault entries to return. (1 to 100)", - "title": "limit", - "default": 10 - }, - "offset": { - "type": "integer", - "format": "int32", - "description": "Return list starting at a specific entry, for example, when limit=10, to access the third page of the results, use offset=20", - "title": "offset", - "default": 20 - }, - "filter": { - "type": "array", - "items": { - "type": "string", - "description": "To filter/search entries you need to construct filter statements and put them in an array, you can have 5 filter stataments per request", - "title": "filter" - }, - "description": "filter" - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/vault/update": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Update Vault Entry", - "description": "You can update the value of a single field or values of multiple fields in a vault entry by making HTTP POST request.", - "operationId": "UpdateVaultEntry", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "id": { - "type": "string", - "description": "Vault entry identifier.", - "title": "id" - }, - "address1": { - "type": "string", - "description": "Address line 1.", - "title": "address1" - }, - "address2": { - "type": "string", - "description": "Address line 2.", - "title": "address2" - }, - "block": { - "type": "string", - "description": "Set this parameter to block the same document from being submitted to Core API or DocuPass. 0: No block 1: Block document number 2: Block firstname/lastname 3: Block both document number and firstname/lastname.", - "title": "block" - }, - "customdata1": { - "type": "string", - "description": "5 custom strings that can be used to add custom memo to the entry.", - "title": "customdata1" - }, - "customdata2": { - "type": "string", - "description": "5 custom strings that can be used to add custom memo to the entry.", - "title": "customdata2" - }, - "customdata3": { - "type": "string", - "description": "5 custom strings that can be used to add custom memo to the entry.", - "title": "customdata3" - }, - "customdata4": { - "type": "string", - "description": "5 custom strings that can be used to add custom memo to the entry.", - "title": "customdata4" - }, - "customdata5": { - "type": "string", - "description": "5 custom strings that can be used to add custom memo to the entry.", - "title": "customdata5" - }, - "dob": { - "type": "string", - "description": "Date of birth (YYYY-MM-DD).", - "title": "dob" - }, - "documentName": { - "type": "string", - "description": "Name of document.", - "title": "documentName" - }, - "documentNumber": { - "type": "string", - "description": "The unique identifier of the document (Passport No./Driver License No. etc)", - "title": "documentNumber" - }, - "documentType": { - "type": "string", - "description": "P: Passport D: Driver's License I: Identity Card V: Visa R: Residence Card O: Other", - "title": "documentType" - }, - "docupass_customid": { - "type": "string", - "description": "customid passed when creating DocuPass verification.", - "title": "docupass_customid" - }, - "docupass_failedreason": { - "type": "string", - "description": "If DocuPass verification has failed, the reason why it failed.", - "title": "docupass_failedreason" - }, - "docupass_reference": { - "type": "string", - "description": "Reference code to DocuPass session.", - "title": "docupass_reference" - }, - "docupass_success": { - "type": "string", - "description": "0 or 1, whether the DocuPass verification succeeded or failed.", - "title": "docupass_success" - }, - "email": { - "type": "string", - "description": "User email address.", - "title": "email" - }, - "expiry": { - "type": "string", - "description": "Expiry date (YYYY-MM-DD)", - "title": "expiry" - }, - "eyeColor": { - "type": "string", - "description": "Eye color.", - "title": "eyeColor" - }, - "firstName": { - "type": "string", - "description": "First name / Given name", - "title": "firstName" - }, - "firstName_local": { - "type": "string", - "description": "First name in local language.", - "title": "firstName_local" - }, - "fullName": { - "type": "string", - "description": "Full name (Updating other name fields will not update fullName)", - "title": "fullName" - }, - "fullName_local": { - "type": "string", - "description": "First name in local language.", - "title": "fullName_local" - }, - "hairColor": { - "type": "string", - "description": "Hair color.", - "title": "hairColor" - }, - "height": { - "type": "string", - "description": "Height of person.", - "title": "height" - }, - "issueAuthority": { - "type": "string", - "description": "Issue authority of document.", - "title": "issueAuthority" - }, - "issued": { - "type": "string", - "description": "Issue date (YYYY-MM-DD)", - "title": "issued" - }, - "issuerOrg_iso2": { - "type": "string", - "description": "Document issued country code in ISO2. Example: US", - "title": "issuerOrg_iso2" - }, - "issuerOrg_region_abbr": { - "type": "string", - "description": "Document issuer subregion/state abbreviation. Example: CA", - "title": "issuerOrg_region_abbr" - }, - "issuerOrg_region_full": { - "type": "string", - "description": "Document issuer subregion/state. Example: California", - "title": "issuerOrg_region_full" - }, - "landline": { - "type": "string", - "description": "User landline phone number.", - "title": "landline" - }, - "lastName": { - "type": "string", - "description": "Last name / Family name.", - "title": "lastName" - }, - "lastName_local": { - "type": "string", - "description": "Last name in local language.", - "title": "lastName_local" - }, - "middleName": { - "type": "string", - "description": "Middle name(s).", - "title": "middleName" - }, - "middleName_local": { - "type": "string", - "description": "Middle name in local language.", - "title": "middleName_local" - }, - "mobile": { - "type": "string", - "description": "User mobile phone number.", - "title": "mobile" - }, - "nationality_iso2": { - "type": "string", - "description": "Document holder nationality in ISO2. Example: US", - "title": "nationality_iso2" - }, - "optionalData": { - "type": "string", - "description": "Extra unspecific data included in the document.", - "title": "optionalData" - }, - "optionalData2": { - "type": "string", - "description": "Extra unspecific data included in the document.", - "title": "optionalData2" - }, - "personalNumber": { - "type": "string", - "description": "A secondary identifier number on the document.", - "title": "personalNumber" - }, - "placeOfBirth": { - "type": "string", - "description": "Place of birth.", - "title": "placeOfBirth" - }, - "postcode": { - "type": "string", - "description": "Address postcode.", - "title": "postcode" - }, - "restrictions": { - "type": "string", - "description": "Driving restrictions.", - "title": "restrictions" - }, - "sex": { - "type": "string", - "description": "M: Male F: Female X: Unspecified", - "title": "sex" - }, - "trustlevel": { - "type": "string", - "description": "0: Undetermined 1: Invalid document 2: Suspicious 3: Valid This score is calculated automatically if authentication is enabled.", - "title": "trustlevel" - }, - "trustnote": { - "type": "string", - "description": "", - "title": "trustnote" - }, - "vehicleClass": { - "type": "string", - "description": "Class of vehicles on driver's license.", - "title": "vehicleClass" - }, - "weight": { - "type": "string", - "description": "Weight of person.", - "title": "weight" - } - }, - "required": ["apikey", "id"] - } - } - ] - } - }, - "/vault/delete": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Delete Entry From Vault", - "description": "You can delete single or multiple vault entries by making HTTP POST request.", - "operationId": "DeleteVaultEntry", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "id": { - "type": "array", - "items": { - "type": "string", - "title": "id", - "description": "Vault entry identifier(s) to delete (String or Array of Strings)." - }, - "description": "id" - } - }, - "required": ["apikey", "id"] - } - } - ] - } - }, - "/vault/addimage": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - }, - "image": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "id" - }, - "type": { - "type": "string", - "description": "type" - }, - "hash": { - "type": "string", - "description": "hash" - }, - "url": { - "type": "string", - "description": "url" - }, - "createtime": { - "type": "string", - "description": "createtime" - } - }, - "description": "image" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Add Image To Vault", - "description": "You can upload an image and add it to an existing vault entry by making HTTP POST request.", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "id": { - "type": "string", - "description": "Vault entry identifier to add image to", - "title": "id" - }, - "type": { - "type": "string", - "description": "Set the type of image: 0=document and 1=person", - "title": "type" - }, - "image": { - "type": "string", - "description": "Base64-encoded image data.", - "title": "image" - }, - "imageurl": { - "type": "string", - "description": "Remote image URL.", - "title": "imageurl" - } - }, - "required": ["apikey", "id", "type"] - } - } - ], - "operationId": "AddImageToVault" - } - }, - "/vault/deleteimage": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Delete Image From Vault", - "description": "You can delete an image inside a vault entry by making HTTP POST request. Note that after an image is deleted, the URL to the image may still be accessible for a short-period of time due to caching.", - "operationId": "DeleteImageFromVault", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "id": { - "type": "string", - "description": "Vault entry identifier containing the image.", - "title": "id" - }, - "imageid": { - "type": "string", - "description": "id of the image to delete.", - "title": "imageid" - } - }, - "required": ["apikey", "id"] - } - } - ] - } - }, - "/vault/searchface": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "items": { - "type": "array", - "items": {}, - "description": "items" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Face Search", - "description": "Face search allows you to search the entire vault using an image of a person. To use face search feature, you must enable face search indexing under web portal, and train your vault datasets periodically.", - "operationId": "FaceSearch", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - }, - "image": { - "type": "string", - "description": "Base64-encoded image data.", - "title": "image" - }, - "imageurl": { - "type": "string", - "description": "Remote image URL.", - "title": "imageurl" - }, - "maxentry": { - "type": "integer", - "format": "int32", - "description": "Number of matching entries to be returned, between 1 to 10.", - "title": "maxentry", - "default": 10 - }, - "threshold": { - "type": "number", - "format": "float", - "description": "Set minimum face similarity score required, in the range of 0 to 1.", - "title": "threshold", - "default": 0.5 - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/vault/train": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "integer", - "format": "int32", - "description": "success" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Face Search Training", - "description": "Before performing face search, you must issue a train command to train the document datasets inside your vault. You may also train your vault data through web portal. The training task is asynchronous, training time depends on the number of vault entries and images. It could take from several seconds to an hour.", - "operationId": "FaceSearchTraining", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/vault/trainstatus": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "status" - }, - "startTime": { - "type": "string", - "description": "startTime" - }, - "statusChangeTime": { - "type": "string", - "description": "statusChangeTime" - }, - "lastSuccessTime": { - "type": "string", - "description": "lastSuccessTime" - }, - "error": { - "type": "string", - "description": "error" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Training Status", - "description": "Check whether vault training is still ongoing or has completed.", - "operationId": "TrainingStatus", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your Web Portal.", - "title": "apikey" - } - }, - "required": ["apikey"] - } - } - ] - } - }, - "/docupass/create": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "reference" - }, - "type": { - "type": "integer", - "format": "int32", - "description": "type" - }, - "customid": { - "type": "string", - "description": "customid" - }, - "url": { - "type": "string", - "description": "url" - }, - "qrcode": { - "type": "string", - "description": "qrcode" - }, - "base_url": { - "type": "string", - "description": "base_url" - }, - "html": { - "type": "string", - "description": "html" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Creating DocuPass Session", - "description": "You can create a verification session for every user requiring identity verification.", - "operationId": "CreatingDocuPass", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your web portal.", - "title": "apikey" - }, - "type": { - "type": "integer", - "format": "int32", - "description": "0: Iframe Module ,1: Mobile Module, 2: Redirection Module, 3: Live Mobile Module", - "title": "type" - }, - "companyname": { - "type": "string", - "description": "Your company or product name.", - "title": "companyname" - }, - "callbackurl": { - "type": "string", - "description": "Webhook/Callback URL to receive verification result.", - "title": "callbackurl" - }, - "biometric": { - "type": "integer", - "format": "int32", - "description": "Ask user to take a selfie photo or selfie video for face verification.", - "title": "biometric" - }, - "biometric_threshold": { - "type": "number", - "format": "float", - "description": "Specify the minimum score to pass facial biometric verification", - "title": "biometric_threshold", - "default": 0.4 - }, - "authenticate_minscore": { - "type": "number", - "format": "float", - "description": "Document must meet minimum authenticity score to pass validation. Set 0 to disable validity/authenticity check.", - "title": "authenticate_minscore", - "default": 0.3 - }, - "authenticate_module": { - "type": "integer", - "format": "int32", - "description": "Specify module used for validating the document.", - "title": "authenticate_module" - }, - "maxattempt": { - "type": "integer", - "format": "int32", - "description": "The number of maximum fail attempts for each verification request.", - "title": "maxattempt", - "default": 2 - }, - "successredir": { - "type": "string", - "description": "Browser will be redirected to this URL when identity verification succeeds.", - "title": "successredir" - }, - "failredir": { - "type": "string", - "description": "Browser will be redirected to this URL when identity verification failed.", - "title": "failredir" - }, - "customid": { - "type": "string", - "description": "It is useful for identifying your user within your database. This value will be stored under docupass_customid under Vault.", - "title": "customid" - }, - "reusable": { - "type": "boolean", - "description": "Enabling this parameter will allow multiple users to verify their identity through the same URL, a new DocuPass reference code will be generated for each user automatically.", - "title": "reusable", - "enum": [true, false], - "default": false - }, - "phoneverification": { - "type": "boolean", - "description": "Whether to ask user to enter a phone number for verification, DocuPass supports both mobile or landline number verification. (Subscriber Only)", - "title": "phoneverification", - "enum": [true, false] - }, - "documenttype": { - "type": "string", - "description": "User must upload a specific type of document. For example \"PD\" would accept both passport and drivers license.", - "title": "documenttype" - }, - "documentcountry": { - "type": "string", - "description": "ISO ALPHA-2 Country Code.", - "title": "documentcountry" - }, - "documentregion": { - "type": "string", - "description": "State/Region full name or abbreviation.", - "title": "documentregion" - }, - "dualsidecheck": { - "type": "boolean", - "description": "Check if the names, document number and document type matches between the front and the back of the document when performing dual-side scan. If any information mismatches error 14 will be thrown.", - "title": "dualsidecheck", - "enum": [true, false] - }, - "verify_expiry": { - "type": "boolean", - "description": "Only accept document that has not expired", - "title": "verify_expiry", - "enum": [true, false], - "default": true - }, - "verify_documentno": { - "type": "string", - "description": "Document number requiring verification.", - "title": "verify_documentno" - }, - "verify_name": { - "type": "string", - "description": "Full name including first name and last name requiring verification.", - "title": "verify_name" - }, - "verify_dob": { - "type": "string", - "description": "Date of birth requiring verification, in YYYY/MM/DD format.", - "title": "verify_dob" - }, - "verify_age": { - "type": "string", - "description": "Age range, example: 18-40", - "title": "verify_age" - }, - "verify_address": { - "type": "string", - "description": "Full address requiring verification.", - "title": "verify_address" - }, - "verify_postcode": { - "type": "string", - "description": "Full postcode requiring verification.", - "title": "verify_postcode" - }, - "verify_phone": { - "type": "string", - "description": "Full phone number requiring verification.", - "title": "verify_phone" - }, - "vault_save": { - "type": "boolean", - "description": "Save user documents and parsed information into vault.", - "title": "vault_save", - "enum": [true, false], - "default": true - }, - "return_documentimage": { - "type": "boolean", - "description": "Return document image uploaded by user in the callback request.", - "title": "return_documentimage", - "enum": [true, false], - "default": true - }, - "return_faceimage": { - "type": "boolean", - "description": "Return face image uploaded by user in the callback request.", - "title": "return_faceimage", - "enum": [true, false], - "default": true - }, - "return_type": { - "type": "integer", - "format": "int32", - "description": "Specify the type of image being returned, either base64-encoded image content or an URL to the image. (URL to image will be kept for only 7 days)", - "title": "return_type", - "default": 1 - }, - "welcomemessage": { - "type": "string", - "description": "Replace generic greeting message on the first page with your customized text (max 1,000 characters)", - "title": "welcomemessage" - }, - "nobranding": { - "type": "boolean", - "description": "Hide branding logo on all DocuPass pages. (Subscriber Only)", - "title": "nobranding", - "enum": [true, false], - "default": false - }, - "logo": { - "type": "string", - "description": "Custom branding logo. (Subscriber Only)", - "title": "logo" - }, - "customhtmlurl": { - "type": "string", - "description": "Use your own HTML page and CSS for DocuPass. (Subscriber Only)", - "title": "customhtmlurl" - }, - "language": { - "type": "string", - "description": "DocuPass automatically detects user device language and displays corresponding language.", - "title": "language" - }, - "qr_color": { - "type": "string", - "description": "Color of the QR Code Foreground. (Only for Live Mobile and Standard Mobile)", - "title": "qr_color" - }, - "qr_bgcolor": { - "type": "string", - "description": "Color of the QR Code Background. (Only for Live Mobile and Standard Mobile)", - "title": "qr_bgcolor" - }, - "qr_size": { - "type": "integer", - "format": "int32", - "description": "Size of QR Code(1-50). (Only for Live Mobile and Standard Mobile)", - "title": "qr_size" - }, - "qr_margin": { - "type": "integer", - "format": "int32", - "description": "Border thickness of QR Code(1-50). (Only for Live Mobile and Standard Mobile)", - "title": "qr_margin" - } - }, - "required": ["apikey", "companyname"] - } - } - ] - } - }, - "/docupass/validate": { - "post": { - "responses": { - "200": { - "description": "success", - "schema": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "success" - }, - "reference": { - "type": "string", - "description": "reference" - } - } - } - }, - "400": { - "description": "error", - "schema": { - "type": "object", - "properties": { - "error": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "message" - }, - "code": { - "type": "integer", - "format": "int32", - "description": "code" - } - }, - "description": "error" - } - } - } - } - }, - "summary": "Validating Callback", - "description": "To make sure the data was sent from our server.", - "operationId": "ValidatingCallback", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "apikey": { - "type": "string", - "description": "Your private API key is available under your web portal.", - "title": "apikey" - }, - "reference": { - "type": "string", - "description": "Reference code received in POST BODY.", - "title": "reference" - }, - "hash": { - "type": "string", - "description": "Hash received in POST BODY.", - "title": "hash" - } - }, - "required": ["apikey", "hash", "reference"] - } - } - ] - } - } - }, - "x-ms-connector-metadata": [ - { - "propertyName": "Website", - "propertyValue": "https://www.idanalyzer.com/" - }, - { - "propertyName": "Privacy policy", - "propertyValue": "https://www.idanalyzer.com/privacy-policy.html" - }, - { - "propertyName": "Categories", - "propertyValue": "IT Operations;Productivity" - } - ], - "definitions": {}, - "parameters": {}, - "responses": {}, - "securityDefinitions": { - "API Key": { - "type": "apiKey", - "in": "header", - "name": "apikey" - } - }, - "security": [ - { - "API Key": [] - } - ], - "tags": [] -} +{ + "swagger": "2.0", + "info": { + "title": "ID Analyzer", + "description": "ID Analyzer provides several different identity verification products, you need to acquire basic knowledge of each product in order to choose the best solution for your application.", + "version": "1.0", + "contact": { + "name": "ID Analyzer Support", + "url": "https://www.idanalyzer.com/contact.html", + "email": "support@idanalyzer.com" + } + }, + "host": "api.idanalyzer.com", + "basePath": "/", + "schemes": ["https"], + "consumes": [], + "produces": [], + "paths": { + "/": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "result": { + "type": "object", + "properties": { + "documentNumber": { + "type": "string", + "description": "documentNumber" + }, + "firstName": { + "type": "string", + "description": "firstName" + }, + "lastName": { + "type": "string", + "description": "lastName" + }, + "fullName": { + "type": "string", + "description": "fullName" + }, + "sex": { + "type": "string", + "description": "sex" + }, + "height": { + "type": "string", + "description": "height" + }, + "weight": { + "type": "string", + "description": "weight" + }, + "age": { + "type": "integer", + "format": "int32", + "description": "age" + }, + "dob": { + "type": "string", + "description": "dob" + }, + "dob_day": { + "type": "integer", + "format": "int32", + "description": "dob_day" + }, + "dob_month": { + "type": "integer", + "format": "int32", + "description": "dob_month" + }, + "dob_year": { + "type": "integer", + "format": "int32", + "description": "dob_year" + }, + "expiry": { + "type": "string", + "description": "expiry" + }, + "expiry_day": { + "type": "integer", + "format": "int32", + "description": "expiry_day" + }, + "expiry_month": { + "type": "integer", + "format": "int32", + "description": "expiry_month" + }, + "expiry_year": { + "type": "integer", + "format": "int32", + "description": "expiry_year" + }, + "daysToExpiry": { + "type": "integer", + "format": "int32", + "description": "daysToExpiry" + }, + "issued": { + "type": "string", + "description": "issued" + }, + "issued_day": { + "type": "integer", + "format": "int32", + "description": "issued_day" + }, + "issued_month": { + "type": "integer", + "format": "int32", + "description": "issued_month" + }, + "issued_year": { + "type": "integer", + "format": "int32", + "description": "issued_year" + }, + "daysFromIssue": { + "type": "integer", + "format": "int32", + "description": "daysFromIssue" + }, + "address1": { + "type": "string", + "description": "address1" + }, + "address2": { + "type": "string", + "description": "address2" + }, + "postcode": { + "type": "string", + "description": "postcode" + }, + "documentType": { + "type": "string", + "description": "documentType" + }, + "documentSide": { + "type": "string", + "description": "documentSide" + }, + "issuerOrg_region_full": { + "type": "string", + "description": "issuerOrg_region_full" + }, + "issuerOrg_region_abbr": { + "type": "string", + "description": "issuerOrg_region_abbr" + }, + "issuerOrg_full": { + "type": "string", + "description": "issuerOrg_full" + }, + "issuerOrg_iso2": { + "type": "string", + "description": "issuerOrg_iso2" + }, + "issuerOrg_iso3": { + "type": "string", + "description": "issuerOrg_iso3" + }, + "nationality_full": { + "type": "string", + "description": "nationality_full" + }, + "nationality_iso2": { + "type": "string", + "description": "nationality_iso2" + }, + "nationality_iso3": { + "type": "string", + "description": "nationality_iso3" + }, + "internalId": { + "type": "string", + "description": "internalId" + } + }, + "description": "result" + }, + "face": { + "type": "object", + "properties": { + "isIdentical": { + "type": "boolean", + "description": "isIdentical" + }, + "confidence": { + "type": "string", + "description": "confidence" + } + }, + "description": "face" + }, + "verification": { + "type": "object", + "properties": { + "passed": { + "type": "boolean", + "description": "passed" + }, + "result": { + "type": "object", + "properties": { + "face": { + "type": "boolean", + "description": "face" + }, + "notexpired": { + "type": "boolean", + "description": "notexpired" + } + }, + "description": "result" + } + }, + "description": "verification" + }, + "authentication": { + "type": "object", + "properties": { + "score": { + "type": "integer", + "format": "int32", + "description": "score" + } + }, + "description": "authentication" + }, + "vaultid": { + "type": "string", + "description": "vaultid" + }, + "matchrate": { + "type": "number", + "format": "float", + "description": "matchrate" + }, + "executionTime": { + "type": "number", + "format": "float", + "description": "executionTime" + }, + "responseID": { + "type": "string", + "description": "responseID" + }, + "quota": { + "type": "integer", + "format": "int32", + "description": "quota" + }, + "credit": { + "type": "integer", + "format": "int32", + "description": "credit" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + }, + "executionTime": { + "type": "number", + "format": "float", + "description": "executionTime" + }, + "responseID": { + "type": "string", + "description": "responseID" + } + } + } + } + }, + "summary": "Core API Setting", + "description": "Multi-function ID verification API to verify remote physical document, its authenticity and face match the document with your user photo.", + "operationId": "SettingCoreAPI", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your web portal.", + "title": "apikey" + }, + "file_base64": { + "type": "string", + "description": "", + "title": "file_base64" + }, + "url": { + "type": "string", + "description": "Core API is capable of downloading remote image from your server.", + "title": "url" + }, + "file_back_base64": { + "type": "string", + "description": "Base64-encoded image of the back of the document to perform a dual-side scan.", + "title": "file_back_base64" + }, + "url_back": { + "type": "string", + "description": "Remote image of the back of the document to perform a dual-side scan.", + "title": "url_back" + }, + "face_base64": { + "type": "string", + "description": "Base64-encoded image of a person's face to perform photo biometric verification.", + "title": "face_base64" + }, + "faceurl": { + "type": "string", + "description": "Remote image of of a person's face to perform photo biometric verification.", + "title": "faceurl" + }, + "video_base64": { + "type": "string", + "description": "Base64-encoded selfie video to perform video biometric verification.", + "title": "video_base64" + }, + "videourl": { + "type": "string", + "description": "Remote hosted selfie video to perform video biometric verification.", + "title": "videourl" + }, + "passcode": { + "type": "string", + "description": "4 digit number", + "title": "passcode" + }, + "accuracy": { + "type": "integer", + "format": "int32", + "description": "Configure the speed and accuracy of document recognition and ocr results. Low accuracy will reduce response time to under 1 second while high accuracy will generally takes 2~3 seconds.", + "title": "accuracy", + "default": 2 + }, + "authenticate": { + "type": "boolean", + "description": "Validate the document to check whether the document is authentic and has not been tampered.", + "title": "authenticate", + "enum": [true, false], + "default": false + }, + "authenticate_module": { + "type": "integer", + "format": "int32", + "description": "Specify module used for validating the document.", + "title": "authenticate_module", + "default": 1 + }, + "biometric_threshold": { + "type": "number", + "format": "float", + "description": "Specify the minimum score to pass facial biometric verification", + "title": "biometric_threshold", + "default": 0.4 + }, + "ocr_scaledown": { + "type": "integer", + "format": "int32", + "description": "Number between 500 to 4000 or 0", + "title": "ocr_scaledown", + "default": 150 + }, + "outputimage": { + "type": "boolean", + "description": "Produce a cropped image of the document.", + "title": "outputimage", + "enum": [true, false], + "default": false + }, + "outputface": { + "type": "boolean", + "description": "Produce a cropped image of the face region on the document.", + "title": "outputface", + "enum": [true, false], + "default": false + }, + "outputmode": { + "type": "string", + "description": "Output the cropped document and face as either URL or base64-encoded content.", + "title": "outputmode", + "default": "url" + }, + "dualsidecheck": { + "type": "boolean", + "description": "Check if the names, document number and document type matches between the front and the back of the document when performing dual-side scan. If any information mismatches error 14 will be thrown.", + "title": "dualsidecheck", + "enum": [true, false], + "default": false + }, + "verify_expiry": { + "type": "boolean", + "description": "Check if the document is still valid based on its expiry date.", + "title": "verify_expiry", + "enum": [true, false], + "default": false + }, + "verify_documentno": { + "type": "string", + "description": "Check if supplied document number matches with document.", + "title": "verify_documentno" + }, + "verify_dob": { + "type": "string", + "description": "Check if supplied date of birth matches with document. (YYYY/MM/DD)", + "title": "verify_dob" + }, + "verify_age": { + "type": "string", + "description": "Check if the document holder is aged between the given range. (range, example: 18-40)", + "title": "verify_age" + }, + "verify_address": { + "type": "string", + "description": "Check if supplied address matches with document.", + "title": "verify_address" + }, + "verify_postcode": { + "type": "string", + "description": "Check if supplied postcode matches with document.", + "title": "verify_postcode" + }, + "country": { + "type": "string", + "description": "Check if the document was issued by specified countries, if not error code 10 will be thrown. Separate multiple values with comma. For example \"US,CA\" would accept documents from United States and Canada.", + "title": "country" + }, + "region": { + "type": "string", + "description": "Check if the document was issued by specified state, if not error code 11 will be thrown. Separate multiple values with comma. For example \"CA,TX\" would accept documents from California and Texas.", + "title": "region" + }, + "type": { + "type": "string", + "description": "Check if the document was one of the specified types, if not error code 12 will be thrown. For example \"PD\" would accept both passport and drivers license.", + "title": "type" + }, + "heckblocklist": { + "type": "boolean", + "description": "Check the document data against blocked entries in your vault. If the document matches one of the blocked entry error 15 will be thrown", + "title": "checkblocklist", + "enum": [true, false], + "default": false + }, + "vault_save": { + "type": "boolean", + "description": "Save document image and parsed information in your secured vault. You can list, search and update document entries in your vault through Vault API or web portal.", + "title": "vault_save", + "enum": [true, false], + "default": true + }, + "vault_saveunrecognized": { + "type": "boolean", + "description": "Save document image in your vault even if the document cannot be recognized.", + "title": "vault_saveunrecognized", + "enum": [true, false], + "default": false + }, + "vault_noduplicate": { + "type": "boolean", + "description": "Prevent duplicated images from being saved.", + "title": "vault_noduplicate", + "enum": [true, false], + "default": false + }, + "vault_automerge": { + "type": "boolean", + "description": "Automatically merge images with same document number into a single entry inside vault.", + "title": "vault_automerge", + "enum": [true, false], + "default": false + }, + "vault_customdata1": { + "type": "string", + "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", + "title": "vault_customdata1" + }, + "vault_customdata2": { + "type": "string", + "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", + "title": "vault_customdata2" + }, + "vault_customdata3": { + "type": "string", + "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", + "title": "vault_customdata3" + }, + "vault_customdata4": { + "type": "string", + "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", + "title": "vault_customdata4" + }, + "vault_customdata5": { + "type": "string", + "description": "Add up to 5 custom strings that will be associated with the vault entry, this can be useful for filtering and searching entries.", + "title": "vault_customdata5" + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/vault/get": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + }, + "data": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "id" + }, + "createtime": { + "type": "string", + "description": "createtime" + }, + "updatetime": { + "type": "string", + "description": "updatetime" + }, + "trustlevel": { + "type": "string", + "description": "trustlevel" + }, + "trustnote": { + "type": "string", + "description": "trustnote" + }, + "docupass_reference": { + "type": "string", + "description": "docupass_reference" + }, + "docupass_success": { + "type": "string", + "description": "docupass_success" + }, + "docupass_failedreason": { + "type": "string", + "description": "docupass_failedreason" + }, + "docupass_customid": { + "type": "string", + "description": "docupass_customid" + }, + "documentNumber": { + "type": "string", + "description": "documentNumber" + }, + "documentNumber_formatted": { + "type": "string", + "description": "documentNumber_formatted" + }, + "personalNumber": { + "type": "string", + "description": "personalNumber" + }, + "firstName": { + "type": "string", + "description": "firstName" + }, + "middleName": { + "type": "string", + "description": "middleName" + }, + "lastName": { + "type": "string", + "description": "lastName" + }, + "fullName": { + "type": "string", + "description": "fullName" + }, + "firstName_local": { + "type": "string", + "description": "firstName_local" + }, + "middleName_local": { + "type": "string", + "description": "middleName_local" + }, + "lastName_local": { + "type": "string", + "description": "lastName_local" + }, + "fullName_local": { + "type": "string", + "description": "fullName_local" + }, + "dob": { + "type": "string", + "description": "dob" + }, + "issued": { + "type": "string", + "description": "issued" + }, + "expiry": { + "type": "string", + "description": "expiry" + }, + "sex": { + "type": "string", + "description": "sex" + }, + "height": { + "type": "string", + "description": "height" + }, + "weight": { + "type": "string", + "description": "weight" + }, + "hairColor": { + "type": "string", + "description": "hairColor" + }, + "eyeColor": { + "type": "string", + "description": "eyeColor" + }, + "address1": { + "type": "string", + "description": "address1" + }, + "address2": { + "type": "string", + "description": "address2" + }, + "postcode": { + "type": "string", + "description": "postcode" + }, + "placeOfBirth": { + "type": "string", + "description": "placeOfBirth" + }, + "documentType": { + "type": "string", + "description": "documentType" + }, + "documentName": { + "type": "string", + "description": "documentName" + }, + "vehicleClass": { + "type": "string", + "description": "vehicleClass" + }, + "restrictions": { + "type": "string", + "description": "restrictions" + }, + "endorsement": { + "type": "string", + "description": "endorsement" + }, + "email": { + "type": "string", + "description": "email" + }, + "mobile": { + "type": "string", + "description": "mobile" + }, + "landline": { + "type": "string", + "description": "landline" + }, + "issueAuthority": { + "type": "string", + "description": "issueAuthority" + }, + "issuerOrg_region_full": { + "type": "string", + "description": "issuerOrg_region_full" + }, + "issuerOrg_region_abbr": { + "type": "string", + "description": "issuerOrg_region_abbr" + }, + "issuerOrg_iso2": { + "type": "string", + "description": "issuerOrg_iso2" + }, + "nationality_iso2": { + "type": "string", + "description": "nationality_iso2" + }, + "optionalData": { + "type": "string", + "description": "optionalData" + }, + "optionalData2": { + "type": "string", + "description": "optionalData2" + }, + "customdata1": { + "type": "string", + "description": "customdata1" + }, + "customdata2": { + "type": "string", + "description": "customdata2" + }, + "customdata3": { + "type": "string", + "description": "customdata3" + }, + "customdata4": { + "type": "string", + "description": "customdata4" + }, + "customdata5": { + "type": "string", + "description": "customdata5" + }, + "block": { + "type": "string", + "description": "block" + }, + "image": { + "type": "array", + "items": {}, + "description": "image" + } + }, + "description": "data" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Get Vault Entry Content", + "description": "When entries are added to the vault, both Core API and DocuPass API will return a vault entry identifier named vaultid. You can use the identifier to query the content of an entry in the vault by submitting an HTTP POST request to the following endpoint.", + "operationId": "GetVault", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "id": { + "type": "string", + "description": "Vault entry identifier.", + "title": "id" + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/vault/list": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "limit": { + "type": "integer", + "format": "int32", + "description": "limit" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "offset" + }, + "nextoffset": { + "type": "integer", + "format": "int32", + "description": "nextoffset" + }, + "total": { + "type": "integer", + "format": "int32", + "description": "total" + }, + "items": { + "type": "array", + "items": {}, + "description": "items" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "List and Filter Entries", + "description": "To list all the entries stored inside the vault or search for entries with specific values, send an HTTP POST request to the following endpoint.", + "operationId": "ListVaultEntries", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "orderby": { + "type": "string", + "description": "Name of the field used to order the result.", + "title": "orderby", + "default": "createtime" + }, + "sort": { + "type": "string", + "description": "ASC to sort results in ascending order, DESC to sort in descending order.", + "title": "sort", + "default": "ASC" + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "Number of vault entries to return. (1 to 100)", + "title": "limit", + "default": 10 + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Return list starting at a specific entry, for example, when limit=10, to access the third page of the results, use offset=20", + "title": "offset", + "default": 20 + }, + "filter": { + "type": "array", + "items": { + "type": "string", + "description": "To filter/search entries you need to construct filter statements and put them in an array, you can have 5 filter stataments per request", + "title": "filter" + }, + "description": "filter" + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/vault/update": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Update Vault Entry", + "description": "You can update the value of a single field or values of multiple fields in a vault entry by making HTTP POST request.", + "operationId": "UpdateVaultEntry", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "id": { + "type": "string", + "description": "Vault entry identifier.", + "title": "id" + }, + "address1": { + "type": "string", + "description": "Address line 1.", + "title": "address1" + }, + "address2": { + "type": "string", + "description": "Address line 2.", + "title": "address2" + }, + "block": { + "type": "string", + "description": "Set this parameter to block the same document from being submitted to Core API or DocuPass. 0: No block 1: Block document number 2: Block firstname/lastname 3: Block both document number and firstname/lastname.", + "title": "block" + }, + "customdata1": { + "type": "string", + "description": "5 custom strings that can be used to add custom memo to the entry.", + "title": "customdata1" + }, + "customdata2": { + "type": "string", + "description": "5 custom strings that can be used to add custom memo to the entry.", + "title": "customdata2" + }, + "customdata3": { + "type": "string", + "description": "5 custom strings that can be used to add custom memo to the entry.", + "title": "customdata3" + }, + "customdata4": { + "type": "string", + "description": "5 custom strings that can be used to add custom memo to the entry.", + "title": "customdata4" + }, + "customdata5": { + "type": "string", + "description": "5 custom strings that can be used to add custom memo to the entry.", + "title": "customdata5" + }, + "dob": { + "type": "string", + "description": "Date of birth (YYYY-MM-DD).", + "title": "dob" + }, + "documentName": { + "type": "string", + "description": "Name of document.", + "title": "documentName" + }, + "documentNumber": { + "type": "string", + "description": "The unique identifier of the document (Passport No./Driver License No. etc)", + "title": "documentNumber" + }, + "documentType": { + "type": "string", + "description": "P: Passport D: Driver's License I: Identity Card V: Visa R: Residence Card O: Other", + "title": "documentType" + }, + "docupass_customid": { + "type": "string", + "description": "customid passed when creating DocuPass verification.", + "title": "docupass_customid" + }, + "docupass_failedreason": { + "type": "string", + "description": "If DocuPass verification has failed, the reason why it failed.", + "title": "docupass_failedreason" + }, + "docupass_reference": { + "type": "string", + "description": "Reference code to DocuPass session.", + "title": "docupass_reference" + }, + "docupass_success": { + "type": "string", + "description": "0 or 1, whether the DocuPass verification succeeded or failed.", + "title": "docupass_success" + }, + "email": { + "type": "string", + "description": "User email address.", + "title": "email" + }, + "expiry": { + "type": "string", + "description": "Expiry date (YYYY-MM-DD)", + "title": "expiry" + }, + "eyeColor": { + "type": "string", + "description": "Eye color.", + "title": "eyeColor" + }, + "firstName": { + "type": "string", + "description": "First name / Given name", + "title": "firstName" + }, + "firstName_local": { + "type": "string", + "description": "First name in local language.", + "title": "firstName_local" + }, + "fullName": { + "type": "string", + "description": "Full name (Updating other name fields will not update fullName)", + "title": "fullName" + }, + "fullName_local": { + "type": "string", + "description": "First name in local language.", + "title": "fullName_local" + }, + "hairColor": { + "type": "string", + "description": "Hair color.", + "title": "hairColor" + }, + "height": { + "type": "string", + "description": "Height of person.", + "title": "height" + }, + "issueAuthority": { + "type": "string", + "description": "Issue authority of document.", + "title": "issueAuthority" + }, + "issued": { + "type": "string", + "description": "Issue date (YYYY-MM-DD)", + "title": "issued" + }, + "issuerOrg_iso2": { + "type": "string", + "description": "Document issued country code in ISO2. Example: US", + "title": "issuerOrg_iso2" + }, + "issuerOrg_region_abbr": { + "type": "string", + "description": "Document issuer subregion/state abbreviation. Example: CA", + "title": "issuerOrg_region_abbr" + }, + "issuerOrg_region_full": { + "type": "string", + "description": "Document issuer subregion/state. Example: California", + "title": "issuerOrg_region_full" + }, + "landline": { + "type": "string", + "description": "User landline phone number.", + "title": "landline" + }, + "lastName": { + "type": "string", + "description": "Last name / Family name.", + "title": "lastName" + }, + "lastName_local": { + "type": "string", + "description": "Last name in local language.", + "title": "lastName_local" + }, + "middleName": { + "type": "string", + "description": "Middle name(s).", + "title": "middleName" + }, + "middleName_local": { + "type": "string", + "description": "Middle name in local language.", + "title": "middleName_local" + }, + "mobile": { + "type": "string", + "description": "User mobile phone number.", + "title": "mobile" + }, + "nationality_iso2": { + "type": "string", + "description": "Document holder nationality in ISO2. Example: US", + "title": "nationality_iso2" + }, + "optionalData": { + "type": "string", + "description": "Extra unspecific data included in the document.", + "title": "optionalData" + }, + "optionalData2": { + "type": "string", + "description": "Extra unspecific data included in the document.", + "title": "optionalData2" + }, + "personalNumber": { + "type": "string", + "description": "A secondary identifier number on the document.", + "title": "personalNumber" + }, + "placeOfBirth": { + "type": "string", + "description": "Place of birth.", + "title": "placeOfBirth" + }, + "postcode": { + "type": "string", + "description": "Address postcode.", + "title": "postcode" + }, + "restrictions": { + "type": "string", + "description": "Driving restrictions.", + "title": "restrictions" + }, + "sex": { + "type": "string", + "description": "M: Male F: Female X: Unspecified", + "title": "sex" + }, + "trustlevel": { + "type": "string", + "description": "0: Undetermined 1: Invalid document 2: Suspicious 3: Valid This score is calculated automatically if authentication is enabled.", + "title": "trustlevel" + }, + "trustnote": { + "type": "string", + "description": "", + "title": "trustnote" + }, + "vehicleClass": { + "type": "string", + "description": "Class of vehicles on driver's license.", + "title": "vehicleClass" + }, + "weight": { + "type": "string", + "description": "Weight of person.", + "title": "weight" + } + }, + "required": ["apikey", "id"] + } + } + ] + } + }, + "/vault/delete": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Delete Entry From Vault", + "description": "You can delete single or multiple vault entries by making HTTP POST request.", + "operationId": "DeleteVaultEntry", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "id": { + "type": "array", + "items": { + "type": "string", + "title": "id", + "description": "Vault entry identifier(s) to delete (String or Array of Strings)." + }, + "description": "id" + } + }, + "required": ["apikey", "id"] + } + } + ] + } + }, + "/vault/addimage": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + }, + "image": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "id" + }, + "type": { + "type": "string", + "description": "type" + }, + "hash": { + "type": "string", + "description": "hash" + }, + "url": { + "type": "string", + "description": "url" + }, + "createtime": { + "type": "string", + "description": "createtime" + } + }, + "description": "image" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Add Image To Vault", + "description": "You can upload an image and add it to an existing vault entry by making HTTP POST request.", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "id": { + "type": "string", + "description": "Vault entry identifier to add image to", + "title": "id" + }, + "type": { + "type": "string", + "description": "Set the type of image: 0=document and 1=person", + "title": "type" + }, + "image": { + "type": "string", + "description": "Base64-encoded image data.", + "title": "image" + }, + "imageurl": { + "type": "string", + "description": "Remote image URL.", + "title": "imageurl" + } + }, + "required": ["apikey", "id", "type"] + } + } + ], + "operationId": "AddImageToVault" + } + }, + "/vault/deleteimage": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Delete Image From Vault", + "description": "You can delete an image inside a vault entry by making HTTP POST request. Note that after an image is deleted, the URL to the image may still be accessible for a short-period of time due to caching.", + "operationId": "DeleteImageFromVault", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "id": { + "type": "string", + "description": "Vault entry identifier containing the image.", + "title": "id" + }, + "imageid": { + "type": "string", + "description": "id of the image to delete.", + "title": "imageid" + } + }, + "required": ["apikey", "id"] + } + } + ] + } + }, + "/vault/searchface": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": {}, + "description": "items" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Face Search", + "description": "Face search allows you to search the entire vault using an image of a person. To use face search feature, you must enable face search indexing under web portal, and train your vault datasets periodically.", + "operationId": "FaceSearch", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + }, + "image": { + "type": "string", + "description": "Base64-encoded image data.", + "title": "image" + }, + "imageurl": { + "type": "string", + "description": "Remote image URL.", + "title": "imageurl" + }, + "maxentry": { + "type": "integer", + "format": "int32", + "description": "Number of matching entries to be returned, between 1 to 10.", + "title": "maxentry", + "default": 10 + }, + "threshold": { + "type": "number", + "format": "float", + "description": "Set minimum face similarity score required, in the range of 0 to 1.", + "title": "threshold", + "default": 0.5 + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/vault/train": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "integer", + "format": "int32", + "description": "success" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Face Search Training", + "description": "Before performing face search, you must issue a train command to train the document datasets inside your vault. You may also train your vault data through web portal. The training task is asynchronous, training time depends on the number of vault entries and images. It could take from several seconds to an hour.", + "operationId": "FaceSearchTraining", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/vault/trainstatus": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "status" + }, + "startTime": { + "type": "string", + "description": "startTime" + }, + "statusChangeTime": { + "type": "string", + "description": "statusChangeTime" + }, + "lastSuccessTime": { + "type": "string", + "description": "lastSuccessTime" + }, + "error": { + "type": "string", + "description": "error" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Training Status", + "description": "Check whether vault training is still ongoing or has completed.", + "operationId": "TrainingStatus", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your Web Portal.", + "title": "apikey" + } + }, + "required": ["apikey"] + } + } + ] + } + }, + "/docupass/create": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "reference": { + "type": "string", + "description": "reference" + }, + "type": { + "type": "integer", + "format": "int32", + "description": "type" + }, + "customid": { + "type": "string", + "description": "customid" + }, + "url": { + "type": "string", + "description": "url" + }, + "qrcode": { + "type": "string", + "description": "qrcode" + }, + "base_url": { + "type": "string", + "description": "base_url" + }, + "html": { + "type": "string", + "description": "html" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Creating DocuPass Session", + "description": "You can create a verification session for every user requiring identity verification.", + "operationId": "CreatingDocuPass", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your web portal.", + "title": "apikey" + }, + "type": { + "type": "integer", + "format": "int32", + "description": "0: Iframe Module ,1: Mobile Module, 2: Redirection Module, 3: Live Mobile Module", + "title": "type" + }, + "companyname": { + "type": "string", + "description": "Your company or product name.", + "title": "companyname" + }, + "callbackurl": { + "type": "string", + "description": "Webhook/Callback URL to receive verification result.", + "title": "callbackurl" + }, + "biometric": { + "type": "integer", + "format": "int32", + "description": "Ask user to take a selfie photo or selfie video for face verification.", + "title": "biometric" + }, + "biometric_threshold": { + "type": "number", + "format": "float", + "description": "Specify the minimum score to pass facial biometric verification", + "title": "biometric_threshold", + "default": 0.4 + }, + "authenticate_minscore": { + "type": "number", + "format": "float", + "description": "Document must meet minimum authenticity score to pass validation. Set 0 to disable validity/authenticity check.", + "title": "authenticate_minscore", + "default": 0.3 + }, + "authenticate_module": { + "type": "integer", + "format": "int32", + "description": "Specify module used for validating the document.", + "title": "authenticate_module" + }, + "maxattempt": { + "type": "integer", + "format": "int32", + "description": "The number of maximum fail attempts for each verification request.", + "title": "maxattempt", + "default": 2 + }, + "successredir": { + "type": "string", + "description": "Browser will be redirected to this URL when identity verification succeeds.", + "title": "successredir" + }, + "failredir": { + "type": "string", + "description": "Browser will be redirected to this URL when identity verification failed.", + "title": "failredir" + }, + "customid": { + "type": "string", + "description": "It is useful for identifying your user within your database. This value will be stored under docupass_customid under Vault.", + "title": "customid" + }, + "reusable": { + "type": "boolean", + "description": "Enabling this parameter will allow multiple users to verify their identity through the same URL, a new DocuPass reference code will be generated for each user automatically.", + "title": "reusable", + "enum": [true, false], + "default": false + }, + "phoneverification": { + "type": "boolean", + "description": "Whether to ask user to enter a phone number for verification, DocuPass supports both mobile or landline number verification. (Subscriber Only)", + "title": "phoneverification", + "enum": [true, false] + }, + "documenttype": { + "type": "string", + "description": "User must upload a specific type of document. For example \"PD\" would accept both passport and drivers license.", + "title": "documenttype" + }, + "documentcountry": { + "type": "string", + "description": "ISO ALPHA-2 Country Code.", + "title": "documentcountry" + }, + "documentregion": { + "type": "string", + "description": "State/Region full name or abbreviation.", + "title": "documentregion" + }, + "dualsidecheck": { + "type": "boolean", + "description": "Check if the names, document number and document type matches between the front and the back of the document when performing dual-side scan. If any information mismatches error 14 will be thrown.", + "title": "dualsidecheck", + "enum": [true, false] + }, + "verify_expiry": { + "type": "boolean", + "description": "Only accept document that has not expired", + "title": "verify_expiry", + "enum": [true, false], + "default": true + }, + "verify_documentno": { + "type": "string", + "description": "Document number requiring verification.", + "title": "verify_documentno" + }, + "verify_name": { + "type": "string", + "description": "Full name including first name and last name requiring verification.", + "title": "verify_name" + }, + "verify_dob": { + "type": "string", + "description": "Date of birth requiring verification, in YYYY/MM/DD format.", + "title": "verify_dob" + }, + "verify_age": { + "type": "string", + "description": "Age range, example: 18-40", + "title": "verify_age" + }, + "verify_address": { + "type": "string", + "description": "Full address requiring verification.", + "title": "verify_address" + }, + "verify_postcode": { + "type": "string", + "description": "Full postcode requiring verification.", + "title": "verify_postcode" + }, + "verify_phone": { + "type": "string", + "description": "Full phone number requiring verification.", + "title": "verify_phone" + }, + "vault_save": { + "type": "boolean", + "description": "Save user documents and parsed information into vault.", + "title": "vault_save", + "enum": [true, false], + "default": true + }, + "return_documentimage": { + "type": "boolean", + "description": "Return document image uploaded by user in the callback request.", + "title": "return_documentimage", + "enum": [true, false], + "default": true + }, + "return_faceimage": { + "type": "boolean", + "description": "Return face image uploaded by user in the callback request.", + "title": "return_faceimage", + "enum": [true, false], + "default": true + }, + "return_type": { + "type": "integer", + "format": "int32", + "description": "Specify the type of image being returned, either base64-encoded image content or an URL to the image. (URL to image will be kept for only 7 days)", + "title": "return_type", + "default": 1 + }, + "welcomemessage": { + "type": "string", + "description": "Replace generic greeting message on the first page with your customized text (max 1,000 characters)", + "title": "welcomemessage" + }, + "nobranding": { + "type": "boolean", + "description": "Hide branding logo on all DocuPass pages. (Subscriber Only)", + "title": "nobranding", + "enum": [true, false], + "default": false + }, + "logo": { + "type": "string", + "description": "Custom branding logo. (Subscriber Only)", + "title": "logo" + }, + "customhtmlurl": { + "type": "string", + "description": "Use your own HTML page and CSS for DocuPass. (Subscriber Only)", + "title": "customhtmlurl" + }, + "language": { + "type": "string", + "description": "DocuPass automatically detects user device language and displays corresponding language.", + "title": "language" + }, + "qr_color": { + "type": "string", + "description": "Color of the QR Code Foreground. (Only for Live Mobile and Standard Mobile)", + "title": "qr_color" + }, + "qr_bgcolor": { + "type": "string", + "description": "Color of the QR Code Background. (Only for Live Mobile and Standard Mobile)", + "title": "qr_bgcolor" + }, + "qr_size": { + "type": "integer", + "format": "int32", + "description": "Size of QR Code(1-50). (Only for Live Mobile and Standard Mobile)", + "title": "qr_size" + }, + "qr_margin": { + "type": "integer", + "format": "int32", + "description": "Border thickness of QR Code(1-50). (Only for Live Mobile and Standard Mobile)", + "title": "qr_margin" + } + }, + "required": ["apikey", "companyname"] + } + } + ] + } + }, + "/docupass/validate": { + "post": { + "responses": { + "200": { + "description": "success", + "schema": { + "type": "object", + "properties": { + "success": { + "type": "boolean", + "description": "success" + }, + "reference": { + "type": "string", + "description": "reference" + } + } + } + }, + "400": { + "description": "error", + "schema": { + "type": "object", + "properties": { + "error": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "message" + }, + "code": { + "type": "integer", + "format": "int32", + "description": "code" + } + }, + "description": "error" + } + } + } + } + }, + "summary": "Validating Callback", + "description": "To make sure the data was sent from our server.", + "operationId": "ValidatingCallback", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "apikey": { + "type": "string", + "description": "Your private API key is available under your web portal.", + "title": "apikey" + }, + "reference": { + "type": "string", + "description": "Reference code received in POST BODY.", + "title": "reference" + }, + "hash": { + "type": "string", + "description": "Hash received in POST BODY.", + "title": "hash" + } + }, + "required": ["apikey", "hash", "reference"] + } + } + ] + } + } + }, + "x-ms-connector-metadata": [ + { + "propertyName": "Website", + "propertyValue": "https://www.idanalyzer.com/" + }, + { + "propertyName": "Privacy policy", + "propertyValue": "https://www.idanalyzer.com/privacy-policy.html" + }, + { + "propertyName": "Categories", + "propertyValue": "IT Operations;Productivity" + } + ], + "definitions": {}, + "parameters": {}, + "responses": {}, + "securityDefinitions": { + "API Key": { + "type": "apiKey", + "in": "header", + "name": "apikey" + } + }, + "security": [ + { + "API Key": [] + } + ], + "tags": [] +} diff --git a/certified-connectors/apiProperties.json b/certified-connectors/IDAnalyzer/apiProperties.json similarity index 96% rename from certified-connectors/apiProperties.json rename to certified-connectors/IDAnalyzer/apiProperties.json index f4618ea2b1..7b05a5c009 100644 --- a/certified-connectors/apiProperties.json +++ b/certified-connectors/IDAnalyzer/apiProperties.json @@ -1,23 +1,23 @@ -{ - "properties": { - "connectionParameters": { - "api_key": { - "type": "securestring", - "uiDefinition": { - "displayName": "API API Key", - "description": "The API Key for this api", - "tooltip": "Provide your API Key", - "constraints": { - "tabIndex": 2, - "clearText": false, - "required": "true" - } - } - } - }, - "iconBrandColor": "#ededed", - "capabilities": [], - "publisher": "Evith Techology", - "stackOwner": "Evith Techology" - } -} +{ + "properties": { + "connectionParameters": { + "api_key": { + "type": "securestring", + "uiDefinition": { + "displayName": "API API Key", + "description": "The API Key for this api", + "tooltip": "Provide your API Key", + "constraints": { + "tabIndex": 2, + "clearText": false, + "required": "true" + } + } + } + }, + "iconBrandColor": "#ededed", + "capabilities": [], + "publisher": "Evith Techology", + "stackOwner": "Evith Techology" + } +}