There are two mechanisms for triggering Actions in Slingshot:

  1. Each action is accessible via a URL of the form http://yourslingshotserver/action/NameOfYourAction. For instance, if your Slingshot server were hosted at example.thoughtcolony.com and you named your action MyAwesomeAction, the URL would be http://example.thoughtcolony.com/action/MyAwesomeAction. Spaces in action names are supported, but encoding them as %20 in URLs is recommended (e.g. "My Awesome Action" would become My%20Awesome%Action). The names themselves are not case-sensitive. This is mostly useful when used with webhooks from other systems: enter the URL for a specific action in the other system and when the other system invokes the webhook, the action specified by the URL will start out with its context initialized to the webhook's payload.

  2. Slingshot has a system of scheduling the execution of Actions called "Triggers". These provide fine-grained scheduling for either a one-time occurrence (called "at" triggers) or a repeating series (called "every" triggers).

"At" triggers

Every trigger requires a name, a type ("at" or "every"), an action to execute, and some specification of when the trigger should be executed. For "at" triggers, this is simply a specific date and time when the trigger should execute. Through the UI, this date is always shown in the browsers current time zone, while internally (and through the API) this date is stored in UTC.

"Every" triggers

Just like an "at" trigger, an "every" trigger requires a name, a type ("every"), an action to execute, and a specification of the schedule on which the trigger should be executed. Since calendars have several different was to describe series, the "every" specification is more involved than the "at" specification and not all values are required.

N

Coupled with the Period value, this determines the frequency of the event. For instance, an event scheduled for "every other week" would have an N of 2 and a Period of "week". For "every week", you would use an N of 1. N must be greater than 0.

Period

The "unit" of the frequency of the event: minute, hour, day, week, halfMonth (15 days), month, quarter (3 months), year.

Starts At

The starting point of the series. This is typically the first occurrence, assuming that all other criteria match.

Day of Week

For weekly or monthly series, this indicates the day of the week on which the trigger will fire. Optional (may not have any effect) for other Period types.

Week of Month

For monthly series, this indicates which week of the month a trigger will fire. Either this or "day of month" is required; otherwise it is inferred from the "Starts At" value. Coupled with "Day of Week" series like "first Tuesday of every month" can be described.

Day of Month

For monthly series, this inidcates which day of the month. For instance, the 5th of every month.

Month of Year

For yearly series, this indicates during which month the trigger will fire. Typically also coupled with "Day of Month" or "Day of Week" plus "Week of Month".