Integration

Integrating Skedulo with third party applications using webhooks and triggered actions.

Webhooks are a way for you to listen for specific events or changes that occur to your Skedulo data. When a change occurs, you can configure webhooks to notify other applications or take actions in response in real time. This functionality is useful for

Skedulo supports two different implementations of webhooks – webhooks and triggered actions via two of our Lens API endpoints, /webhooks and /triggered-actions.

Triggered actions are Skedulo’s new iteration of webhooks and will eventually replace the legacy webhook functionality.

Webhooks/triggered actions are a configuration that causes a web (HTTPS) request to be made when a specific condition is met. These requests are sent as a JSON payload, which can be used to execute specific actions in response.

Configuration consists of a name, a URL, and a GraphQL query.

These configurations instruct the Skedulo platform to perform an action when a data change or other event occurs. Defined EQL filters limit the cases that generate an action, and these filters are mandatory for triggered actions, but optional for webhooks.

When to use a webhook or a triggered action

Whether you use a webhook or a triggered action depends on your use case, as there are a number of features that are only available using one implementation or the other, but not both.

Certain features are only available using either triggered actions or webhooks, but not available for both.

Feature Triggered Actions Webhooks
Include the previous data for a modified object.
Include the contents of a deleted object.
Query can retrieve extra data from the database after a trigger is fired.
Trigger on inbound SMS (must be sent to the Skedulo-allocated customer SMS route number).
Send an SMS when triggered.
Execute after a time offset (deferred action).
Execute on a schedule (cron job).

Authentication requirements for webhooks and triggered actions

  • To use webhooks, or any other Skedulo Lens API, you must have an API access token obtained through the administrator settings in the Skedulo web application. The API token must be included in the Authorization header using the Bearer method.
  • You must also have an API user configured for your Skedulo organization. See Skedulo API user for more information.

See Admin Settings: Developer Tools for more information about how to obtain an API token.

  • Only secure HTTPS URLs are accepted for Skedulo webhooks.
  • You must include Content-Type: application/json in the API request header when creating a webhook.
  • Skedulo only supports GraphQL queries for webhooks. This makes it easy to see the data that is available and create queries that only return the data that you want to receive.