I am attempting to post a new API Event that can be added to a Journey as an entry source.
I am able to make this call via Rest and see the new event when I open Entry Sources under Journey Builder. I am NOT, however, able to see this new source on a Journey so I cannot add it.
I was able to get an event to show by adding a sourceApplicationExtensionId to the POST body, BUT only the Id from an API Event that was created manually via Journey Builder-->Entry Sources-->New that I found thru a GET interaction/v1/eventDefinitions.
For instance, this works as expected:
{
"type": "APIEvent",
"name": "PMCNO",
"description": "Attempt to create fromm Api",
"mode": "Production",
"eventDefinitionKey": "PmcNO-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91",
"dataExtensionName": "Mike Data Extension",
"iconUrl": "/events/images/customer.png",
"sourceApplicationExtensionId": "7db1f972-f8b7-49b6-91b5-fa218e13953d",
"arguments": {
"serializedObjectType": 11,
"criteria": "",
"useHighWatermark": false,
"eventDefinitionKey": "PmcNO-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91"
},
"metaData": {
"criteriaDescription": "",
"scheduleState": "No Schedule"
},
"isVisibleInPicker": true,
"category": "Event"
}
Note the sourceApplicationExtensionId -- that is the Id on a manually created API Event.
This DOES NOT work (as in the Entry Source is created, but the Source does not show on a Journey):
{
"type": "APIEvent",
"name": "PMCOHYA",
"description": "Attempt to create fromm Api",
"mode": "Production",
"eventDefinitionKey": "PmcYA-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91",
"dataExtensionName": "Mike Data Extension",
"iconUrl": "/events/images/customer.png",
"sourceApplicationExtensionId": "e7703c10-06db-41cb-910c-cd78552c7b7b",
"arguments": {
"serializedObjectType": 11,
"criteria": "",
"useHighWatermark": false,
"eventDefinitionKey": "PmcYA-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91"
},
"metaData": {
"criteriaDescription": "",
"scheduleState": "No Schedule"
},
"isVisibleInPicker": true,
"category": "Event"
}
That sourceApplicationExtensionId is the Id of my test application created in AppCenter.
This also DOES NOT work (as in, the Entry Source is successfully created, but the Entry Source does show on a Journey):
{
"type": "APIEvent",
"name": "PMCOHYA",
"description": "Attempt to create fromm Api",
"mode": "Production",
"eventDefinitionKey": "PmcYA-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91",
"dataExtensionName": "Mike Data Extension",
"iconUrl": "/events/images/customer.png",
"arguments": {
"serializedObjectType": 11,
"criteria": "",
"useHighWatermark": false,
"eventDefinitionKey": "PmcYA-3CF1CBA3-6F3D-4AB9-95B1-0D8CC2D2944B",
"dataExtensionId": "f5959669-183f-e711-b410-38eaa7142c91"
},
"metaData": {
"criteriaDescription": "",
"scheduleState": "No Schedule"
},
"isVisibleInPicker": true,
"category": "Event"
}
The Dev docs (https://developer.salesforce.com/docs/atlas.en-us.mc-apis.meta/mc-apis/createEventDefinition.htm) claim this property is not needed, but I am seeing differently in my testing and I cannot quite determine what it should actually be in reference to my app or Marketing Cloud instance.