Trulioo · Arazzo Workflow

Trulioo Preflight Credentials Then Verify

Version 1.0.0

Confirm connectivity and credentials before spending a paid Verify call.

1 workflow 3 source APIs 1 provider
View Spec View on GitHub Identity VerificationKYCKYBAMLWatchlist ScreeningBiometricsDocument VerificationFraud PreventionComplianceGlobal IdentityArazzoWorkflows

Provider

trulioo

Workflows

preflight-and-verify
Ping, test auth, confirm country support, then verify a person.
Runs an unauthenticated ping, validates credentials, confirms the country is supported by the configuration, and submits the Verify.
4 steps inputs: callerName, configurationName, countryCode, dataFields outputs: authenticatedUser, recordStatus, supportedCountries
1
sayHello
sayHello
Unauthenticated connectivity ping that returns a greeting string.
2
testAuthentication
testAuthentication
Validate the caller's credentials before exercising a paid endpoint.
3
confirmCountry
getCountryCodes
Confirm the target country is supported by the configuration.
4
verify
verifyPerson
Submit the Verify request now that connectivity, credentials, and country support have all been confirmed.

Source API Descriptions

Arazzo Workflow Specification

trulioo-preflight-and-verify-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Trulioo Preflight Credentials Then Verify
  summary: Confirm connectivity and credentials before spending a paid Verify call.
  description: >-
    A defensive onboarding pattern: before exercising a billable verification,
    confirm basic connectivity with an unauthenticated ping, validate the
    caller's credentials with the authentication-test endpoint, confirm the
    target country is supported by the configuration, and only then submit the
    Verify. Every step spells out its request inline so the flow can be read and
    executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: connectionApi
  url: ../openapi/trulioo-connection-api-openapi.yml
  type: openapi
- name: configurationApi
  url: ../openapi/trulioo-configuration-api-openapi.yml
  type: openapi
- name: verificationsApi
  url: ../openapi/trulioo-verifications-api-openapi.yml
  type: openapi
workflows:
- workflowId: preflight-and-verify
  summary: Ping, test auth, confirm country support, then verify a person.
  description: >-
    Runs an unauthenticated ping, validates credentials, confirms the country is
    supported by the configuration, and submits the Verify.
  inputs:
    type: object
    required:
    - callerName
    - configurationName
    - countryCode
    - dataFields
    properties:
      callerName:
        type: string
        description: Caller name to include in the connectivity ping.
      configurationName:
        type: string
        description: Configured product/package name.
      countryCode:
        type: string
        description: Two-letter ISO 3166 country code.
      dataFields:
        type: object
        description: DataFields block for the verification.
  steps:
  - stepId: sayHello
    description: >-
      Unauthenticated connectivity ping that returns a greeting string.
    operationId: sayHello
    parameters:
    - name: name
      in: path
      value: $inputs.callerName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      greeting: $response.body
  - stepId: testAuthentication
    description: >-
      Validate the caller's credentials before exercising a paid endpoint.
    operationId: testAuthentication
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      authenticatedUser: $response.body
  - stepId: confirmCountry
    description: >-
      Confirm the target country is supported by the configuration.
    operationId: getCountryCodes
    parameters:
    - name: configurationName
      in: path
      value: $inputs.configurationName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      supportedCountries: $response.body
  - stepId: verify
    description: >-
      Submit the Verify request now that connectivity, credentials, and country
      support have all been confirmed.
    operationId: verifyPerson
    requestBody:
      contentType: application/json
      payload:
        AcceptTruliooTermsAndConditions: true
        ConfigurationName: $inputs.configurationName
        CountryCode: $inputs.countryCode
        DataFields: $inputs.dataFields
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      transactionRecordId: $response.body#/Record/TransactionRecordID
      recordStatus: $response.body#/Record/RecordStatus
  outputs:
    authenticatedUser: $steps.testAuthentication.outputs.authenticatedUser
    supportedCountries: $steps.confirmCountry.outputs.supportedCountries
    recordStatus: $steps.verify.outputs.recordStatus