The AI engine that powers the task. These are not iterations—they’re suited for different purposes.
Engine
Description
skyvern-2.0
Default. Multi-objective, flexible, handles complex multi-step tasks. 85.85% on WebVoyager benchmark. Slower and more expensive.
skyvern-1.0
Single objective, precise, faster, cheaper. Best for simple tasks like form filling or single-page extraction.
openai-cua
OpenAI’s Computer Use Agent
anthropic-cua
Anthropic Claude Sonnet with computer use
ui-tars
UI-TARS model (Seed1.5-VL) via Doubao API
Use skyvern-1.0 when you have a clear, single goal and want faster, cheaper execution. Use skyvern-2.0 when the task requires flexibility or multiple steps.
Copy
Ask AI
result = await client.run_task( prompt="Fill out the contact form", engine="skyvern-1.0")
A JSON Schema defining the structure of output data.Use this when you need consistent, typed responses.
Copy
Ask AI
result = await client.run_task( prompt="Find the top post on Hacker News", data_extraction_schema={ "type": "object", "properties": { "title": { "type": "string", "description": "The title of the top post" }, "points": { "type": "integer", "description": "Number of points" } } })
Without a schema, output format varies based on what the AI extracts. With a schema, output matches your defined structure.
Route browser traffic through a residential proxy in a specific location.Use this for geo-restricted content or to reduce bot detection.Country-level pools:
Value
Location
RESIDENTIAL
Random US residential (default)
RESIDENTIAL_GB
United Kingdom
RESIDENTIAL_DE
Germany
RESIDENTIAL_FR
France
RESIDENTIAL_ES
Spain
RESIDENTIAL_IE
Ireland
RESIDENTIAL_IN
India
RESIDENTIAL_JP
Japan
RESIDENTIAL_AU
Australia
RESIDENTIAL_CA
Canada
RESIDENTIAL_BR
Brazil
RESIDENTIAL_MX
Mexico
RESIDENTIAL_AR
Argentina
RESIDENTIAL_NZ
New Zealand
RESIDENTIAL_ZA
South Africa
RESIDENTIAL_IT
Italy
RESIDENTIAL_NL
Netherlands
RESIDENTIAL_PH
Philippines
RESIDENTIAL_KR
South Korea
RESIDENTIAL_TR
Turkey
RESIDENTIAL_ISP
ISP proxy
US-CA
California, US
US-NY
New York, US
US-TX
Texas, US
US-FL
Florida, US
US-WA
Washington, US
NONE
No proxy
Copy
Ask AI
result = await client.run_task( prompt="Get UK-specific pricing", proxy_location="RESIDENTIAL_GB")
Granular targeting (state/city level):
Copy
Ask AI
result = await client.run_task( prompt="Get California pricing", proxy_location={ "country": "US", "subdivision": "CA", "city": "San Francisco" })
The full list of available proxy locations is shown above. Use NONE to disable proxies.
For geo-restricted sites, proxy_location is required—without it, you’ll get blocked or see wrong regional content (e.g., US prices instead of UK prices).
Map specific error conditions to custom error codes.Use this to make programmatic error handling easier.
Copy
Ask AI
result = await client.run_task( prompt="Log in and extract data", error_code_mapping={ "login_failed": "The login credentials are incorrect or the account is locked", "maintenance_mode": "The website is down for maintenance" })
If Skyvern encounters a login failure matching your description, output contains {"error": "login_failed"} instead of a generic error message.