I can create journeys by posting to the /interactions endpoint, and push a contact into the journey by posting to /events, but the contact hangs on the first wait and the email send never fires. Since we are creating the associated Data Extensions and Emails through the SOAP API and haven't found a way to update Contact Configuration or set up a Population, I suspect missing configuration steps are to blame. Can anybody explain the API interaction creation process step by step? Thanks!

  • So to confirm, you want to create the entire journey process programmatically, from Creating a population, adding Attribute Sets, setting the Channel Address Order (if required), creating an Event, creating an Interaction, publishing the Interaction and firing the event — all without any requirement to use the SFMC UI, is that correct? Also, do you need to use Journey Builder, or could you achieve the same objective with an Automation? Aug 24, 2016 at 0:17
  • Yes, I'm trying to create an entire journey programmatically without touching the UI. We had planned on building a Journey Builder interaction because we'd like to take advantage of the additional features JB provides, but a solution based on Automations could meet our requirements as well. Thanks so much for your reply!
    – Nick B
    Aug 24, 2016 at 22:34

1 Answer 1


While you can perform any of the Journey Builder functions programmatically using the REST API, you're going to run into issues if you also need to build the Attribute Set (in an Attribute Group). While you can add records to an Attribute Set using the API, you can't create one at this time. Similarly, while you can create a Population using the REST API, you can't create an Attribute Set.

However, if you have already created the Attribute Sets and the cardinal relationship(s) back to the Contact Record, then you can use one of the Contacts methods to add or update Contact data to the defined Attribute Sets, then use the events method to fire the event (or just use this method if you don't need to add Contact data to Attribute Sets).

Alternatively, you can use the SOAP API to create an Automation in Automation Studio, if all you need is a linear 'journey' (i.e. no requirement for branches). Refer to the sample code to create, perform, retrieve, schedule and update an Automation on this page. Refer to the AutomationTask object and AutomationActivity object for supported properties.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .