Seed Delivery

As part of the Monitoring Registration there is an option to request a seed file. This file is a baseline extract of the data requested in the Registration. Once the registration is processed, the seed files will be delivered per the delivery channel configuration in the Registration.

Note: Maximum file (compressed) size for Seed and Notification is 3GB. Multiple files will be delivered when output data size is more than 3GB.

A seed delivery includes two types of files: Seed Header and Seed Data.

Seed Header File

Provides metadata for the Seed Data file, such as number records, along with Seed Data file names delivered per the delivery channel configuration in the Registration.

Sample: PRD_MKTLNK_STP_2017020808104948_SEED_HEADER.json

{
  "fileHeader" : {
	"headerType" : "SEEDFILE",
	"fileId" : "rrt-f98e3872-a-eu-6623-63069210-1",
	"inLanguage" : "en-US",
	"reference" : "PRD_MKTLNK_STP ",
	"productId" : "aasmcu",
	"versionId" : "v1",
	"totalRecordCount" : 92456097,
	"fileTimeStamp" : "2017-01-05T09:59:46.988Z",
	"files" : [
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_1.zip",
		"hash" : "71a00d72f7d3f7caaec0b174dc444dccfaa0e230af85bbe444d8365b98083ba0"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_2.zip",
		"hash" : "8f33b5469f92f4aba4d41c06475090f491ff3dfabec92474298c368cb60c3f67"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_3.zip",
		"hash" : "d21535ba1bfff44144465ad038f0a0555a371fdb0f3dd5f61b20ea71684b94be"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_4.zip",
		"hash" : "8b6e1206a29ec1fb09ee7c13598df6602245894e201f9556532c7b722a89aedb"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_5.zip",
		"hash" : "619bfe4684a4852b222fc40a6d64b26242a3778e51d0f889e66abce1de8d688e"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_6.zip",
		"hash" : "b363db52412800435cf8528ef58feb64d54444940b609df244e4bb53ef728c8e"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_7.zip",
		"hash" : "717eb5a4f5d913eeca5610d3b3f4aa0d6266ff40553f87b4cf2f2e6e49f92bd9"
	  },
	  {
		"name" : "PRD_MKTLNK_STP_20170208124948_SEEDFILE_8.zip",
		"hash" : "c46e5a13e64772bd8cc0d3bd6b4cb7a5a61b339ea92984d78ba1326871d6cba5"
	  }
	]
  }
}

Seed Header File Attribute Descriptions
Attribute Data Type JSON Type Description
fileHeader Aggregate Element The details of the information in the file.
fileHeader.headerType Element String The type of the seed header file.

Possible values:
  • SEEDFILE
  • NOTIFICATION
fileHeader.reference Element String The unique identifier assigned to the Monitoring Registrations when it was created.
fileHeader.fileID Element String The file's unique identifier.
fileHeader.fileTimeStamp Element String The date and time, in ISO 8601 UTC Z standards, when the response was created by the application.
fileHeader.inLanguage Element String An IETF BCP 47 code value that defines the language in which this product was rendered.
fileHeader.productId Element String The product ID associated with the Monitoring Registration
fileHeader.versionId Element String The product version ID associated with the Monitoring Registration
fileHeader.totalRecordCount Element Integer The total number of records included with this seed request.
fileHeader.files Aggregate Object The details of the seed data files.
fileHeader.files.name Element String The name of the seed data file.
fileHeader.files.hash Element String The hash size of the seed data file.

Seed Data File

The Seed data file is a text file; each record in the file is in JSON format and contains one line per D-U-N-S Number included in the Monitoring Registration.

For details on the JSON structure, please see the applicable data product's API Response documentation.

Once the seed file is consumed, the Registration must be unsuppressed to receive notifications. This can be done with the Monitoring API. (See the Monitoring, Suppress or Unsuppress API page.)

Change Notifications

Once a registration request is processed and notifications are unsuppressed, if necessary, change notifications are pushed to the chosen delivery channel (STP, S3) with the frequency specified in the Monitoring Registration.

Note: Maximum file (compressed) size for Seed and Notification is 3GB. Multiple files will be delivered when output data size is more than 3GB.

STP, S3 and GCS notification deliveries include:

  • Notification Header File
  • Zero or more zipped notification files. If there are no notifications, the header file is still delivered but no notification files are sent for the specified frequency except INTRA_DAY.

Notification Header File

Sample Notification Header File
{
  "fileHeader" : {
    "reference" : "STG_CMPELK",
    "headertype" : "NOTIFICATION",
    "fileId" : 0,
    "fileTimeStamp" : "2017-01-18T13:51:31.923Z",
    "inLanguage" : "en-US",
    "productID" : "cmpelk",
    "productVersion" : "v1",
    "totalRecordCount" : 192939522,
    "files" : [
      {
        "name" : "STG_CMPELK_20170118133445_NOTIFICATION_1.zip",
        "hash" : "e9494312b6f13f6f65d3200700b6370aa745680aaaed166ac2ad3f86a6849ec4"
      },
      {
        "name" : "STG_CMPELK_20170118133445_NOTIFICATION_2.zip",
        "hash" : "b23d4c50d9f1a2f40562b2fbaabed69ebb3876259526e77f0c6a13b263a3ba1b"
      }
    ],
    "notificationCount" : [
      {
        "count" : 597659,
        "type" : "ENTER"
      },
      {
        "count" : 6256,
        "type" : "TRANSFER"
      },
      {
        "count" : 191706866,
        "type" : "UPDATE"
      },
      {
        "count" : 191,
        "type" : "UNDER_REVIEW"
      },
      {
        "count" : 18155,
        "type" : "EXIT"
      },
      {
        "count" : 597862,
        "type" : "SEED"
      },
      {
        "count" : 12330,
        "type" : "DELETE"
      },
      {
        "count" : 201,
        "type" : "UNDELETE"
      },
      {
        "count" : 2,
        "type" : "REVIEWED"
      }
    ]
  }
}
Sample Notification Header File with 0 notifications
{
  "fileHeader" : {
    "reference" : "STG_CMPELK",
    "headerType" : "NOTIFICATION",
    "fileId" : "0",
    "fileTimeStamp" : "2021-03-11T00:07:15.624Z",
    "inLanguage" : "en-US",
    "productID" : "cmpelk",
    "productVersion" : "v2",
    "totalRecordCount" : 0
  }
}
Notification File Header Attribute Descriptions

Please refer here for the JSON schema of Notification Header file layout.

Attribute Data Type JSON Type Description
fileHeader Aggregate Object The details of the information in the file.
fileHeader.reference Element String The unique identifier assigned to the Monitoring Registrations when it was created.
fileHeader.headerType Element String The type of the seed header file. Possible values:
  • SEEDFILE
  • NOTIFICATION
fileHeader.fileID Element String The file's unique identifier.
fileHeader.fileTimeStamp Element String The date and time, in ISO 8601 UTC Z standards, when the response was created by the application.
fileHeader.inLanguage Element String An IETF BCP 47 code value that defines the language in which this product was rendered.
fileHeader.productID Element String The product ID associated with the Monitoring Registration
fileHeader.productVersion Element String The product version ID associated with the Monitoring Registration
fileHeader.totalRecordCount Element Integer The total number of records included with this seed request.
fileHeader.files Aggregate Array (object) The details of the seed data files.
fileHeader.files.name Element String The name of the seed data file.
fileHeader.files.hash Element String The SHA-256 hash of the seed data file.
fileHeader.notificationCount Aggregate Array (object) The details of the type of notifications in the file(s).
fileHeader.notificationCount.count Element Integer The number of records of the type.
fileHeader.notificationCount.type Element String The type of notification (see D-U-N-S Number Status Types).

Notification Data Files

Notification files are text files. They contain one row for each notification, which is in JSON. Each row starts with the notification type and then includes applicable details of the D-U-N-S Number for which the notification applies. The notifications are grouped by D-U-N-S Numbers and then are in ascending order by timestamp. The notifications for a single D-U-N-S Number will never be split across multiple files; the order of D-U-N-S Numbers in a file or between files is not guaranteed.
IMPORTANT: UBO notifications differs from the standard Data Products. Please refer here for UBO notification samples.

Notification File Names

D-U-N-S Numbers monitoring notification files use the following naming convention:

Intra_Day Notifications: REFERENCE_YYYYMMDDHHMMSS_FILE-TYPE_FILE-NUMBER

Daily Notifications: REFERENCE_YYYYMMDDHHMMSS_FILE-TYPE_FILE-NUMBER

Weekly Notifications: REFERENCE_YYYYMMDD_FILE-TYPE_FILE-NUMBER

Monthly Notifications: REFERENCE_YYYYMM_FILE-TYPE_FILE-NUMBER

Where:

  • REFERENCE = the reference defined at registration request.
  • YYYYMMDDHHMMSS = the date and time the file was generated.
  • YYYYMMDD = the date the file was generated.
  • YYYYMM = the year and month the file was generated.
  • FILE-TYPE = one of the following:
    • EXCEPTIONS
    • NOTIFICATION
    • NOTIFICATION HEADER
    • SEED HEADER
    • SEEDFILE
  • FILE-NUMBER = the number of the file. Not included for header files. Multiple files are delivered to keep the maximum (compressed) size under 3GB.
Notification Data File Contents

A Notification file may contain:

  • Status changes for D-U-N-S Numbers. For details on status types, see D-U-N-S Number Status Types.
  • D-U-N-S Number data changes as UPDATE or SEED records.
  • SEED records for newly created D-U-N-S Numbers that meet the registration Universe criteria.
  • SEED records for D-U-N-S Numbers added to the registration.
Element Descriptions

Each record in the file may contain the following elements, based on the notification type. Please refer here for the JSON schema of Notification message file layout.

File Element Data Type Description Notification Types
type String The type of notification. All
organization Object The details of the entity's organization. All
organization.duns String The D-U-N-S Number is an identification number assigned by Dun & Bradstreet that uniquely identifies the entity in accordance with the Data Universal Numbering System (DUNS). All
organization.dunsControlStatus Object The details of the entity established to provide products and/or services in the marketplace or to the community. TRANSFER
organization.dunsControlStatus.dunsTransfers Array (object) History of D-U-N-S Number deletes and D-U-N-S Number transfer for this entity. TRANSFER
organization.dunsControlStatus.dunsTransfers.retainedDUNS String In the event that the D-U-N-S Number of this entity is retired, this field contains the D-U-N-S Number to reference for future product requests TRANSFER
elements Array (object) Array of elements of the D-U-N-S Number that have been updated. UPDATE, SEED
elements.element String JSON Path of element that has been updated. UPDATE, SEED
elements.previous Any Data Type The Previous value can be any data type, depending on the path. e.g. a string, a number, a boolean, an array, a JSON Object or null. UPDATE
elements.current Any Data Type The Current value can be any data type, depending on the path. e.g. a string, a number, a boolean, an array, a JSON Object or null. UPDATE
elements.timestamp String The date and time, in ISO 8601 UTC Z standards, when this element was updated by the application. UPDATE
D-U-N-S Number Status Types

Monitoring tracks several types of changes:

Notification Type Explanation
DELETE The D-U-N-S Number has been deleted; it is no longer available through Direct+ APIs or Monitoring.
ENTER The D-U-N-S entered the Universe in the Monitoring Registration. This may occur when a new D-U-N-S Number is created or an existing one is changed so it now meets the Universe criteria.

Example 1: Registration is configured for Commercially Active Universe.
  • DUNS-A is not currently in the Commercially Active Universe because mail is not deliverable.
  • DUNS-A is changed and mail deliverable flag is changed to True. It now meets the Universe criteria.
  • An ENTER notification is triggered and included in the next notification file.
Example 2: Registration is configured for Full Universe.
  • DUNS-B is not part of the Universe because it is deleted.
  • DUNS-B is undeleted.
  • An ENTER notification is triggered and included in the next notification file.
(For information on Universe criteria, please see the Monitoring Overview.)
EXIT The D-U-N-S Number is no longer part of the Universe in the Monitoring Registration. This occurs when a D-U-N-S Number is deleted, transferred, or the content changes so that it no longer meets the Universe criteria.

Example 1: Registration is configured for Commercially Active Universe
  • DUNS-C currently meets the criteria for Commercially Active.
  • DUNS-C is changed so it is now de-listed. It no longer meets the Universe criteria.
  • An EXIT notification is triggered and included in the next notification file.
Example 2: Registration is configured for Full Universe.
  • DUNS-D is part of the Universe.
  • DUNS-D is deleted.
  • An EXIT notification is triggered and included in the next notification file.
(For information on Universe criteria, please see the Monitoring Overview.)
REVIEWED The review of the D-U-N-S Number has been completed; changes notifications will now be processed for this D-U-N-S Number.
SEED
  • For Monitoring Registrations configured with a Universe and created with Seed File = True, a SEED notification is sent when a D-U-N-S Number has entered a Universe due to data changes.
  • For Monitoring Registrations configured for a List of D-U-N-S Numbers (LOD) and created with Seed File = True, a SEED notification is sent when a D-U-N-S Number has been added to the Monitoring Registration by request for LOD Registrations.
  • For Monitoring Registrations configured to receive FULL_PRODUCT notifications, a SEED notification is sent when a D-U-N-S Number has been updated.
TRANSFER The D-U-N-S Number has been transferred to another D-U-N-S Number; the retained D-U-N-S Number is also transmitted.
UNDELETE The D-U-N-S Number has been undeleted and is now available through Direct+ APIs and Monitoring.
UNDER_REVIEW The D-U-N-S Number is currently under review. No change notifications will be received while the D-U-N-S Number is in this state. However, the D-U-N-S Number remains in the registration so when the status changes the appropriate notification(s) will be delivered based on the new status.
UPDATE Content related to the subject D-U-N-S Number has been updated.

Scenarios and Which Status Types Are Included (D-U-N-S)

For Dun & Bradstreet Managed Universe Registrations, the notifications are only sent if the D-U-N-S Number meets the Universe conditions.

For LOD Registrations, the notifications are only sent if the D-U-N-S Number is part of the Monitoring Registration.

Unless otherwise noted, the information below applies to both UPDATE and FULL_PRODUCT registrations.
Note: Approval required for FULL_PRODUCT notifications.

Activity Notification Types for Universe Registrations Notification Types for LOD Registrations Notes
A new D-U-N-S Number is created.
  • ENTER
  • SEED
n/a SEED record only included if Registration has Seed File = True.
A D-U-N-S Number is marked as deleted.
  • DELETE
  • EXIT
(or)
  • EXIT
  • DELETE
  • Any pending notifications for the registered D-U-N-S Number before it became deleted will be sent. However, while the D-U-N-S Number has a status of deleted, no further update notifications will be sent. UPDATE or SEED depends on Registration notificationType setting.
  • In some cases, where name is purged first followed by DELETE flag - customers will be receiving UPDATE or SEED followed by EXIT(DELETE notifications will not be sent).
A D-U-N-S Number is undeleted.
  • ENTER
  • SEED
  • UNDELETE
  • SEED
For Universe registration, a SEED record only included if Registration has Seed File = True.

For LOD registration, a SEED record is included if Registration as Seed File = True OR notificationType is FULL_PRODUCT.
The D-U-N-S Number data changes, which may include:
- New content
- Updated content
- Removed content
  • UPDATE or SEED
  • UPDATE or SEED
UPDATE or SEED depends on Registration notificationType setting.
The D-U-N-S Number data changes cause it to no longer meet the Universe criteria.
  • EXIT
n/a
DUNS-A is transferred to DUNS-B. DUNS-A was in Registration; DUNS-B is not. For DUNS-A
  • TRANSFER
  • EXIT
For DUNS-A
  • TRANSFER
Any pending notifications for the registered D-U-N-S Number before it is transferred, will be sent.
For LOD Registrations, modify Registration to remove DUNS-A and add DUNS-B.
DUNS-A is transferred to DUNS-B. DUNS -B was in Registration; DUNS-A is not. No notification. No notification.
A D-U-N-S Number is placed under review.
  • UNDER_REVIEW
  • EXIT
  • UNDER_REVIEW
Any pending notifications for the registered D-U-N-S Number before it is reviewed, will be sent.
The review of a D-U-N-S Number is completed.
  • ENTER
  • SEED
  • REVIEWED
  • SEED
SEED is only included if Registration included SEED request.
A D-U-N-S Number is added to Registration. n/a
  • SEED
SEED is only included if Registration included SEED request.
A D-U-N-S Number is removed from Registration. n/a n/a
A D-U-N-S Number is under review AND is Transferred For DUNS-A
  • TRANSFER
  • EXIT
For DUNS-B
  • ENTER
  • SEED
  • TRANSFER
Any pending notifications for the registered D-U-N-S Number before it is under review AND is Transferred, will be sent.

If the registration does not include a Seed File = True, in order to baseline a D-U-N-S Number that has been added to the Registration or has Entered the Universe, a data API call can be used.


Scenarios and Which Status Types Are Included (Subject ID)
Activity Notification Types for Universe Registrations Notification Types for LOD Registrations Notes
The D-U-N-S Number data changes, which may include:
- New content
- Updated content
- Removed content
  • UPDATE or SEED
  • UPDATE or SEED
UPDATE or SEED depends on Registration notificationType setting.

Notification File Record Examples

Seed Example (SubjectID)
{
	  "type":"SEED",
	  "organization":{
		 "subjectID":"00000000001",
		 ...(product contents here)
	  }
	}
		

UPDATE String Element (SubjectID)
{
  "type":"UPDATE",
  "organization":{
	"subjectID":"00000000001",
	"subjectIDType":"SBFEID"
  },
   "elements": [ {
   "element":"organization.registeredAddress.streetName",
   "previous":"BUILDING 4, HATTERS LANE, CROXLEY GREENBUSINESS PARK",
   "current":"BUILDING 4, HATTERS LANE"
}
]
}

UPDATE Array Element (SubjectID)
{
 "type":"UPDATE",
  "organization":{
	"subjectID":"00000000001",
	"subjectIDType":"SBFEID"
  },
  "elements": [ {
   "element": "organization.industryCodes",
  "previous": [
     {
       "typeDescription": "North American Industry Classification System 2012",
       "description": "Unclassified Establishments",
       "priority": 1,
       "code": "999990",
       "typeDnBCode": 24664
     },
     {
       "typeDescription": "D&B Hoovers Industry Code",
       "description": "Nonclassifiable establishments",
       "priority": 1,
       "code": "2058",
       "typeDnBCode": 25838          },
     {
       "typeDescription": "US Standard Industry Code 1987 - 4 digit",
       "description": "Nonclassified establishment",
       "priority": 1,
       "code": "9999",
       "typeDnBCode": 399
     },
     {
       "typeDescription": "D&B Standard Industry Code",
       "description": "Nonclassifiable establishments",
       "priority": 1,
       "code": "99990000",
       "typeDnBCode": 3599
     },
     {
      "typeDescription": "NACE Revision 2",
      "description": "Undetermined",
      "priority": 1,
      "code": "9999",
      "typeDnBCode": 29104
     }
  ],
  "current": [
     {
      "code": "238210",
      "description": "Electrical Contractors",
      "typeDescription": "North American Industry Classification System 2012",
      "typeDnBCode": 24664,
      "priority": 1
     },
     {
      "code": "1857",
      "description": "Electrical Contractors",
      "typeDescription": "D&B Hoovers Industry Code",
      "typeDnBCode": 25838,
      "priority": 1
     },
     {
      "code": "1731",
      "description": "Electrical contractor",
      "typeDescription": "US Standard Industry Code 1987 - 4 digit",
      "typeDnBCode": 399,
      "priority": 1
     },
     {
      "code": "17310203",
      "description": "Environmental system control installation",
      "typeDescription": "D&B Standard Industry Code",
      "typeDnBCode": 3599,
      "priority": 1
     },
     {
      "code": "C",
      "description": "Construction",
      "typeDescription": "D&B Standard Major Industry Code",
      "typeDnBCode": 24657,
      "priority": 1
     },
     {
      "code": "4321",
      "description": "Electrical installation",
      "typeDescription": "NACE Revision 2",
      "typeDnBCode": 29104,
      "priority": 1
     }
  ]
}
]
}

UPDATE Object Element with Changed Values (SubjectID)
{
 "type":"UPDATE",
  "organization":{
	"subjectID":"00000000001",
	"subjectIDType":"SBFEID"
  },
  "elements": [ {
     "element":"organization.telephone",
    "previous": [
        {
          "telephoneNumber":"5555551212",
          "isdCode":"86",
          "isUnreachable":false
        }
     ],
     "current": [
        {
          "telephoneNumber":"5555551000",
          "isdCode":"86",
          "isUnreachable":false
        }
     ],
     "timestamp":"2016-07-29T13:22:19Z"
}
]
}

UPDATE Object with Added Values (SubjectID)
{
 "type":"UPDATE",
  "organization":{
	"subjectID":"00000000001",
	"subjectIDType":"SBFEID"
  },
  "elements": [ {
   "element":"organization.telephone",
   "previous":[],
   "current":[
      {
        "telephoneNumber":"57687353158",
        "isdCode":"86",
        "isUnreachable":false
       }
   ],
   "timestamp":"2016-07-29T13:22:19Z"
}
]
}

Object with Removed Values (SubjectID)
{
  "type":"UPDATE",
  "organization":{
	"subjectID":"00000000001",
	"subjectIDType":"SBFEID"
  },
  "elements": [ {
  "element":"organization.telephone",
   "previous":[
     {
       "telephoneNumber":"5555551212",
       "isdCode":"86",
       "isUnreachable":false
     }
   ],
   "current":[]
}
]
}

Delete Example
{
  "type":"DELETE",
  "organization":{
      "duns":"217825255"
  }
}

Enter Example
{
  "type":"ENTER",
  "organization":{
    "duns":"217825255"
  }
}

Exit Example
{
  "type":"EXIT",
  "organization":{
     "duns":"217825255"
  }
}

Reviewed Example
{
  "type":"REVIEWED",
  "organization": {
     "duns":"217825255"
  }
}

Seed Example
{
  "type":"SEED",
  "organization":{
     "duns":"611710674",
     ...(product contents here)
  }
}

Transfer Example
{
  "type":"TRANSFER",
  "organization":{
     "duns":"611710674",
     "dunsControlStatus":{
        "dunsTransfers":[{
           "retainedDUNS":"064332299"
         }
         ]
     }
  }
}

Undelete Example
{
  "type":"UNDELETE",
  "organization":{
      "duns":"217825255"
  }
}

Under Review Example
{
   "type":"UNDER_REVIEW",
   "organization":{
      "duns":"217825255"
   }
}

UPDATE String Element
{
  "type":"UPDATE",
  "organization":{
     "duns":"217825255"
  },
   "elements": [ {
   "element":"organization.registeredAddress.streetName",
   "previous":"BUILDING 4, HATTERS LANE, CROXLEY GREENBUSINESS PARK",
   "current":"BUILDING 4, HATTERS LANE"
}
]
}

UPDATE Array Element
{
 "type":"UPDATE",
  "organization":{
     "duns":"217825255"
  },
  "elements": [ {
   "element": "organization.industryCodes",
  "previous": [
     {
       "typeDescription": "North American Industry Classification System 2012",
       "description": "Unclassified Establishments",
       "priority": 1,
       "code": "999990",
       "typeDnBCode": 24664
     },
     {
       "typeDescription": "D&B Hoovers Industry Code",
       "description": "Nonclassifiable establishments",
       "priority": 1,
       "code": "2058",
       "typeDnBCode": 25838          },
     {
       "typeDescription": "US Standard Industry Code 1987 - 4 digit",
       "description": "Nonclassified establishment",
       "priority": 1,
       "code": "9999",
       "typeDnBCode": 399
     },
     {
       "typeDescription": "D&B Standard Industry Code",
       "description": "Nonclassifiable establishments",
       "priority": 1,
       "code": "99990000",
       "typeDnBCode": 3599
     },
     {
      "typeDescription": "NACE Revision 2",
      "description": "Undetermined",
      "priority": 1,
      "code": "9999",
      "typeDnBCode": 29104
     }
  ],
  "current": [
     {
      "code": "238210",
      "description": "Electrical Contractors",
      "typeDescription": "North American Industry Classification System 2012",
      "typeDnBCode": 24664,
      "priority": 1
     },
     {
      "code": "1857",
      "description": "Electrical Contractors",
      "typeDescription": "D&B Hoovers Industry Code",
      "typeDnBCode": 25838,
      "priority": 1
     },
     {
      "code": "1731",
      "description": "Electrical contractor",
      "typeDescription": "US Standard Industry Code 1987 - 4 digit",
      "typeDnBCode": 399,
      "priority": 1
     },
     {
      "code": "17310203",
      "description": "Environmental system control installation",
      "typeDescription": "D&B Standard Industry Code",
      "typeDnBCode": 3599,
      "priority": 1
     },
     {
      "code": "C",
      "description": "Construction",
      "typeDescription": "D&B Standard Major Industry Code",
      "typeDnBCode": 24657,
      "priority": 1
     },
     {
      "code": "4321",
      "description": "Electrical installation",
      "typeDescription": "NACE Revision 2",
      "typeDnBCode": 29104,
      "priority": 1
     }
  ]
}
]
}

UPDATE Object Element with Changed Values
{
 "type":"UPDATE",
  "organization":{
     "duns":"217825255"
  },
  "elements": [ {
     "element":"organization.telephone",
    "previous": [
        {
          "telephoneNumber":"5555551212",
          "isdCode":"86",
          "isUnreachable":false
        }
     ],
     "current": [
        {
          "telephoneNumber":"5555551000",
          "isdCode":"86",
          "isUnreachable":false
        }
     ],
     "timestamp":"2016-07-29T13:22:19Z"
}
]
}

UPDATE Object with Added Values
{
 "type":"UPDATE",
  "organization":{
     "duns":"217825255"
  },
  "elements": [ {
   "element":"organization.telephone",
   "previous":[],
   "current":[
      {
        "telephoneNumber":"57687353158",
        "isdCode":"86",
        "isUnreachable":false
       }
   ],
   "timestamp":"2016-07-29T13:22:19Z"
}
}
]

Object with Removed Values
{
  "type":"UPDATE",
  "organization":{
     "duns":"217825255"
  },
  "elements": [ {
  "element":"organization.telephone",
   "previous":[
     {
       "telephoneNumber":"5555551212",
       "isdCode":"86",
       "isUnreachable":false
     }
   ],
   "current":[]
}
]
}

When Notifications are Not Delivered

Regular notifications will not be delivered under the following circumstances:

  • Maintenance Window
  • Notifications are suppressed
  • On Hold state of Registration
  • Notification Re-Delivery
  • If the S3 bucket policy and role are not properly configured, notifications will not be delivered.

Maintenance Window

Periodically, the D&B Direct+ system must undergo maintenance. During these periods, notification delivery is suspended to ensure consistency with Direct+ API content.

When reinstated, notifications include all changes that occurred during the maintenance window.

During system maintenance monitoring notifications are not delivered. They are accumulated and packaged once the maintenance is complete. The delivered files contain each individual . This provides you with all the interim changes that occurred during the maintenance window.

NOTE: This is different than suppression. When a Monitoring Registration is suppressed, interim updates are not included in the notification once delivery is unsuppressed.

Suppressed Notifications

Notifications may be suppressed through the API. During this period, the system aggregates the changes for each day into a single UPDATE notification. When the notifications are unsuppressed, the aggregated notifications are delivered. The previous value is the last value delivered before the notifications were suppressed and the current value is the value of the last change before the notifications are delivered.

On Hold Notifications

Notifications may be placed on hold through the API (excluding UBO and Family Tree registrations). The On Hold state will retain the registration configurations, but the system will not process the registration. Registrations can be subsequently transitioned from the On Hold state to Current state. When it is changed from On Hold to Current, then the following logic applies:

  • 1. If Registration Seed = True,
    System changes Registration State value
    System generates and delivers a new seed file
    Notifications are suppressed (just as they would be for Create Registration process)
    Reg is processed on next run.
  • 2. If Registration Seed = False, System changes Registration state value. (Registration is processed on next run.)

Notification Re-Delivery

Notification re-delivery is only possible upto 30 days after initial delivery. Notifications are not stored for longer than 30 days. Must be requested through support.dnb.com

Appendix: Configure S3 Bucket

In order for monitoring to deliver files to S3 and ensure they are encrypted, the monitoring user must be given access.

  • DNB Profile Id: 219829223284
  • DNB IAM User: otmutransfer
  1. Create an S3 bucket using instructions provided by AWS.
  2. Give monitoring user read access to S3 bucket (see Bucket IAM Policy).
  3. Give monitoring user read access to encryption keys (see Bucket Key Policy).
  4. Create key following instructions provided by AWS.
  5. Go to the AWS Identity and Access Management (IAM) console at https://console.aws.amazon.com/iam/home#encryptionKeys.
  6. Open the Encryption Keys section.
  7. Select the appropriate AWS region (do not use the region selector in the navigation bar (top right corner). A list of keys is displayed.

    Select the appropriate AWS region and a key from the list of keys is displayed.
  8. Select the alias name. The details are displayed:

    Select the alias name from the details displayed
  9. Use the bucket and key information to configure the registration.

Bucket IAM Policy

The following is sample configuration for the IAM policy to be applied:

{
    "Version": "2012-10-17",
    "Statement": [
        {
           "Sid": "Monitoring Bucket permissions",
           "Effect": "Allow",
           "Principal": {
              "AWS": "arn:aws:iam::219829223284:user/otmutransfer"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::customer-bucket-name/*"
        }
    ]
}

Bucket Key Policy

{
{
      "Sid": "Allow use of the key",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::219829223284:user/otmutransfer"
      },
      "Action": [
        "kms:Encrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*"
      ],
      "Resource": "arn:aws:kms:us-east-1:219829223284:key/8d27048e-9b70-47a2-af7d-79982a417561"  ---> Customer key ARN
    }

Appendix: Configure IAM Role

Steps for creating IAM role

  1. Open AWS console navigates to the IAM->Role and click the Create IAM role
  2. Select the “Trusted entity type” as “AWS account” option
  3. Select the “Another AWS account” and enter the DNB Account ID: 219829223284
  4. Click next and select the S3 policy (S3 Policy for IAM Role or S3 Policy and Encryption for IAM Role)
  5. Click Next and Enter the RoleName and Description

S3 Policy for IAM Role

{
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::<bucketName>/*"
          }
        ]
      }
      

S3 Policy and Encryption for IAM Role

{
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::<bucketarn>/*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "kms:Encrypt",
              "kms:ReEncrypt*",
              "kms:GenerateDataKey*"
            ],
            "Resource": "<keyarn>"
          }
        ]
      }
      

Appendix: Configure GCS (Google Cloud Storage) Bucket

In order for monitoring to deliver files to GCS, the monitoring service account must be given access.

  1. Create a GCS bucket using instructions provided by Google Cloud Platform.
  2. Go to “Permissions” tab, click on “Grant access” and, add principals and assign role (see image below).
    1. Service Account: otmutransfer-sa@cp-dp-prd-monitoring-e03f3f8a9.iam.gserviceaccount.com
    2. Role: Storage Object Creator
  3. Use the bucket name to configure the registration
    1. gs://your-gcs-bucket/{directory}

Select the appropriate principals and assign appropriate role

If you want to use encryption in the bucket.

  1. Create a key following instructions provided by Google Cloud Platform and add to your bucket.
  2. Use the encryption key to configure the registration.
    1. Encryption key format: projects/{your-gcp-project-id}/locations/{location-of-the-key}/keyRings/{your-key-ring}/cryptoKeys/{your-key-name}

Set the default encryption key.

D&B Direct+ Managed Universes

All Universes include the following rules:

  • Company status is not Deleted
  • Company status is not Under Review
    IMPORTANT: cmpbol product cannot be registered for a Dynamic Universe, can only be registered for Full Universe.
    IMPORTANT: SBFE subjectID based Data Blocks cannot be registered for a universe.
Description Universe ID Universe Rules
Full Universe FULL This universe includes D-U-N-S Numbers that meet the general rules listed above. No additional rules are applied.
Active in Japan ACTVJP This universe includes D-U-N-S Numbers that meet all the following criteria:
- Country is Japan (JP)
- Operating Status is Active
Alternative Linkage LNKALT This universe includes D-U-N-S Numbers that meet all the following criteria:
- Alternative Linkage element is present and not null.
Commercially Active CMCLACTV This universe includes D-U-N-S Numbers that meet all the following criteria:
- Company is not de-listed
- Mail is deliverable
- Operating Status is Active
Fortune 1000 F1000 This universe includes D-U-N-S Numbers that meet all the following criteria:
- Fortune1000 = True
- Operating status is Active
Active in US ACTVUS This universe includes D-U-N-S Numbers that meet all the following criteria:
- Country is United States (US)
- Operating Status is Active
Active in UK ACTVUK This universe includes D-U-N-S Numbers that meet all the following criteria:
- Country is United Kingdom (UK)
- Operating Status is Active
Extended Linkage Insight LNKELI This universe includes D-U-N-S Numbers that meet all the following criteria:
- Linkage Source Category element is present and not null.
Custom Universe CUSTOM When universe is CUSTOM this field needs to be informed with a valid JEP expression. Supported fields and values in expression:
  • countryISOAlpha2Code: ISO 2 country code
  • hqCountryISOAlpha2Code: ISO 2 country code
  • operatingStatus ("ACTIVE", "OUT_OF_BUSINESS")
  • isStandalone or !isStandalone
  • failureScore_rawScore
  • supplierEvaluationRiskScore_rawScore
  • delinquencyScore_rawScore
  • globalBusinessRanking_rawScore
  • totalLossPredictorScore_rawScore

Note: No alert notification will be generated, if custom universe elements are not part of monitoring registration's data blocks.