n8n-nodes-pipelex
v0.1.0
Published
Pipelex n8n node package
Downloads
711
Maintainers
Keywords
Readme
What is this?
This is an n8n community node that lets you execute Pipelex AI pipelines directly in your n8n workflows. Transform unstructured data into structured knowledge using repeatable AI operations.
What is Pipelex?
Pipelex is an open-source runtime to build and run AI methods. A method is a reusable, typed AI procedure declared in a .mthds file and executed by Pipelex — each step is explicit, every output is structured, and every run is repeatable.
Compose "pipes" that route across 60+ models, return structured outputs, and orchestrate sequentially, in parallel, or conditionally — sharing methods with the community via mthds.sh.
Learn more about Pipelex:
Installation
Prerequisites
This node runs your pipelines through the hosted Pipelex API's durable run lifecycle: it starts a run via POST /v1/start and polls GET /v1/runs/{pipeline_run_id}/results internally until the result is ready. The credential's Base URL defaults to the hosted API at https://api.pipelex.com.
🔑 On the hosted API (
api.pipelex.com), run access is gated for now. Starting runs there currently requires an admin /runs:execute-scoped key. The credential Test only checks that your token is valid, so a non-scoped key will test green but return a clear "lacks runs access" error when you actually run a pipeline. Join the waitlist to be notified when self-serve run access opens up.
ℹ️ Hosted-only: the run-lifecycle polling routes (
/v1/runs/*) and theMethod IDfield are hosted-API extensions, not part of the bare MTHDS Protocol — a bare runner does not implement them. To use your own backend, point the Base URL at a server exposing the same hosted surface (/v1/start,/v1/runs/{pipeline_run_id}/results,/v1/auth/verify).
Install the n8n Community Node
Follow the installation guide in the n8n community nodes documentation.
Credentials
This node requires a Pipelex API credential to authenticate with your Pipelex API server. The credential carries both the Base URL and the Bearer Token.
Setting up credentials:
- In your n8n workflow, add a Pipelex node
- Click on Credential to connect with → Create New Credential
- Fill in:
- Base URL — defaults to
https://api.pipelex.com(the hosted Pipelex API). Point it at your own server if you self-host the hosted run surface. - Bearer Token — your Pipelex API token (sent as
Authorization: Bearer <token>)
- Base URL — defaults to
- (Optional) Click Test — the credential is verified against
GET /v1/auth/verifyon your base URL.
⚠️ The credential Test only confirms your token is valid, not that it can start runs. Running a pipeline needs a key with runs access (admin /
runs:executescope, see above). A valid-but-unscoped key passes the Test and then returns an actionable error on Run.
Where to get your Bearer Token: create one at app.pipelex.com. Hosted run access is gated for now — join the waitlist.
Node Configuration
The Pipelex node has one Operation selector with four operations, mirroring the mthds-js client surface (start / waitForResult / getRunResult — SDK conveniences over the MTHDS Protocol routes):
| Operation | What it does | Endpoint | Returns |
|---|---|---|---|
| Start & Wait for Result (default) | Starts a durable run and polls internally until it finishes — paste, run, get the result. The polling is invisible: no Wait-node loop to assemble. If Max Wait (default 300s) is exceeded, returns the pipeline_run_id with a "still running" message instead of failing. | POST /v1/start then GET /v1/runs/{pipeline_run_id}/results | { status, pipeline_run_id, main_stuff } |
| Start Pipeline | Starts a durable run and returns immediately — no waiting. The output's pipeline_run_id is the point: feed it to Poll & Get Result or Get Run Result later, even from another workflow branch or a separate scheduled workflow. | POST /v1/start | { pipeline_run_id, state, created_at } (the StartAck) |
| Poll & Get Result | Waits for an already-started run by pipeline_run_id: polls until it finishes or Max Wait is exceeded (then the same "still running" output, not an error). | GET /v1/runs/{pipeline_run_id}/results (polled) | { status, pipeline_run_id, main_stuff } |
| Get Run Result | Fetches a run's result once by pipeline_run_id — no polling. Returns status: "RUNNING" while still in flight, the result when COMPLETED. | GET /v1/runs/{pipeline_run_id}/results | { status, pipeline_run_id, main_stuff } |
Which one to use?
- Quick runs → Start & Wait for Result: one node, start to result.
- Long runs → Start Pipeline, then Poll & Get Result later (or on another workflow branch) when you actually need the result.
- Webhook-style / fire-and-collect → Start Pipeline, then Get Run Result on a schedule until it reports
COMPLETED.
ℹ️ The published 0.0.x
executeoperation value (the old "Execute Pipeline") still executes as a hidden alias of Start & Wait for Result — existing saved workflows keep running without edits.
Pipeline-definition fields (Start & Wait for Result / Start Pipeline):
| Parameter | API Field | Description |
|---|---|---|
| MTHDS Bundles | mthds_contents | One or more inline MTHDS bundles (a string[]). Combinable with Method ID — inline bundles run, method_id links the run to the stored method. |
| Inputs | inputs | JSON object whose keys match your pipeline's expected inputs. Defaults to {}. |
| Pipe Code | pipe_code | Code of the pipe to execute (registered on the server, or defined in the MTHDS Bundles). |
| Method ID | method_id | ID of a stored method whose MTHDS source supplies the bundle (hosted API only) — the alternative to pasting bundles inline. |
| Output Name | output_name | Optional name of the output variable. |
| Output Multiplicity | output_multiplicity | Optional output multiplicity. |
| Dynamic Output Concept Ref | dynamic_output_concept_ref | Optional override for the dynamic output concept ref. |
Run target (Poll & Get Result / Get Run Result): Pipeline Run ID — the pipeline_run_id returned by Start Pipeline (or by a "still running" output).
Polling control (Start & Wait for Result / Poll & Get Result): Max Wait (Seconds) — max seconds to wait for the run to finish (default 300, safe under typical n8n Cloud execution caps). On exceed, the node returns the pipeline_run_id + a "still running" message so you can fetch it later with Get Run Result. 0 waits indefinitely (only sensible on self-hosted n8n without execution timeouts). The server's Retry-After drives the poll cadence (5s when absent).
Note: Provide at least one of Pipe Code, MTHDS Bundles, or Method ID. Learn more about the Pipelex API here.
No "Custom API Call" entry: n8n injects that raw-HTTP operation into nodes whose credential declares a generic authenticate block. This node's credential doesn't (the node builds its Authorization header itself), so the dropdown contains only the four curated operations above.
Usage
Quick Start
- Add the Pipelex node to your n8n workflow
- Configure the credential (Base URL + Bearer Token) — defaults to
https://api.pipelex.com - Pick the operation:
- Start & Wait for Result (default) — start the run and get the result in one node; the polling happens internally
- Start Pipeline — start the run and return immediately with its
pipeline_run_id(collect the result later) - Poll & Get Result — wait for an already-started run by
pipeline_run_iduntil it finishes (or Max Wait) - Get Run Result — a one-shot, non-blocking fetch by
pipeline_run_id(returnsstatus: "RUNNING"while still running)
- Provide the pipeline: a
Pipe Code, inlineMTHDS Bundles, or a storedMethod ID - Set Inputs as a JSON object matching your pipeline's expected inputs
- Run the workflow
Long-running pipelines: Max Wait (default 300s) caps how long the polling operations block the n8n execution. If a run outlives it, the node returns the pipeline_run_id with a "still running" message — feed that id to Get Run Result later (e.g. on a schedule) or to Poll & Get Result to keep waiting. Or skip the first wait entirely: Start Pipeline now, collect later. Learn more about the output format here.
Examples
WIP
Resources
Documentation
- 📚 Pipelex Documentation - Complete guide to building pipelines
- 🔌 Pipelex API Documentation - API reference and integration guide
- 🔧 n8n Community Nodes - n8n node development guide
Community & Support
- 💬 Discord Community - Get help and share your workflows
- 🐛 GitHub Issues - Bug reports and feature requests
- 🌐 Pipelex Homepage - Learn more about Pipelex
Contributing
We welcome contributions! If you'd like to improve this node:
See CONTRIBUTING.md for more details.
Please report bugs and request features via GitHub Issues.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgments
Built with ❤️ by the Pipelex team and community.
Special thanks to the n8n community for building an amazing automation platform.
