*** id: 6fd48151-b077-4f9d-9320-94d11fe1289f title: Request description: Call Flow Builder node to make an HTTP request slug: /reference/request max-toc-depth: 3 ---------------- This node will allow you to make a `GET`, `POST`, `PUT`, or `DELETE` request to the specified URL. The response can be accessed in later nodes with `%{request_response_body}`, and if you choose to save the response fields as variables, you can reference them with `%{request_response.}`. It is important to note that later Request nodes will overwrite the `%{request_response}` variables, so either use them immediately or store them with a [Set Variables](/docs/call-flow-builder/reference/set-variables) node. ## **Output Node Connectors** User-defined success condition. The condition can be based on the requests response body in the following format: `%{request_response.}`. Additional conditions can be added by clicking the `Add condition` button, which will create a new connector. The default output connector when the condition is not met. The output connector when the request fails. ## Node Settings A public URL to make the request to. The HTTP method to use for the request.

**Possible Values:** `GET`, `POST`, `PUT`, `DELETE`
A list of headers to include in the request. Each header should be in JSON format ` { key: value }`

**Example:** `{ "Content-Type": "application/json", "X-Custom-Header": "foo" }`
The body of the request. This field can be used to send any string or JSON data that can be serialized.

**Example:** `{"user": { "id": 123, "role": "admin", "isActive": true }}`
## **Examples** ### Using webhook.site to test requests You can test the Request node with [webhook.site](https://webhook.site/#!/). In the Request node, use the unique URL provided by webhook.site and copy the Body of the example below. You will get a POST to your webhook with details about the incoming call. ![Request node example with webhook.site.](https://files.buildwithfern.com/signalwire.docs.buildwithfern.com/docs/bf0124ef87a6750c02f7b66d2de63197b88d6242486356434c771e12c820d782/assets/images/call-flow/nodes/request-test.webp) *** ### Route a call based on a request to check time You may want your Flow to behave differently depending on the time of day. You can use [timeapi.io](https://timeapi.io) to request the current time. This example uses an IANA timezone to look up the time and sets `Cond 1` to: `%{request_response.hour} >= 10 &&%{request_response.hour} < 20.` If the time is between 10am and 8pm, the success condition TTS will play. If a condition is not met, the call will be routed to the `Else` connector, which will play the TTS node. If the request fails, the call will be routed to the `Failure` connector, which will also play the TTS node. ![Request node example with timeapi.io.](https://files.buildwithfern.com/signalwire.docs.buildwithfern.com/docs/30ec2697e16a9be95ddde449a30137414006587fcd067d8015e4185182664a0b/assets/images/call-flow/nodes/request-time.webp)