Create, list, and archive schedules with natural language in a Forward Session.
Use natural language in a Forward Session to create, list, and archive schedules.
In addition to calling the API, end users can describe a task and its timing in the web app or an IM Channel. The Agent creates the Schedule, which then runs automatically without requiring the original Session to remain online.
Before managing schedules, enable the corresponding Schedule managed capabilities in the effective configuration of the current Template or Identity:
Example for updating an existing Template:
If different Identities under the same Template need different Schedule capabilities, set individual switches by tool name in Identity Config:
Tools omitted from Identity Config inherit the Template baseline. Set an individual tool to
With a valid default Forward MCP configuration, interactive Sessions can see all three tools after a new request refreshes the configuration, even when Schedule is disabled. An existing custom tool with the same name is preserved. Tool visibility does not grant permission: calls still validate the effective Template and Identity switches and resource access permissions.
Both are business errors in tool results with
In the conversation, specify:
For monitoring tasks, specify the frequency, business date, year, start and end times, and trigger condition. The Agent asks follow-up questions if required information is missing.
After creation, the Agent returns the result. You can also ask it to show the newly created Schedule and confirm its name, trigger rule, and timezone.
You can list visible schedules and filter by name, task content, or status. For example:
Archive a Schedule by its ID or by its name or task content. You can still say "delete" in natural language, but the system does not physically delete data. For example:
If multiple schedules match, the Agent does not archive any of them. It returns the candidates so that you can select one by Schedule ID. In natural-language management, "delete" archives the Schedule: no new Schedule Runs are created, the Schedule remains retrievable by ID or with
Prerequisites
Before managing schedules, enable the corresponding Schedule managed capabilities in the effective configuration of the current Template or Identity:
- Create schedules:
create_forward_schedule - List schedules:
list_forward_schedules - Archive schedules:
delete_forward_schedule
managed_tool_config is a top-level Template field. Configure it when you create a Template or update an existing one:
- Create a Template:
POST /api/v1/forward/templates - Update a Template:
POST /api/v1/forward/templates/{template_id}
enabled_tools replaces the complete Forward managed capability baseline. Include any other managed capabilities that must remain enabled.
Override by Identity
If different Identities under the same Template need different Schedule capabilities, set individual switches by tool name in Identity Config:
null to remove its override, or set managed_tool_config: null to clear all overrides. See Upsert Identity Config for complete merge and conflict rules.
Existing Identities can still use identity_config.tools.<name>.enabled=false to disable an inherited managed tool. New integrations should use identity_config.managed_tool_config.
Tool visibility and enablement
With a valid default Forward MCP configuration, interactive Sessions can see all three tools after a new request refreshes the configuration, even when Schedule is disabled. An existing custom tool with the same name is preserved. Tool visibility does not grant permission: calls still validate the effective Template and Identity switches and resource access permissions.
| Tool result error code | Meaning and action |
|---|---|
schedule_feature_disabled | The capability is disabled and the operation is not performed. The Agent should ask the user to enable Schedule in the template page’s Tools section and save. If already enabled, an administrator should check Identity overrides. Users without configuration permission should contact the assistant administrator. |
schedule_configuration_changed | The current Session has not applied the newly enabled configuration. The user should send a new request and, if needed, reopen the Session to refresh it. |
retryable=false; the Agent must not automatically repeat the call. After enabling Schedule, the user should also send a new request to refresh the configuration.
These are not new HTTP errors for the Schedule CRUD API. The switches do not affect direct Schedule API calls or pause existing Schedules. Schedule execution Sessions do not expose management tools. The legacy Custom Tool path retains its previous behavior and does not follow the rule that disabled tools remain visible.
Create a schedule
In the conversation, specify:
- When to run, such as every day at 9:00 AM, every Monday at 10:00 AM, or in two hours.
- What the task should do.
- The required output.
- The timezone. If omitted, the default is
Asia/Shanghai.
Recurring tasks
One-time tasks
Fixed-interval tasks
List schedules
You can list visible schedules and filter by name, task content, or status. For example:
Archive a schedule
Archive a Schedule by its ID or by its name or task content. You can still say "delete" in natural language, but the system does not physically delete data. For example:
include_archived=true, and historical runs remain available. Existing pending or running runs are not canceled.
View execution results
- A Schedule created in the web app returns results to the original Session. If you go offline, pending results are delivered the next time you open that Session.
- A Schedule created in an IM Channel sends results to the corresponding Channel Session.
- You can also use the API to list Schedule Runs or get a Schedule Run.
Limitations
- The minimum granularity or interval for
cronandintervaltriggers is one minute. - A relative delay for a
oncetrigger is exempt from the minimum frequency, but the delay must be greater than zero. - While a Schedule is running, it cannot create, list, or archive other schedules. This prevents self-replication and recursive schedule management.

