Dun & Bradstreet · Arazzo Workflow

D&B Batch Match And Enrich File

Version 1.0.0

Submit a batch input file, poll until processing completes, then download the matched and enriched results.

1 workflow 1 source API 1 provider
View Spec View on GitHub Business DataCompany DataD-U-N-S NumberCreditRiskMaster DataData EnrichmentIdentity ResolutionComplianceSupply ChainSales IntelligenceMonitoringArazzoWorkflows

Provider

dun-and-bradstreet

Workflows

batch-match-enrich-file
Submit a batch file, poll status, and download results when complete.
Submits a batch input file, polls getBatchFileStatus, and branches: when the status is COMPLETED it downloads the result file; otherwise it ends so the caller can poll again later.
3 steps inputs: accessToken, file, processId, productId outputs: fileId, finalStatus, resultFile
1
submitFile
Submit the batch input file for asynchronous match and enrichment, returning a fileId to poll.
2
checkStatus
Poll the processing status of the submitted batch file.
3
downloadResults
Download the matched and enriched output file once status is COMPLETED.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: D&B Batch Match And Enrich File
  summary: Submit a batch input file, poll until processing completes, then download the matched and enriched results.
  description: >-
    The asynchronous batch-processing lifecycle. The workflow submits a batch
    input file for match and enrichment, polls the processing status, and once
    the file reaches a COMPLETED state branches to download the result file.
    Each 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: dataFileApi
  url: ../openapi/dun-and-bradstreet-data-file-api-openapi.yml
  type: openapi
workflows:
- workflowId: batch-match-enrich-file
  summary: Submit a batch file, poll status, and download results when complete.
  description: >-
    Submits a batch input file, polls getBatchFileStatus, and branches: when
    the status is COMPLETED it downloads the result file; otherwise it ends so
    the caller can poll again later.
  inputs:
    type: object
    required:
    - accessToken
    - file
    - processId
    properties:
      accessToken:
        type: string
        description: A valid Direct+ OAuth 2.0 bearer access token.
      file:
        type: string
        description: The batch input file payload to submit.
      processId:
        type: string
        description: Direct+ process identifier (match, enrich, etc).
      productId:
        type: string
        description: Optional product identifier for the batch job.
  steps:
  - stepId: submitFile
    description: >-
      Submit the batch input file for asynchronous match and enrichment,
      returning a fileId to poll.
    operationId: submitBatchFile
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    requestBody:
      contentType: multipart/form-data
      payload:
        file: $inputs.file
        processId: $inputs.processId
        productId: $inputs.productId
    successCriteria:
    - condition: $statusCode == 202
    outputs:
      fileId: $response.body#/fileId
      status: $response.body#/status
  - stepId: checkStatus
    description: >-
      Poll the processing status of the submitted batch file.
    operationId: getBatchFileStatus
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: fileId
      in: path
      value: $steps.submitFile.outputs.fileId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/status
      processedRecordCount: $response.body#/processedRecordCount
    onSuccess:
    - name: completed
      type: goto
      stepId: downloadResults
      criteria:
      - context: $response.body
        condition: $.status == "COMPLETED"
        type: jsonpath
    - name: notReady
      type: end
      criteria:
      - context: $response.body
        condition: $.status != "COMPLETED"
        type: jsonpath
  - stepId: downloadResults
    description: >-
      Download the matched and enriched output file once status is COMPLETED.
    operationId: downloadBatchFileResults
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: fileId
      in: path
      value: $steps.submitFile.outputs.fileId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      resultFile: $response.body
  outputs:
    fileId: $steps.submitFile.outputs.fileId
    finalStatus: $steps.checkStatus.outputs.status
    resultFile: $steps.downloadResults.outputs.resultFile

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/dun-and-bradstreet-batch-match-enrich-file-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.