Gary Club

Zapier and n8n

Both directions, with the honest differences between the two: connecting n8n once and having every workflow discovered, connecting Zaps one at a time, Zapier MCP, and why nothing is ever retried.

Updated September 21, 20269 min read

This is the connection that buys the most for the least. Everywhere else on your Connections page you hand your operator one app. Here you hand it everything you have already wired together, which on Zapier is several thousand apps and on n8n is whatever you were willing to build.

It works in both directions. Your operator can start one of your automations, and one of your automations can hand your operator work.

If you are not sure which integration to reach for first: the transcript of a sales call arriving within a minute of the call ending is the single highest value thing most clients wire up, and it is the inbound direction. Start there, then come back for the outbound half.

The two are not the same, and it decides your setup

They look alike and they are not. Thirty seconds here saves an afternoon.

n8nZapier
Connect itOnce, with an address and an API keyOne connection per Zap
Finds your workflowsYes, automaticallyNo. There is no way to
Tells you what is failingYes, from execution historyNo
Your operator can start oneYes, via its Webhook nodeYes, via its Catch Hook
It can act inside your appsThrough workflows you buildDirectly, via Zapier MCP

The difference is not a choice we made. Zapier publishes no API for your own Zaps. Nothing can list them, and nothing can run one by name. The only door in is a Catch Hook URL, which is why a Zap is connected one at a time and why the name you give each one carries so much weight: it is the only handle your operator has on it.

Your operator cannot see your Zaps. It can start the ones you handed it, and that is the whole of it. If you ask it to list your Zaps it will tell you it cannot, rather than guessing at names.

Connecting n8n

Make an API key in n8n

Settings, then n8n API, then Create an API key. Give it a label and an expiry, and copy it. It is shown once.

Find your address

The one in your browser bar. On n8n Cloud it ends .app.n8n.cloud. If you host n8n yourself it is your own domain. Paste the address as you see it: we trim any path you leave on the end.

Add n8n on your Connections page

Under What you have already automated. It asks for the address and the key.

It is checked before it is called connected

We ask your n8n whether the key works. If the address is wrong you are told it is the address; if the key is wrong you are told it is the key. Those are different fixes and guessing between them wastes an afternoon.

Two things worth knowing before you make the key. The n8n API is not available during n8n's free trial. And outside n8n's Enterprise plan, an API key carries full access to the account, including your stored credentials, so treat it as an admin key rather than a read only one.

What the key buys you

Once connected, every active workflow that begins with a Webhook node is discovered automatically. You never paste a workflow URL, and a workflow you add next month appears without anyone touching this page.

It also means your operator can answer a question no Zapier user can ask: which of my automations have been failing? It reads execution history, so a workflow that has been quietly erroring since Tuesday is something it can raise rather than something you find in a month.

Why a workflow might not be startable

Your operator will tell you which of these it is, because each has a different fix and only you can make it.

What it saysWhat is actually wrongYour fix
Nothing to trigger: this workflow has no Webhook nodeIt is scheduled, or another workflow calls it.Add a Webhook trigger in n8n, if you want it startable from outside.
Inactive in n8n, so its production URL returns 404An n8n workflow's production URL does not exist until the workflow is published.Turn it on in n8n.
Its Webhook node requires header authYou set authentication on the node.Either remove it, or tell us the header so we can send it.

We only ever use the production URL, never the test one. An n8n test URL answers for 120 seconds after somebody presses Listen for Test Event in the editor, so a run against it would work perfectly in a demo and fail silently forever after. From the outside those two look identical, which is exactly why we do not use it.

Connecting a Zap

Open the Zap you want your operator to be able to start

It has to be a Zap whose trigger you are willing to change, because the trigger becomes the webhook.

Set the trigger to Webhooks by Zapier, event Catch Hook

Zapier generates a URL that looks like https://hooks.zapier.com/hooks/catch/1234567/abcdefg/. Copy it.

Add Zapier on your Connections page and paste the URL

One connection per Zap.

Name it after what the Zap DOES

Not after the tool. In six months Send the contract will tell you what it is and Zapier 2 will not, and the name is what your operator uses to choose between them.

Why Zapier says delivered rather than connected

Every other connection is checked with the vendor before we call it connected. Zapier cannot be, and we would rather say so than show a tick we did not earn.

The only way to test a Catch Hook is to post to it, and posting to it runs the Zap. A connection test that emails your customer, creates a row in your CRM or charges a card is not a test. So we hold the URL, we say that we hold it, and the first real use is the first proof.

Zapier MCP: acting inside your apps

A separate mechanism, and worth it if you want your operator doing things in apps rather than only starting a Zap.

Create a server at mcp.zapier.com

Tick the actions you want available.

Copy the server URL into the Zapier MCP connection

Those actions become tools your operator can use directly.

Tick only what you are content to see happen unasked

The list you tick is the entire boundary, and it is enforced by Zapier rather than by us.

Zapier bills each successful action as two tasks on your plan. Failed ones are free. At any volume that is a real line on your Zapier bill, so it is worth knowing before you connect it rather than at the end of the month.

What happens when it starts one

Starting an automation is a real action in your business. It books, charges, emails and messages real people, so it sits behind the same ladder as everything else and arrives switched off. See Skills, where the job is called Automations and is marked hard to undo.

There are three outcomes, and the third is the one to understand properly.

OutcomeWhat it meansWhat your operator says
StartedThe automation accepted the request.Started your Send the contract.
RefusedThe hook is gone, the Zap is off, or the webhook wants authentication.It names the reason, because all three are fixable.
UnknownNo answer came back at all.I am not sure whether that went through. Check that automation's own history before running it again.

Nothing is ever retried automatically, and that is deliberate. A Catch Hook that times out may have already run the Zap, and it tells us nothing about what happened. A retry would book the appointment twice, charge the card twice, or send the customer two contracts, and neither of us would know. An honest I am not sure is worth more than a duplicate invoice.

A worked example

Clients on Demand run their sales calls through Zapier. The shape they use is the one most businesses end up with:

Outbound: the operator starts a Zap

When a deal reaches a stage, the operator fires a Catch Hook named Send the onboarding pack. Zapier does the rest inside their own stack, exactly as it already did when a human clicked it.

Inbound: a Zap starts the operator

When their recorder finishes transcribing a call, it fires a Zap, and that Zap posts the transcript to an address created on the Connections page. Note that it hangs off the transcript being ready rather than the call being over: those are minutes apart, and the earlier one sends an empty transcript. See sending things to your operator.

The operator writes the follow up

It reads the transcript privately, and writes the prospect a short, specific note that picks the conversation up where the closer left it. The prospect never sees the transcript.

Nothing in that list required us to integrate their recorder, their CRM or their contract tool. They had already wired those together; the connection just let their operator use the work.

Common questions

No. A Catch Hook is one way: we post into it, and it hands nothing back, not even whether the Zap succeeded. If you need a result, have the Zap post it to an incoming address when it finishes.

Nothing breaks. The URL is what we hold, and Zapier keeps it stable for the life of the Zap. The name on your Connections page is ours and you can edit it whenever it stops being accurate.

Yes. Add each one with its own address and key, and name them. Cloud and self hosted side by side is a normal setup.

No, they solve different problems. Catch Hooks start work you have already designed. MCP lets it take an action you never built a Zap for. Plenty of clients use only the first.

Your operator reports that it could not reach your n8n and says the list of workflows it can offer you is therefore incomplete. It does not report that you have no automations, because that is a different and untrue statement.

Nothing you will hit in normal use. If an automation is being started in a loop, that is a bug worth telling us about rather than a limit to tune.

Was this page helpful?