Skip to main content
PUT
Update an AI Routine

Authorizations

Authorization
string
header
required

Can be either an Organization API Key or Personal Access Token (PAT).

Include in the Authorization header as: Bearer YOUR_TOKEN

Path Parameters

routineId
string<uuid>
required

The UUID of the routine.

Query Parameters

userId
string<uuid>

Organization API key required. Target user membership ID.

Body

application/json
condition
object | null

Replaces the delivery condition: Omni authors and verifies the condition query, resets the comparison baseline, and cancels any in-progress condition evaluation so a run started under the old condition cannot deliver.

Pass null to remove the condition, making the routine deliver on every scheduled run.

Omit to leave the stored condition unchanged.

name
string

New customer-visible name of the routine. Used as the email subject for email destinations, and shown on Slack deliveries.

Required string length: 1 - 512
description
string | null

Display-only notes about the routine. Pass null to clear it.

Maximum string length: 2000
destination
object

Replaces the routine's full recipient configuration with the supplied destination.

prompt
string

New natural language prompt for the routine: what Omni runs and delivers on each scheduled run. Run a skill as part of the routine by including a skill's /identifier, which will resolve as the routine owner when the routine fires.

Minimum string length: 1
schedule
string

New six-field cron expression (minute, hour, day-of-month, month, day-of-week, year; use ? for an unspecified day field). Minimum frequency is once per hour.

Minimum string length: 1
timezone
string

New IANA timezone identifier used to evaluate the schedule.

Minimum string length: 1

Response

Routine updated successfully

branchId
string<uuid> | null
required

Branch of the shared model the prompt runs against, or null.

condition
object | null
required

The delivery condition. Null for a routine that delivers on every scheduled run.

createdAt
string
required

ISO 8601 timestamp when the routine was created.

description
string | null
required

Display-only notes about the routine, or null.

destination
object
required

Single delivery destination for the routine — email or Slack. To send results to multiple destinations, create one routine per destination.

disabled
boolean
required

Whether the owner has paused the routine.

id
string<uuid>
required

The unique identifier of the routine.

lastRun
object | null
required

Most recent completed run, or null if the routine has never completed a run.

modelId
string<uuid>
required

The shared model the prompt runs against.

name
string
required

Customer-visible name of the routine, used as the email subject.

prompt
string
required

Natural language prompt Omni runs on each scheduled run.

recipientCount
integer
required

Number of distinct deliverable recipients after expanding user groups and removing duplicates.

schedule
string
required

Six-field cron expression (minute, hour, day-of-month, month, day-of-week, year; use ? for an unspecified day field).

systemDisabled
boolean
required

Whether Omni disabled the routine because it could no longer run successfully or safely.

systemDisabledReason
string | null
required

Reason Omni disabled the routine, or null.

timezone
string
required

IANA timezone identifier used to evaluate the schedule.

topicName
string | null
required

Topic scoping query generation, or null.

updatedAt
string
required

ISO 8601 timestamp when the routine was last updated.