Loading

dnb-logo
Direct 2.0
Collapse

Update Notification Profile

This function allows a customer to update or cancel an active notification profile.

Update History

  • January 29, 2016 (v5.0 SOAP & REST): PUSH notifications now include CustomerReferenceText for List Change Notice.
  • January 8, 2016 (v5.0 SOAP & REST): The input parameter CompressedProductIndicator is added to CreateNotificationProfileRequest and UpdateNotificationProfileRequest. AttachCompressedProductIndicator is added to GetMonitoringProduct Request.

What to do First

Feature Request

IMPORTANT: Please see the new Online Services Security Enhancement Release, effective November 09, 2020.

Data Layer Entitlement

For customers in U.S. and Canadian markets, the API is provisioned for specific collections of products, reports, and/or features (collectively referred to as data layers) for production and trial usage. Entitlement is not required for testing in the sandbox environment.

  • This function does not require entitlement for production and trial usage. Entitlement for monitoring is only required for the Add Monitoring Registration function, and for the data layers that will monitored.

Specification

Notification Profiles can be removed by setting the status to "Cancelled"; however, if the profile is referenced in a Monitoring Registration it may not be removed.

Restriction: The sequence of Request Parameters submitted to POST/PUT operations currently MUST follow the order presented in this section. This applies to REST calls only.

Restriction: An XML namespace statement MUST be included as the first statement within the primary Aggregate of the request. Please refer to the Sample Request for an example. This applies to REST calls only.

Sample Request (Update)
PUT https://direct.dnb.com/V8.0/monitoring/notificationprofiles/4336
Content-Type: application/json
Authorization: <MyToken>

{
  "mon:UpdateNotificationProfileRequest": {
    "@xmlns$mon": "http://services.dnb.com/MonitoringServiceV2.0",
    "TransactionDetail": {
      "ApplicationTransactionID": "STG_NTFC_UAT",
      "TransactionTimestamp": "2016-12-15T09:30:47Z",
    },
    "UpdateNotificationProfileRequestDetail": {
      "NotificationProfileDetail": {
          "NotificationProfileName": "STG_NTFC_UAT",
        "DeliveryChannelUserPreferenceName": "STG_USERPREF_UAT",
        "DeliveryMode": "Email",
        "DeliveryFrequency": "Immediate",
        "DeliveryFormat": "JSON",
        "NotificationProfileStatusText": "Active",
        "StopDeliveryIndicator": "false"
      },
      "InquiryReferenceText": {
        "CustomerReferenceText": [
          "STG_NTFC_UAT",
          "STG_NTFC_UAT",
          "STG_NTFC_UAT"
        ]
      }
    }
  }
}
Name Characteristics
{NotificationProfileID} int, Required

A number that uniquely identifies a set of events and their thresholds, used to monitor a DUNS or a set of DUNS.

 

Name Characteristics
UpdateNotificationProfileRequest Aggregate
UpdateNotificationProfileRequest@xsi:schemaLocation Attribute
UpdateNotificationProfileRequest { TransactionDetail Aggregate, Optional

Records information necessary to process this request.

UpdateNotificationProfileRequest { TransactionDetail { ApplicationTransactionID string up to 64 chars., Optional

A number assigned by the calling application to uniquely identify this request.

UpdateNotificationProfileRequest { TransactionDetail { TransactionTimestamp DateTimestamp, Optional

The date and time when this request was created. When the request is from an intermediary, such as a workflow manager or service bus, this is the date and time when the message was sent to the D&B function, i.e., the date and time when the xml document was created by the requesting intermediary.

END: UpdateNotificationProfileRequest } TransactionDetail /Aggregate
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail Aggregate, Required
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail Aggregate, Required
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { NotificationProfileName string at least 1 chars. up to 64 chars. Pattern: {.*[^\s].*}., Optional

A name that is provided by the user to the profile.

UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { DeliveryChannelUserPreferenceName string up to 64 chars., Optional
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { DeliveryMode DeliveryModeEnum, Optional

Possible values: Email; HTTPCallBack; MQOutput

UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { DeliveryFrequency DeliveryFrequencyEnum, Optional

Possible values: Immediate; Hourly; Daily; Weekly

UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { DeliveryFormat DeliveryFormatEnum, Optional

Possible values: XML, JSON; JSON

UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { NotificationProfileStatusText NotificationProfileStatusTextEnum, Optional

Records the status of the monitoring registration

Possible values: Active; Cancelled

UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { StopDeliveryIndicator boolean, Optional
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { InquiryReferenceText Aggregate
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { InquiryReferenceText { CustomerReferenceText Element
UpdateNotificationProfileRequest { UpdateNotificationProfileRequestDetail { NotificationProfileDetail { CompressedProductIndicator. boolean, Optional

When set to TRUE this denotes that the customer has requested that D&B return the compressed product in Level 2 change notice. When set to FALSE this denotes that the customer has not requested that D&B return the compressed product in Level 2 change notice.

END: UpdateNotificationProfileRequest } UpdateNotificationProfileRequestDetail } NotificationProfileDetail } InquiryReferenceText /Aggregate
END: UpdateNotificationProfileRequest } UpdateNotificationProfileRequestDetail } NotificationProfileDetail /Aggregate
END: UpdateNotificationProfileRequest } UpdateNotificationProfileRequestDetail /Aggregate
END: UpdateNotificationProfileRequest /Aggregate

Deleting a Profile

To remove a profile, change the status to "Cancelled" through an update request. Canceled items can be restored within 24-hours of the update, after which they are deleted by the system.

"NotificationProfileDetail": {
     "NotificationProfileStatusText": "Cancelled"
},

Endpoint

Use the following endpoint for requesting this feature. The {version} is dependent on the underlying service delivering the response.

Endpoint (Monitoring)
PUT https://direct.dnb.com/V{version}/monitoring/notificationprofiles/{NotificationProfileID}

Testing

This operation will return a static set of results in the D&B Direct test environment (sandbox), regardless of the request parameters.

Feature Response

NOTE: The D&B Direct REST implementation uses the BadgerFish approach for JSON with some minor variations.

Specification

The following is a list of the possible data fields returned by this operation in the JSON response. Samples are provided for testing successful and failed retrieval, and to demonstrate the basic layout of a response. The data returned in samples may not represent actual values that this feature will deliver.

NOTE: The D-U-N-S Number returned in the response will be a nine-digit zero-padded, numeric value.

Sample Response (Update)
{"UpdateNotificationProfileResponse": {
   "TransactionDetail":    {
      "ApplicationTransactionID": "STG_NTFC_UAT",
      "ServiceTransactionID": "Monitoring Service",
      "TransactionTimestamp": "2016-12-15T09:30:47Z"
   },
   "TransactionResult":    {
      "SeverityText": "Information",
      "ResultID": "CM000",
      "ResultText": "Success"
   },
   "UpdateNotificationProfileResponseDetail":    {
      "NotificationProfileDetail":       {
         "NotificationProfileID": 4336,
         "NotificationProfileName": "STG_NTFC_UAT",
         "DeliveryChannelUserPreferenceName": "STG_USERPREF_UAT",
         "DeliveryMode": "Email",
         "DeliveryFrequency": "Immediate",
         "DeliveryFormat": "JSON",
         "NotificationProfileStatusText": "Active",
         "StopDeliveryIndicator": false,
         "FormerNotificationProfileDetail":          {
            "NotificationProfileName": "STG_NTFC_UAT",
            "DeliveryChannelUserPreferenceName": "STG_USERPREF_UAT",
            "DeliveryMode": "Email",
            "DeliveryFrequency": "Immediate",
            "DeliveryFormat": "XML",
            "NotificationProfileStatusText": "Active",
            "StopDeliveryIndicator": false
         }
      },
      "InquiryReferenceText": {"CustomerReferenceText":       [
         "STG_NTFC_UAT",
         "STG_NTFC_UAT",
         "STG_NTFC_UAT"
      ]}
   }
}}
Name Characteristics
UpdateNotificationProfileResponse Aggregate
UpdateNotificationProfileResponse@xsi:schemaLocation Attribute
UpdateNotificationProfileResponse { TransactionDetail Aggregate, Required

Records information necessary to process a particular request. Examples of a request is the ordering of a product.

UpdateNotificationProfileResponse { TransactionDetail { ApplicationTransactionID string up to 64 chars., Optional

A number assigned by the calling application to uniquely identify this request.

UpdateNotificationProfileResponse { TransactionDetail { ServiceTransactionID string up to 64 chars., Required

A number assigned by the D&B service to uniquely identify this transaction.

UpdateNotificationProfileResponse { TransactionDetail { TransactionTimestamp DateTimestamp, Required

The date and time when this request was submitted or the date and time when the requesting intermediary, such as a workflow manager or service bus, sent the message to the D&B function, i.e., the date and time when the xml document was created by the requesting intermediary.

END: UpdateNotificationProfileResponse } TransactionDetail /Aggregate
UpdateNotificationProfileResponse { TransactionResult Aggregate, Required

An aggregate that can repeat multiple times to record the different outcomes of the transaction.

UpdateNotificationProfileResponse { TransactionResult { SeverityText string up to 16 chars., Required

Text that records the criticality of the outcome, e.g., Information, Warning, Error, Fatal.

UpdateNotificationProfileResponse { TransactionResult { ResultID string up to 32 chars., Required

An alphanumeric string that uniquely identifies the outcome of the transaction.

UpdateNotificationProfileResponse { TransactionResult { ResultText string up to 512 chars., Optional

Text that explains the outcome of the transaction.

UpdateNotificationProfileResponse { TransactionResult { ResultMessage Aggregate, Optional (Array)

An aggregate that can repeat multiple times to record textual data that expands on the ResultID and ResultText to provide additional information to the user regarding the status of the transaction. If the status implies that there is a problem this may also provide guidance to the user on how to address it.

UpdateNotificationProfileResponse { TransactionResult { ResultMessage { ResultDescription string up to 512 chars., Required

Text that describes the additional information regarding the outcome of the transaction.

END: UpdateNotificationProfileResponse } TransactionResult } ResultMessage /Aggregate
END: UpdateNotificationProfileResponse } TransactionResult /Aggregate
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail Aggregate, Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail Aggregate, Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { NotificationProfileID int, Required

A number that uniquely identifies a set of events and their thresholds, used to monitor a DUNS or a set of DUNS.

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { NotificationProfileName string at least 1 chars. up to 64 chars. Pattern: {.*[^\s].*}., Required

A name that is provided by the user to the profile.

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { DeliveryChannelUserPreferenceName string at least 1 chars. up to 64 chars. Pattern: {.*[^\s].*}., Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { DeliveryMode DeliveryModeEnum, Optional

Possible values: Email; HTTPCallBack; MQOutput

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { DeliveryFrequency DeliveryFrequencyEnum, Optional

Possible values: Immediate; Hourly; Daily; Weekly

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { DeliveryFormat DeliveryFormatEnum, Optional

Possible values: XML, JSON

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { NotificationProfileStatusText NotificationProfileStatusTextEnum, Optional

Records the status of the monitoring registration

Possible values: Active; Cancelled

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { StopDeliveryIndicator boolean, Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { InquiryReferenceText Aggregate
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { InquiryReferenceText { CustomerReferenceText Element
END: UpdateNotificationProfileResponse } UpdateNotificationProfileResponseDetail } NotificationProfileDetail } InquiryReferenceText /Aggregate
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail Aggregate, Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { NotificationProfileName string at least 1 chars. up to 64 chars. Pattern: {.*[^\s].*}., Optional

A name that is provided by the user to the profile.

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { DeliveryChannelUserPreferenceName string at least 1 chars. up to 64 chars. Pattern: {.*[^\s].*}., Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { DeliveryMode DeliveryModeEnum, Optional

Possible values: Email; HTTPCallBack; MQOutput

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { DeliveryFrequency DeliveryFrequencyEnum, Optional

Possible values: Immediate; Hourly; Daily; Weekly

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { DeliveryFormat DeliveryFormatEnum, Optional

Possible values: XML, JSON; JSON

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { NotificationProfileStatusText NotificationProfileStatusTextEnum, Optional

Records the status of the monitoring registration

Possible values: Active; Cancelled

UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { StopDeliveryIndicator boolean, Optional
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { InquiryReferenceText Aggregate
UpdateNotificationProfileResponse { UpdateNotificationProfileResponseDetail { NotificationProfileDetail { FormerNotificationProfileDetail { InquiryReferenceText { CustomerReferenceText Element
END: UpdateNotificationProfileResponse } UpdateNotificationProfileResponseDetail } NotificationProfileDetail } FormerNotificationProfileDetail } InquiryReferenceText /Aggregate
END: UpdateNotificationProfileResponse } UpdateNotificationProfileResponseDetail } NotificationProfileDetail } FormerNotificationProfileDetail /Aggregate
END: UpdateNotificationProfileResponse } UpdateNotificationProfileResponseDetail } NotificationProfileDetail /Aggregate
END: UpdateNotificationProfileResponse } UpdateNotificationProfileResponseDetail /Aggregate
END: UpdateNotificationProfileResponse /Aggregate

Response Codes & Error Handling

Successful service requests will return a CM000 response code in the TransactionResult ResultID field. Otherwise, one of the D&B Direct standard response codes will be returned.

This operation may return the following response codes: CM001, CM002, CM004, CM007, MN002, MN005, SC001-SC009.

D&B Direct 2.0 API requests are provided on a metered basis; and may require entitlement prior to use in the production environment. In addition, a concurrency limit (QPS) is monitored to ensure that it is not exceeded. An error code will be returned in the event that a transaction is throttled.

While this operation is provided on a metered basis, usage is tracked; however, no billing for successful calls is recorded.

Operation-specific supplemental response code explanations: