Authenticator App (TOTP)
The preferred method. Skyvern generates valid 6-digit codes on demand during login flows with no delay and no manual steps.How it works
- The Login block enters the username and password
- The site prompts for a 2FA code
- Skyvern generates a fresh TOTP code from the stored secret key
- The code is entered automatically and login completes
Setting it up
When creating a password credential, include the TOTP secret key:Finding your TOTP secret key
Finding your TOTP secret key
The secret key is the base32-encoded string behind the QR code you’d normally scan in an authenticator app. You can find it in a few places:
- Bitwarden: Edit the login → TOTP field → copy the key
- 1Password: Edit the login → One-Time Password → copy the secret
- LastPass: Edit the login → Advanced Settings → copy the TOTP secret
- Site settings: Many sites show a “Can’t scan?” link during 2FA setup that reveals the text key
secret= parameter from the otpauth://totp/...?secret=BASE32KEY URI.Email and Text Message codes
When a site sends 2FA codes via email or SMS, someone (or something) needs to deliver the code to Skyvern before the login can complete.How it works
- The Login block enters the username and password
- The site sends a 2FA code to the configured email or phone number
- You push the code to Skyvern via the API
- Skyvern enters the code and completes the login
Setting it up
When creating a password credential, specifytotp_type as "email" or "text" and include the totp_identifier:
Pushing codes to Skyvern
Once a workflow is running and waiting for a 2FA code, you need to deliver it.Via the API
For production, automate code delivery. Set up a forwarding rule that sends 2FA emails or texts to a script, and the script pushes the code to Skyvern:source field is a free-text label for your own tracking (e.g., "email_forwarder", "twilio_webhook").
Parsing the code automatically
Skyvern automatically extracts verification codes from email/SMS content. You can pass:- Just the code:
"847291" - The full email/SMS body:
"Your verification code is 847291. This code expires in 10 minutes."
Linking codes to specific runs
To link a code to a specific run, passworkflow_run_id, workflow_id, or task_id:
Viewing past codes
Retrieve recent TOTP codes for your organization:Query parameters
| Parameter | Type | Description |
|---|---|---|
totp_identifier | string | Filter by email or phone number |
workflow_run_id | string | Filter by workflow run ID |
otp_type | "totp" or "magic_link" | Filter by OTP type |
limit | integer | Maximum number of codes (1-200, default 50) |
OTP Types
Skyvern supports two OTP types:| Type | Description |
|---|---|
"totp" | Time-based One-Time Password (numeric code) |
"magic_link" | Magic link URLs sent via email |
content field.
Password Credentials
Create credentials with 2FA methods attached
Credentials Overview
Security model, quick start, and all credential types