# Automation Endpoints

Endpoints for scheduled runs.

Cron entries and one-off tasks are one surface. The separate `/v1/cron*` and `/v1/task*` endpoints were replaced by `/v1/schedule` in v0.33.6, with `type=cron|task` selecting between them.

| Method | Path | Description |
|---|---|---|
| `GET` | `/v1/schedule` | **local** — list cron entries and one-off tasks as one `schedules` array, each tagged `type=cron\|task`; `?type=` narrows to one |
| `GET` | `/v1/schedule/*skill` | **local** — read a scheduler skill: `name` plus `body`, which since v1.0.2 is the **raw** SKILL.md including its frontmatter rather than the parsed-off body. `files` carries the skill's `scripts/` `references/` `assets/` contents on the same terms as `GET /v1/skill/*name`. The `description` field was removed |
| `POST` `PATCH` | `/v1/schedule` | **local** — create / update a scheduler skill from `name` / `content` and rebind its whole entry set to `type=cron\|task`; switching type drops the entries the skill held under the other one. `description` was removed in v1.0.2. A `content` that already opens with its own `---` frontmatter is written verbatim; otherwise the server composes a minimal `---\nname: <name>\n---` header |
| `DELETE` | `/v1/schedule` | **local** — delete a skill's entries (`type` narrows to one, omitted removes both); trashes the skill when nothing else binds it |
| `POST` | `/v1/schedule/run` | **local** — fire a schedule now (`202 Accepted`) |
