Most tools can already call a web address when something happens — a Zapier zap, an n8n workflow, a form, your CRM.
An inbound hook turns that call into a WhatsApp template, and nobody writes code: you paste one example of what the tool sends, and Flow works out which piece is the phone number and which fill the template’s blanks. About six minutes.
In review: written from the product, not yet walked through live.
1Open Inbound Hooks

2Name it, and choose what it does
- Send a WhatsApp template — type the template’s technical name (4); it must be approved.
- Send a WhatsApp message — free text, for customers who wrote to you in the last 24 hours.
- Create or update the contact — save the person in Flow.
- Tag the contact — add a tag, such as paid.

3Paste one example of what they send

4Tidy values on the way in
student.phone. A list is one value — to fill several blanks from it, have your tool send separate fields.5Add a condition, a proof and a daily cap
status is confirmed; other calls are answered but skipped. How the other app proves it’s really them (2) starts as the secret address alone; add a secret before real traffic (how). Never more than … a day (3) caps how many calls run each day, so a leaked address hits the cap, not your wallet. Click Create hook (4).
6Copy the address — it is shown once

7Try it without sending
dry-run/ to the end of the address and send the same example. Flow answers with what it would do (1), step by step (2), and the values it mapped (3) — and sends nothing. The panel under a new hook has this command ready to copy.curl -s -X POST "https://flowserver.skode.ai/api/v1/hooks/in/ik_…your hook…/dry-run/" \
-H "Content-Type: application/json" \
-d '{"phone": "919876543210", "Batch Number": "Batch 108"}'
8Switch it on in your tool, and watch it work
dry-run/ and trigger it. A successful call answers {"ok": true}; a refused one says why. Open the hook in the list to see its Recent calls — what arrived and what Flow did, and how many ran today against your cap. An inbound hook does one thing; for several steps in a row, build it in SkedX Automate.© 2026 SkedX · Sample data only · Share and link freely · Copying the product or its design is not allowed · Terms
Common questions
Can I change a hook after creating it?
When does the daily cap reset?
What does a hook answer when the condition doesn’t match?
200 with "skipped": true and the reason, so your tool doesn’t retry — nothing was sent.Can one hook send different templates?
My tool sends Interakt-shaped JSON with a list of values.
Useful links
- Inbound Hooks in Flow — Settings → Developers → Inbound Hooks
- Flow API reference — the hook address and its answers
Previous: Flow API errors, and how to fix each one · All APIs & Developers guides

