arazzo: 1.0.1 info: title: Trulioo Verify A Person And Fetch The Full Record summary: Run a KYC verification, then pull the complete transaction record including datasource detail. description: >- Submitting a Verify returns a summary record status, but the auditable detail — every datasource result, the matched fields, and any appended fields — lives on the transaction record. This workflow verifies a person and then chains the returned TransactionRecordID into a transaction-record lookup so the caller ends with the durable, downloadable record. 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: verificationsApi url: ../openapi/trulioo-verifications-api-openapi.yml type: openapi workflows: - workflowId: verify-person-and-fetch-record summary: Verify a person and retrieve the full transaction record. description: >- Submits a Verify request and uses the TransactionRecordID it returns to fetch the complete TransactionRecord with all datasource results. inputs: type: object required: - configurationName - countryCode - dataFields properties: configurationName: type: string description: Configured product/package name. countryCode: type: string description: Two-letter ISO 3166 country code. dataFields: type: object description: DataFields block (PersonInfo, Location, Communication, NationalIds, Document). customerReferenceId: type: string description: Optional client-side reference for the transaction. steps: - stepId: verify description: >- Submit the Verify request to perform a KYC verification on the person and capture the TransactionRecordID for the follow-up lookup. operationId: verifyPerson requestBody: contentType: application/json payload: AcceptTruliooTermsAndConditions: true ConfigurationName: $inputs.configurationName CountryCode: $inputs.countryCode CustomerReferenceID: $inputs.customerReferenceId DataFields: $inputs.dataFields successCriteria: - condition: $statusCode == 200 outputs: transactionId: $response.body#/TransactionID transactionRecordId: $response.body#/Record/TransactionRecordID recordStatus: $response.body#/Record/RecordStatus - stepId: fetchRecord description: >- Retrieve the full TransactionRecord for the verification, including the per-datasource results and any appended fields. operationId: getTransactionRecord parameters: - name: transactionRecordId in: path value: $steps.verify.outputs.transactionRecordId successCriteria: - condition: $statusCode == 200 outputs: productName: $response.body#/ProductName record: $response.body#/Record datasourceResults: $response.body#/Record/DatasourceResults outputs: transactionId: $steps.verify.outputs.transactionId transactionRecordId: $steps.verify.outputs.transactionRecordId recordStatus: $steps.verify.outputs.recordStatus datasourceResults: $steps.fetchRecord.outputs.datasourceResults