Execute API
Description
The Execute API Activity enables workflows to connect and communicate with any RESTful API by executing configurable HTTP requests such as GET
, POST
, PUT
, or DELETE
. It allows users to define the request structure including headers, query parameters, body content, pagination rules, response parsing, and authentication.
This activity is highly flexible and supports integration with third-party systems, custom backends, public APIs, and , all without requiring external tools.
Use case:
In a logistics automation workflow, use this activity to call a courier tracking API likehttps://api.courier.com/track
to fetch live shipment updates. You can pass tracking numbers dynamically usingForm Data
, handle pagination, and export the results as JSON or CSV for audit purposes.
Input
Type | Required | Description |
---|---|---|
Data | Optional | Used when request parameters, body, or headers need to be constructed using values from previous activities (e.g., row-based input or iteration). |
Output
Field | Required | Description |
---|---|---|
Data | Optional | Used when request parameters, body, or headers need to be dynamically constructed using values from previous activities (e.g., row-based input or iteration). |
Configuration Fields
Field Name | Description |
---|---|
Connection | Authentication configuration for the API. Supports OAuth, Basic Auth, API Keys, etc. |
Request Type | HTTP method used for the API call (e.g., GET , POST , PUT , DELETE ). |
Request URL | Full endpoint URL for the API call. Variables can be injected using replacers like {{args.param}} . |
Content Type | MIME type of the request body (e.g., application/json , application/x-www-form-urlencoded , application/xml ). |
Headers | Custom HTTP headers as key-value pairs (e.g., Authorization , X-API-KEY , Accept ). |
Form Data | Used for submitting form-encoded data. Typically used with application/x-www-form-urlencoded . |
URL Params | Key-value pairs appended as query parameters to the endpoint (e.g., ?status=active&page=1 ). |
Parameters | Generic key-value inputs, optionally mapped to dynamic values from previous rows. |
Body | Body of the request, in raw JSON/XML format. Required for POST /PUT operations. |
Continue Execution on Failure | If enabled, the workflow continues even if the API request fails (useful for optional services or retries). |
Replacer for All Rows | Enables replacing placeholders with input values from each row (useful for batch processing or iterations). |
Next Page Key Path | JSON path to locate the next page token from the response for paginated APIs (e.g., data.pagination.next ). |
Next Page Key | Initial value of the pagination token (if available). |
Next Page Key Behaviour | Determines where the next page key is used (URL , Params , or Header ). |
Include Headers in Response | If enabled, response headers are returned along with the data. |
Read Next Page Key from Header | Enable to extract the pagination token directly from a response header. |
Replace Next Page Key With | Specifies the placeholder in the URL or body to be replaced with the next page key (e.g., {{nextPageToken}} ). |
Search Key to Replace | Field key in the response body whose value should be replaced dynamically. |
Root of Response | JSON path to the array/object that holds the main response content (e.g., results , data.items ). |
File Type | Desired export format from API response (e.g., CSV , JSON , XML ). |
JSON Field | Field inside the API response that holds the array to be exported. |
Delay | Optional delay (in milliseconds) between paginated requests or retries. |
Accept Encoding | Content encoding expected in the response (e.g., gzip , deflate ). |
Sample Input
Not applicable
Sample Configuration
Field | Value |
---|---|
connection.id | public-api-oauth |
requestType | GET |
requestUrl | https://api.example.com/customers |
contentType | application/json |
headers | { "Authorization": "Bearer {{args.token}}" } |
urlParams | { "status": "active", "limit": 100 } |
nextPageKeyPath | pagination.nextPageToken |
replaceNextPageKeyWith | {{nextPageToken}} |
nextPageKeyBehaviour | URL |
rootOfResponse | data.customers |
includeHeadersInResponse | true |
fileType | JSON |
Sample Output
Customer ID | Name | Status | |
---|---|---|---|
1001 | John Smith | [email protected] | Active |
1002 | Jane Doe | [email protected] | Active |
If
Include Headers in Response
is enabled, the output will also include an_headers
field containing all HTTP response headers.