Problem: Flowise Runs in Isolation from the Rest of Your Stack
Flowise builds powerful LLM pipelines — but by default they only respond to direct chat input. If you want a new HubSpot lead, a Typeform submission, or a Slack message to trigger your AI chatflow automatically, there's no built-in Zapier connector.
The fix is Flowise's REST API combined with Zapier's Webhooks by Zapier action. Two tools, one HTTP POST, and your AI pipeline fires on any external event.
You'll learn:
- How to expose a Flowise chatflow as an API endpoint
- How to configure a Zapier Zap to POST to that endpoint
- How to pass dynamic data (name, email, form fields) into your Flowise prompt
- How to use the response in downstream Zapier steps
Time: 20 min | Difficulty: Intermediate
Why There's No Native Flowise App in Zapier
Zapier's app catalog lists integrations maintained by the vendor or certified partners. Flowise (as of early 2026) does not have a first-party Zapier app. That's fine — Flowise exposes a clean REST API, and Zapier's Webhooks by Zapier action can call any HTTP endpoint. You get the same result with full control over the request shape.
What you need:
- Flowise instance accessible over HTTPS (self-hosted with a public URL, or Flowise Cloud)
- A built and deployed chatflow in Flowise
- A Zapier account (Webhooks by Zapier requires a paid plan — Starter or above)
Solution
Step 1: Deploy Your Flowise Chatflow and Get the API Endpoint
Open Flowise and navigate to the chatflow you want to trigger externally. Click API Endpoint in the top-right toolbar.
Flowise shows you the endpoint in this format:
POST https://your-flowise-domain.com/api/v1/prediction/{chatflowId}
Copy the full URL including the chatflow ID. You'll need it in Zapier.
If your Flowise instance requires API key authentication, go to Settings → API Keys, create a key, and copy it now.
Test the endpoint first before wiring up Zapier:
# Replace <URL> and <YOUR_QUESTION> with real values
curl -X POST https://your-flowise-domain.com/api/v1/prediction/<chatflowId> \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <your-api-key>" \
-d '{"question": "What is the refund policy?"}'
Expected output:
{
"text": "Our refund policy allows returns within 30 days of purchase...",
"question": "What is the refund policy?",
"chatId": "abc123"
}
If you get a 200 response with a text field, your chatflow is ready. If you hit a 401, double-check your API key header.
Step 2: Create a New Zap in Zapier
Log in to Zapier and click + Create Zap.
Choose your trigger app — this is whatever external event should kick off your Flowise pipeline. Common choices:
- Typeform — new form submission
- HubSpot — new contact or deal
- Gmail — new email matching a filter
- Slack — new message in a channel
- Google Sheets — new row added
Configure your trigger and test it. Zapier will load a sample record showing the fields available from that trigger — for example, a Typeform submission might give you Name, Email, Message.
Keep the sample data loaded — you'll map these fields into your Flowise request body in the next step.
Step 3: Add a Webhooks by Zapier Action
Click + to add an action step. Search for Webhooks by Zapier and select it.
Choose action event: POST
Fill in the fields:
URL:
https://your-flowise-domain.com/api/v1/prediction/<chatflowId>
Payload Type: json
Data (key-value pairs):
| Key | Value |
|---|---|
question | Map to your trigger field — e.g., the form's Message field |
overrideConfig | (optional — see Step 4) |
Headers:
| Key | Value |
|---|---|
Content-Type | application/json |
Authorization | Bearer <your-api-key> (only if API key auth is enabled) |
Click Continue, then Test step. Zapier will fire a real POST to your Flowise endpoint using the sample trigger data.
If it fails:
403 Forbidden→ Your Flowise instance is blocking external requests. Check CORS settings in your Flowise environment variables: setCORS_ORIGINS=*or whitelisthttps://hooks.zapier.com404 Not Found→ The chatflow ID in the URL is wrong. Copy it again from the Flowise API Endpoint dialog500 Internal Server Error→ The chatflow has a broken node. Test it in Flowise directly first
Step 4: Pass Dynamic Trigger Data into Your Flowise Prompt
Static questions work for simple cases, but the real power is injecting trigger data — like a customer's name or their support ticket text — into the prompt.
In the Zapier Data field for question, use Zapier's field mapping to build a dynamic string:
New lead from [First Name] [Last Name] at [Company]. Their inquiry: [Message]
Zapier substitutes the bracketed fields from your trigger data at runtime. Your Flowise chatflow receives a fully formed question each time.
If your chatflow uses a System Prompt node, you can also override it per-request using overrideConfig:
{
"question": "Summarize this support ticket: [Ticket Body]",
"overrideConfig": {
"systemMessagePrompt": "You are a support agent for [Company Name]. Be concise."
}
}
In Zapier's key-value Data interface, enter overrideConfig as a key and the JSON object as its value — Zapier will serialize it correctly inside the outer payload.
Step 5: Use the Flowise Response in Downstream Zapier Steps
Zapier captures the response from your Webhooks POST. The Flowise API returns:
{
"text": "Here is the AI-generated response...",
"chatId": "abc123",
"question": "The original question"
}
In any subsequent Zapier action step, you can reference text from the Webhooks response. Common uses:
- Send via Gmail → body = Webhooks
textresponse - Create HubSpot Note → content = Webhooks
textresponse - Post to Slack → message = Webhooks
textresponse - Append to Google Sheets → cell = Webhooks
textresponse
This closes the loop: external event → Flowise AI processing → automated action with the AI output.
Verification
Trigger your Zap manually from the Zapier editor using the test data. Then check three things:
# 1. Confirm the request hit Flowise — check your server logs
# On a self-hosted instance:
docker logs flowise --tail 50 | grep "prediction"
You should see a log line like:
POST /api/v1/prediction/<chatflowId> 200 843ms
In Zapier, the Webhooks step should show status 200 and the text field populated in the response output.
Finally, trigger a real event from your source app (submit the form, add the spreadsheet row) and confirm the full Zap runs end-to-end without errors.
What You Learned
- Flowise's
/api/v1/prediction/{chatflowId}endpoint is the integration surface for all external triggers - Webhooks by Zapier handles any REST API that lacks a native Zapier connector
overrideConfiglets you customize system prompts per-request without changing the chatflow- The
textfield in Flowise's response is what you map into downstream Zapier actions
Limitation: Webhooks by Zapier is a synchronous request — Zapier waits for Flowise to respond before moving to the next step. If your chatflow takes more than 30 seconds (large RAG chains, slow LLM), Zapier will timeout. For slow pipelines, consider triggering Flowise asynchronously and using a second Zap or polling step to retrieve the result.
Tested on Flowise 2.1.x, Zapier Starter plan, self-hosted on Ubuntu 24.04 with Docker