This is very straightforward. If you have an existing Contact Record in your Contact Model, then you can fire an Event for that Contact (using the REST API) with an empty data object. Here are the steps that you need to follow.
1. Create Event Source DE
You need to create a "dummy" event source DE. Create a Sendable Data Extension (Event Source DE's need to be sendable) and just include a single field (which can be named anything you like) and make it nullable. Refer to screenshot below.
2. Create Interaction
Create a new Journey Builder Interaction using the Event Source DE you created earlier. Note that your Event Source DE does not need to be added to your Contact Model (in Data Designer). Add Activities to the Interaction as required.
3. Publish Interaction
Click Activate to publish your Interaction.
Note: when publishing an Interaction, all Activities in your Interaction will be validated. If you included Send Email Activities, then these will be validated against the Event Source DE, so if you are using AMPscript %%personalization%%
strings in your email, you will need to replace these with Lookup()
functions, as this data won't be available in your Event Source DE.
4. Fire Event
Fire the Event using the Events method with an empty data
object. Set the value of ContactKey
to the Contact that you want to inject into the Interaction and eventDefinitionKey
as the value of the Event Definition Key (accessible from the Entry Sources page in Journey Builder). Refer to sample request payload below.
POST https://www.exacttargetapis.com/interaction/v1/events
Authorization Bearer {{accessToken}}
Content-Type application/json
{
"contactKey":"aafcac6f-9e0a-379c-5b9c-1cd27e3166ef",
"eventDefinitionKey":"ContactEvent-44f3393c-2588-3683-620d-73fe7ce5de10",
"EstablishContactKey": false,
"data":{}
}
When you do this, the Contact will be injected into the Journey.