Skip to main content

Overview

The Send HTTP Request node turns Reevo workflows into a flexible integration layer. You can use it to push data to any external system that has an API — sending record data out of Reevo, triggering actions in connected tools, or enriching your workflows with responses from external services. The node supports GET, POST, PUT, PATCH, and DELETE methods, and the full response (status code, body, and parsed JSON) is returned as variables you can use in subsequent nodes.

Prerequisites

  • Admin or User role with permission to create and edit workflows
  • The target URL and any authentication credentials (API keys, bearer tokens, etc.) from the external service you want to call
  • Basic familiarity with HTTP requests and JSON

Configuring a Send HTTP Request Node

Step 1: Add the Node to Your Workflow

In the workflow builder, click + to add a new action node and select Send HTTP Request from the list of available nodes.

Step 2: Set the Request Method and URL

FieldDescription
MethodThe HTTP verb: GET, POST, PUT, PATCH, or DELETE
URLThe endpoint to call — can include static values or variables from earlier nodes
Example: https://api.example.com/contacts/{{trigger.email}}

Step 3: Add Headers

Add any required headers for the external API. Common headers include:
HeaderExample Value
Content-Typeapplication/json
AuthorizationBearer YOUR_API_KEY
X-API-KeyYOUR_API_KEY
Each header has a Name and a Value field. Values can be static strings or variables.

Step 4: Define the Request Body

For POST, PUT, and PATCH requests, provide a JSON body. You can use variables from earlier workflow steps to pass dynamic data into the request. Example body using variables:
{
  "email": "{{trigger.email}}",
  "first_name": "{{trigger.first_name}}",
  "lead_score": "{{find_records.score}}"
}
Toggle between static and variable mode in each field to reference data from previous nodes.

Step 5: Use the Response in Later Nodes

After the node executes, three response values are available as variables downstream:
VariableWhat It Contains
response_statusThe HTTP status code returned (e.g., 200, 404, 500)
response_contentThe raw response body as a string
response_jsonThe parsed JSON response (if the API returns JSON)
Use these in subsequent nodes — for example, use response_json.id to get a record ID returned by the external API, or use an If/Else node on response_status to handle errors vs. success differently.

Common Use Cases

Use CaseHow to Configure
Push a new contact to an external CRMPOST request to the CRM’s API with contact field variables in the body
Trigger a Zapier or Make webhookPOST to the Zap/scenario webhook URL with relevant payload data
Enrich a record via a third-party APIGET request to an enrichment API; use response_json fields in an Update Record node downstream
Create a task in a project management toolPOST to the tool’s API with task details built from workflow variables

Troubleshooting / FAQs

Open the Runs tab, click into the failed run, and expand the Send HTTP Request node. You’ll see the exact request that was sent (method, URL, headers, body) and the response received (status code and body). Most failures are caused by: incorrect URL, missing or wrong authentication header, or malformed JSON in the request body.
Add an Authorization header with the appropriate value. For API key auth, this is typically Bearer YOUR_TOKEN or Api-Key YOUR_KEY depending on the service. For basic auth, encode your credentials as a Base64 string and use Basic ENCODED_CREDENTIALS. Always check the external API’s documentation for the exact format it expects.
Yes — this is one of the most powerful aspects of this node. After the HTTP request runs, response_status, response_content, and response_json are all available as variables. Switch to variable mode in any subsequent node’s field to reference these values. For example, if the API returns {"id": "abc123"}, you can reference response_json.id in a downstream Update Record node to stamp that ID on a Reevo record.
Yes — add an If/Else node immediately after the Send HTTP Request node. Set the condition to evaluate response_status — for example, “response_status equals 200” for the success path and anything else for the failure path. This lets you handle errors gracefully and take different actions depending on the outcome.
Yes — Reevo enforces a timeout on outbound HTTP requests. If the external service takes too long to respond, the node will fail with a timeout error. Ensure the external endpoint is responsive. If timeouts are frequent, consider triggering async operations in the external system (where it accepts the request immediately and processes in the background) rather than waiting for a synchronous response.
Still have questions? Sign in and use Ask Reevo for instant answers or to raise a support ticket.