With HTTP Request, n8n can work with almost any web service, not just the built-in integrations.
Hundreds of apps have their own n8n node, but many services don't. As long as a service has an API (a documented way for programs to send it requests and get answers), the HTTP Request node can use it.
A request has a few parts, all described in the service's API documentation:
- Method: what you want to do. GET reads data, POST creates something, PATCH or PUT updates, DELETE removes.
- URL: the address of the resource, such as
https://api.example.com/v1/customers. - Authentication: prefer Predefined Credential Type when n8n already knows the service, so you reuse a normal credential. Otherwise use a generic type such as Header Auth (an API key sent in a header, an extra labelled line of the request) or OAuth2.
- Query parameters: options added to the URL, such as
?status=open. - Headers: extra labelled information.
- Body: the data you send with POST or PUT, usually JSON.
Shortcut: API docs often show examples as a cURL command (a command-line tool for web requests). Click Import cURL, paste it, and n8n fills in the node.
The response becomes items for the next node. Useful options: Pagination fetches page after page of results automatically; "Never Error" lets you handle failed responses yourself; batching spaces out requests.
The same node can also be given to an AI agent as a tool, with options to trim long responses so they use fewer tokens (the pieces of text AI models read and are billed by).
Never paste API keys into the URL or body; keep them in credentials.
Remember
- HTTP Request reaches any service with an API
- Method, URL, auth, query, headers and body come from the API docs
- Use Import cURL and built-in pagination; keep keys in credentials
Watch out for
- Putting an API key directly in the URL, where it ends up in execution logs.