Skip to content
Get started

Workers

Create a worker
client.workers.create(WorkerCreateParams { input, budget, stream } body, RequestOptionsoptions?): Worker { id, created_at, error, 12 more }
POST/api/workers
Retrieve a worker
client.workers.retrieve(stringworkerID, WorkerRetrieveParams { stream } query?, RequestOptionsoptions?): Worker { id, created_at, error, 12 more }
GET/api/workers/{workerId}
Continue a worker
client.workers.continue(stringworkerID, WorkerContinueParams { input, budget, stream } body, RequestOptionsoptions?): Worker { id, created_at, error, 12 more }
POST/api/workers/{workerId}
Stream worker updates
client.workers.streamUpdates(stringworkerID, RequestOptionsoptions?): WorkerStreamUpdatesResponse | Stream<WorkerStreamUpdatesResponse>
GET/api/workers/{workerId}/stream
Retrieve a worker email address
client.workers.retrieveEmail(stringworkerID, RequestOptionsoptions?): WorkerRetrieveEmailResponse
GET/api/workers/{workerId}/email
Retrieve a worker file
client.workers.retrieveFile(stringfilePath, WorkerRetrieveFileParams { workerId } params, RequestOptionsoptions?): Response
GET/api/workers/{workerId}/files/{filePath}
ModelsExpand Collapse
CreateWorker { input, budget, stream }
input: string
minLength1
budget?: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
stream?: boolean
Worker { id, created_at, error, 12 more }
id: string
created_at: number | null
error: unknown
files: Array<File>
filename: string | null
mediaType: string
url: string
incomplete_details: unknown
messages: Array<unknown>
metadata: Record<string, unknown>
object: "worker"
output: Array<Output>
id: string
content: Array<Content>
text: string
type: "output_text"
role: "assistant"
status: "completed"
type: "message"
output_text: string
running: boolean
sources: Array<Source>
id: string
title: string | null
type: "url"
url: string
status: "running" | "completed" | "pending"
One of the following:
"running"
"completed"
"pending"
costs?: Costs | null
internalCostUsd: number
minimum0
modelCostUsd: number
minimum0
sandboxCostUsd: number
minimum0
toolCostUsd: number
minimum0
usage?: Usage { cacheReadTokens, cacheWriteTokens, costUsd, 6 more }
cacheReadTokens: number
minimum0
cacheWriteTokens: number
minimum0
costUsd: number
minimum0
inputTokens: number
minimum0
outputTokens: number
minimum0
reasoningTokens: number
minimum0
steps: number
minimum0
totalTokens: number
minimum0
credits?: number
minimum0
WorkerStreamUpdatesResponse = string
WorkerRetrieveEmailResponse = string

WorkersSchedules

Manage future and recurring worker tasks.

List worker schedules
client.workers.schedules.list(stringworkerID, RequestOptionsoptions?): ScheduleListResponse { schedules, workerId }
GET/api/workers/{workerId}/schedules
Create a worker schedule
client.workers.schedules.create(stringworkerID, ScheduleCreateParams { input, when, budget } body, RequestOptionsoptions?): WorkerSchedule
POST/api/workers/{workerId}/schedules
Cancel a worker schedule
client.workers.schedules.cancel(stringscheduleID, ScheduleCancelParams { workerId } params, RequestOptionsoptions?): ScheduleCancelResponse { cancelled }
DELETE/api/workers/{workerId}/schedules/{scheduleId}
ModelsExpand Collapse
WorkerSchedule = UnionMember0 { id, budget, input, 2 more } | UnionMember1 { id, budget, delayInSeconds, 3 more } | UnionMember2 { id, budget, cron, 3 more } | UnionMember3 { id, budget, input, 3 more }
One of the following:
UnionMember0 { id, budget, input, 2 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
input: string
nextRunAt: string
formatdate-time
type: "scheduled"
UnionMember1 { id, budget, delayInSeconds, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
delayInSeconds: number
input: string
nextRunAt: string
formatdate-time
type: "delayed"
UnionMember2 { id, budget, cron, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
cron: string
input: string
nextRunAt: string
formatdate-time
type: "cron"
UnionMember3 { id, budget, input, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
input: string
intervalSeconds: number
nextRunAt: string
formatdate-time
type: "interval"
ScheduleListResponse { schedules, workerId }
schedules: Array<WorkerSchedule>
One of the following:
UnionMember0 { id, budget, input, 2 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
input: string
nextRunAt: string
formatdate-time
type: "scheduled"
UnionMember1 { id, budget, delayInSeconds, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
delayInSeconds: number
input: string
nextRunAt: string
formatdate-time
type: "delayed"
UnionMember2 { id, budget, cron, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
cron: string
input: string
nextRunAt: string
formatdate-time
type: "cron"
UnionMember3 { id, budget, input, 3 more }
id: string
budget: "low" | "standard" | "high" | "unlimited"
One of the following:
"low"
"standard"
"high"
"unlimited"
input: string
intervalSeconds: number
nextRunAt: string
formatdate-time
type: "interval"
workerId: string
ScheduleCancelResponse { cancelled }
cancelled: boolean