API reference
Schedule recurring work
Create recurring instructions with a cron expression, timezone, and clear owner context.
API reference
01
Create a job
A job stores the instruction Supervisor will run and the calendar rule that starts it. Use an IANA timezone so daylight saving changes follow local expectations.
List jobs with GET /workspaces/{workspaceId}/jobs. Update a job with PUT /workspaces/{workspaceId}/jobs/{jobId}, or delete it when the routine is no longer needed.
- name
- Required name with no more than 100 characters
- cron_expression
- Required valid cron expression
- timezone
- IANA timezone name, with UTC as the default
- prompt
- Required instruction executed on the schedule
- ends_at
- Optional ISO 8601 date and time
import jsonimport osimport urllib.requesturl = "https://api.trysupervisor.com/workspaces/{workspaceId}/jobs"payload = json.dumps({"name": "Morning operations review","description": "Review open work and report anything blocked","cron_expression": "0 9 * * 1,2,3,4,5","timezone": "Europe/Madrid","prompt": "Review open work, identify blockers, and name the next owner for each item"}).encode("utf-8")request = urllib.request.Request(url, data=payload, method="POST")request.add_header("Authorization", f"Bearer {os.environ['SUPERVISOR_API_KEY']}")request.add_header("Content-Type", "application/json")with urllib.request.urlopen(request) as response:result = json.load(response)print(json.dumps(result, indent=2))
02
Observe the result
Each execution creates a durable run. Use the operations endpoint to track completion, failure, or a request that is waiting for approval.