Skip to main content

HTTP Component

Make HTTP requests to URLs such as REST APIs, Webhooks, etc

Component key: http

Description

The HTTP component allows you to make requests to an HTTP-based API or endpoint.

Common HTTP verbs like GET, POST, PUT, PATCH, and DELETE are supported. For all actions, you can specify:

  • A URL to send a request to
  • A response type (like application/json)
  • A list of request headers
  • A list of query parameters

In addition, the POST, PUT, and PATCH actions allow you to specify data to send as part of the request. data can be a reference to a binary file, a string literal, or any structured data that is expected in the body of the request.

This component can be configured to use optional Basic Auth (username/password), API Key, or OAuth 2.0 Connections to authenticate the request. For other non-standard authentication schemes, you will either need to supply your own Authorization as a header as an input to the HTTP component, or you can create your own custom component to interact with an HTTP-based API.

Connections

API Key

If an API Key Connection is supplied, an Authorization: Basic ${APIKEY} header is used in the HTTP request.

On-prem enabled: this connection can be configured to connect to an on-prem resource on a private network. Learn more.

InputDefaultNotesExample
API Key
string
/ Required
apiKey
API Key
 
Authentication Scheme
string
/ Required
authScheme
Basic
 
 
Host
string
Hidden Field
host
The address of your on-prem server. This should be an IP address or hostname.
server.example.io
Port
string
Hidden Field
port
The port of your on-prem server
8080

OAuth 2.0 Authorization Code

If an OAuth 2.0 Connection is supplied, an Authorization: Bearer ${KEY} header is used in the HTTP request, where KEY is the client key that is fetched from the OAuth provider.

InputNotes
Authorize URL
string
/ Required
authorizeUrl
The OAuth 2.0 Authorization URL for the API
Client ID
string
/ Required
clientId
Client Identifier of your app for the API
Client Secret
password
/ Required
clientSecret
Client Secret of your app for the API
Headers
string
Key Value List
headers
Additional header to supply to authorization requests
Refresh URL
string
refreshUrl
The OAuth 2.0 Refresh URL for the API
Scopes
string
scopes
Space separated OAuth 2.0 permission scopes for the API
Token URL
string
/ Required
tokenUrl
The OAuth 2.0 Token URL for the API

Basic Username/Password

If a Basic Auth Connection is supplied, an Authorization: Basic ${base64(USERNAME:PASSWORD)} header is used in the HTTP request.

On-prem enabled: this connection can be configured to connect to an on-prem resource on a private network. Learn more.

InputNotesExample
Host
string
Hidden Field
host
The address of your On-Prem server. This should be an IP address or hostname.
server.example.io
Password
password
/ Required
password
Password
 
Port
string
Hidden Field
port
The port of your On-Prem server.
8080
Username
string
/ Required
username
Username
 

OAuth 2.0 Client Credentials

InputNotes
Client ID
string
/ Required
clientId
Client Identifier of your app for the API
Client Secret
password
/ Required
clientSecret
Client Secret of your app for the API
Headers
string
Key Value List
headers
Additional header to supply to token requests
Scopes
string
scopes
Space separated OAuth 2.0 permission scopes for the API
Token URL
string
/ Required
tokenUrl
The OAuth 2.0 Token URL for the API

Actions

DELETE request

Issue a HTTP DELETE request | key: httpDelete

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

{
"data": null,
"contentType": "application/json"
}

GET Request

Issue a HTTP GET request | key: httpGet

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

{
"data": null,
"contentType": "application/json"
}

PATCH request

Issue a HTTP PATCH request | key: httpPatch

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Data
string
data
The HTTP body payload to send to the URL. Must be a string or a reference to output from a previous step.
{"exampleKey": "Example Data"}
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

{
"data": null,
"contentType": "application/json"
}

POST Request

Issue a HTTP POST request | key: httpPost

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Data
string
data
The HTTP body payload to send to the URL. Must be a string or a reference to output from a previous step.
{"exampleKey": "Example Data"}
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

{
"data": null,
"contentType": "application/json"
}

POST/PUT Form Data Request

POST/PUT data as multipart/form-data. Often useful for uploading binary data. | key: httpPostFormData

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
File Data
string
Key Value List
fileData
File Data to be sent as a multipart form upload.
[{key: "example.txt", value: "My File Contents"}]
File Data File Names
string
Key Value List
fileDataFileNames
File names to apply to the file data inputs. Keys must match the file data keys above.
 
Form Data
string
Key Value List
formData
The Form Data to be sent as a multipart form upload.
[{"key": "Example Key", "value": new Buffer("Hello World")}]
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
HTTP Method
string
/ Required
httpMethod
post
 
 
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

The Post Form Data Action takes two possible inputs for data to be uploaded to an endpoint.

  • Form Data are key/value pairs. For example, "username"/"Groucho" and "accountnum"/12345. Values are turned into strings if they are not already. For more information see https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects
  • File Data is similar to form data but allows you to upload file contents. A filename property is automatically generated from the key. This should be used to upload files only. All other types of data should go through the Form Data Input.

PUT request

Issue a HTTP PUT request | key: httpPut

InputDefaultNotesExample
Connection
connection
connection
 
 
 
Data
string
data
The HTTP body payload to send to the URL. Must be a string or a reference to output from a previous step.
{"exampleKey": "Example Data"}
Debug Request
boolean
debugRequest
false
Enabling this flag will log out the current request.
 
Header
string
Key Value List
headers
A list of headers to send with the request.
User-Agent: curl/7.64.1
Ignore SSL Errors (Not Recommended)
boolean
/ Required
ignoreSslErrors
false
When this flag is enabled, SSL certificate errors will be ignored. Use this flag with caution - ignoring SSL errors presents security issues. This should only be used for testing purposes.
 
Include Full Response
boolean
includeFullResponse
false
Enabling this flag will include the full response instead of only the returned data.
 
Max Retry Count
string
maxRetries
0
The maximum number of retries to attempt.
 
Query Parameter
string
Key Value List
queryParams
A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
 
Response Type
string
responseType
json
The type of data you expect in the response. You can request json, text, or binary data.
binary
Retry Delay (ms)
string
retryDelayMS
0
The delay in milliseconds between retries.
 
Retry On All Errors
boolean
retryOnAllErrors
false
If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.
 
Timeout
string
timeout
The maximum time that a client will await a response to its request
2000
URL
string
/ Required
url
This is the URL to call.
https://api.company.com/endpoint
Use Exponential Backoff
boolean
useExponentialBackoff
false
Specifies whether to use a pre-defined exponential backoff strategy for retries. If this is set to true, 'Retry Delay (ms)' is ignored.
 

{
"data": null,
"contentType": "application/json"
}