> For the complete documentation index, see [llms.txt](https://orimon.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://orimon.gitbook.io/docs/product-guides/workflows/action-node.md).

# Action Node

### 1. Creating a new node

* Click the **Add new node** button in the top-right corner to begin defining a new workflow element.
* From the dropdown, select **Action node**.
* A blank action node will appear at the start of the canvas, acting as a placeholder for your content.
* Drag the node to any location on the canvas—its position will be saved automatically.

<figure><img src="/files/mHpMU0JcxaRQjW1sMxW7" alt=""><figcaption><p>Workflow canvas with an empty action node</p></figcaption></figure>

### 2. Configuring an action

* Click **Configure Action** inside your Action Node to open the setup modal.&#x20;
* The modal is organized into three sections:
  * **Basic Configuration:** Enter an informative Action Name and a brief Description.
  * **API Configuration:**
    * **URL:** Enter the web address you want to call.
    * **Method** – Select the HTTP verb (GET, POST, etc.) from the dropdown.
    * **Headers** – `Content-Type: application/json` is always included and cannot be removed; add any custom headers you need.
    * **Request Body** – Use the JSON editor to build your payload. You can insert **shared data from the previous node** at any level of nesting (arrays, objects, or combinations thereof).
  * **Testing your API:** Fields for each piece of shared data will appear here. Provide sample values, then click **Test API** to validate your setup. After you run the test, the modal displays the response details so you can confirm success or troubleshoot errors. <mark style="color:yellow;">The</mark> <mark style="color:yellow;"></mark><mark style="color:yellow;">**Create Action**</mark> <mark style="color:yellow;"></mark><mark style="color:yellow;">button remains disabled until the test returns a successful 2xx status.</mark> If you encounter problems, please reach out to **<support@orimon.ai>**. Once your test passes, click **Create Action** to save your configuration and close the modal.

<div align="left"><figure><img src="/files/5IDdUM5ndkAlWMqrXx5P" alt="" width="375"><figcaption><p>Action Configuration drawer</p></figcaption></figure> <figure><img src="/files/1YXiH4C4ACqcr73RYbnk" alt="" width="375"><figcaption><p>Action Configuration drawer</p></figcaption></figure></div>

{% hint style="info" %}
**NOTE:** You can update an action by clicking on Update Action button.
{% endhint %}

### 3. Linking to a new node

After your action is saved, two connectors appear on the right side of the node:

1. **Success connector** :  The **top connector** in <mark style="color:green;">green</mark> represents a successful API call. A tooltip is also available. Drag the **success connector** to the node you want to run when the API succeeds.
2. **Failure connector** : The **bottom connector** in <mark style="color:red;">red</mark> represents a failed API call. A tooltip is also available. Drag the **failure connector** to the node you want to run when the API fails.

### 4. Response Data sharing

After a successful API call, the action node’s shared data is forwarded exclusively to the node connected by its **success handle.** <mark style="color:yellow;">When using the failure handle, no shared data is passed to the next node.</mark> <mark style="color:yellow;">Nodes further downstream that aren’t connected via that submit handle will not receive the data.</mark> To inspect the shared data, Click the **eye** icon on the connector edge to open the **Shared Data** panel and review the submitted **JSON form payload**.&#x20;

<figure><img src="/files/PHK93QP8ta0nFMnyl3lf" alt="" width="375"><figcaption><p>Shared Data panel on an edge connected from action to any node</p></figcaption></figure>

{% hint style="warning" %}
**NOTE**: To access a action’s success output in the immediately connected node, wrap the field key in double curly braces. Eg: if your response data has `title` as a key, include `{{response.title}}` in the next node to inject that value.
{% endhint %}
