HTTP Client - Synthreo Builder
HTTP Client node for Builder - make outbound REST API calls (GET, POST, PUT, DELETE, PATCH) to any external service or webhook endpoint from within an AI agent workflow.
Overview
Section titled “Overview”The HTTP Client node enables your workflow to make web requests to external APIs, websites, and web services. This node can retrieve data, send information, download files, and integrate with virtually any web-based system that accepts HTTP requests.
Use this node whenever your workflow needs to call a REST API, submit data to a webhook, download a file from an external URL, or interact with any HTTP-based service that is not covered by a dedicated integration node.
What This Node Does
Section titled “What This Node Does”The HTTP Client node acts as a bridge between your Builder workflow and external web services. It can:
- Fetch Data - Retrieve information from APIs, databases, or web services.
- Send Information - Submit forms, update records, or trigger actions on external systems.
- Download Files - Save documents, images, or other files from web sources.
- Integrate Systems - Connect your workflow with CRMs, payment processors, social media platforms, and more.
Parameters
Section titled “Parameters”Request Method
Section titled “Request Method”| Field Name | Type | Default | Description |
|---|---|---|---|
method | Dropdown | None | The HTTP method to use for the request. |
| Method | When to Use |
|---|---|
| GET | Retrieve data from a server. Most common for reading records or fetching lists. |
| POST | Send data to create new records, submit forms, or trigger actions. |
| PUT | Update an existing record by replacing it entirely. |
| PATCH | Update specific fields in an existing record without replacing the whole record. |
| DELETE | Remove a record or resource from the server. |
| HEAD | Retrieve response headers without the response body. Useful for checking if a resource exists. |
| OPTIONS | Query the server to find out which HTTP methods are supported by the endpoint. |
Request URL
Section titled “Request URL”| Field Name | Type | Default | Description |
|---|---|---|---|
requestUrl | Smart text | Empty | The full URL of the API endpoint or web service to call. Supports dynamic variables from upstream nodes. |
Use dynamic variables to build URLs that change per workflow record - for example: https://api.example.com/customers/{{customerId}}.
Headers Configuration
Section titled “Headers Configuration”Headers provide additional context with each request, such as authentication tokens, content type declarations, and custom parameters required by the target API.
Show Auto-Generated Headers
Section titled “Show Auto-Generated Headers”| Field Name | Type | Default | Description |
|---|---|---|---|
filterStatus | Toggle | Off | When On, displays all headers including those automatically added by the system. Useful for debugging. |
Custom Headers
Section titled “Custom Headers”Add custom headers as key-value pairs in the headers data grid:
| Column | Description |
|---|---|
| Key | The header name (for example, Authorization, Content-Type, X-API-Key). |
| Value | The header value. Supports dynamic variables. |
| Description | Optional notes about what the header does. |
Common header examples:
| Key | Example Value | Purpose |
|---|---|---|
| Authorization | Bearer {{apiToken}} | Bearer token authentication |
| Content-Type | application/json | Declare JSON request body |
| Accept | application/json | Request JSON response format |
| X-API-Key | {{yourApiKey}} | API key authentication |
Request Body
Section titled “Request Body”| Field Name | Type | Default | Description |
|---|---|---|---|
body | Multi-line smart text | Empty | The data to send with the request. Typically used with POST, PUT, and PATCH methods. Supports dynamic variables. |
Example body for creating a customer record:
{ "name": "{{customerName}}", "email": "{{customerEmail}}", "phone": "{{customerPhone}}"}Advanced Settings
Section titled “Advanced Settings”| Parameter | Field Name | Type | Default | Description |
|---|---|---|---|---|
| Enable SSL Certificate Verification | sslEnabled | Toggle | Off | When On, verifies the target server’s SSL certificate. Recommended for all external API calls in production. |
| Automatically Follow Redirects | autoFollowRedirects | Toggle | Off | When On, automatically follows HTTP redirect responses to the final destination URL. |
| Follow Original HTTP Method | followOgHttpMethod | Toggle | Off | When On, preserves the original HTTP method (POST, PUT, etc.) when following redirects instead of defaulting to GET. |
| Remove Referer Header on Redirect | removeRefererHeader | Toggle | Off | When On, strips the Referer header when following redirects. May be required by privacy-sensitive APIs. |
| Encode URL Automatically | autoEncodeUrl | Toggle | Off | When On, automatically encodes special characters in the URL (spaces, symbols, international characters). |
| Disable Cookie Jar | disableCookieJar | Toggle | Off | When On, disables cookie storage between requests. Useful for stateless API interactions. |
| Use Server Cipher Suite During Handshake | useServerCipher | Toggle | Off | When On, allows the server to dictate the encryption method during SSL handshake. Required by some legacy systems. |
Response Configuration
Section titled “Response Configuration”Response Type
Section titled “Response Type”| Field Name | Type | Default | Description |
|---|---|---|---|
responseType | Dropdown | JSON | How to handle the data returned by the API. |
| Option | Description |
|---|---|
| JSON | Parse the response as structured JSON data for use in downstream nodes. |
| File Download | Save the response as a file to a specified folder. |
| Text | Treat the response as plain text content. |
File Download Settings
Section titled “File Download Settings”These settings appear when Response Type is set to File Download.
| Parameter | Field Name | Type | Default | Description |
|---|---|---|---|---|
| File Output Folder | responseFileOutFolder | Smart text | Empty | The directory path where downloaded files will be saved. |
| Unzip if Response is ZIP | responseUnzipIfZip | Toggle | Off | When On, automatically extracts ZIP archives after downloading. |
| Keep ZIP File | responseZipKeepFile | Toggle | Off | When On, preserves the original ZIP archive after extraction. Only applies when unzipping is enabled. |
| Convert Images to Base64 | responseZipImgToBase64 | Toggle | Off | When On, converts image files found in extracted ZIPs to base64 text format. Only applies when unzipping is enabled. |
Output Configuration
Section titled “Output Configuration”| Parameter | Field Name | Type | Default | Description |
|---|---|---|---|---|
| Output Transformation | outTransformId | Dropdown | Original with appended result column | How the HTTP response is combined with existing workflow data. |
| Result Property Name | outColumnName | Text | http_response | The property name that will hold the HTTP response data in the output. |
| Output Option | Description |
|---|---|
| Original with appended result column | Keeps all input data and adds the HTTP response as a new property. Use when downstream nodes need both the original data and the API response. |
| Return result column only | Returns only the HTTP response, discarding upstream data. Use when only the API result is needed. |
| Spread by attachments | Creates separate output rows for each downloaded file. Only available when Response Type is File Download. |
Real-World Use Cases
Section titled “Real-World Use Cases”Customer Data Synchronization
Section titled “Customer Data Synchronization”A retail company needs to sync customer information from their e-commerce platform to their CRM every hour.
Configuration:
- Method: GET
- Request URL:
https://api.ecommerce.com/customers/updated - Headers:
Authorization: Bearer {{apiToken}} - Response Type: JSON
- Output Format: Original with appended result column
- Result Property Name:
customer_updates
Outcome: The node fetches the latest customer data and passes it to a downstream CRM update node.
Automated Invoice Creation
Section titled “Automated Invoice Creation”An accounting firm sends client billing data to a billing system API to create invoices.
Configuration:
- Method: POST
- Request URL:
https://billing.example.com/api/invoices - Headers:
Content-Type: application/json,Authorization: Bearer {{billingToken}} - Body:
{"client_id": "{{clientId}}", "amount": "{{invoiceAmount}}", "due_date": "{{dueDate}}"} - Response Type: JSON
- Enable SSL Certificate Verification: On
Outcome: The node sends client data to the billing system and receives the generated invoice ID for storage in a downstream database node.
Document Download Automation
Section titled “Document Download Automation”A legal firm downloads contracts from a client portal using dynamic case numbers.
Configuration:
- Method: GET
- Request URL:
https://clientportal.com/documents/{{caseNumber}} - Headers: authentication headers for the portal
- Response Type: File Download
- File Output Folder:
/cases/{{caseNumber}}/ - Unzip if Response is ZIP: On
- Output Transformation: Spread by attachments
Outcome: The node downloads all documents for each case, extracts any ZIP archives, and creates separate workflow rows for each document for individual processing.
Step-by-Step Configuration
Section titled “Step-by-Step Configuration”Basic API Request
Section titled “Basic API Request”- Drag the HTTP Client node onto your workflow canvas and connect it to the previous node.
- Click the node to open settings.
- Select the desired Method (GET to read data, POST to send data).
- Enter the API endpoint URL in Request URL. Use
{{variableName}}syntax for dynamic values. - Expand the Headers section and add any required authentication or content-type headers.
- For POST, PUT, or PATCH: expand the Body section and enter your JSON payload with dynamic variables as needed.
- Expand the Response section and select the appropriate Response Type.
- Set the Result Property Name to a descriptive name.
- Click Test Configuration to validate the request, then save.
File Download Setup
Section titled “File Download Setup”- Follow the basic request steps above.
- In the Response section, select File Download as the Response Type.
- Enter the target directory in File Output Folder.
- If the API returns ZIP files, enable Unzip if Response is ZIP.
- Optionally enable Keep ZIP File to retain the archive alongside extracted contents.
- Enable Convert Images to Base64 if downstream nodes need to embed images as text.
Troubleshooting
Section titled “Troubleshooting”| Issue | Likely Cause | Resolution |
|---|---|---|
| 401 Unauthorized | Missing or expired authentication token | Check the Authorization header value and confirm the token is current. |
| 403 Forbidden | Insufficient permissions for the API endpoint | Verify the API account has the required access level for the requested operation. |
| SSL certificate error | SSL verification is on but the target uses a self-signed certificate | For internal or test systems only: disable SSL verification. For production APIs, contact the API provider about their certificate. |
| Request times out | Target API is slow or unreachable | Check network connectivity and the API’s status page. Consider increasing the workflow timeout setting. |
| Response body is empty | Wrong Response Type selected | If the API returns JSON but Response Type is set to Text, the data will not be parsed correctly. Match the Response Type to the actual content. |
| File not saved after download | File Output Folder path does not exist or is missing | Verify the folder path and ensure the workflow has write access to that directory. |
| Dynamic variables not replaced | Variable name in URL or body does not match the upstream property name | Check the exact property name in the upstream node’s output and update the variable reference to match. |
Best Practices
Section titled “Best Practices”- Enable SSL Certificate Verification for all external API calls in production environments.
- Use descriptive Result Property Names (for example,
crm_responseorinvoice_data) to make downstream node configuration easier to read. - Store API tokens as dynamic variables passed from a secure upstream source rather than hardcoding them in header values.
- Use GET for all read operations. Only use POST, PUT, PATCH, or DELETE when your intent is specifically to modify remote data.
- Test requests with the Test Configuration button before deploying to production to avoid unintended API side effects during development.
- Enable Automatically Follow Redirects when working with APIs that use URL shorteners or that redirect based on authentication state.
Related Nodes
Section titled “Related Nodes”- CRUD Integration - for connecting to Monday.com, ClickUp, Airtable, or Slack without building raw HTTP requests.
- URL Scraper - for extracting content from web pages rather than calling structured REST APIs.
- Custom Script - for transforming request data before sending or parsing complex response structures.