Scheduled tasks for AI agents

A schedule is an account-owned HTTPS request that Tillpad repeats on a timer. The shortest interval is 5 minutes. For developers running tasks for AI agents. Pro is $9 a month.

What you can schedule

POST /api/schedules creates a job. The URL must be HTTPS. Localhost, private IP addresses, and hostnames that end in .local or .internal are rejected, as are hostnames that contain metadata. method is GET or POST. POST may include bodyTemplate. authMode is none, bearer, or header. A bearer or header secret is stored encrypted.

intervalMinutes is required and must be at least 5. timezone is a label stored on the row and defaults to UTC. An account can have 10 enabled schedules. The worker cron runs every 5 minutes and enqueues jobs whose next run time has passed.

Each attempt uses a 10 second timeout, up to 3 tries, and exponential backoff capped at 300 seconds. HTTP 2xx is success. After 5 consecutive exhausted failures the schedule is disabled. The User-Agent on the outbound call is Tillpad-Schedule/1.0.

Creating a schedule does not meter. Each later attempt meters outbound_http. Optional onSuccess and onFailure actions are store_kvp (meters kvp_ops), store_rag (meters rag_index), and notify_webhook (meters another outbound_http). Deleting a schedule stops future runs. The record is kept for history. MCP manage_schedule uses the same actions: create, list, get, delete, and runs.

curl -s -X POST "https://tillpad.dev/api/schedules" \
  -H "Authorization: Bearer tp_…" \
  -H "Content-Type: application/json" \
  -d '{"name":"health","url":"https://example.com/health","method":"GET","intervalMinutes":15}'

Related

Questions people ask

Can a schedule call localhost?

No. The URL has to be public HTTPS. Private addresses and local hostnames are rejected.

How often can it run?

The minimum interval is 5 minutes. The cron that claims due jobs also runs every 5 minutes.