Send HTTP request
The Send HTTP request action connects your workflow to a web server or URL and sends HTTP requests.
After Flow sends your HTTP request, it waits for a maximum of 30 seconds for an HTTP response code. If Flow hasn't received a response after 30 seconds, then it closes the connection to your app. Later, it retries the request.
On this page
Fields
The Send HTTP request action contains the following fields.
Field | Description |
---|---|
HTTP method | The method of HTTP request to send. The Send HTTP request action supports the following methods:
|
URL | The URL of the server to which the HTTP request is sent. |
Headers | The key and value pair for the HTTP request. Multiple key-value pairs can be entered. |
Body | The content to be sent to the server. |
Triggers
The Send HTTP request action can be used in any workflow.
Examples
Call the Shopify GraphQL Admin API
In this example, you will use Flow to edit a product title by calling the productUpdate API.
Before you begin, do the following:
-
Set up and install a Custom App that has the
write_products
scope. You will use the Admin API access token to call the API in this example.
Then, follow these steps in Flow:
- Choose the Product status updated trigger, which allows you to test this workflow by changing the status on a product.
- Add Send HTTP Request to your workflow and connect it to the trigger.
- Open the configuration panel by clicking the Send HTTP Request step.
- In the HTTP Method field, enter
POST
. - In the URL field, enter
https://admin.shopify.com/store/shopname/api/2023-01/graphql.json
substituting your shop domain and desired API Version. - In the Headers section, enter a Key of
X-Shopify-Access-Token
and Value ofYOUR_API_SECRET_KEY
that you obtained in the first step. - In the Headers section, enter a second header with Key of
Content-Type
and Value ofapplication/json
. - In the Body section, enter the following:
- This code adds
-edited
to the end of your title - Spaces and newlines are meaningful to the Liquid editor, so avoid adding or removing spaces. Also, except for outputting Liquid, avoid collapsing brackets like
{{
and}}
because they are reserved for Liquid variables.
- Configure the rest of the workflow and activate it.
- Test it by changing the status on a Product from Draft to Active or vice versa.
Call an External API
In this example workflow, a POST HTTP request is sent to a server when an order is paid.
Response codes
The following table describes how Flow processes the HTTP response code after it receives a response.
HTTP response code | How Flow processes the response code |
---|---|
2XX or 3XX Success | Flow marks the HTTP request as a success, and performs subsequent actions in the workflow. |
429 or 5XX Error | Flow automatically retries the action for up to 24 hours until it receives a different response code or it times out. | Other response code | If your app returns a code that isn't described in this table or it times out while retrying actions, then Flow marks the HTTP request as failing. Subsequent workflow actions are not taken. |
Limitations
The Send HTTP request action has the following limitations:
- The action doesn't return data into the Flow environment as a result of the mutation.