API Request

Integrations api Professional

Make HTTP requests to external APIs

Overview

The API Request node makes HTTP requests to external web services and processes their responses.

How It Works

  1. Configure Request: Select an endpoint and configure the HTTP method, path, headers, and request body (all fields support Handlebars templates)
  2. Send Request: The node makes the HTTP request to the external service
  3. Handle Response: Response is parsed and stored in a variable
  4. Route: Flow continues through Success for 2xx responses or Error for failures

Output Variable

The response is stored in a variable with the following properties:

Status: {{api.status}}
Response: {{api.body.field_name}}
HTTP Code: {{api.status_code}}

Configuration Fields

Request Configuration api_request Required

Configure the HTTP request including endpoint, method (GET/POST/PUT/PATCH/DELETE/HEAD/OPTIONS), path, query parameters, headers, and request body. All fields support Handlebars templates for dynamic values. Request body supports multiple formats: JSON, plain text, custom, URL-encoded form data, and multipart form data.

Show details

HTTP methods:

  • GET - Retrieve data
  • POST - Create new resources
  • PUT - Replace existing resources
  • PATCH - Partially update resources
  • DELETE - Remove resources
  • HEAD - Get headers only
  • OPTIONS - Get supported methods

Request body formats:

  • JSON: Structured data as application/json
  • Plain Text: Raw text content
  • Form Data (URL-encoded): Traditional form submission
  • Multipart Form Data: File uploads with form fields

Dynamic values with Handlebars:

All fields support Handlebars templates for inserting dynamic values from your flow:

Path: /users/{{user_id}} Header: Authorization: Bearer {{api_token}}
Response Handling response_handling

Configure how the API response should be processed. Choose between JSON parsing (automatically parses JSON responses) or plain text. Optionally include the raw response body alongside the parsed version by enabling 'includeRaw'.

Show details

Response types:

  • JSON: Automatically parses JSON responses into an object you can access with dot notation
  • Plain Text: Returns the raw response body as a string

Include raw option:

When enabled, the raw response body is included alongside the parsed version as {{variable}}.raw

Error Handling error_handling

Configure how the node handles errors.

Show details

Configuration options:

  • Continue on error: If enabled, flow continues through error handle. If disabled, flow terminates.
  • Retry attempts (0-3): Number of times to retry the operation before failing
  • Retry delay (100-1000ms): Time to wait between retry attempts

Use retries for transient errors like network issues. Use "continue on error" to implement fallback logic.

Output Variables

This node stores its output in a variable that can be referenced in subsequent nodes using the {{variable}} syntax.

{{variable}}.status string

Response status: "success" (2xx responses), "error" (4xx/5xx responses), "failure" (network errors), or "exception" (configuration errors)

{{variable}}.body object

Parsed response body (JSON object or plain text string depending on response handling type)

{{variable}}.headers object

Response headers as key-value object

{{variable}}.status_code number

HTTP status code (e.g., 200, 404, 500)

{{variable}}.timestamp string

ISO 8601 timestamp of when the response was received

{{variable}}.raw string

Raw response body as string (only present when includeRaw is enabled in response handling)

{{variable}}.error string

Error message (only present when status is "error", "failure", or "exception")

Connection Points

Input
Accepts incoming connections from other nodes
✓ Success output
API request completed successfully with 2xx status code
✗ Error error
API request failed with error status code or network error

Related Resources