Batch enrichment recipes for D&B Data Blocks
Learn about the batch enrichment recipes for D&B Data Blocks that enable large-scale entity exports, submissions, and updates.
Batch enrichment recipes for D&B Data Blocks provide the logic to export entity records from Reltio, prepare inputs, submit them for enrichment, and update company and hierarchy data. They also handle crosswalk management, verification status updates, and execution reporting. Use these recipes together to run scalable enrichment jobs with predictable monitoring and reporting.
D&B | TRG | Scheduler for Batch Enrichment
Trigger (Step 1) - Jobs can be triggered by scheduling cron expressions via Custom schedule or by selecting Daily, Weekly, or Monthly from the Time Unit dropdown.
D&B | API | REST API for Batch Enrichment
Use the following endpoint to trigger the batch enrichment via REST API:
| Method | URL |
|---|---|
| POST | https://apim.workato.com/XXXXXXXXXX/trigger-recipes/batchEnrichment?filter={{filter}}&doNotMerge={{flag}} |
Required headers:
| Key | Value |
|---|---|
api-token | Auth Token |
Content-Type | application/json |
Required parameters:
| Key | Description |
|---|---|
filter | Populate the Reltio attributes or audit-based filter to enrich the dataset. |
doNotMerge | true or false. If true, a Potential Match is created. If false, records are merged based on the confidence code. Defaults to false. |
D&B | PROC | Batch Enrichment – Multi Process extmatch (Main Recipe)
Step 5 – The D&B Utilities SDK Action validates properties. Customers can configure or update required fields for recipe execution.
Step 37 – If exported entities exceed 100K, the D&B | SYS | Job Alert Notification recipe runs hourly until all child jobs complete. This notification stops automatically when processing is done.
D&B | PROC | Export Reltio Entities – Get Download URLs
Step 3 - Set the varExportAttributes variable to include only the attributes required for submission to D&B.
| Export Fields | Reltio Attributes |
|---|---|
| uri | Uri |
| DUNS Number | attributes.DUNSNumber |
| Name | attributes.Name |
| Address | attributes.Address |
| Tax ID | attributes.TaxID |
| Phone | attributes.Phone |
| attributes.Email | |
| Website URL | attributes.WebsiteURL |
| Crosswalk | crosswalks |
varFilterCondition – To re-enrich records, remove only the following statuses from the filter: Enriched by Dun & Bradstreet and Potential Match Found by Dun & Bradstreet.
D&B | PROC | Batch Enrichment – Process Reltio Export Data
Steps 11–20 – These are wait steps that pause execution until all child recipes complete. Once they are finished, the batch execution report is triggered to generate job statistics.
Step 17 – Ensure that the D&B | TRG | Process D&B Job Result Recipe ID is configured so it can be used in wait steps.
D&B | PROC | Batch Enrichment – Submit D&B Jobs
Step 6 – If any Reltio attribute names have changed, update the sample JSON structure to reflect the new schema. This ensures datapills are parsed correctly.
Step 29 – The D&B Job ID is passed to a function that checks the job’s processing status and determines whether it’s complete or has failed.
D&B | FUNC | Prepare Input Parameters
Step 3 – Prepares addressType, phoneType, and emailType parameters from the Properties Lookup Table. If not specified, default values are derived from the first available entry in the exported records.
If the exported record already contains a D&B crosswalk (URI:DUNS), it’s reused in the new output file to maintain continuity.
D&B | PROC | D&B Submitted Jobs Manager
Step 4 – This SDK checks the status of submitted D&B jobs at intervals based on record volume: under 2K (90s), 2K–5K (180s), over 5K (300s). It repeats until the job status is Processed or Failed.
Step 8 – Once processing completes, the D&B job results are published to an event topic for downstream actions.
D&B | TRG | Process D&B Result
Step 1 – Triggered by the D&B Response – Download URL message. This recipe starts post-processing for completed jobs.
Step 8 – The SDK downloads and processes the D&B response file from S3 and classifies records into success or failure groups based on confidence codes.
Success types:
- Auto-merged records
- Potential match records
Failure types:
- No match found
- Error occurred
Developers can extend this SDK to modify output attributes or add logic to the Ruby code if needed.
Step 22 – If new attributes need to be added from Step 9, update the columns in the generated CSV file. Flatten arrays using Workato formula logic (e.g., .first(50)).
Step 24 – The CSV file is saved in Workato FileStorage and is passed to downstream recipes for further processing.
D&B | PROC | Split D&B Datablocks Data
Steps 7–12 – This recipe evaluates the file stored in FileStorage (from step 4.3.4.7) containing enriched records. It checks for existing crosswalks (URI:DUNS) associated with the enriched entities.
If existing crosswalks are found, the same URI:DUNS values are reused to avoid redundant creation during the Reltio data load. This ensures consistency and prevents duplication in downstream hierarchy and company information updates.
Only records without pre-existing D&B crosswalks proceed to crosswalk formation in the subsequent recipes.
D&B | PROC | Batch Update Company Information
Step 8 – This recipe identifies the primary record that holds a standalone DUNS crosswalk. It ensures that hierarchy and principal contact information is not duplicated for records sharing the same DUNS number.
Step 21 – Executes crosswalk formation logic for three entity types:
- Auto-merged records (
URI:DUNSand DUNS) - Potential match records (
URI:DUNS) - Duplicate records (
URI:DUNS)
Step 25 – Converts flattened entity data into the nested JSON format expected by D&B. If any attributes are added or modified, update both the input and output schemas of the SDK to reflect those changes.
These steps ensure the proper mapping, transformation, and crosswalk association of enriched company information before it is loaded into Reltio.
D&B | PROC | Batch – Find Unique DUNS Crosswalk records
This recipe supports both the Company Information and Hierarchy Connection flows by identifying the primary record that contains a standalone DUNS crosswalk. It prevents redundant processing of duplicate records that share the same DUNS number.
For duplicates, a message is written to the Reltio attribute Verification → Data Provider Verification Details to indicate the presence of an existing enriched record.
Example message: Hierarchy and Principal Contact is unavailable for this duplicate entity. Resolve merge with Entity ID: <<Reltio URI>>.
The recipe operates in a sequential flow:
Steps 4–13– Wait steps that poll for the completion of previously triggered jobs every 100 seconds.Step 20– Searches for a CSV file in FileStorage (D&B_Company_info_Filestorage*.csv) containing unique DUNS values and their corresponding Reltio Entity URIs.Step 23– Queries the CSV to check if current records are already associated with a DUNS number. Records not found are sent to child recipes for resolution.Steps 30, 32– Child recipes check Reltio for missing DUNS values.Steps 50, 52– Appends new unique records to the same CSV file in FileStorage.Step 48– Ensures each file does not exceed 1 million unique records. New files are created as needed.
D&B | SYS | Batch Update Company Information – Reltio Load
Step 8 – This recipe performs bulk entity creation in Reltio using the enriched company information and crosswalk mappings generated from prior steps.
If there are any updates to attribute mappings or changes in the Reltio data model, ensure the mapping configuration is updated accordingly in this step. Mismatched or outdated mappings can lead to rejected records or incomplete enrichment.
D&B | SYS | Batch Update Hierarchy Connections
Step 5 – This recipe is responsible for loading enriched hierarchy data into Reltio. It only creates crosswalks for records where Hierarchy Connections is set to Yes in the Properties Lookup Table, and both Company Information and Diversity Insights are set to No.
Step 15 – Searches for prerequisite files in Workato FileStorage. If the required company enrichment jobs failed, the system avoids loading hierarchy and principal contact data for those entities.
Hierarchy records are excluded if:
- The Reltio Entity ID is not found in the unique DUNS CSV (
D&B_Company_info_Filestorage*.csv). - The record is listed in the failed entities file (
D&B_Entities_Failed_List_<<JobID>>.csv).
The same exclusion logic applies to the principal contacts recipe when company or hierarchy enrichment fails.
D&B | SYS | Batch Update Hierarchy Connections – Generate crosswalks
Step 5 – This recipe generates unique DUNS crosswalks for hierarchy records based on configuration settings. If the property Merge Duplicate DUNS Crosswalks is set to No, duplicate records will be excluded.
The recipe triggers a child function (Step 8) to perform duplicate record detection and crosswalk formation for eligible hierarchy records.
For any duplicate record, a message is added to the Verification → Data Provider Verification Details attribute to indicate that hierarchy and principal contact data will not be created.
Example message: Hierarchy and Principal Contact is unavailable for this duplicate entity. Resolve merge with Entity ID: <<Reltio URI>>.
D&B | FUNC | Batch Execution Report
Step 3 – This recipe initializes variables and prepares execution statistics for the D&B enrichment batch run.
Due to a 10,000-row limitation in Reltio Lookup Tables, the system applies pruning logic:
- If the D&B Job Execution Statistics table exceeds 9,900 entries, the last 1,000 entries are deleted (
Step 32). - All other lookup tables are truncated when a new batch job starts, ensuring a clean state.
Step 20 – This step checks for outdated log files in the D&B_Logs directory of FileStorage. Log files older than 7 days are automatically deleted.
This recipe ensures that the enrichment process maintains performance and compliance with platform limits while retaining recent execution history.