API Request
Actionnetwork
action.api_request
Make HTTP requests to external APIs and services. Supports all standard HTTP methods, custom headers, JSON request bodies, and multiple authentication schemes including Basic Auth, Bearer tokens, and API keys.
The response body and status code are available on separate output ports, making it easy to branch on success/failure using a downstream Condition node.
Destructive action
When the HTTP method is DELETE (and for some destructive POST/PUT patterns), this node removes resources on the remote service. Most APIs do not undo a DELETE. Workflows configured with DELETE prompt for confirmation on every arm.
Ports
| Direction | Name | Data Type | Description |
|---|---|---|---|
| Input | Input | Any | Incoming payload for URL and body interpolation |
| Output | Response | JSON | Parsed response body |
| Output | Status | Number | HTTP status code |
Configuration
| Field | Type | Default | Description |
|---|---|---|---|
| method | Dropdown | GET | HTTP method: GET, POST, PUT, PATCH, DELETE |
| url | Text | — | Request URL. Supports {{var}} interpolation. |
| body | JSON Editor | — | Request body as JSON. Visible when method is not GET. |
| Headers | |||
| headers | Key-Value | — | Custom HTTP headers as key-value pairs |
| Authorization | |||
| authType | Dropdown | none | Auth scheme: None, Basic Auth, Bearer Token, API Key |
| authUsername | Text | — | Basic auth username. Visible when authType = basic. |
| authPassword | Text | — | Basic auth password. Visible when authType = basic. |
| authBearerToken | Text | — | Bearer token value. Visible when authType = bearer. |
| authApiKeyName | Text | — | API key header/param name. Visible when authType = api_key. |
| authApiKeyValue | Text | — | API key value. Visible when authType = api_key. |
| authApiKeyIn | Dropdown | header | Where to send the key: Header or Query Param. Visible when authType = api_key. |
Output Variables
| Variable | Type | Description |
|---|---|---|
| responseBody | JSON | Response body content |
| statusCode | Number | HTTP response status code |
| responseHeaders | JSON | Response headers |
Example
Post a Slack message when a webhook fires: