Integration

The backend API provides the capability to send integration calls to configurable endpoints after each step.

This integration can be configured in the appsettings.json file, under the Steps property. The integration for each step is configured individually, however it is not required for the API to post its progress after every step.

For each instance, IntegrationMode and IntegrationEndpoint must be configured.

Integration Modes

JSON

This mode can be achieved by setting the IntegrationMode property to 1 and results in an application/json post call being made to the configured endpoint. See schema for each step below.

Form

This mode can be achieved by setting the IntegrationMode property to 2 and results in a multipart/form-data post call being made to the configured endpoint. See form data for each step below.

Nest

This mode can be achieved by setting the IntegrationMode property to 3 and results in a specialized call being made to a Nitro backend.

In this mode, NestProcessID and NestMicroflowName should also be set for each specific instance where Nest is being used.

NitroBaseUrl, NestBaseUrl, NestUsername and NestApiKey should also be configured globally.

Step Data

This section details the JSON schemas and form data that may be expected for each step.

Finalize

JSON schema:

{
    "OnboardingID": "", 
    "CorrelationID": "", 
    "CountryCodeAlpha2": "", 
    "CountryCodeAlpha3": "", 
    "CountryCodeNumeric": "", 
    "MobileNumber": "", 
    "DocumentType": "", 
    "LivenessResult": true, 
    "LivenessConfidence": 1.0,
    "RemoteIPAddress": "",
    "FraudDetectionResults": null
    "Location": {
        "PermissionGranted": true,
        "Accuracy": "",
        "Altitude": "",
        "AltitudeAccuracy": "",
        "Heading": "",
        "Latitude": "",
        "Longitude": "",
        "Speed": ""
    },
    "UserAgent": "",
    "ExtractedDocumentData": {
    },
    "AdditionalValues": { 
    },
    "OriginalDocumentData": { 
    },
    "Images": { 
        "LivenessSelfie": "", 
        "DocumentFrontImage": "", 
        "DocumentBackImage": "", 
        "DocumentPortraitImage": "",
        "DocumentCroppedFrontImage": "",
        "DocumentCroppedBackImage": ""
    },
    "Videos": {
        "LivenessVideo": "",
    },
    "IsHighRisk": true, 
    "HighRiskReasons": [],
    "ImageFaceVector": null,
    "VideoFaceVector": null,
    "AuditTrail": [ 
        {
            "StepType": 1, 
            "StepName": "", 
            "Timestamp": "", 
            "Values": {
            }
        }
    ]
}

Form data:

  • onboardingID (string)

  • correlationID (string)

  • countryCodeAlpha2 (string)

  • countryCodeAlpha3 (string)

  • countryCodeNumeric (string)

  • documentType (string)

  • extractedDocumentData (string)

  • originalDocumentData (string)

  • auditTrail (string)

  • livenessConfidence (decimal)

  • livenessResult (boolean)

  • mobileNumber (string)

  • locationPermissionGranted (boolean)

  • locationAccuracy (string)

  • locationAltitude (string)

  • locationAltitudeAccuracy (string)

  • locationHeading (string)

  • locationLatitude (string)

  • locationLongitude (string)

  • locationSpeed (string)

  • userAgent (string)

  • isHighRisk (boolean)

  • highRiskReasons (string)

  • additionalValues (string)

  • livenessSelfie (File)

  • documentFrontImage (File)

  • documentBackImage (File)

  • documentPortraitImage (File)

  • documentCroppedFrontImage (File)

  • documentCroppedBackImage (File)

  • livenessVideo (File)

  • remoteIpAddress (string)

  • ImageFaceVector (List<double>?)

  • videoFaceVector (List<double>?)

  • FraudDetectionResults (string)

Last updated