Skip to content

Custom Events

You can create your own custom events, private to your organization. Custom events can be used in two ways:

  1. Create an Inbound Webhook that will invoke an integration
  2. Create an event that will run on a scheduled basis

Creating a Custom Event

Create a custom event by sending a POST request to the /admin/events/custom endpoint.

{
"eventName": "custom:descriptive_name",
"description": "This event receives notifications from ABC service."
}

Creating Scheduled Events

Scheduled events are triggered based on time, running without user action on a defined interval such as once a week. Scheduled integrations can be used for automatically triggering an integration to perform tasks such as generate reports, or reach out to any API (Arc or external) to gather the necessary data to perform such tasks.

IFX scheduled events use the six-field AWS Cron Expression format (no seconds value). You can use a generator such as Crontab Generator.

Create a scheduled, custom event by sending a POST request to the /admin/events/custom endpoint. In this case you will provide the schedule parameter:

{
"eventName": "custom:descriptive_name",
"description": "This is a scheduled event that will run 12:00:00pm, on Wednesdays.",
"schedule": {
"cron": "0 12 ? * WED *"
}
}

Modifying an Event’s Schedule

Modify an event’s schedule by sending a PUT request to the /admin/events/custom/:eventName endpoint.

{
"description": "This is my event that will run every 7 days at noon.",
"schedule": {
"cron": "0 0 12 */7 * ? "
}
}

Deleting a Schedule

You can delete an event’s schedule without deleting the event itself (this action cannot be undone). Send a DELETE request to the /admin/events/custom/:eventName/schedule endpoint.

What type of schedules can be set up?

You can set up any schedule that is greater than five minutes. You can specify frequencies such as:

  • Minutes
  • Hours
  • Day of the month
  • Month
  • Day of the week
  • Year

For example, the six-field cron expression 0 0 ? * SUN * is described as At 00:00:00am, on every Sunday, every month. You can learn more about cron schedules here: Crontab Generator.

What about failures or guaranteed delivery of messages to IFX?

Your integration should handle errors. Using the Node.js language, you should use a try/catch statement, where on catch (error) you would need to decide what action you would like to take.



Have a feature request or suggestion? Let us know on Our Ideas Portal.