Schedules
Schedules trigger an agent conversation automatically on a cron schedule.
List schedules
GET /api/schedules
Authorization: Bearer nxr_...Create schedule
POST /api/schedules
Authorization: Bearer nxr_...
Content-Type: application/json
{
"name": "Daily standup summary",
"cron_expr": "0 9 * * 1-5",
"agent_id": "uuid",
"prompt": "Summarize yesterday's activity and list today's priorities"
}| Field | Type | Description |
|---|---|---|
name | string | Display name |
description | string? | Optional description |
cron_expr | string? | Cron expression (UTC). Provide this or interval_minutes |
interval_minutes | int? | Run every N minutes (alternative to cron_expr) |
agent_id | uuid? | Agent to run |
prompt | string | Message sent to the agent |
Exactly one of cron_expr or interval_minutes is required.
Get schedule
GET /api/schedules/{schedule_id}
Authorization: Bearer nxr_...Update schedule
PATCH /api/schedules/{schedule_id}
Authorization: Bearer nxr_...
Content-Type: application/json
{ "cron_expr": "0 8 * * 1-5", "prompt": "Updated prompt" }Delete schedule
DELETE /api/schedules/{schedule_id}
Authorization: Bearer nxr_...Activate / deactivate
POST /api/schedules/{schedule_id}/activate
POST /api/schedules/{schedule_id}/deactivate
Authorization: Bearer nxr_...Trigger now
Run a schedule immediately outside its normal cadence:
POST /api/schedules/{schedule_id}/trigger
Authorization: Bearer nxr_...Run history
List runs
GET /api/schedules/{schedule_id}/runs
Authorization: Bearer nxr_...Get run
GET /api/schedules/runs/{run_id}
Authorization: Bearer nxr_...Run schema:
{
"id": "uuid",
"schedule_id": "uuid",
"org_id": "uuid",
"chat_id": "uuid",
"status": "running | completed | failed",
"triggered_by": "cron | manual | agent",
"output": "...",
"error": null,
"started_at": "2026-01-01T09:00:00Z",
"completed_at": "2026-01-01T09:00:42Z",
"created_at": "2026-01-01T09:00:00Z"
}