Scheduled Triggers (Limited Preview)
Limited Preview: Scheduled Triggers
Scheduled Triggers and the Webhook Listener are currently in Limited Preview and may change without notice. Access is invite-only. Self-nomination form is here. Production use is approved but may be subject to interruptions or breaking changes.
Run automations on a schedule
Scheduled triggers let you run plugins at specific, predetermined times. Unlike webhook triggers that react to external events in real-time, scheduled triggers operate on a cadence you define—whether that's every hour, on the last Friday of the month, or at a single specific date and time. This allows you to build proactive, time-based automations without needing a user prompt or an incoming event.
Who is this for? Builders who want to create automations that run on a recurring or fixed schedule. For example: "Send a project status report every Friday at 4 PM," "Archive inactive records on the first of every month," or "Run a system health check every 15 minutes."
How it works (at a glance)
- Configure Schedule: You define a trigger using a Cron, Interval, or Calendar schedule in the Plugin Editor.
- Time Reached: The Moveworks scheduler continuously checks for due tasks. When the configured time is met, it fires the trigger.
- Plugin Runs: The corresponding plugin is triggered, and your configured process (actions, notifications, etc.) runs. Observability is available via dedicated logs.
Key concepts
- Cron Schedule: The most flexible option, using a standard cron expression for complex recurring schedules (e.g., "at 9:05 AM on the first Monday of every month").
- Interval Schedule: The simplest way to run a plugin on a repeating cadence (e.g., "every 30 minutes").
- Calendar Schedule: The best choice for scheduling a plugin to run at one or more specific, non-recurring dates and times.
What’s in scope in Limited Preview today?
We support a rich set of scheduling options to cover the majority of time-based automation use cases.
In scope: Flexible scheduling using Cron expressions, simple recurring intervals (seconds, minutes, hours), and specific date/time selections via a calendar. Full support for time zones and start/stop conditions.
Out of scope: This trigger type is designed for proactive, scheduled automations only and does not support reactive triggers based on system states or external events. Specifically, the following are not supported:
- Polling: You cannot use this feature to repeatedly check an external system for a state change (e.g., "check an API every minute for a new ticket"). Scheduled triggers are "fire-and-forget" actions based on time, not system states.
- Real-Time Events: This trigger type is designed for proactive, scheduled automations only. It does not listen for or react to real-time events from external systems; for that functionality, please see Webhook Triggers
Configuring a Scheduled Trigger
To get started, navigate to Create New Plugin in Agent Studio and select the System tab within the Trigger configuration block. This is where you'll set up the automated execution for your plugin.
From the Select Trigger Type dropdown, choose Schedule. This will reveal the different scheduling options available to configure when your plugin should run.

Schedule Types
You can choose from three types of schedules to trigger your plugin: Cron Schedule, Interval Schedule, and Calendar Schedule. Each offers a different level of control over the timing of your plugin's execution.
Cron Schedule ⏱️
A Cron Schedule uses a cron expression to define a recurring schedule. This is a powerful option for complex schedules, like running a task at the beginning of every hour during business days.
- Cron Schedule: Enter a standard 5-field cron expression in the format:
minute hour day-of-month month day-of-week.
- Example:
0 9 * * 1-5
would run the plugin at 9:00 AM every Monday through Friday.
- Example:

Interval Schedule 🔄
An Interval Schedule is perfect for running a plugin repeatedly at a regular frequency, such as every 15 minutes or every 24 hours.
- Interval Schedule:
- Enter a number for the time interval.
- Select the time unit from the dropdown: Days, Hours, Minutes, or Seconds.

Calendar Schedule 🗓️
A Calendar Schedule lets you pick specific dates and times for the plugin to run. This is ideal for one-time events or tasks that need to run at very specific, non-repeating times.
- Calendar Schedule:
- Click the calendar icon to open the date and time picker.
- Select a specific date and time.
- Click Time Zone to ensure the trigger fires at the correct time for your desired location.
- You can click Add Date to add multiple specific execution times.

Common Schedule Settings
For Cron and Interval schedules, you also need to define when the schedule should start and stop.
- Start:
- Start immediately: The schedule becomes active as soon as the plugin is published.
- Start at: Choose a specific date and time for the schedule to begin.
- Stop:
- Never: The schedule will run indefinitely until the plugin is disabled or reconfigured.
- End at: Choose a specific date and time for the schedule to stop.
- After: Specify a certain number of executions after which the schedule should stop.
Body Configuration
Once your trigger is configured, you must define what the plugin does when it runs. Because scheduled triggers are system-initiated and don't start with a user conversation, their configuration is different from conversational triggers.
- In the Body block, choose the System Body type. Conversational Processes are not available for scheduled triggers.
- From the Select an Action dropdown, choose the process you want to run. You can select a direct HTTP Action or a Compound Action.

Initiating a Conversation from a Scheduled Trigger
While you cannot select a conversational process directly, you can still initiate a conversation or collect additional input from a user. To do this, you must use a Compound Action that includes a notify
key.
The notify
key allows your plugin to proactively send a message to a user, which can include buttons to start a conversational flow.
- To trigger a conversational process or gather input: Use a Compound Action with a
notify
key. - For more details on syntax and examples: See the Compound Action: notify key documentation.
Platform rules and limitations
- One trigger paradigm per plugin. A plugin can be triggered by system triggers (one or many), or by conversational triggers (one or many)—but not both. Duplicate the plugin if you need both paradigms.
- Multiple plugins per event. A single event can fan-out to multiple plugins if their conditions match.
Updated about 16 hours ago