FlowRunner
PricingContact
Theme
Start Free

Kaleyra

Messaging

Send SMS and WhatsApp messages worldwide through Kaleyra, the Tata Communications CPaaS. Agents deliver transactional, OTP, and promotional messages from approved sender IDs, run OTP verification flows, and check delivery status for auditing.

5 actions API key available
Kaleyra website ↗ Platform Documentation ↗ Capability data verified 2026-07-28
A new customer signup submits a phone number during checkout
Send OTP Verification starts a Kaleyra Verify flow against the submitted number
The verification ID confirms the code the customer entered, gating account creation on a real phone
Send SMS delivers the order confirmation as transactional traffic from the approved sender ID
Get Message Status polls the message ID until delivery confirms or fails
Failed or undelivered messages post to the operations channel with the recipient and status
An operator reviews the failure pattern and decides whether the sender route or the number data is the problem

What This Integration Enables

SMS is the channel that still works when the app is uninstalled and the email is unread, which is why operations teams route their most consequential messages through it. Kaleyra is Tata Communications' CPaaS rail for exactly that traffic: global SMS from pre-approved sender IDs, WhatsApp Business messages via templates or open sessions, and hosted OTP verification flows. This connector makes all of it callable from FlowRunner workflows, with every send returning a message ID that agents can audit. What matters is not that agents can send messages. It is that the send becomes accountable: - Transactional notifications fire from workflow events with the correct traffic classification, not a generic route - OTP verification gates account creation and checkout on a phone number that actually receives messages - WhatsApp conversations respect the platform's rules: templates for business-initiated messages, free text only inside the open 24-hour window - Delivery status is polled and acted on, so a failed message becomes an escalation instead of silence - List Messages turns outbound traffic into a reconcilable record for auditing and spend review Because every message costs money and lands on a personal device, FlowRunner's [human-in-the-loop](/concepts/human-in-the-loop) layer draws the line between traffic classes: transactional and OTP sends run autonomously, promotional volume waits for a person.

Without FlowRunner

Delivery is assumed, not known The app fires an SMS and moves on, and nobody learns the confirmation never arrived until the customer calls
Traffic types are an afterthought OTP, transactional, and promotional messages leave through the same pipe, risking route compliance in regulated corridors
Messaging spend is invisible Outbound volume grows quietly and the first accounting is the invoice

With FlowRunner

Every send closes its loop Agents poll Get Message Status on the returned ID and route failures to a person instead of a void
Traffic is classified at send time Each message declares OTP, transactional, or promotional, matching Kaleyra's routing to the message's actual purpose
Volume is reconciled continuously List Messages feeds reporting on a schedule, so traffic and spend are audited as they happen

Use Case Scenarios

Signups verified before they become accounts

A [Typeform](/integrations/typeform) submission delivers a new signup with a phone number. The agent calls Send OTP Verification, Kaleyra generates and delivers the code over the channels configured in the Verify flow, and the returned verification ID validates what the customer types back. Only verified numbers become accounts. Downstream, every transactional message in the customer's lifecycle goes to a number known to be real, which is the cheapest fraud and deliverability fix available: never messaging a wrong number in the first place.

Delivery failures become operations events

Order confirmations and delivery updates flow out through Send SMS as transactional traffic. Each message ID is logged to [Google Sheets](/integrations/google-sheets) with recipient and timestamp, and the agent polls Get Message Status until the message resolves. When a status comes back failed or undelivered, the agent posts the recipient, sender ID, and status detail to [Slack](/integrations/slack). One failure is noise; the agent watching the pattern can tell the team when a specific corridor or sender route starts degrading, which is a conversation with Kaleyra support worth having before customers notice.

WhatsApp follow-ups that respect the session window

A customer replies to a WhatsApp message about their order, opening the 24-hour customer service window. Within it, the agent answers with free-form text through Send WhatsApp Message: delivery updates, a rescheduling link, a support handoff. When the window closes and the account team wants to re-engage, the agent switches to a pre-approved template, because that is what WhatsApp requires of business-initiated messages. The workflow encodes the platform's rules, so compliance is structural rather than something each sender has to remember.

Human-in-Loop Highlight

Send SMS accepts comma-separated recipients and a Promotional traffic type, and that combination is the costly, unrecallable operation on this connector: a promotional blast to a list spends real money per message and lands on hundreds of personal phones, where a wrong audience or a wrong message is not something you can unsend, and in many jurisdictions is a regulatory event. So in FlowRunner, promotional sends to more than a single recipient are gated: the agent assembles the recipient list, drafts the message, states the count and traffic type, and a named owner approves before dispatch. Transactional and OTP messages flow autonomously because each one is individually triggered by an event the customer caused. The distinction is the traffic type itself, which makes the gate enforceable by the workflow rather than by hope.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

5 actions

Messaging

4
  • Send SMS Sends an SMS message through Kaleyra to one or more recipients. Recipients must be in international E.164 format (e.g. 918888888888); multiple numbers can be comma-separated. The sender must be a pre-approved sender ID (alphanumeric or short/long code) registered on your Kaleyra account. Choose a message type that matches your traffic: OTP for one-time passwords, Transactional for account/order notifications, or Promotional for marketing. The request body is sent as application/x-www-form-urlencoded.
  • Send WhatsApp Message Sends a WhatsApp message through Kaleyra to a single recipient using a WhatsApp Business Account (WABA). Recipients must be in international E.164 format (e.g. 918888888888). The sender must be a WhatsApp-registered sender number/ID on your Kaleyra account. Provide either free-form text (only valid inside an open 24-hour customer service window) or a pre-approved WhatsApp template name for business-initiated conversations. The request body is sent as application/x-www-form-urlencoded.
  • Get Message Status Retrieves the current delivery status and full details of a previously sent message (SMS or WhatsApp) by its Kaleyra message ID. Use this to poll for delivery confirmation, check for failures, or audit a sent message. The message ID is returned by Send SMS or Send WhatsApp Message.
  • List Messages Lists messages sent through your Kaleyra account, most recent first, with optional filtering by recipient, sender, status, and date range. Supports pagination via limit and page. Useful for reporting, reconciliation, and auditing outbound traffic.

Verification

1
  • Send OTP Verification Initiates an OTP (one-time password) verification for a phone number using a pre-configured Kaleyra Verify flow. Kaleyra generates and delivers the code over the channel(s) defined in the flow (SMS, WhatsApp, voice). Returns a verification ID used to validate the code the user enters. The request body is sent as application/x-www-form-urlencoded.

Frequently Asked Questions

What can FlowRunner do with Kaleyra?

FlowRunner agents can run Send SMS, Send WhatsApp Message, and Get Message Status in Kaleyra, plus 2 more actions.

Does connecting Kaleyra to FlowRunner require OAuth?

No. Kaleyra connects to FlowRunner with an API key, no OAuth flow required.

Can Kaleyra trigger a FlowRunner workflow automatically?

Kaleyra doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with Kaleyra

$100 in credits. No card required. Connect in minutes.