define webhook --plain-english
Webhook
TLDR:An app that pings you the moment something happens.
"Don't call us, we'll call you."
A normal API request is you asking a question. "Hey Shopify, any new orders?" You walk up to the window, you ask, you get an answer. The problem is timing. If you want to know the second something happens, asking once isn't enough. You'd have to walk back up to the window and ask again. And again. All day. "Any new orders? How about now? Now?"
That's called polling, and it's exactly as exhausting as it sounds. You're the kid in the back seat asking "are we there yet" every thirty seconds. Most of the time the answer is no, so you've burned all that effort for nothing.
A webhook flips the whole thing around.
Instead of you asking over and over, you leave your number once and say "ping me the moment a new order comes in." Then you walk away and do literally anything else. When it happens, the app calls you, automatically, with the details already in hand. No asking. No waiting by the window.
Think of ordering a pizza. Two ways to find out it's ready:
Call the shop every five minutes. "Ready yet?" "Ready yet?" (That's the API way. You doing the work, over and over.)
They text you the second it leaves the oven. (That's the webhook way. They do the reaching out.)
One of those ruins your evening. The other lets you go watch TV until your phone buzzes.
This is the engine behind basically all automation. Once you see it, you'll spot it running quietly behind half the tools you use. Something happens in one place, and a webhook fires off to make something else happen somewhere else, with no human sitting there watching for it:
- A new sale fires a webhook that drops the customer onto your email list
- A new form submission fires one that pings your Slack channel
- A failed payment fires one that texts you, so you can catch it and save the sale before it's gone
That last one isn't hypothetical for me. On a store I run, a failed subscription payment used to mean we found out days later, after the customer had already churned and moved on. So I wired up a webhook: the moment a charge fails, it fires off and drops a note straight into our Slack with the customer's name and what bounced. Nobody refreshes a dashboard. Nobody checks a report on Monday. The failure itself does the knocking, and we get a shot at saving the sale while it's still warm.
So here's the clean way to hold the two in your head:
- An API is you reaching out. You ask, on your schedule, when you want to know something.
- A webhook is the world reaching back. It tells you, on its schedule, the moment something worth knowing happens.
Stop asking. Start getting told.