---
title: "List schedules"
method: GET
path: "/v3/agents/{agent_key}/schedules"
tags: ["Agent Schedules"]
---

# List schedules

`GET /v3/agents/{agent_key}/schedules`

Lists all schedules attached to the specified agent, most recent first.

## Path parameters

- `agent_key` string, required — The unique routing key of the agent the schedule belongs to.

## Response `200`

Schedules listed (empty array if none).

- object
  - `schedules` PublicSchedule[], nullable, required
    - `_id` string, required — ULID identifying this schedule.
    - `agent_key` string, required
    - `agent_tag` string — Pinned agent version. Omit to always run the agent's current active version.
    - `created` string, date-time, required
    - `created_by_id` string, required — ID of the API key that created the schedule.
    - `display_name` string — Human-readable name of the schedule. Omitted for schedules created before display names were required.
    - `expression` string, required — 6-field cron expression. Schedules stored before the cron-only restriction may also return an @every duration or an @at RFC3339 timestamp.
    - `generation` integer, required — Monotonic counter bumped when the schedule's firing cadence changes. Used by the consumer to skip stale in-flight triggers.
    - `is_active` boolean, required — Whether the schedule is currently firing. Legacy once schedules flip to false automatically after firing.
    - `last_triggered_at` string, date-time — Timestamp of the most recent firing, if any.
    - `payload` PublicSchedulePayload, required
      - `input` unknown
      - `memory_entity_id` string — Optional memory store entity ID to attach to each run.
      - `metadata` object — Opaque string key/value pairs attached to every response generated by this schedule.
      - `variables` object — Template variables substituted into instructions. Supports secret values: {"secret": true, "value": "..."}.
    - `trigger_count` integer, required — Total firings since creation or last expression/type change.
    - `type` 'cron' | 'once' | 'interval', required — Schedule type. Only cron can be created or updated; once and interval only appear on schedules stored before that restriction.
    - `updated` string, date-time, required
    - `updated_by_id` string — ID of the API key that last updated the schedule. Omitted until the schedule is updated.

---

[API](https://skmtc.net/orq-ai/apis/orq-ai-api.md) · [All operations](https://skmtc.net/orq-ai/apis/orq-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/orq-ai/orq-ai-api/revisions/9a63ca712c8b/schema)
