Skip to main content
Agent integrations

Manage schedules with natural language

Create, list, and delete schedules with natural language in a Forward Session.

Use natural language in a Forward Session to create, list, and delete 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.

Prerequisites

The Template must enable these managed tools:
  • Create schedules: create_forward_schedule
  • List schedules: list_forward_schedules
  • Delete schedules: delete_forward_schedule
Templates do not enable these tools by default. managed_tool_config is a top-level Template field. Configure it when you create a Template or update an existing one: Example for creating a Template:
curl -s -X POST 'https://api.qoder.com/api/v1/forward/templates' \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Schedule assistant",
    "model": "ultimate",
    "environment_id": "env_xxx",
    "managed_tool_config": {
      "enabled_tools": [
        "create_forward_schedule",
        "list_forward_schedules",
        "delete_forward_schedule"
      ]
    }
  }'
Example for updating an existing Template:
curl -s -X POST 'https://api.qoder.com/api/v1/forward/templates/tmpl_xxx' \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "managed_tool_config": {
      "enabled_tools": [
        "create_forward_schedule",
        "list_forward_schedules",
        "delete_forward_schedule"
      ]
    }
  }'
enabled_tools replaces the complete set of currently enabled Schedule managed tools. To troubleshoot the configuration, ask the Agent, "What tools do you currently have?" and confirm that all three tools are available.

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

Every weekday at 9:00 AM, summarize AI industry news from the past 24 hours.
Select the five most important stories and include source links.
Every Monday at 10:00 AM, summarize last week's project progress, risks, and action items.
Format the result as a Markdown table.

One-time tasks

Remind me at 4:00 PM today to prepare the project review materials.
In two hours, review this report and list every data inconsistency.

Fixed-interval tasks

From 9:00 AM to 6:00 PM on May 1, 2027, check flight prices every 30 minutes.
If the price drops below CNY 600, tell me the flight, time, and purchase link.
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.

List schedules

You can list visible schedules and filter by name, task content, or status. For example:
List all my current scheduled tasks.
Which of my scheduled tasks are related to flights?
Show my archived scheduled tasks.

Delete a schedule

Delete a Schedule by its ID or by its name or task content. For example:
Delete Schedule sched_019f00112233445566778899aabbccdd.
Delete the daily morning AI news summary task.
If multiple schedules match, the Agent does not delete any of them. It returns the candidates so that you can select one by Schedule ID. In natural-language management, "delete" archives the Schedule. An archived Schedule no longer runs, but its history remains available.

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.
Each Schedule Run uses an independent execution Session and does not mix context with the Session that created the Schedule.

Limitations

  • The minimum granularity or interval for cron and interval triggers is one minute.
  • A relative delay for a once trigger is exempt from the minimum frequency, but the delay must be greater than zero.
  • While a Schedule is running, it cannot create, list, or delete other schedules. This prevents self-replication and recursive schedule management.