Custom events offer you the flexibility to inform Sailthru of any user behavior and associated data that you want to bring into the Sailthru system. When called, events can initiate specific Lifecycle Optimizer flows, Smart Strategies tactics, or Sailthru Triggers.

For example, you could use a custom event and associated trigger to manage user requests to add items to their Wish Lists. The event call would specify the user by email address and the product’s URL. The trigger listening for that event would add the product URL to the user’s profile as a var and add the user to a “Wish List Reminders” list. You could also set Lifecycle Optimizer to listen for the “wishlist” event and automatically schedule a follow-up email a week later, reminding the user about the item.

Your custom events exist in addition to a set of Sailthru-generated events that are initiated automatically upon each transactional email’s send, or a user’s open, click, or purchase (when a purchase is attributed to a specific send). All of these events can likewise initiate Lifecycle Optimizer flows, Smart Strategies tactics, or triggers.

You can submit a custom event using this event API or the customEvent JavaScript function.

Note that this endpoint only accepts POST requests.

Endpoint URL: https://api.sailthru.com/event


There is no need to pre-establish an event name in the Sailthru system–simply submit an event by a consistent name when it occurs. No action will be taken unless another Sailthru tool (Lifecycle Optimizer, Smart Strategies, or trigger) has been configured to listen for that event name. You may want to begin sending events as a first step prior to programming the actions that should be taken upon their receipt.


Submit Event

Identify user by email

   "id" : "example@example.com",
   "event" : "userPostedComment"

Identify user by alternate ID type

    id : "1234567890"
    key : "sid"
    event : "userPostedComment"

Submit with Vars

   "id" : "user@example.com",
   "event"  : "wishlist add", "vars" : {"url" : "http://example.com/123", "name" : "Widget"}

Submit with Schedule Time

  id : "example@example.com",
   event : "attendingConcert", "vars" : { id : 12345678},
   schedule_time : "March 1, 2017 8:00pm EST"

Required Parameters

  • event – Name of the event
  • id – Email address of the user, or alternate profile key if specified by key parameter

Optional Parameters

  • vars – A hash of data to send with the event to the service listening for it
  • key – required to specify an alternate user profile key in the id parameter, other than the user’s email address