Dun & Bradstreet Multi-Process API

Combined match plus enrich in a single call.

Documentation

Specifications

Schemas & Data

Other Resources

🔗
ChangeLog
https://directplus.documentation.dnb.com/html/resources/ChangeHistory.html
🔗
Support
https://directplus.documentation.dnb.com/support.html
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-generate-access-token-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-cleanse-match-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-search-companies-by-criteria-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-search-contacts-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-get-data-blocks-by-duns-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-multi-process-match-and-enrich-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-submit-batch-file-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-get-batch-file-status-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-download-batch-file-results-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-create-monitoring-registration-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-add-duns-to-registration-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-remove-duns-from-registration-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-pull-monitoring-notifications-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/dun-and-bradstreet/refs/heads/main/examples/dnb-direct-plus-get-audit-record-example.json

OpenAPI Specification

dun-and-bradstreet-multi-process-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: D&B Direct+ Authentication Multi-Process API
  description: D&B Direct+ is Dun & Bradstreet's RESTful API platform that exposes the D&B Data Cloud — more than 500 million companies worldwide — for identity resolution, search, enrichment, multi-process (match plus enrich), batch processing, change monitoring, and historical research. All endpoints return JSON, are versioned in the URI path, and require an OAuth 2.0 bearer token obtained from the /v3/token endpoint via client-credentials grant. This profile is an OpenAPI sketch of the public surface based on Dun & Bradstreet's published Direct+ documentation; the canonical operation definitions live behind the gated developer portal at https://directplus.documentation.dnb.com/.
  version: '3.0'
  contact:
    name: D&B Direct+ Support
    url: https://service.dnb.com/
  termsOfService: https://www.dnb.com/utility-pages/terms-of-use.html
  license:
    name: Proprietary
    url: https://www.dnb.com/utility-pages/terms-of-use.html
servers:
- url: https://plus.dnb.com
  description: Production
tags:
- name: Multi-Process
  description: Combined match plus enrich in a single call.
paths:
  /v1/multiProcess:
    post:
      tags:
      - Multi-Process
      summary: Match Plus Enrich In One Call
      description: 'Combine Identity Resolution and Enrich in a single request: supply a candidate input record and the desired data blocks; Direct+ returns the resolved D-U-N-S match together with all requested enrichment payloads.'
      operationId: multiProcessMatchAndEnrich
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MultiProcessRequest'
      responses:
        '200':
          description: Resolved match plus enrichment payloads.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MultiProcessResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    OrganizationSummary:
      type: object
      properties:
        duns:
          type: string
          pattern: ^[0-9]{9}$
        primaryName:
          type: string
        primaryAddress:
          $ref: '#/components/schemas/Address'
        countryISOAlpha2Code:
          type: string
        telephone:
          type: array
          items:
            type: object
            properties:
              telephoneNumber:
                type: string
        registrationNumbers:
          type: array
          items:
            type: object
            properties:
              registrationNumber:
                type: string
              typeDescription:
                type: string
    MultiProcessRequest:
      type: object
      required:
      - inquiryDetail
      - blockIDs
      properties:
        inquiryDetail:
          type: object
          properties:
            name:
              type: string
            countryISOAlpha2Code:
              type: string
            address:
              $ref: '#/components/schemas/Address'
        blockIDs:
          type: array
          items:
            type: string
    Error:
      type: object
      properties:
        transactionDetail:
          $ref: '#/components/schemas/TransactionDetail'
        error:
          type: object
          properties:
            errorMessage:
              type: string
            errorCode:
              type: string
            errorDetails:
              type: array
              items:
                type: object
    MultiProcessResponse:
      type: object
      properties:
        transactionDetail:
          $ref: '#/components/schemas/TransactionDetail'
        matchCandidates:
          type: array
          items:
            $ref: '#/components/schemas/MatchCandidate'
        organization:
          type: object
          description: Resolved enrichment payload for the top-ranked match.
    Address:
      type: object
      properties:
        streetAddress:
          type: object
          properties:
            line1:
              type: string
            line2:
              type: string
        addressLocality:
          type: object
          properties:
            name:
              type: string
        addressRegion:
          type: object
          properties:
            name:
              type: string
            abbreviatedName:
              type: string
        postalCode:
          type: string
        addressCountry:
          type: object
          properties:
            isoAlpha2Code:
              type: string
    TransactionDetail:
      type: object
      properties:
        transactionID:
          type: string
        transactionTimestamp:
          type: string
          format: date-time
        inLanguage:
          type: string
        serviceVersion:
          type: string
    MatchCandidate:
      type: object
      properties:
        displaySequence:
          type: integer
        matchQualityInformation:
          type: object
          properties:
            confidenceCode:
              type: integer
            matchGrade:
              type: string
            matchDataProfile:
              type: string
        organization:
          $ref: '#/components/schemas/OrganizationSummary'
  responses:
    Unauthorized:
      description: Missing or invalid bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    basicAuth:
      type: http
      scheme: basic