Skip to main content Skip to complementary content

CDP to destination

Get data from the CDP using webhooks (triggered Blend) or an incremental CDP block (scheduled Blend) and send it to the destination.

Using Incremental CDP blocks (scheduled Blend)

Example using an incremental block:

CDP to destination with an incremental block.

an automation consisting of a List New And Updated Contacts Incrementally block containing a Condition block which accesses an Update Contact block if a condition is met and a Create Contact block and an Upsert Contact block if not.

Check if the destination id is already present in the CDP:

Setting conditions.

The Condition block's Inputs tab. Argument 1 is List New And Updated Contact... Item > External Ids > Teamleader, and the Operator is Is not empty.

If the destination id is not present in the CDP, create the object in the destination, otherwise, update the object in the destination.

Merge in destination

You can also do a lookup in the destination first, to check for existing records that were created outside the scope of the Blend. For example, when creating contacts in a destination CRM, you could look up an existing contact in the CRM by email first, and when found, update this object instead of creating a new object.

Feedback loop: add id in CDP

If a new object is created in the destination, make sure to add the id to the CDP using an Upsert Block (see the block Upsert Contact 2 in the above example):

Adding an id with an Upsert Block.

The Inputs tab of the Upsert Contact block.

In the Where section, add one key/value:

  • Key: id
  • Value: id from the object in the CDP

Set Create new to no and Update on exist to yes.

In the field External Id, map the id of the newly created record in the destination (in the above example, the output from the Teamleader block Create Contact).

In the Source field, and the name (text) of the destination: teamleader.

The result is that this external id will be stored in the CDP under the following path:

$.item.external_ids.teamleader

Leave the other fields of the CDP Upsert block empty.

Using CDP webhooks (triggered Blend)

If you use CDP Webhooks, make sure to create an automation that listens to newly created objects in the CDP, and a second automation that listens to updates coming from the CDP.

Example automation using Webhooks, that listens to newly created Contacts in the CDP:

an automation for CDP Webhooks.

an automation consisting of an On Contact Created block and a Condition block that accesses a Create Contact block and an Upsert Contact block when the webhook event is not coming from Teamleader.

Directly below the top Block, use a Condition Block to check the source of the webhook event, and ignore updates coming from the destination platform. This is needed because the destination id is written to the CDP (see CDP block Upsert Contact 3 in the above example) and this will trigger another webhook event coming from the CDP:

Checking the source of a webhook event.

The Inputs tab of the Condition block.

Raw path of the above argument:

{$.OnContactCreated.source}

CDP Webhook Exclude from source setting Thanks to a recent new feature in CDP Webhooks, you can also exclude a source directly in the Webhook block. Use the setting Exclude from source to exclude one source. When this is set, you will not receive Webhook events that originate from the given source.

Feedback loop: add id in CDP

When creating a new object in the destination platform, make sure to add the id in the CDP (see CDP block Upsert Contact 3 in the above example):

Adding an id in the CDP.

alt text

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!