I have a question concerning /contactEvents route in Journey Builder.
I am firing a /contactEvents Event with some custom data (eventStatus field).
The Data extension used for the Event is called "Website_Event" and has the EventInstanceID, ParentEventInstanceID, ContactKey + my custom eventStatus field.
Here is the API call :
var options = {
uri: '/contacts/v1/contactEvents',
retry: true,
form: {
"contactKey": "A001",
"eventDefinitionKey": "ContactEvent-XXXXXXXXXXXXX",
"data": [{
"id": "Data_Extension_ID",
"name": "Website_Event",
"items": [{
"values": [{
"name": "eventStatus",
"value": "isConnected"
}]
}]
}]
},
json: true
};
This call injects the contact "A001" in the journey that has the EVENT DEFINITION KEY = ContactEvent-XXXXXXXXXXXXX. This EVENT DEFINITION KEY is linked to a data extension (Let's call it Master Data Extension) that has a SubscriberKey, Firstname and Lastname fields.
When I want to configure my decision split, I find under the Event Data all the fields in the Master Data Extension. Under the Contact Event I find the "Website_Event" (which is the destination of the /contactEvents route) but I have no clue on how to make a decision split based on the EventStatus field because I cannot link the EventStatusID with the Subscriber in the Master Data Extension as the relationship between the Contact and the Event data extension is one to many.
I hope I am clear enough :) But tell me if you need more details.
Have a nice weekend,
Zak
UPDATE
Here is the new request I tried based on Eliot's answer.
var options = {
uri: '/contacts/v1/contactEvents',
retry: true,
form: {
"contactKey": req.body.contactKey,
"eventDefinitionKey": "ContactEvent-XXXXXXXXXXXXX",
"data": [{
"name": "Website_Event",
"items": [{
"values": [{
"name": "eventStatus",
"value": "isConnected"
}]
}]
},
{
"name": "Event_Status",
"items": [{
"values": [{
"name": "ContactKey",
"value": req.body.contactKey
}, {
"name": "status",
"value": "isConnected"
}]
}]
}]
},
json: true
// other request options
};