Schedules

Run a tool call once, later

schedules_run_later · Changes data · Markdown

Runs one tool call once at a set time, up to a year ahead, with no monthly rent.

$0.01 a call

From your agent’s balance. A call that fails costs nothing.

An example

Send Rachel a payment reminder for invoice INV-0041 next Friday at 9 in the morning.

Your agent callsschedules_run_later$0.01 a call

The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.

With these arguments
{
  "tool": "invoices_remind",
  "name": "Remind Rachel about INV-0041",
  "arguments": {
    "invoice_id": "c4e6a8c0-2b4d-4f6a-8c0e-3d5f7b9d1e4a",
    "message": "Just a friendly reminder about the repair on your Tabor. Thank you!"
  },
  "at": "2026-10-23T09:00:00-07:00",
  "time_zone": "America/Los_Angeles"
}
What comes back
{
  "schedule": {
    "schedule_id": 4101,
    "name": "Remind Rachel about INV-0041",
    "tool": "invoices_remind",
    "arguments": {
      "invoice_id": "c4e6a8c0-2b4d-4f6a-8c0e-3d5f7b9d1e4a",
      "message": "Just a friendly reminder about the repair on your Tabor. Thank you!"
    },
    "timetable": {
      "every": "once",
      "at": "2026-10-23T16:00:00+00:00"
    },
    "runs_when": "once, at 2026-10-23T09:00:00-07:00",
    "time_zone": "America/Los_Angeles",
    "paused": false,
    "done": false,
    "bot": "Pip",
    "next_run_at": "2026-10-23T09:00:00-07:00",
    "last_run_at": null,
    "last_status": null,
    "last_call_id": null,
    "last_error": null,
    "runs": 0
  },
  "runs_at": "2026-10-23T09:00:00-07:00"
}

Use it when

Something should happen later, once: a reminder on Friday, a post on Tuesday at 9:00.

What it does

Run one tool call once at a set time: "send this Tuesday at 9:00", "check on Friday whether invoice 42 was paid". Give at (ISO 8601 with its offset, up to a year ahead) or in_minutes. It runs as this bot, under its daily budget, and costs the tool's own price when it runs, plus $0.01 now; no monthly rent. Date words in arguments ({today}, {today+7}, {month}, {last_month}, {year}) are filled in when it runs, in time_zone. schedules_list shows it; schedules_delete cancels it before it runs.

What comes back

schedule: the one-off run with its schedule_id, tool, arguments and bot; runs_at: when it runs, in the time zone. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
toolRequiredstringThe tool to run, e.g. "email_send". 1 to 80 characters.
argumentsobjectThe tool's arguments, as you would send them.
atstringe.g. "2026-10-20T09:00:00-07:00". Up to 40 characters.
in_minutesinteger1 to 527,040.
namestringe.g. "Monday invoice reminders". 1 to 80 characters.
time_zonestringe.g. "America/Los_Angeles". The business calendar's time zone if left out, else UTC. Up to 64 characters.

The call

Over MCP, call schedules_run_later on https://api.conecto.chat/mcp/schedules. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/schedules_run_later \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tool":"invoices_remind","name":"Remind Rachel about INV-0041","arguments":{"invoice_id":"c4e6a8c0-2b4d-4f6a-8c0e-3d5f7b9d1e4a","message":"Just a friendly reminder about the repair on your Tabor. Thank you!"},"at":"2026-10-23T09:00:00-07:00","time_zone":"America/Los_Angeles"}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
not_found404No tool has that name.Use a tool name from GET /v1/tools.
not_schedulable400The tool cannot run on its own: it handles secrets, schedules things itself, buys from a quote that expires, or starts a monthly rental.Call that tool yourself when it is needed.
invalid_input400The arguments do not fit the tool (the message names the one), or time_zone is not a time zone name.Send the arguments the tool's page lists; time zones like "America/Los_Angeles".
invalid_input400Neither or both of at and in_minutes were given, or at has no offset, is in the past or more than a year ahead.Give one of them; at like 2026-10-23T09:00:00-07:00.
limit_reached409The business has 500 one-off runs waiting already.Delete some with schedules_delete.

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md