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

# HTTP Request

> Call an HTTP endpoint. Exact configuration, ports, placement, and execution behavior.

**Node type:** `http_request` · **Version:** `1` · **Category:** Network

Call an HTTP endpoint. This node does not declare an external side effect.

## Configuration

| Field        | Type   | Default | What it controls                                                                                  |
| ------------ | ------ | ------- | ------------------------------------------------------------------------------------------------- |
| `method`     | string | `"GET"` | HTTP request method. Values: `GET`, `POST`, `PUT`, `PATCH`, `DELETE`.                             |
| `url`        | string | `""`    | Literal URL or mapped URL value.                                                                  |
| `query`      | object | `{}`    | JSON object converted to query parameters.                                                        |
| `headers`    | object | `{}`    | JSON object of request headers. Authorization and cookie values are redacted from execution data. |
| `body`       | any    | `null`  | JSON request body for POST, PUT, and PATCH requests.                                              |
| `timeoutMs`  | number | `30000` | Maximum time for this operation in milliseconds.                                                  |
| `retryCount` | number | `0`     | Number of bounded retries after a retryable failure.                                              |

<Note>Authorization and cookie values are redacted from execution data.</Note>

## Workflow JSON

The editor stores this node with the following implemented default configuration:

```json title="Default node configuration" theme={"system"}
{
  "type": "http_request",
  "version": 1,
  "configuration": {
    "method": "GET",
    "url": "",
    "query": {},
    "headers": {},
    "body": null,
    "timeoutMs": 30000,
    "retryCount": 0
  }
}
```

Values may be entered literally or mapped from an earlier compatible output when the inspector exposes a mapping control. See [Variables and data mapping](/workflows/variables-and-data).

## Inputs

| Port   | Type     | Required | Description |
| ------ | -------- | -------- | ----------- |
| `url`  | `string` | Yes      | URL         |
| `body` | `any`    | No       | Body        |

## Outputs

| Port       | Type     | Required | Description |
| ---------- | -------- | -------- | ----------- |
| `status`   | `number` | No       | Status      |
| `body`     | `any`    | No       | Body        |
| `finalUrl` | `string` | No       | Final URL   |

## Where it can run

* Desktop local runner
* Paired self-hosted runner
* Hosted runner

## Test and inspect

Use **Test node** in the editor to preview this step with the current configuration. A full run records resolved inputs, outputs, logs, duration, and any artifacts in the execution inspector. Side-effecting or destructive nodes can require an additional confirmation or approved workflow permission.
