Skip to main content

HTTP Call Node

HTTP Call Node Screenshot

Overview

The HTTP Call Node allows you to make an HTTP call to a specified URL with a given method, headers, and body. This node is particularly useful when you need to interact with external APIs or services.

The HTTP Call Node uses the Fetch API to make HTTP requests. It supports all HTTP methods (GET, POST, PUT, DELETE, etc.) and allows you to specify custom headers and a request body.

caution

When using the default browser executor, you have to worry about CORS when making HTTP requests to external APIs. If the API you are trying to call does not support CORS to http://tauri.local (most do not), you will run into CORS problems. This can manifest as an error fetch failed in the output panel.

This can be worked around by using the Node executor in Rivet, which does not do CORS checks.

Inputs

The HTTP call node only has inputs when the Editor Settings are set to use input toggles. See that section for more information.

Example 1: Make a GET request to an API

  1. Create an HTTP Call Node and set the Method to GET and the URL to https://jsonplaceholder.typicode.com/todos/1.
  2. Run the graph. You should see all of the response data, such as the headers, response code, and body, in the output panel.

HTTP Call Node Example 1

Example 2: Make a POST request to an API

  1. Create an HTTP Call Node and set the Method to POST and the URL to https://jsonplaceholder.typicode.com/posts. Enable the "Use Input" toggle on the "Body" setting to enable the input port for Body.
  2. Create an Object Node and set the object to:
{
"title": "foo",
"body": "bar",
"userId": 1
}
  1. Create a To JSON Node and connect the Object Node to the Data input of the To JSON Node. Connect the To JSON Node to the Body input of the HTTP Call Node.
  2. Create an Extract Object Path Node and connect the JSON output of the HTTP Call Node to the Object input of the Extract Object Path Node. Set the Path to $.id.
  3. Run the graph. You should see the created ID of the post in the Extract Object Path Node's output panel.

HTTP Call Node Example 2

Error Handling

The HTTP Call Node will error if the HTTP request fails for any reason, such as a network error or if the server returns an error status code. If the Error on non-200 status code setting is enabled, the node will also error if the status code of the HTTP response is not 200.

FAQ

Q: Can I use the HTTP Call Node to make requests to any API?

A: Yes, you can use the HTTP Call Node to make requests to any API that supports the HTTP methods GET, POST, PUT, or DELETE.

Q: Can I use the HTTP Call Node to send JSON in the request body?

A: Yes, you can use a Text Node to create a JSON string and connect it to the Body input of the HTTP Call Node.

Q: Can I use the HTTP Call Node to handle API authentication?

A: Yes, you can include authentication headers in the Headers input of the HTTP Call Node. However, for security reasons, you should not hardcode sensitive information like API keys in your graphs. Instead, consider using a Context Node to securely pass in sensitive information from the host application.

See Also