Skip to main content
POST
Create automation

Authorizations

Authorization
string
header
required

Organization API key (modem_…).

Headers

Idempotency-Key
string

Replays a successful mutating request for 24 hours. Reuse with a different payload returns 409.

Maximum string length: 255

Body

application/json
name
string
required
Minimum string length: 1
prompt
string
required
Required string length: 1 - 130000
schedule
object
required
timezone
string
required
Minimum string length: 1
allowedCapabilities
string[] | null

Explicit capability keys when capabilityMode is custom. Null means all.

capabilityMode
enum<string>

Whether this task uses all visible capabilities or a custom subset.

Available options:
all,
custom
enabled
boolean
modelLevel
enum<string>

Persisted model level for automation execution.

Available options:
high,
low,
med
templateSlug
string
Pattern: ^[a-z0-9-]+$

Response

OK

allowedCapabilities
string[] | null
required

Explicit capability keys when capabilityMode is custom. Null means all.

capabilityMode
enum<string>
required

Whether this task uses all visible capabilities or a custom subset.

Available options:
all,
custom
enabled
boolean
required

Whether the task is actively being scheduled.

id
string<uuid>
required
lastErrorMessage
string | null
required

Most recent error message if status is error.

modelLevel
enum<string>
required

Persisted model level for automation execution.

Available options:
high,
low,
med
name
string
required

Human-readable name for the automation.

Minimum string length: 1
outputChannels
object[]
required
Minimum array length: 1
prompt
string
required

AI prompt or instructions executed when the task runs.

Minimum string length: 1
schedule
object
required
status
enum<string>
required

Current health status of the automation.

Available options:
completed,
error,
healthy,
paused
templateSlug
string | null
required
Pattern: ^[a-z0-9-]+$
timezone
string
required

IANA timezone identifier for schedule evaluation.

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

Timestamp when the task was created.

lastAttemptAt
string<date-time> | null

Timestamp when the most recent execution attempt started, including manual runs.

lastRunAt
string<date-time> | null

Timestamp of the most recent scheduler-managed execution, used to calculate the next run.

nextRunAt
string<date-time> | null

Timestamp of the next scheduled execution.

updatedAt
string<date-time>

Timestamp when the task was last updated.