
To add a block in your agent, click the + button, click on Add block, then select the block type from the menu.
Quick reference
Common fields
These fields appear on most blocks:
Browser-based blocks (Browser Task, Browser Action, Extraction, Login, File Download) share these additional fields:
Set TOTP Verification URL on the block that may encounter 2FA. Top-level workflow run
totp_url values do not automatically populate empty block fields.Browser Automation
Browser Task
The primary block for browser automation. Accepts a natural-language prompt and autonomously navigates the browser to accomplish the goal. The block uses Skyvern 1.0 by default. Existing agents that already contain V2 browser blocks remain editable and may show a reduced field set. Skyvern 1.0:
Existing V2 blocks:
Additional fields in Advanced Settings (Skyvern 1.0 only):
Plus common browser fields.

Browser Action
Execute a single browser action. Best for precise, one-step operations like clicking a specific button or entering text in a field.
Additional fields in Advanced Settings:
Plus common browser fields.
Extraction
Extract structured data from the current page using AI.
Plus common browser fields.

Login
Authenticate to a website using stored credentials. Pre-filled with a default login goal that handles common login flows including 2FA.
Additional fields in Advanced Settings:
Plus common browser fields.

Go to URL
Navigate the browser directly to a specific URL without AI interaction.
Print Page
Print the current browser page to a PDF file. The PDF is saved as a downloadable artifact.
Additional fields in Advanced Settings:

Data and Extraction
Text Prompt
Send text to the LLM for processing without browser interaction. Useful for summarizing, transforming, or analyzing data between browser steps.
File Parser
Parse PDFs, CSVs, Excel files, and images to extract structured data.
Control Flow
Loop
Repeat a sequence of blocks for each item in a list. Child blocks are placed inside the loop on the canvas.
Inside loop blocks, use these reserved variables:
{{ current_value }}: the current item{{ current_index }}: the iteration number (0-based)

While Loop
Repeat a sequence of blocks while a condition remains true. Child blocks are placed inside the loop on the canvas.
Inside while-loop blocks, use these reserved variables:
{{ current_index }}: the iteration number (0-based)
has_next_page boolean inside the loop, click Next, and let the next condition check decide whether to continue.
Conditional
Branch the agent based on conditions. The UI shows branches as tabs (A, B, C, etc.). Each branch has an expression that determines when it executes. Expressions can be Jinja2 templates or natural language prompts.
Example Jinja2 expression:

AI Validation
Assert conditions using AI and halt the agent on failure. Useful for checking that a previous block produced expected results before continuing.
Additional fields in Advanced Settings:

Code
Execute custom Python code. Input parameters are available as global variables. Top-level variables in your code become the block’s output.
Wait
Pause agent execution for a specified duration.
Files
File Download
Navigate the browser to download a file.
Additional fields in Advanced Settings:
Plus common browser fields.

Cloud Storage Upload
Upload downloaded files to S3 or Azure Blob Storage.S3 fields
S3 fields
Azure fields
Azure fields

Communication
Send Email
Send an email notification, optionally with file attachments from previous blocks.
HTTP Request
Make an API call to an external service. Click Import cURL in the block header to populate fields from a cURL command.
Additional fields in Advanced Settings:

Human Interaction
Pause the agent and request human input. Optionally sends an email notification to reviewers.
Email notification fields:
Additional fields in Advanced Settings:


