Job
A scheduler job, with its schedule, the target it calls, and how its calls are signed and retried.
A scheduler job: a schedule in a time zone, and the target it calls at each time on it.
{
"id": "01m3c081d2wj4g63qcr53pa1yh",
"projectId": "01k5ztq3jb9y2a1m9v2xw8e0ha",
"name": "Payment reminders",
"description": "",
"schedule": "0 8 * * MON-FRI",
"timeZone": "Africa/Dar_es_Salaam",
"state": "enabled",
"target": {
"url": "https://shop.example/tasks/reminders",
"method": "POST",
"headers": { "Content-Type": "application/json" },
"body": "{\"channel\":\"sms\"}"
},
"signing": {
"enabled": true,
"audience": "",
"effectiveAudience": "https://shop.example/tasks/reminders"
},
"retry": {
"count": 3,
"maxDurationSeconds": 0,
"minBackoffSeconds": 30,
"maxBackoffSeconds": 3600,
"maxDoublings": 5
},
"attemptDeadlineSeconds": 180,
"nextRunAt": "2026-09-30T05:00:00Z",
"lastRunAt": "2026-09-29T05:00:00Z",
"createdAt": "2026-09-01T09:12:44Z",
"updatedAt": "2026-09-01T09:12:44Z"
}Fields
idstringThe job’s ID, 26 lowercase letters and digits.
projectIdstringThe project the job belongs to.
namestring1 to 100 characters, unique in the project ignoring case.
descriptionstringEmpty when the job has none.
schedulestringA 5-field cron schedule, or a shortcut such as
@daily. See Schedule format.timeZonestringThe IANA time zone the schedule runs in, such as
Africa/Dar_es_SalaamorUTC.statestringenabled, orpausedafterpause().target.urlstringThe https address the job calls.
target.methodstringThe method it calls with, such as
POST.target.headersRecord<string, string>The headers it sends. An empty object when there are none.
target.bodystringThe body it sends. Empty when there is none.
signing.enabledbooleanWhether each call carries a token your endpoint can check with
verify().signing.audiencestringThe audience you set. Empty when the default applies.
signing.effectiveAudiencestring or undefinedThe audience its tokens carry, after the default is applied: the target URL without its query. Pass it as
audiencetoverify(). Only there while signing is on.retryobjectThe retry policy, with every field filled in:
count,maxDurationSeconds,minBackoffSeconds,maxBackoffSeconds, andmaxDoublings. See Retry jobs.attemptDeadlineSecondsnumberHow long each call waits for an answer, in seconds.
nextRunAtstring or nullWhen the job runs next, as an ISO 8601 string.
nullwhile it is paused.lastRunAtstring or nullWhen the job last ran.
nulluntil it has run.createdAtstringWhen the job was created, as an ISO 8601 string.
updatedAtstringWhen the job was last changed, as an ISO 8601 string.
Returned by
Last updated