Dun & Bradstreet Monitoring API

Subscribe to and consume change notifications on a portfolio.

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-monitoring-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: D&B Direct+ Authentication Monitoring 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: Monitoring
  description: Subscribe to and consume change notifications on a portfolio.
paths:
  /v1/monitoring/registrations:
    post:
      tags:
      - Monitoring
      summary: Create Monitoring Registration
      description: Register a portfolio of D-U-N-S Numbers for change monitoring. The registration declares which data blocks to monitor and how notifications should be delivered.
      operationId: createMonitoringRegistration
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MonitoringRegistrationRequest'
      responses:
        '201':
          description: Monitoring registration created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringRegistrationResponse'
  /v1/monitoring/registrations/{registrationReference}/duns:
    post:
      tags:
      - Monitoring
      summary: Add D-U-N-S To Registration
      description: Add one or more D-U-N-S Numbers to an existing monitoring registration's portfolio.
      operationId: addDunsToRegistration
      security:
      - bearerAuth: []
      parameters:
      - name: registrationReference
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PortfolioMembershipRequest'
      responses:
        '200':
          description: Portfolio updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortfolioMembershipResponse'
    delete:
      tags:
      - Monitoring
      summary: Remove D-U-N-S From Registration
      description: Remove one or more D-U-N-S Numbers from a monitoring registration's portfolio.
      operationId: removeDunsFromRegistration
      security:
      - bearerAuth: []
      parameters:
      - name: registrationReference
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PortfolioMembershipRequest'
      responses:
        '200':
          description: Portfolio updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortfolioMembershipResponse'
  /v1/monitoring/registrations/{registrationReference}/notifications:
    get:
      tags:
      - Monitoring
      summary: Pull Monitoring Notifications
      description: Pull pending change notifications for a monitoring registration. Each notification describes the D-U-N-S Number affected, the block that changed, the previous and new values, and the change timestamp.
      operationId: pullMonitoringNotifications
      security:
      - bearerAuth: []
      parameters:
      - name: registrationReference
        in: path
        required: true
        schema:
          type: string
      - name: maximumQuantity
        in: query
        schema:
          type: integer
          default: 100
          maximum: 1000
      responses:
        '200':
          description: Notifications package.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringNotificationsResponse'
components:
  schemas:
    PortfolioMembershipResponse:
      type: object
      properties:
        addedQuantity:
          type: integer
        removedQuantity:
          type: integer
        rejectedDuns:
          type: array
          items:
            type: object
            properties:
              duns:
                type: string
              reason:
                type: string
    MonitoringNotificationsResponse:
      type: object
      properties:
        notifications:
          type: array
          items:
            type: object
            properties:
              duns:
                type: string
              changeTimestamp:
                type: string
                format: date-time
              blockID:
                type: string
              elementId:
                type: string
              previousValue: {}
              currentValue: {}
    PortfolioMembershipRequest:
      type: object
      required:
      - dunsList
      properties:
        dunsList:
          type: array
          items:
            type: string
            pattern: ^[0-9]{9}$
    MonitoringRegistrationRequest:
      type: object
      required:
      - registrationReference
      properties:
        registrationReference:
          type: string
        description:
          type: string
        blockIDs:
          type: array
          items:
            type: string
        deliveryMethod:
          type: string
          enum:
          - SFTP
          - API_PULL
    MonitoringRegistrationResponse:
      type: object
      properties:
        registrationReference:
          type: string
        status:
          type: string
        createdTimestamp:
          type: string
          format: date-time
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    basicAuth:
      type: http
      scheme: basic