Linea Docs

HTTP Node

Make HTTP requests to external REST APIs with configurable method, headers, authentication, and body.

HTTP Node

The http node sends an HTTP request to any external URL and returns the parsed response.

Configuration Fields

FieldTypeDefaultDescription
httpMethodGET | POST | PUT | PATCH | DELETEGETHTTP method
httpUrlstringRequest URL (supports {{}} substitution)
httpHeadersarray[]Array of { key, value } pairs (values support {{}})
httpAuthTypenone | bearer | api-keynoneAuthentication type
httpAuthTokenstringToken for bearer or api-key auth
httpBodystringRequest body string (for POST/PUT/PATCH, supports {{}})

Authentication

httpAuthTypeHeader sent
bearerAuthorization: Bearer <token>
api-keyX-API-Key: <token>

The Content-Type: application/json header is always included automatically.

Output

{
  status: number    // HTTP status code
  data: unknown     // parsed JSON body, or raw string if not JSON
  url: string       // effective request URL
  method: string    // HTTP method used
}

Response bodies are capped at 2 MB. Larger responses are truncated with a [response truncated at 2 MB] suffix.

Non-2xx responses throw an error, which marks the node as failed.

SSRF protection is enforced. Requests to private IP ranges (10.x.x.x, 172.16.x.x–172.31.x.x, 192.168.x.x), loopback addresses, and link-local addresses are blocked.

Example Config

{
  "httpMethod": "POST",
  "httpUrl": "https://api.example.com/webhooks/notify",
  "httpAuthType": "bearer",
  "httpAuthToken": "my-secret-token",
  "httpHeaders": [
    { "key": "X-Request-Id", "value": "{{input.requestId}}" }
  ],
  "httpBody": "{\"message\": \"{{lastOutput.summary}}\"}"
}

On this page