Skip to main content
POST
Create schedule

Authorizations

Authorization
string
header
required

JWT authentication token

Body

application/json

On the BYOK model source a schedule cannot name a credential: llm_model carries no credential_ref. A model ID that both a fixed-provider key and a custom endpoint serve runs on the fixed-provider key; a model only a custom endpoint serves runs on that endpoint.

task_message
string
required

The task message to execute

Minimum string length: 1
anchor_at
string<date-time>

First eligible date and time; anchors multi-week and multi-month intervals

custom_weekdays
integer[]

For custom frequency - array of weekdays (0=Sunday, 6=Saturday)

Required range: 0 <= x <= 6
day_of_month
integer

Single monthly UTC calendar day. Shorter months use their last day. Omit for legacy anchor-day behavior.

Required range: 1 <= x <= 31
direct_agent_id
string

Route every run to this agent. Use an id from GET /api/v1/agents. A team-shared agent's UUID is accepted.

end_at
string<date-time>

Inclusive last instant for recurring runs; mutually exclusive with max_occurrences

end_mode
enum<string>
default:never
Available options:
never,
on_date,
after
file_keys
string[]

Optional file references

interval_count
integer
default:1

Every N days, weeks, or months for a recurring schedule

Required range: 1 <= x <= 100
llm_model
string

LLM model identifier. Values may be Neo model labels or provider-native model IDs discovered at runtime from an AI connection. "auto" defers model selection to the agent, which picks per-request based on task complexity, cost, and security context.

Minimum string length: 1
max_occurrences
integer

Stop after this many scheduled runs; mutually exclusive with end_at

Required range: x >= 1
metadata
object

Optional metadata for delivery configuration (e.g., Slack channel info for posting results)

name
string

Human-readable schedule name

Maximum string length: 256
project_id
string<uuid>

Optional project ID to create a project-scoped schedule (requires project membership)

reporting_mode
enum<string>

Output reporting mode - 'full' (default) returns all data, 'changes_only' generates a diff report comparing current results with the previous execution

Available options:
full,
changes_only
run_at
string

For one_time schedules - relative ("5m", "1h", "2d"), time of day, or RFC3339 date-time

scan_frequency
enum<string>

Required for recurring schedules

Available options:
daily,
weekly,
monthly,
custom
schedule_type
enum<string>
default:recurring
Available options:
recurring,
one_time
secrets
string[]

Optional personal secret names or stable saved-secret references (secret:), reauthorized at each scheduled execution.

selected_visibility_type
enum<string>
Available options:
private,
unlisted,
team
source_task_id
string

The source task/chat ID that this schedule was created from (if any)

start_time
string

Start time in HH:MM format (24h)

subagent_models
string[]

Optional subagent model list. The schedule stores it as intent, not as an approved list: every run admits it again against the account's model source at that time. A model that is no longer available pauses the schedule with worker_model_not_admitted.

Maximum array length: 50
Required string length: 1 - 200
subagent_reasoning_effort
enum<string>
default:auto

Optional ceiling for subagent reasoning effort, stored with the schedule and applied on every run.

Available options:
auto,
low,
medium,
high,
max

Response

Schedule created

schedule
object
required