Legacy Task APIs
The core building block in Skyvern
DEPRECATION ALERT: the APIs in this page are being deprecated. Last supported date: Jan 1, 2026. Please use the Run Task API and migrated to the new API.
Tasks are the building block of Skyvern. They represent a single instruction (goal) to the browser to go do something using language models. Ex. “Search for Skyvern on googgle.com and summarize the information about Skyvern.”
Request - Initiate a task
Request type: POST
Production: https://api.skyvern.com/v1/run/tasks
Header
Body
Example Request (Apply for a job)
Response
Each task run has an associated run_id
— a unique identifier you can use to look up information about any task run.
Request - Task Details (GET)
You can use this API to poll for task status updates if you don’t want to wait for webhook callbacks.
Request type: GET
Production: https://api.skyvern.com/v1/run/tasks/{run_id}
Request - List Task Run Details (GET)
Request type: GET
Production:api.skyvern.com/api/v1/tasks/
Response - Task Details (GET)
Production: https://api.skyvern.com/v1/runs/{run_id}
The response follows the same schema as the task creation response, containing:
Request - List Steps (GET)
Each task run is made up of “steps” which are the individual actions Skyvern takes to complete the task. You can use this endpoint to get all the steps of the run.
Request type: GET
Production: https://api.skyvern.com/api/v1/tasks/{task_id}/steps
Response - List Steps (GET)
The response is a list of Step Objects.
Step Object
Request - Cancel A Task (POST)
A task that’s in any of these states can be canceled: [“created”, “queued”, “running”]. This stops the execution of the task.
Request type: POST
Production: https://api.skyvern.com/v1/runs/{run_id}/cancel