Overriding the max_steps paramter in the task
If you want the task to execute for a specific number of steps, you can use thex-max-steps-override header in the request. This will override the default max_steps parameter set in the task.
Time-based One-time Password (TOTP)
Skyvern supports one-time password (see https://www.twilio.com/docs/glossary/totp for more information), also known as 2FA/MFA, in two ways: 1) Skyvern gets the code from your endpoint 2) You push the the code to Skyvern.Get Code From Your Endpoint
You can passtotp_verification_url when creating a task. Inside this endpoint hosted by you, you have to conform to the following schema:
Set Up Your TOTP Endpoint
For websites that requires a verification code to complete a task, you have to set up a TOTP endpoint for Skyvern to fetch the verification code. Here’s the TOTP endpoint contract you should use: Request (POST):| Parameter | Type | Required? | Sample Value | Description |
|---|---|---|---|---|
| task_id | String | yes | tsk_123 | The task ID that needs the verification to be done |
| Parameter | Type | Required? | Sample Value | Description |
|---|---|---|---|---|
| task_id | String | yes | tsk_123 | The task ID that needs the verification to be done |
| verification_code | String | no | 123456 | The verification code |
Validate The Sender of The Request
Same as the webhook API, your server needs to make sure it’s Skyvern that’s making the request.- a python example for how to generate and validate the signature:
Push Code To Skyvern
You can passtotp_identifier when creating a task. When the TOTP code arrives at your inbox or as a text message, all you need to do is to send the email/message (Gmail + Zapier integration can be a good solution to set up email forwarding) to Skyvern’s TOTP receiver endpoint (see below)
Skyvern’s TOTP Endpoint
This endpoint takes your TOTP/2FA/MFA code, stores it in Skyvern’s database and uses it while running tasks/workflows. Request type:POST
Endpoint url: https://api.skyvern.com/api/v1/totp
Authentication: same as other Skyvern APIs, you need to pass your api key with the x-api-key header.
Request data:
| field | required | type | example | description |
|---|---|---|---|---|
| totp_identifier | yes | string | An email address or phone number which received the code | this is a required field as this is the best way for skyvern to know what the identifier |
| content | yes | string | the email content of a 2FA email; the text message for the verification code | |
| task_id | no | string | tsk_22222222 | used to help skyvern locate the totp code more accurately for your task |
| workflow_id | no | string | wpid_12345 | used to help better locate the totp code accurately for your workflow |
| source | no | string | email, phone, app, etc | |
| expired_at | no | timestamp | 2024-09-18T05:15:02 | The expiration time of the code. If provided, skyvern uses it to decide if the code is valid |
Forwarding Your Email To Skyvern (Gmail + Zapier)
This setup requires a Zapier pro plan account. Step 1. Create a Zapier Zap Go to https://zapier.com/app/home and create new Zaps

Email by Zapier

New Inbound Email in the Trigger event selection. Click Continue to complete the “Setup”


Webhooks by Zapier


Action event selection. Then click “Continue”.

- URL:
https://api.skyvern.com/api/v1/totp - Payload Type: json
- Data:
- totp_identifier: choose
Raw To Emailafter clicking the “+” sign - content: choose
Body Plainafter clicking the “+” sign - source: email
- totp_identifier: choose
- Headers:
- x-api-key:
Your Skyvern API Key
- x-api-key:


A request was sent to Webhooks by Zapier message


