Schedule an HTTP request
schedule_requestSchedule an HTTP request to a public URL: once at an exact time (run_at) or repeatedly (cron). Pass exactly one of run_at or cron. RunLater sends it, retries failures and logs every run. Returns the schedule with its id and next run time.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http(s) URL to call. Private and local addresses are refused. | |
| body | No | Request body as text (JSON goes here as a string). Not sent on GET or DELETE. | |
| cron | No | Recurring: 5-field cron (minute hour day-of-month month day-of-week), for example "0 9 * * 1" for Mondays at 9:00. At most once a minute. | |
| name | No | Short label shown in the dashboard. Default: method and host. | |
| method | No | HTTP method. Default POST. | |
| run_at | No | One-time: ISO date and time, for example 2026-12-01T09:00:00 (read in timezone) or 2026-12-01T15:00:00Z. At most two years ahead. | |
| headers | No | Request headers, for example [{"name":"Authorization","value":"Bearer abc"}]. Values are never shown back. | |
| retries | No | Retries after a failed attempt, with exponential backoff. Default 3. | |
| timezone | No | IANA time zone for run_at without an offset and for cron, for example America/New_York. Default UTC. | |
| timeout_seconds | No | Seconds to wait for a response. Default 30. |