The platform
Every conversation, one platform, and the number under guard.
Eight modules that share one live record of every customer. Nothing here is a costly add-on: every Leapstream workspace gets all of it.
Number Quality Guard
We protect the asset your business runs on.
A WhatsApp number carries a quality rating and a daily limit that Meta moves without asking. Since October 2025 one bad campaign damages every number in your portfolio. Every other platform tells you afterwards. This one watches, slows down, stops, and tells you why.
- Auto-pause, mid-send. A campaign stops on its own when the rating drops to red or failures spike while it runs, and resumes only when a person says so.
- Rating-drop attribution. When the rating falls, the alert names what the number was sending in the seven days Meta judged, ranked by who turned it away and the opt-outs that followed.
- Alerts from Meta, in words. Limit decisions, restrictions, bans and their lifting, flagged numbers and limit changes, each with one line of advice, counted in the header until cleared.
- Frequency caps at the queue. Up to four rolling windows per workspace, such as two marketing messages a week, enforced across every campaign and journey. Deferred, never dropped.
of 5,000 today · tier 3 of 5
RatingMedium
Two campaigns paused by the Guard
14/07, 6:40 pm
Rating fell to Medium. Festive launch and Re-order nudge paused themselves.
14/07, 6:41 pm
In the seven days Meta judged: festive_launch_v3 had 41 recipients turn it away and 12 opt-outs. Next: reorder_reminder, 6 and 2.
Campaigns and templates
Know the cost, the audience and the risk before you press send.
A campaign here is reviewed, not launched. The estimate is exact and in rupees, the audience is honest about who will be held back and why, and the send is paced to the number's limit instead of fired at it.
- Exact cost before sending. Rupee cost by Meta category at Meta's own rate card, no markup, with who is held or skipped and why.
- A/B with a hold-out. Send two variants to a sample. After the decision window the winner goes to the rest on its own.
- Maker-checker approval. Agents draft, managers approve. The riskiest action in the product always asks first.
- Recurring, retargeting, best hour. Weekly campaigns on a schedule. Re-broadcast to "delivered, not read" in two clicks. Each contact's best hour learned from when they read.
Estimated cost, at Meta’s rate
₹0.00
4,600 people now · Marketing, at Meta’s rate card · no markup
212
held by a frequency cap until Friday. Deferred, not dropped.
1,384
skipped: opted out, low engagement, or inside quiet hours.
Paced over 46 minutes to fit today’s allowance. A/B hold-out of 10%, winner by read rate at two hours.
Drafted by Aman, 12/09/2026, 4:20 pm. Waiting for a manager to approve.
Contacts, segments and forms
A contact is a person, not a phone number.
Typed fields that mean something, a pipeline you can see as a board, segments that stay live, and native WhatsApp forms whose answers land straight on the contact.
- An import that does not drop rows. Column mapping, a validation preview with bad numbers flagged, duplicate handling you choose, a dry-run report, missing stages offered, Google Sheets in and out.
- Typed fields. Number, date, choice, text, boolean. A date compares as a date, so "renewal within 30 days" works.
- Segments that stay live. All-or-any rules on tags, stage, engagement, dates and attributes. Refreshed continuously, never a snapshot.
- Stages. One ordered pipeline per workspace: a board with drag, a filter, a segment rule, a journey trigger, a report, an API field.
New41
- Neha Joshi
- Vikram Rao
- Pooja Nair
Qualified18
- Aman Verma
- Sunita Patel
Booked9
- Karan Mehta
- Riya Shah
Chatbot flows and journeys
Bots that ask, look things up in your system, and hand over with context.
Build on a canvas with a live WhatsApp preview beside it, test on your own number, publish a version, roll back in a click. Drips run on the same guard rails as campaigns.
- Call your API mid-flow. Credentials in an encrypted store, a request in the flow, the answer used in the next message. Bots that know order status or free slots.
- Live preview and sandbox. Walk the flow as a fake customer while building, then run the draft on your own number before publishing.
- Versions and rollback. Publish v3, restore v2 in a click. Contacts mid-flow finish on their version.
- Analytics on the node, branches on time. Entries and drop-offs per step, drawn on the canvas. "No reply in four hours", working-hours routes, a fallback for the unexpected.
Keyword
“book”
1,240 in
List
What would you like?
68% chose book
Ask
Which date?
98% answered
Call API
GET /slots?date=…
412 ms
Hand over
Front desk, with path
7% dropped at the question. A nudge after four hours brought a third of them back. Timeout branch: 4 h.
Analytics, return on spend and AI
Numbers that say whether it worked, and an AI that reads them.
Every status change is stored as an immutable event, so every figure traces back to a message. Costs use Meta's own daily figures, not an estimate.
- Funnel with cost per stage. Sent, delivered, read, clicked, replied, converted, with failure reasons and the rupee cost of the campaign.
- Revenue attribution. Conversions via the API land on the campaign, the journey and the ad click that started the conversation, and are reported back to Meta's Conversions API with a delivery log.
- Ad spend, cost per lead. Record spend by hand or import it. Cost per lead and revenue by ad, beside conversations per ad.
- Conversations, team, pipeline, growth. Volume by day and hour, business- versus user-initiated, reply cost after October 2026, response and resolution times, ratings per agent, stage by stage.
- Sent4,600
- Delivered4,41896%
- Read3,12771%
- Clicked1,39845%
- Replied61244%
- Converted27645%
₹3,609 spent at Meta’s rate · ₹4.6L attributed from 276 conversions posted by the store · ₹13.08 per conversion
Developer platform
Built to the standard you expect from a payments API.
A versioned REST API with scoped keys, idempotent writes and signed webhooks, documented from the same spec the server runs on.
- REST API at /v1. Messages, templates, contacts, segments, campaign triggers, media, journeys, conversions, events. Idempotency keys, cursor pagination, one error envelope.
- Scoped keys. Per-key scopes, rate limits with headers, test mode, an IP allowlist, revoke, last-used visibility.
- Webhooks with a debugger. HMAC-signed, retried with backoff. Every delivery attempt, payload and response kept, redeliver in one click.
- Docs from the spec. A public reference rendered from the live OpenAPI spec, with an in-dashboard reference and curl examples.
# send a template with a document
POST /v1/messages
Idempotency-Key: report-88213
{ "to": "919876543210",
"template": {
"name": "report_ready",
"params": { "patient_name": "Sunita" },
"header": { "document": "https://…" } } }
# 201 Created
{ "id": "msg_01J8…", "status": "queued",
"cost": { "category": "utility", "inr": 0.115 } }Webhook deliveriescrm.example.in
- message.status_changed · read200 · 84 ms
- contact.stage_changed · Booked200 · 61 ms
- message.received503 · retry 3 of 5 in 4 min
- flow.session_completed · Appointment FAQ200 · 122 ms
HMAC-SHA256 signed, timestampedRedeliver
Security and service
Enterprise-grade inside. Human on the outside.
Isolated, encrypted and audited from day one. Onboarded by a person, not a signup form.
- Isolated workspaces. Every query scoped to your workspace at the database layer and tested with deliberate breach attempts.
- Encrypted credentials. Meta tokens and API connections under AES-256-GCM, never logged, never in code.
- Roles you compose. Owner, admin, agent, or your own roles from twenty-four granular permissions, checked on every route.
- An audit trail you can read. Every significant action logged with who, when and from where. Sessions listed and revocable.
- 12/09, 4:20 pmAman · Submitted campaign “Festive launch” for approval· 103.24.x.x
- 12/09, 4:31 pmPriya · Approved campaign “Festive launch”· 49.36.x.x
- 12/09, 4:32 pmQuality Guard · Held 212 recipients under the weekly frequency cap· system
- 13/09, 9:02 amOwner · Revoked session on an unrecognised device· 157.49.x.x
Setup5 of 6
- Meta app connected
- Webhook receiving
- Number registered
- Templates imported (14)
- Team invited (6)
- First campaign reviewed
And the hundred smaller things.
A Home that triages what needs a person now. An attention strip on every screen. An installable app with push alerts. A command palette. Light and dark, both measured for contrast. Many numbers in one workspace. Email that sends one digest a day instead of forty mails. Excel from every table. Members, templates and tags retired rather than deleted.
Talk to us.
In a forty-minute call we go through what you send today, what it costs you, and what a flagged number would cost you. Then we set up a workspace on your own Meta app and build the first campaign with you.