> ## Documentation Index
> Fetch the complete documentation index at: https://skyvern.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Block Types and Configuration

> Reference guide for every agent block type in the Skyvern Cloud UI, including Browser Task, Extraction, Login, Loop, While Loop, Conditional, Code, HTTP Request, and more.

Agents are built from blocks. Each block performs one specific operation: navigating a page, extracting data, making an API call, or branching logic. This page covers every block type available in the Cloud UI [agent editor](/docs/cloud/building-agents/build-an-agent), grouped by category.

If you're writing automations in code instead, the equivalent operations are Page and Agent methods. See the [Actions Reference](/docs/developers/browser-automations/actions-reference) for the code-first counterparts to these blocks.

<Frame caption="To add a block in your agent, click the **+** button, click on Add block, then select the block type from the menu.">
  <img src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/add-block-ui.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=f3ccc2e421b0234da14944086b63193c" alt="how to add a block to an agent in Skyvern" width="3256" height="2136" data-path="images/cloud/add-block-ui.png" />
</Frame>

## Quick reference

| Category | Blocks |
| - | - |
| [Browser Automation](#browser-automation) | Browser Task, Browser Action, Extraction, Login, Go to URL, Print Page |
| [Data and Extraction](#data-and-extraction) | Web Search, Text Prompt, File Parser |
| [Control Flow](#control-flow) | Loop, While Loop, Conditional, AI Validation, Code, Wait |
| [Files](#files) | File Download, Cloud Storage Upload |
| [Communication](#communication) | Send Email, HTTP Request, Human Interaction |

***

## Common fields

These fields appear on most blocks:

| Field | Description |
| - | - |
| **Label** | Display name on the canvas. Also determines how downstream blocks reference this block's output (`{{ label_output }}`). |
| **Continue on Failure** | Allow the agent to continue if this block fails |
| **Next Loop on Failure** | Only inside loops. Skip to the next iteration on failure. |
| **Model** | Override the default LLM model for this block (Advanced Settings on most blocks) |

Browser-based blocks (Browser Task, Browser Action, Extraction, Login, File Download) share these additional fields:

| Field | Description |
| - | - |
| **URL** | Starting URL. Leave blank to continue from the previous block's page. |
| **Engine** | AI engine. Skyvern 1.0 is the default for new browser blocks. |
| **Max Steps Override** | Cap the number of AI reasoning steps |
| **Disable Cache** | Skip cached script execution |
| **TOTP Identifier** | Link TOTP credentials for 2FA handling |
| **TOTP Verification URL** | Endpoint this block polls when it needs a 2FA code |
| **Error Code Mapping** | Map error conditions to custom error codes (JSON) |

<Note>
  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.
</Note>

***

## 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:**

| Field | Type | Description |
| - | - | - |
| **URL** | text | Starting URL (optional) |
| **Prompt** | text | Natural language instructions for the AI |

**Existing V2 blocks:**

| Field | Type | Description |
| - | - | - |
| **URL** | text | Starting URL (optional) |
| **Prompt** | text | Natural language instructions for the AI |
| **Max Steps** | number | Maximum AI steps |
| **Disable Cache** | boolean | Skip cached script execution |

Additional fields in **Advanced Settings** (Skyvern 1.0 only):

| Field | Type | Description |
| - | - | - |
| **Complete if...** | text | Condition that signals the block is done |
| **Include Action History in Verification** | boolean | Include prior actions when verifying completion |
| **Complete on Download** | switch | Mark the block as complete when a file download occurs |
| **File Name** | text | Custom filename for downloaded files |

*Plus [common browser fields](#common-fields).*

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/br_task_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=2f6b87408a066df8ab9b3d554313ff66" alt="Browser Task block configuration with URL and prompt fields" data-path="images/cloud/br_task_block.png" />
</Frame>

<Tip>
  Browser Task is the recommended block for most browser automation. Use it for anything from form filling to multi-page navigation. Include your success criteria directly in the prompt so the AI knows when it's done.
</Tip>

### Browser Action

Execute a single browser action. Best for precise, one-step operations like clicking a specific button or entering text in a field.

| Field | Type | Description |
| - | - | - |
| **URL** | text | Starting URL (optional) |
| **Action Instruction** | text | Specify the single action to perform |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Complete on Download** | switch | Mark the block as complete when a file download occurs |
| **File Name** | text | Custom filename for downloaded files |

*Plus [common browser fields](#common-fields).*

### Extraction

Extract structured data from the current page using AI.

| Field | Type | Description |
| - | - | - |
| **Data Extraction Goal** | text | What data to extract |
| **Data Schema** | JSON | [JSON Schema](https://json-schema.org/) defining the output format. Enable the checkbox to reveal the editor. Click **Generate with AI** to auto-suggest a schema from your extraction goal. |

*Plus [common browser fields](#common-fields).*

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/extract_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=fedaa831dcdbe0252d5ebbcdf172775e" alt="Extraction block configuration with Data Extraction Goal and Data Schema fields" data-path="images/cloud/extract_block.png" />
</Frame>

### Login

Authenticate to a website using stored credentials. Pre-filled with a default login goal that handles common login flows including 2FA.

| Field | Type | Description |
| - | - | - |
| **URL** | text | Login page URL |
| **Login Goal** | text | Login instructions (pre-filled with a comprehensive default) |
| **Credential** | selector | Select stored credentials for authentication |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Complete if...** | text | How to know login succeeded |

*Plus [common browser fields](#common-fields).*

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/login_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=6737e0cee2b4d26a42c19613613f5596" alt="Login block configuration with URL, Login Goal, and Credential fields" data-path="images/cloud/login_block.png" />
</Frame>

### Go to URL

Navigate the browser directly to a specific URL without AI interaction.

| Field | Type | Description |
| - | - | - |
| **URL** | text | **(Required)** The URL to navigate to. Supports [parameter references](/docs/cloud/building-agents/add-parameters#referencing-parameters-in-blocks). |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/url_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=baeadc2181b61439531ae3b3c384850e" alt="Go to URL block configuration with URL field" data-path="images/cloud/url_block.png" />
</Frame>

### Print Page

Print the current browser page to a PDF file. The PDF is saved as a downloadable artifact.

| Field | Type | Description |
| - | - | - |
| **Page Format** | select | Paper size: A4, Letter, Legal, or Tabloid |
| **Print Background** | boolean | Include CSS background colors and images in the PDF |
| **Headers & Footers** | boolean | Add date, title, URL, and page numbers to the PDF |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Custom Filename** | text | Custom name for the generated PDF |
| **Landscape** | boolean | Use landscape orientation |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/print_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=45d5d8ce26a201d35e5192cbc3e37098" alt="Print Page block configuration with page format, print background, and headers & footers options" data-path="images/cloud/print_block.png" />
</Frame>

***

## Data and Extraction

### Web Search

Search Google or Exa over an API. Add `site:example.com` to the query to search within a site. This block does not open a browser or read linked pages.

Google supports site restrictions. With a single `site:domain` or `site:domain/path` filter, the block removes results outside the filter. It repeats the search up to twice when Google returns only results outside that filter. It does not filter queries with quotation marks, parentheses, `|`, `OR`, or multiple `site:` filters. Exa supports one positive `site:domain` filter. Unsupported Exa expressions fail instead of expanding the search.

| Field | Type | Description |
| - | - | - |
| **Search Query** | text | Required query. Supports input and output parameter references. |
| **Search Provider** | selector | Automatic (default), Google, or Exa. Google uses SerpAPI. |
| **Maximum Results** | integer | Between 1 and 100; default 10. The provider may return fewer results. |
| **Prompt** | text | Optional instructions to summarize, rank, extract, or transform results. |
| **Model** | selector | Model for Prompt, Data Schema, and error detection. |
| **Data Schema** | JSON | Optional output shape. Works with or without a Prompt. |
| **Error Messages** | mapping | Error codes and descriptions that the model checks against the outcome. |

Automatic starts with Google. It tries Exa only if Google fails before returning results and the server has an Exa key. Empty results do not trigger fallback. Selecting Google or Exa uses only that provider.

A Prompt receives the normalized results, including an empty list. Without a Data Schema, its answer is text. A Data Schema alone asks the model to return the results in that shape. The answer is stored in `prompt_output`. Invalid schemas are rejected when you save. Schemas with parameter references are checked after those references are filled in. A response that fails validation retries once before the block fails.

Leave Prompt and Data Schema blank to skip result processing. Error Messages still make an LLM call when configured on the block or workflow. Block entries override workflow entries with the same code. The model checks results, processed answers, and block failures against those descriptions, including failures before the search starts.

A successful search completes when no error code matches, including when it returns zero results. A matching code terminates a successful search. If the search or Prompt fails or times out, a matching code attaches to that failure without changing its status or system failure reason. If error detection fails, the block keeps the search outcome without a code.

The old `no_results_error_code` and `no_match_error_code` fields are deprecated. Saved values are read as Error Messages. They describe empty results and results that do not satisfy the Prompt. An explicit Error Messages entry with the same code takes precedence.

The output always includes:

* `query`: the rendered query, or the configured query if rendering fails.
* `provider`: `google` or `exa`.
* `results`: objects with `title`, `link`, `snippet`, `display_link`, and one-based `position`.
* `total_count`: the number of returned results.
* `prompt_output`: null, text, or the JSON value defined by Data Schema.
* `raw_response.pages`: provider responses, with credentials removed.

With Exa, a result's `snippet` is empty when Exa has no cached copy of the page or when the request for page highlights fails.

For example, use `{{ web_search_1_output.results }}` in a downstream block. A later page failure keeps validated partial results and completes the search. A Prompt failure keeps those results but fails the block.

Failed and terminated outputs also include `status`, `failure_reason`, and `errors`. They carry a `failure_category`. For execution denials, such as insufficient credits, its value is `null`. Detected codes appear in the run's `errors` list with their explanations. Enable **Continue on Failure** to let the next block inspect the output. The Search failure category applies to the run only when the block ends it.

A terminated Search block shows its failure reason in the timeline instead of the result count.

```yaml theme={null}
block_type: web_search
label: web_search_1
query: "site:example.com annual report"
provider: auto
num_results: 10
prompt: null
json_schema: null
error_code_mapping: null
```

Skyvern Cloud supplies provider credentials. Self-hosted installations configure `SERPAPI_API_KEY` and `EXA_API_KEY` in the server environment. Google pagination can use multiple API searches for a single block run.

***

### Text Prompt

Send text to the LLM for processing without browser interaction. Useful for summarizing, transforming, or analyzing data between browser steps.

| Field | Type | Description |
| - | - | - |
| **Prompt** | text | The text prompt to send to the LLM |
| **Model** | selector | Which LLM model to use |
| **Data Schema** | JSON | Expected output structure. Enable the checkbox to reveal the editor. Click **Generate with AI** to auto-suggest a schema. |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/text_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=4238e0ea274e4475058de3762f8e9f26" alt="Text Prompt block configuration with Prompt, Model, and Data Schema fields" data-path="images/cloud/text_block.png" />
</Frame>

### File Parser

Parse PDFs, CSVs, Excel files, images, DOCX files, and ZIP archives.

ZIP inputs are unzipped, and the block outputs the extracted file list as `file_name`, `file_path`, and `file_size`. Data Schema is ignored for ZIP inputs; loop over the file list and pass each `file_path` to another File Parser block to parse individual files.

Very large files can exceed the parser's time budget and fail the block. When a File Parser sits inside a loop, set **On block failure** (Advanced Settings) to *Skip to next iteration* so files that cannot be parsed are skipped and the rest of the list still runs.

| Field | Type | Description |
| - | - | - |
| **File URL** | text | URL or parameter reference to the file |
| **Data Schema** | JSON | Schema for the extracted output. Enable the checkbox to reveal the editor. |
| **Model** | selector | Which LLM model to use |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/file_parse_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=149d7ac6696db990867ec2bd2e941bd9" alt="File Parser block configuration with File URL, Data Schema, and Model fields" data-path="images/cloud/file_parse_block.png" />
</Frame>

***

## Control Flow

### Loop

Repeat a sequence of blocks for each item in a list. Child blocks are placed inside the loop on the canvas.

| Field | Type | Description |
| - | - | - |
| **Loop Value** | text | The list to iterate over. Use a parameter reference (e.g., `{{ my_list }}`) or a natural language description (e.g., "Extract links of the top 5 posts") which triggers automatic extraction. |
| **Continue if Empty** | boolean | Mark the loop as complete if the list is empty |

Inside loop blocks, use these [reserved variables](/docs/cloud/building-agents/add-parameters#reserved-variables):

* `{{ current_value }}`: the current item
* `{{ current_index }}`: the iteration number (0-based)

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/OhdzL7rI89QQ7wF2/images/cloud/block-loop-config.png?fit=max&auto=format&n=OhdzL7rI89QQ7wF2&q=85&s=0773b5ab9c06d7000c5ed175719cd724" alt="Loop block configuration" data-path="images/cloud/block-loop-config.png" />
</Frame>

Use Loop when the item list is already known before the loop starts, such as rows extracted from a table, files uploaded by a user, or URLs passed as agent parameters.

### While Loop

Repeat a sequence of blocks while a condition remains true. Child blocks are placed inside the loop on the canvas.

| Field | Type | Description |
| - | - | - |
| **Condition** | expression | Jinja2 template or natural-language prompt evaluated before each iteration |

Inside while-loop blocks, use these [reserved variables](/docs/cloud/building-agents/add-parameters#reserved-variables):

* `{{ current_index }}`: the iteration number (0-based)

Use While Loop for flows where the number of iterations is discovered during the run, such as pagination, polling, or retrying until a recoverable page state clears. For pagination, a common pattern is to extract a `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.

| Field | Type | Description |
| - | - | - |
| **Branches** | tabs | One or more conditions. Each branch has an **Expression** field. Click **+** to add branches. |
| **Else branch** | auto | Automatically added. Executes when no other condition matches. |

**Example Jinja2 expression:**

```
{{ extraction_output.price > 100 }}
```

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/conditional_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=0346aed49ee4788ef4dd4c8c6f7d7ccc" alt="Conditional block configuration with branch expressions" data-path="images/cloud/conditional_block.png" />
</Frame>

### AI Validation

Assert conditions using AI and halt the agent on failure. Useful for checking that a previous block produced expected results before continuing.

| Field | Type | Description |
| - | - | - |
| **Complete if...** | text | Condition that means validation passed |
| **Terminate if...** | text | Condition that means validation failed |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Error Code Mapping** | JSON | Custom error codes for failure reasons |
| **Input Parameters** | select | Parameters to evaluate |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/ai_val_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=5590b364dfe7d53e7166c05eff818275" alt="AI Validation block configuration with Complete if and Terminate if fields" data-path="images/cloud/ai_val_block.png" />
</Frame>

### Code

Execute custom Python code. Input parameters are available as global variables. Top-level variables in your code become the block's output.

| Field | Type | Description |
| - | - | - |
| **Code** | code editor | Python code to execute |
| **Input Parameters** | select | Parameters available as globals in the code |

Password credential input parameters expose plaintext fields such as
`login_credential.username` and `login_credential.password`. These values are
readable by Python code inside the runner; they are not opaque handles. Use them
only where needed, such as passing them directly to browser operations.

For one-time codes, use `await login_credential.otp()`, the supported pattern
across both execution paths. Do not rely on `.totp` or the top-level `otp(...)`
helper, whose behavior differs between paths. If no OTP source is configured,
`login_credential.otp()` fails with a clear one-time-code-unavailable error.

```python theme={null}
await page.fill("#username", login_credential.username)
await page.fill("#password", login_credential.password)
await page.fill("#otp", await login_credential.otp())
```

The sandbox does not reject code that prints, returns, or transforms credential
values. Before string values in a successful block output or a surfaced failure
reason are persisted, Skyvern masks exact registered-secret matches; registered
secrets of at least five characters are also masked inside larger strings. Derived
or transformed values may no longer match. Do not expose credentials through output
or errors. Opaque credential containment is tracked separately in SKY-11771.

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/code_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=69942c80681b35913dea09082535aa37" alt="Code block configuration with Python code editor and Input Parameters field" data-path="images/cloud/code_block.png" />
</Frame>

### Wait

Pause agent execution for a specified duration.

| Field | Type | Description |
| - | - | - |
| **Wait in Seconds** | number | Seconds to wait (0–300) |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/wait_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=2179648377cd8416e3368071c60a6e54" alt="Wait block configuration with Wait in Seconds field" data-path="images/cloud/wait_block.png" />
</Frame>

***

## Files

### File Download

Navigate the browser to download a file.

| Field | Type | Description |
| - | - | - |
| **URL** | text | Starting URL (optional) |
| **Download Goal** | text | Instructions for finding and downloading the file |
| **Download Timeout (sec)** | number | Seconds to wait for the download to complete |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **File Name** | text | Custom filename for the download. Replaces the site's filename, keeping the extension. Reference `{{ original_filename }}` to keep the site's name instead — `{{ fund }}_{{ original_filename }}` prefixes it, which separates documents that several pages name identically. |

*Plus [common browser fields](#common-fields).*

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/download_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=b72e3ec1293fcec69776ba1fe3d05e43" alt="File Download block configuration with URL, Download Goal, and Download Timeout fields" data-path="images/cloud/download_block.png" />
</Frame>

### Cloud Storage Upload

Upload downloaded files to S3 or Azure Blob Storage.

| Field | Type | Description |
| - | - | - |
| **Storage Type** | select | `Amazon S3` or `Azure Blob Storage` |
| **Folder Path** | text | Upload path/prefix (optional) |

<Accordion title="S3 fields">
  | Field | Description |
  | - | - |
  | **S3 Bucket** | Bucket name |
  | **AWS Access Key ID** | AWS credential |
  | **AWS Secret Access Key** | AWS credential |
  | **Region Name** | AWS region |
</Accordion>

<Accordion title="Azure fields">
  | Field | Description |
  | - | - |
  | **Storage Account Name** | Storage account name |
  | **Storage Account Key** | Storage account key |
  | **Blob Container Name** | Container name |
</Accordion>

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/cloud_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=eae6f0df00a0717409c64152e2cef04a" alt="Cloud Storage Upload block configuration with Storage Type and Folder Path fields" data-path="images/cloud/cloud_block.png" />
</Frame>

***

## Communication

### Send Email

Send an email notification, optionally with file attachments from previous blocks.

| Field | Type | Description |
| - | - | - |
| **Recipients** | text | Comma-separated email addresses |
| **Subject** | text | Email subject line. Supports [parameter references](/docs/cloud/building-agents/add-parameters#referencing-parameters-in-blocks) — add `{{workflow_run_id}}` to tag the subject with the run, e.g. `Your Run is Finished {{workflow_run_id}}`. |
| **Body** | text | Email body. Supports [parameter references](/docs/cloud/building-agents/add-parameters#referencing-parameters-in-blocks). |
| **Body format** | select | `Text` (default) sends the body exactly as written. `HTML` renders the body as a formatted email and adds a plain-text version for clients that cannot show HTML; `<script>`, `<iframe>`, `<object>`, `<embed>`, `<svg>`, `<math>`, meta refresh directives, event-handler attributes and links whose scheme is not `http`, `https`, `mailto`, `tel` or `cid` (inline `data:image` sources are kept) are removed before sending. Mail clients strip inline SVG anyway, so use a raster image instead. `{{ }}` and `{% %}` are parameter syntax, so wrap literal braces in `{% raw %}…{% endraw %}`. |
| **File Attachments** | text | Path to files to attach |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/email_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=2b95019373cb5bd267840554b0366044" alt="Send Email block configuration with Recipients, Subject, Body, and File Attachments fields" data-path="images/cloud/email_block.png" />
</Frame>

### HTTP Request

Make an API call to an external service. Click **Import cURL** in the block header to populate fields from a cURL command.

| Field | Type | Description |
| - | - | - |
| **Method** | select | GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS |
| **URL** | text | Request URL. Supports parameter references. |
| **Headers** | JSON | HTTP headers. Use **Quick Headers** to add common headers. |
| **Body** | JSON | Request body (POST/PUT/PATCH only) |
| **Files** | JSON | File uploads (POST/PUT/PATCH only) |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Timeout** | number | Request timeout in seconds (1–300, default: 30) |
| **Follow Redirects** | boolean | Automatically follow HTTP redirects (default: true) |
| **Continue on Failure** | boolean | Continue agent if the request fails |
| **Save Response as File** | boolean | Save the response body as a downloadable file |
| **Download Filename** | text | Filename for the saved response (shown when Save Response as File is enabled) |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/http_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=b454b63d8b95015d3739cd13c37adc36" alt="HTTP Request block configuration with Method, URL, Headers, and Body fields" data-path="images/cloud/http_block.png" />
</Frame>

### Human Interaction

Pause the agent and request human input. Optionally sends an email notification to reviewers.

| Field | Type | Description |
| - | - | - |
| **Instructions For Human** | text | Instructions displayed to the reviewer |
| **Timeout (minutes)** | number | Minutes to wait before auto-continuing (default: 120 minutes / 2 hours) |

**Email notification fields:**

| Field | Type | Description |
| - | - | - |
| **Recipients** | text | Email addresses to notify (comma-separated) |
| **Subject** | text | Notification email subject |
| **Body** | text | Notification email body |
| **Body format** | select | `Text` (default) or `HTML`, as in the Send Email block. In HTML mode the run link, the instructions and the browser-session link are appended as an HTML footer inside `</body>` when the body is a full document. |

Additional fields in **Advanced Settings:**

| Field | Type | Description |
| - | - | - |
| **Positive Button Label** | text | Label for the approval action (default: "Approve") |
| **Negative Button Label** | text | Label for the rejection action (default: "Reject") |

<Frame>
  <img width="400" src="https://mintcdn.com/skyvern/RrazYuvsu2T2SzFG/images/cloud/human_block.png?fit=max&auto=format&n=RrazYuvsu2T2SzFG&q=85&s=ff5d3aeb953c6674c75ec55b28d3ef2f" alt="Human Interaction block configuration with Instructions For Human and Timeout fields" data-path="images/cloud/human_block.png" />
</Frame>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.