diff --git a/fern/openapi/skyvern_openapi.json b/fern/openapi/skyvern_openapi.json index d718dfbe..cc37ccdb 100644 --- a/fern/openapi/skyvern_openapi.json +++ b/fern/openapi/skyvern_openapi.json @@ -28,10 +28,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." }, { "name": "x-user-agent", @@ -131,10 +131,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." }, { "name": "x-max-steps-override", @@ -256,10 +256,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -352,10 +352,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -416,10 +416,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "requestBody": { @@ -547,10 +547,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -629,10 +629,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "requestBody": { @@ -714,10 +714,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -787,10 +787,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -859,10 +859,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -923,10 +923,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "requestBody": { @@ -998,10 +998,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -1083,10 +1083,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -1164,10 +1164,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -1234,10 +1234,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "requestBody": { @@ -1298,10 +1298,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "requestBody": { @@ -1421,10 +1421,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -1504,10 +1504,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -1576,10 +1576,10 @@ "type": "null" } ], - "description": "API key for authentication", + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings.", "title": "X-Api-Key" }, - "description": "API key for authentication" + "description": "Skyvern API key for authentication. API key can be found at https://app.skyvern.com/settings." } ], "responses": { @@ -6752,7 +6752,11 @@ "prompt": { "type": "string", "title": "Prompt", - "description": "The goal or task description for Skyvern to accomplish" + "description": "\nThe goal or task description for Skyvern to accomplish\n", + "examples": [ + "Find the top 3 posts on Hacker News.", + "Go to google finance, extract the \"AAPL\" stock price for me with the date." + ] }, "url": { "anyOf": [ @@ -6764,11 +6768,15 @@ } ], "title": "Url", - "description": "The starting URL for the task. If not provided, Skyvern will attempt to determine an appropriate URL" + "description": "\nThe starting URL for the task. If not provided, Skyvern will attempt to determine an appropriate URL\n", + "examples": [ + "https://www.hackernews.com", + "https://www.google.com/finance" + ] }, "engine": { "$ref": "#/components/schemas/RunEngine", - "description": "The Skyvern engine version to use for this task. The default value is skyvern-2.0.", + "description": "\nThe engine that powers the agent task. The default value is `skyvern-2.0`, the latest Skyvern agent that performs pretty well with complex and multi-step tasks. `skyvern-1.0` is good for simple tasks like filling a form, or searching for information on Google. The `openai-cua` engine uses OpenAI's CUA model. The `anthropic-cua` uses Anthropic's Claude Sonnet 3.7 model with the computer use tool.\n", "default": "skyvern-2.0" }, "title": { @@ -6781,7 +6789,10 @@ } ], "title": "Title", - "description": "The title for the task" + "description": "The title for the task", + "examples": [ + "The title of my first skyvern task" + ] }, "proxy_location": { "anyOf": [ @@ -6792,7 +6803,7 @@ "type": "null" } ], - "description": "Geographic Proxy location to route the browser traffic through", + "description": "\nGeographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud.\n\nAvailable geotargeting options:\n- RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy.\n- RESIDENTIAL_ES: Spain\n- RESIDENTIAL_IE: Ireland\n- RESIDENTIAL_GB: United Kingdom\n- RESIDENTIAL_IN: India\n- RESIDENTIAL_JP: Japan\n- RESIDENTIAL_FR: France\n- RESIDENTIAL_DE: Germany\n- RESIDENTIAL_NZ: New Zealand\n- RESIDENTIAL_ZA: South Africa\n- RESIDENTIAL_AR: Argentina\n- RESIDENTIAL_ISP: ISP proxy\n- US-CA: California\n- US-NY: New York\n- US-TX: Texas\n- US-FL: Florida\n- US-WA: Washington\n- NONE: No proxy\n", "default": "RESIDENTIAL" }, "data_extraction_schema": { @@ -6815,7 +6826,7 @@ } ], "title": "Data Extraction Schema", - "description": "Schema defining what data should be extracted from the webpage" + "description": "\nThe schema for data to be extracted from the webpage. If you're looking for consistent data schema being returned by the agent, it's highly recommended to use https://json-schema.org/.\n" }, "error_code_mapping": { "anyOf": [ @@ -6830,7 +6841,15 @@ } ], "title": "Error Code Mapping", - "description": "Custom mapping of error codes to error messages if Skyvern encounters an error" + "description": "\nCustom mapping of error codes to error messages if Skyvern encounters an error.\n", + "examples": [ + { + "login_failed": "The login credentials are incorrect or the account is locked" + }, + { + "maintenance_mode": "The website is down for maintenance" + } + ] }, "max_steps": { "anyOf": [ @@ -6842,7 +6861,8 @@ } ], "title": "Max Steps", - "description": "Maximum number of steps the task can take before timing out" + "description": "\nMaximum number of steps the task can take. Task will fail if it exceeds this number. Cautions: you are charged per step so please set this number to a reasonable value. Contact sales@skyvern.com for custom pricing.\n", + "examples": [10, 25] }, "webhook_url": { "anyOf": [ @@ -6854,7 +6874,10 @@ } ], "title": "Webhook Url", - "description": "URL to send task status updates to after a run is finished" + "description": "\nURL to send task status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for more details.\n", + "examples": [ + "https://my-site.com/webhook" + ] }, "totp_identifier": { "anyOf": [ @@ -6866,7 +6889,12 @@ } ], "title": "Totp Identifier", - "description": "Identifier for TOTP (Time-based One-Time Password) authentication if codes are being pushed to Skyvern" + "description": "\nIdentifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details.\n", + "examples": [ + "john.doe@example.com", + "4155555555", + "user_123" + ] }, "totp_url": { "anyOf": [ @@ -6878,7 +6906,10 @@ } ], "title": "Totp Url", - "description": "URL for TOTP authentication setup if Skyvern should be polling endpoint for 2FA codes" + "description": "\nURL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details.\n", + "examples": [ + "https://my-totp-service.com/totp" + ] }, "browser_session_id": { "anyOf": [ @@ -6890,7 +6921,10 @@ } ], "title": "Browser Session Id", - "description": "ID of an existing browser session to reuse, having it continue from the current screen state" + "description": "\nRun the task or workflow in the specific Skyvern browser session. Having a browser session can persist the real-time state of the browser, so that the next run can continue from where the previous run left off.\n", + "examples": [ + "pbs_123" + ] }, "publish_workflow": { "type": "boolean", @@ -7258,7 +7292,7 @@ "llm_key": { "type": "string", "title": "Llm Key", - "default": "AZURE_OPENAI_GPT4_1" + "default": "AZURE_OPENAI" }, "prompt": { "type": "string", @@ -8937,7 +8971,7 @@ "type": "null" } ], - "description": "Location of proxy to use for this workflow run", + "description": "\nGeographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud.\n\nAvailable geotargeting options:\n- RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy.\n- RESIDENTIAL_ES: Spain\n- RESIDENTIAL_IE: Ireland\n- RESIDENTIAL_GB: United Kingdom\n- RESIDENTIAL_IN: India\n- RESIDENTIAL_JP: Japan\n- RESIDENTIAL_FR: France\n- RESIDENTIAL_DE: Germany\n- RESIDENTIAL_NZ: New Zealand\n- RESIDENTIAL_ZA: South Africa\n- RESIDENTIAL_AR: Argentina\n- RESIDENTIAL_ISP: ISP proxy\n- US-CA: California\n- US-NY: New York\n- US-TX: Texas\n- US-FL: Florida\n- US-WA: Washington\n- NONE: No proxy\n", "default": "RESIDENTIAL" }, "webhook_url": { @@ -8962,7 +8996,10 @@ } ], "title": "Totp Url", - "description": "URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/running-tasks/advanced-features#get-code-from-your-endpoint" + "description": "\nURL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details.\n", + "examples": [ + "https://my-totp-service.com/totp" + ] }, "totp_identifier": { "anyOf": [ @@ -8974,7 +9011,12 @@ } ], "title": "Totp Identifier", - "description": "Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/running-tasks/advanced-features#time-based-one-time-password-totp" + "description": "\nIdentifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details.\n", + "examples": [ + "john.doe@example.com", + "4155555555", + "user_123" + ] }, "browser_session_id": { "anyOf": [ diff --git a/skyvern/client/agent/client.py b/skyvern/client/agent/client.py index a6b6f6a8..6be67078 100644 --- a/skyvern/client/agent/client.py +++ b/skyvern/client/agent/client.py @@ -53,42 +53,73 @@ class AgentClient: Parameters ---------- prompt : str + The goal or task description for Skyvern to accomplish user_agent : typing.Optional[str] url : typing.Optional[str] + The starting URL for the task. If not provided, Skyvern will attempt to determine an appropriate URL engine : typing.Optional[RunEngine] - The Skyvern engine version to use for this task. The default value is skyvern-2.0. + + The engine that powers the agent task. The default value is `skyvern-2.0`, the latest Skyvern agent that performs pretty well with complex and multi-step tasks. `skyvern-1.0` is good for simple tasks like filling a form, or searching for information on Google. The `openai-cua` engine uses OpenAI's CUA model. The `anthropic-cua` uses Anthropic's Claude Sonnet 3.7 model with the computer use tool. title : typing.Optional[str] The title for the task proxy_location : typing.Optional[ProxyLocation] - Geographic Proxy location to route the browser traffic through + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy data_extraction_schema : typing.Optional[TaskRunRequestDataExtractionSchema] - Schema defining what data should be extracted from the webpage + + The schema for data to be extracted from the webpage. If you're looking for consistent data schema being returned by the agent, it's highly recommended to use https://json-schema.org/. error_code_mapping : typing.Optional[typing.Dict[str, typing.Optional[str]]] - Custom mapping of error codes to error messages if Skyvern encounters an error + + Custom mapping of error codes to error messages if Skyvern encounters an error. max_steps : typing.Optional[int] - Maximum number of steps the task can take before timing out + + Maximum number of steps the task can take. Task will fail if it exceeds this number. Cautions: you are charged per step so please set this number to a reasonable value. Contact sales@skyvern.com for custom pricing. webhook_url : typing.Optional[str] - URL to send task status updates to after a run is finished + + URL to send task status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for more details. totp_identifier : typing.Optional[str] - Identifier for TOTP (Time-based One-Time Password) authentication if codes are being pushed to Skyvern + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. totp_url : typing.Optional[str] - URL for TOTP authentication setup if Skyvern should be polling endpoint for 2FA codes + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. browser_session_id : typing.Optional[str] - ID of an existing browser session to reuse, having it continue from the current screen state + + Run the task or workflow in the specific Skyvern browser session. Having a browser session can persist the real-time state of the browser, so that the next run can continue from where the previous run left off. publish_workflow : typing.Optional[bool] Whether to publish this task as a reusable workflow. Only available for skyvern-2.0. @@ -112,7 +143,7 @@ class AgentClient: api_key="YOUR_API_KEY", ) client.agent.run_task( - prompt="prompt", + prompt="Find the top 3 posts on Hacker News.", ) """ _response = self._client_wrapper.httpx_client.request( @@ -213,16 +244,39 @@ class AgentClient: The title for this workflow run proxy_location : typing.Optional[ProxyLocation] - Location of proxy to use for this workflow run + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy webhook_url : typing.Optional[str] URL to send workflow status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for webhook questions. totp_url : typing.Optional[str] - URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/running-tasks/advanced-features#get-code-from-your-endpoint + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. totp_identifier : typing.Optional[str] - Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/running-tasks/advanced-features#time-based-one-time-password-totp + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. browser_session_id : typing.Optional[str] ID of a Skyvern browser session to reuse, having it continue from the current screen state @@ -519,42 +573,73 @@ class AsyncAgentClient: Parameters ---------- prompt : str + The goal or task description for Skyvern to accomplish user_agent : typing.Optional[str] url : typing.Optional[str] + The starting URL for the task. If not provided, Skyvern will attempt to determine an appropriate URL engine : typing.Optional[RunEngine] - The Skyvern engine version to use for this task. The default value is skyvern-2.0. + + The engine that powers the agent task. The default value is `skyvern-2.0`, the latest Skyvern agent that performs pretty well with complex and multi-step tasks. `skyvern-1.0` is good for simple tasks like filling a form, or searching for information on Google. The `openai-cua` engine uses OpenAI's CUA model. The `anthropic-cua` uses Anthropic's Claude Sonnet 3.7 model with the computer use tool. title : typing.Optional[str] The title for the task proxy_location : typing.Optional[ProxyLocation] - Geographic Proxy location to route the browser traffic through + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy data_extraction_schema : typing.Optional[TaskRunRequestDataExtractionSchema] - Schema defining what data should be extracted from the webpage + + The schema for data to be extracted from the webpage. If you're looking for consistent data schema being returned by the agent, it's highly recommended to use https://json-schema.org/. error_code_mapping : typing.Optional[typing.Dict[str, typing.Optional[str]]] - Custom mapping of error codes to error messages if Skyvern encounters an error + + Custom mapping of error codes to error messages if Skyvern encounters an error. max_steps : typing.Optional[int] - Maximum number of steps the task can take before timing out + + Maximum number of steps the task can take. Task will fail if it exceeds this number. Cautions: you are charged per step so please set this number to a reasonable value. Contact sales@skyvern.com for custom pricing. webhook_url : typing.Optional[str] - URL to send task status updates to after a run is finished + + URL to send task status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for more details. totp_identifier : typing.Optional[str] - Identifier for TOTP (Time-based One-Time Password) authentication if codes are being pushed to Skyvern + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. totp_url : typing.Optional[str] - URL for TOTP authentication setup if Skyvern should be polling endpoint for 2FA codes + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. browser_session_id : typing.Optional[str] - ID of an existing browser session to reuse, having it continue from the current screen state + + Run the task or workflow in the specific Skyvern browser session. Having a browser session can persist the real-time state of the browser, so that the next run can continue from where the previous run left off. publish_workflow : typing.Optional[bool] Whether to publish this task as a reusable workflow. Only available for skyvern-2.0. @@ -583,7 +668,7 @@ class AsyncAgentClient: async def main() -> None: await client.agent.run_task( - prompt="prompt", + prompt="Find the top 3 posts on Hacker News.", ) @@ -687,16 +772,39 @@ class AsyncAgentClient: The title for this workflow run proxy_location : typing.Optional[ProxyLocation] - Location of proxy to use for this workflow run + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy webhook_url : typing.Optional[str] URL to send workflow status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for webhook questions. totp_url : typing.Optional[str] - URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/running-tasks/advanced-features#get-code-from-your-endpoint + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. totp_identifier : typing.Optional[str] - Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/running-tasks/advanced-features#time-based-one-time-password-totp + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. browser_session_id : typing.Optional[str] ID of a Skyvern browser session to reuse, having it continue from the current screen state diff --git a/skyvern/client/types/task_run_request.py b/skyvern/client/types/task_run_request.py index 74b89c80..aeebcc44 100644 --- a/skyvern/client/types/task_run_request.py +++ b/skyvern/client/types/task_run_request.py @@ -12,17 +12,20 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2 class TaskRunRequest(UniversalBaseModel): prompt: str = pydantic.Field() """ + The goal or task description for Skyvern to accomplish """ url: typing.Optional[str] = pydantic.Field(default=None) """ + The starting URL for the task. If not provided, Skyvern will attempt to determine an appropriate URL """ engine: typing.Optional[RunEngine] = pydantic.Field(default=None) """ - The Skyvern engine version to use for this task. The default value is skyvern-2.0. + + The engine that powers the agent task. The default value is `skyvern-2.0`, the latest Skyvern agent that performs pretty well with complex and multi-step tasks. `skyvern-1.0` is good for simple tasks like filling a form, or searching for information on Google. The `openai-cua` engine uses OpenAI's CUA model. The `anthropic-cua` uses Anthropic's Claude Sonnet 3.7 model with the computer use tool. """ title: typing.Optional[str] = pydantic.Field(default=None) @@ -32,42 +35,70 @@ class TaskRunRequest(UniversalBaseModel): proxy_location: typing.Optional[ProxyLocation] = pydantic.Field(default=None) """ - Geographic Proxy location to route the browser traffic through + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy """ data_extraction_schema: typing.Optional[TaskRunRequestDataExtractionSchema] = pydantic.Field(default=None) """ - Schema defining what data should be extracted from the webpage + + The schema for data to be extracted from the webpage. If you're looking for consistent data schema being returned by the agent, it's highly recommended to use https://json-schema.org/. """ error_code_mapping: typing.Optional[typing.Dict[str, typing.Optional[str]]] = pydantic.Field(default=None) """ - Custom mapping of error codes to error messages if Skyvern encounters an error + + Custom mapping of error codes to error messages if Skyvern encounters an error. """ max_steps: typing.Optional[int] = pydantic.Field(default=None) """ - Maximum number of steps the task can take before timing out + + Maximum number of steps the task can take. Task will fail if it exceeds this number. Cautions: you are charged per step so please set this number to a reasonable value. Contact sales@skyvern.com for custom pricing. """ webhook_url: typing.Optional[str] = pydantic.Field(default=None) """ - URL to send task status updates to after a run is finished + + URL to send task status updates to after a run is finished. Refer to https://docs.skyvern.com/running-tasks/webhooks-faq for more details. """ totp_identifier: typing.Optional[str] = pydantic.Field(default=None) """ - Identifier for TOTP (Time-based One-Time Password) authentication if codes are being pushed to Skyvern + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. """ totp_url: typing.Optional[str] = pydantic.Field(default=None) """ - URL for TOTP authentication setup if Skyvern should be polling endpoint for 2FA codes + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. """ browser_session_id: typing.Optional[str] = pydantic.Field(default=None) """ - ID of an existing browser session to reuse, having it continue from the current screen state + + Run the task or workflow in the specific Skyvern browser session. Having a browser session can persist the real-time state of the browser, so that the next run can continue from where the previous run left off. """ publish_workflow: typing.Optional[bool] = pydantic.Field(default=None) diff --git a/skyvern/client/types/workflow_run_request.py b/skyvern/client/types/workflow_run_request.py index 7f9833ac..a9907407 100644 --- a/skyvern/client/types/workflow_run_request.py +++ b/skyvern/client/types/workflow_run_request.py @@ -25,7 +25,28 @@ class WorkflowRunRequest(UniversalBaseModel): proxy_location: typing.Optional[ProxyLocation] = pydantic.Field(default=None) """ - Location of proxy to use for this workflow run + + Geographic Proxy location to route the browser traffic through. This is only available in Skyvern Cloud. + + Available geotargeting options: + - RESIDENTIAL: the default value. Skyvern Cloud uses a random US residential proxy. + - RESIDENTIAL_ES: Spain + - RESIDENTIAL_IE: Ireland + - RESIDENTIAL_GB: United Kingdom + - RESIDENTIAL_IN: India + - RESIDENTIAL_JP: Japan + - RESIDENTIAL_FR: France + - RESIDENTIAL_DE: Germany + - RESIDENTIAL_NZ: New Zealand + - RESIDENTIAL_ZA: South Africa + - RESIDENTIAL_AR: Argentina + - RESIDENTIAL_ISP: ISP proxy + - US-CA: California + - US-NY: New York + - US-TX: Texas + - US-FL: Florida + - US-WA: Washington + - NONE: No proxy """ webhook_url: typing.Optional[str] = pydantic.Field(default=None) @@ -35,12 +56,14 @@ class WorkflowRunRequest(UniversalBaseModel): totp_url: typing.Optional[str] = pydantic.Field(default=None) """ - URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/running-tasks/advanced-features#get-code-from-your-endpoint + + URL that serves TOTP/2FA/MFA codes for Skyvern to use during the workflow run. Refer to https://docs.skyvern.com/credentials/totp#option-2-get-code-from-your-endpoint for more details. """ totp_identifier: typing.Optional[str] = pydantic.Field(default=None) """ - Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/running-tasks/advanced-features#time-based-one-time-password-totp + + Identifier for the TOTP/2FA/MFA code when the code is pushed to Skyvern. Refer to https://docs.skyvern.com/credentials/totp#option-3-push-code-to-skyvern for more details. """ browser_session_id: typing.Optional[str] = pydantic.Field(default=None)