Contact Added to List
Choose a Contact list. Only contacts added to the list after you activate the journey enter. People already on the list at that point don’t. With double opt-in on, a new subscriber enters after they confirm. See Lists.Segment Change
Choose a Segment, then an Event: Entered segment or Exited segment. When you activate the journey, InstantCampaign records who is in the segment at that moment. Those people don’t enter. From then on, only contacts who join (or leave) the segment enter. See Segments.API Event
Use this trigger to start a journey from your own backend, for example after an order or a signup in your app.1
Name the event
Enter an Event name, for example
purchase. The name is a label, and it is also the event name that starts this journey when you record custom events.2
Activate the journey
A unique Trigger key is created when you activate. The trigger panel then shows the endpoint, the request format, and cURL and JavaScript examples, with Copy trigger key and Copy full URL buttons.
3
Call it
Send a request with two headers: your API key (
Authorization: Bearer …, from Settings → API Keys) and the journey’s key (X-Trigger-Key). Both must belong to the same workspace. The body needs the contact’s email. You can also send a data object.data is available to later steps. In email subjects and bodies, write Liquid such as {{ data.orderId }}. In If/Else Condition steps, use Payload value (data.*).
A journey with this trigger also starts when you record a custom event with the same name through the events API. See Events and goals and the API reference.
Schedule
Choose who enters under Audience source: a Segment or a Contact list (only active list subscribers). Then pick a Schedule type:- Recurring (daily/weekly): set Frequency to Daily, Weekly (with a Day of week) or Monthly (with a Day of month, 1–28, so that every month has the day, February included).
-
Based on contact date field: enter a Date field, for example
birthdayorrenewal_date. The box suggests the built-in dates and your Date custom fields. A contact enters on the day the month and day of their date match today, every year. The name is looked up in this order, and the next place is tried when a contact has no value in the one before:- a built-in date:
birthday,createdAt,subscribedAtorlastActivityAt - the custom field with that key
- the key in the contact’s
metadata(set through the contacts API or by an Update Contact step)
customField.renewal_dateormetadata.renewal_date. Store dates asYYYY-MM-DD. - a built-in date:
- One-time on specific date: pick a Date. The audience enters once and never again.
Email Engagement
Choose an Audience source (segment or list) and an Engagement type: Opened email, Clicked link or Did not open. You can also limit it to one campaign with Campaign (optional). Leave that blank for Any campaign. Contacts in the audience who match enter the journey.Form Submission
Choose a Form. Only active forms are listed. The journey starts as soon as someone submits the form. The answers are available asdata, under a name made from each field’s label: {{ data.email }} for the email address, {{ data.company }} for a field labelled “Company”, {{ data.first_name }} for “First name”. The form editor shows each field’s name under it. A field labelled “First name” or “Name” also fills in the contact’s {{ first_name }}. See Signup forms.
Website Event
Enter the Event name your site sends, for examplepage_view or button_click. The journey starts when a visitor who has been identified by email fires that event through the InstantCampaign tracking snippet:
ICTrack.identify() must run on the same page, before the event: the snippet stores nothing between pages. Get the ict_… tracking token under Settings → Tracking Tokens. The event’s properties are available to later steps as data, and the event itself as event (for example {{ event.name }}). An event with the same name recorded from your server through the events API also starts this journey.
The snippet uses a tracking token in
data-site-id (from Settings → Tracking Tokens). A tracking token can only send events, so it’s safe to put on a public web page. Never put an API key on a web page.Troubleshooting
- API call returns “Contact not found”: create the contact first, for example through the contacts API. The trigger doesn’t create contacts.
- API call returns an enrollment error: the journey’s Enrollment frequency doesn’t allow this contact to enter again. With Multiple times, it also means the contact is still in the journey.
- API call returns “Journey is not active”: activate the journey, or call the trigger key of the version that’s live now.
- A birthday journey never fires: check that the Date field is spelled exactly like the custom field’s key (or the metadata key), that the dates are stored as
YYYY-MM-DD, and that the Timezone matches your audience. - Nobody entered a Segment Change journey right after activation: this is expected. People already in the segment when you activate don’t count as a change.