> For the complete documentation index, see [llms.txt](https://docs.zaia.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zaia.app/workflows/workflows-overview.md).

# Workflows: Overview

Workflows allow you to create automated processes inside Endless.\
They are made of **nodes**, each one representing an action (like receiving a webhook, calling an API, or returning a response).

With Workflows you can:

* Connect external services via webhooks or HTTP requests.
* Allow Agents to trigger multi-step processes.
* Organize logic visually, step by step.

***

### 🛠️ How Workflows Work

* A Workflow is a **blank canvas** where you drag and drop nodes.
* Each Workflow has a **trigger** (for example, a webhook call or an Agent request).
* You can then chain actions like making an HTTP request, saving variables, or sending back a response.

***

### 🔑 Available Nodes

Currently, you can use:

* **Webhook Request** → receives data from an external service.
* **Webhook Response** → sends back a reply to that service.
* **Agent Request** → lets an Agent call this workflow.
* **Agent Response** → sends information back to the Agent.
* **External Event Trigger** → starts a workflow when a supported external event arrives.
* **HTTP Request** → call an external API (GET, POST, PUT, DELETE, PATCH).
* **Define Variables** → store values for later use in the workflow.
* **LLM** → call a language model to process or generate text.
* **Message Sending** → send outbound WhatsApp or Instagram messages. WhatsApp supports text and templates. Instagram supports text sent to a comment or scoped user ID.

***

### 📌 Why Use Workflows

* No need for custom code — build automations visually.
* Reuse them across different Agents.
* Control the logic of how and when actions happen.

Workflows are the **orchestration layer** of Endless.\
They allow you to go beyond simple tool calls, creating structured flows that respond exactly the way you need.

***

👉 Next: we’ll explore each **node** in detail, starting with **Webhook Request**.
