Make.com HTTP Module: Connect to Any API Without Code
The HTTP module is Make.com's secret weapon. When there's no pre-built integration for an app, the HTTP module lets you connect to any API directly. This guide teaches you how to use it effectively for custom integrations.
When to Use the HTTP Module
- App doesn't have a Make.com integration
- Need functionality the native integration doesn't offer
- Working with internal/proprietary APIs
- Calling webhook endpoints
- Integrating with newer apps before official support
HTTP Module Types in Make.com
Make a Request
General-purpose HTTP calls. Use for most API integrations.
Make a Basic Auth Request
Automatically handles username/password authentication.
Make an OAuth 2.0 Request
For APIs requiring OAuth 2.0 authentication.
Make an API Key Auth Request
Sends API key in header or query parameter.
Get a File
Download files from URLs.
Resolve a Target URL
Follow redirects to get final URL.
Making Your First API Call
Step 1: Find the API Documentation
Every API has documentation explaining:
- Base URL (e.g., https://api.example.com)
- Endpoints (e.g., /v1/users)
- Required headers and authentication
- Request body format
- Response format
Step 2: Add HTTP Module
- Add the appropriate HTTP module to your scenario
- Configure the URL (base + endpoint)
- Select the HTTP method (GET, POST, PUT, DELETE, PATCH)
Step 3: Configure Headers
Common headers:
-
Content-Type: application/json(for JSON bodies) -
Authorization: Bearer your-token(for auth) -
Accept: application/json(request JSON response)
Step 4: Add Request Body (for POST/PUT/PATCH)
Select "Raw" and enter JSON:
{
"name": "{{1.name}}",
"email": "{{1.email}}"
}
Use Make.com variables to insert dynamic data.
Step 5: Parse the Response
Enable "Parse response" to access response data as structured fields in subsequent modules.
Authentication Methods
API Key in Header
Header: X-API-Key Value: your-api-key-here
API Key in Query String
URL: https://api.example.com/users?api_key=your-key
Bearer Token
Header: Authorization Value: Bearer your-token-here
Basic Authentication
Use the "Make a Basic Auth Request" module and enter username/password.
OAuth 2.0
- Create an OAuth 2.0 connection in Make.com
- Configure client ID, client secret, and authorization URLs
- Authorize the connection
- Use "Make an OAuth 2.0 Request" module
Handling JSON Data
Sending JSON
For POST requests with JSON body:
- Set header:
Content-Type: application/json - Body type: Raw
- Content type: JSON (application/json)
- Enter your JSON with variables
Receiving JSON
Enable "Parse response" checkbox. Make.com automatically parses JSON into usable fields.
Nested JSON
Access nested data with dot notation:
{{1.data.user.name}}{{1.results[0].id}}
Error Handling
Check Status Codes
Use a Router after HTTP module:
- Path 1: Status code = 200-299 (success)
- Path 2: Status code = 400-499 (client error)
- Path 3: Status code = 500-599 (server error)
Add Error Handler
Right-click module → Add error handler:
- Ignore: Skip errors and continue
- Break: Stop scenario on error
- Resume: Use fallback value
- Rollback: Undo previous actions
Common API Patterns
GET Request (Retrieve Data)
Method: GET URL: https://api.example.com/users/123 Headers: Authorization: Bearer token
POST Request (Create Data)
Method: POST
URL: https://api.example.com/users
Headers:
Content-Type: application/json
Authorization: Bearer token
Body: {"name": "John", "email": "john@example.com"}
PUT Request (Update Data)
Method: PUT
URL: https://api.example.com/users/123
Headers:
Content-Type: application/json
Authorization: Bearer token
Body: {"name": "John Updated"}
DELETE Request
Method: DELETE URL: https://api.example.com/users/123 Headers: Authorization: Bearer token
Pagination
For APIs returning paginated results:
- Make initial request
- Check for "next" link or page token in response
- Loop with Make.com's Repeater or until no more pages
- Aggregate results
Rate Limiting
Respect API rate limits:
- Add Sleep modules between requests
- Check response headers for rate limit info
- Implement exponential backoff on 429 errors
- Cache results when possible
Testing Tips
- Test API calls in Postman first
- Use Make.com's "Run once" to test single executions
- Check the execution log for request/response details
- Verify data mappings with sample responses
Real-World Example: CRM Integration
Connecting to a CRM without native Make.com support:
- Trigger: New form submission
-
HTTP Module: Search CRM for existing contact
GET https://crm-api.com/contacts?email={{1.email}} - Router: Check if contact exists
-
HTTP Module (if exists): Update contact
PATCH https://crm-api.com/contacts/{{2.id}} Body: {"lastContact": "{{formatDate(now; "YYYY-MM-DD")}}"} -
HTTP Module (if new): Create contact
POST https://crm-api.com/contacts Body: {"name": "{{1.name}}", "email": "{{1.email}}"}
Need Custom API Integration?
The HTTP module unlocks unlimited integration possibilities. Our Make.com specialists have connected hundreds of APIs for clients.
Whether you're integrating legacy systems, proprietary tools, or cutting-edge APIs, we'll build reliable connections. Contact us for custom integration help.
0 comments