Wappi
MessagingDrive a WhatsApp session through the Wappi gateway, sending text, media, locations, contact cards, buttons, lists, and polls. Agents run rich WhatsApp interactions and read chat history back.
What This Integration Enables
Be clear about what Wappi is, because it changes how you should use it. A Wappi profile is a logged-in WhatsApp session. You link a real WhatsApp account to it by scanning a QR code or entering a pairing code, and every operation the connector performs is performed by that account. The connector exposes the session's own lifecycle to prove it: Get Profile Status reports whether the session is authorised and ready, Get QR Code and Get Auth Code produce the linking credentials, and Restart Profile is the documented recovery when the session stops responding or messages stay queued. This is a session gateway, not an approved WhatsApp Business API sender, and the two are materially different in reliability posture and in what the recipient sees on the other end.
What that posture buys is range. There is no template approval step and no 24 hour service window to route around, and the message palette is the richest in this batch: tappable buttons and list menus that return an identifier your flow branches on, polls with configurable multi-select, locations, contact cards, reactions, edits, quoted replies, typing indicators, and stories. There is a full read surface too, Get Chat Messages, Search Messages, Get Sent Message History and Download Message Media, plus complete group administration. What it costs is that the identity behind every message is a phone rather than a verified business sender, and that the channel depends on a session staying live. There is no trigger, because Wappi delivers inbound messages to a webhook URL configured in its account interface with no API to create or delete the subscription, so flows here are started by a schedule or by the business systems around WhatsApp and Get All Messages exists for sweeping when a webhook is not in place.
Without FlowRunner
With FlowRunner
Use Case Scenarios
Delivery confirmation the customer answers with a thumb
Tomorrow's route is finalised in Onfleet. The agent calls Get Profile Status to confirm the session is ready, then runs Check Number Registered over the stop list, remembering that numbers must start with the country code so a Russian or Kazakh number begins with 7 rather than 8. For each confirmed number it calls Send Buttons Message with the slot and three buttons: confirm, move to the later window, cancel. Each button carries an identifier that comes back when tapped, so the flow branches on a value rather than on parsed prose. Confirmations write straight back to the route. Reschedules and cancellations go to a dispatcher with the customer's history from Get Chat Messages attached, because those are the ones that need a person deciding what the route becomes.
Documents delivered, and inbound files captured
An invoice is produced and needs to reach a customer as a real PDF rather than a link. The agent calls Send Document with a File URL, which Wappi downloads and encodes for it, and sets the file name the recipient sees. On the way back, when a customer sends in a signed copy or a photo of a damaged item, Download Message Media retrieves the attachment so a flow can pass it to an extraction step and archive it to Amazon S3 under the order number. Send Media By URL covers the simpler case where an image, video or document just needs a caption and does not need a filename set.
A session that reports its own health
Because the whole channel depends on one linked session, the flow that watches it matters more here than on a Business API connector. On a schedule the agent calls Get Profile Status and compares the connection state against ready. On a state that is not ready, it posts to Slack with how long the profile has been down and how many messages the flow tried to send during that window, then calls Restart Profile as the documented first recovery step. If the profile comes back needing to be linked again, Get QR Code produces the code and the alert carries it, so the person who owns the phone can rescan without opening a console. What you want from a session gateway is not that it never drops, it is that a drop is visible within minutes.
Human-in-Loop Highlight
Send Story is where a person belongs on this connector, and the reason is specific to the session model. Every other send here is addressed to somebody: a chat, a number, a group. Send Story is not addressed at all. It publishes a status update from the connected session with text and an optional image or video, and it is visible to the contacts of that session, which on a session gateway is a real WhatsApp account's whole contact list rather than a marketing audience anyone opted into. A recipient reads it as a status posted by a person they have in their phone. That is why the human-in-the-loop gate on this connector sits on the one message with no addressee. An agent that would publish a story stops and shows its work first: the exact text and media, the profile it would post from, and the contact count that session currently holds from Get Contacts. "Ready to post the maintenance notice as a story from the +7 900 000 0000 profile, which has 1,842 contacts including every customer this number has ever messaged. Post, send it as a targeted message to the 96 affected accounts instead, or cancel?" The second option is usually the right one, and the agent is well placed to offer it because it can build that list. Two other operations on this surface destroy rather than broadcast, Delete Chat, which removes a conversation and its history from the session, and Leave Group, and both deserve the same treatment.
Agent Capabilities
50 actionsMessaging
17- Send Message Sends a text message to a WhatsApp number or group through the connected session, taking either a chat ID or a plain phone number in international format without a leading plus, for example 79001234567. Returns the WhatsApp message ID that the react, edit, forward and delete operations expect.
- Send Media By URL Sends an image, video or document that Wappi downloads from a public URL, with an optional caption on any of the three and a file name for documents.
- Send Image Sends an image supplied as base64 content with an optional caption. Passing a File URL instead has the image downloaded and encoded automatically before sending.
- Send Document Sends a document supplied as base64 content with an optional caption and the file name the recipient sees. A File URL is downloaded and encoded automatically.
- Send Audio Sends an audio recording as a WhatsApp voice message, supplied as base64 content or as a File URL that is downloaded and encoded automatically.
- Send Video Sends a video with an optional caption, supplied as base64 content or as a File URL.
- Send Location Sends a map location as a WhatsApp location message, with an optional street address shown under the pin.
- Send Contact Card Sends a contact card so the recipient can save the number directly from the conversation.
- Send Buttons Message Sends a message with tappable reply buttons underneath it. Each button carries an identifier that is delivered back when tapped, which lets a flow branch on the answer rather than parsing free text.
- Send List Message Sends a message with a tappable menu of options. The recipient opens the menu with a button and picks one row, and the row identifier is delivered back. Rows may carry a short description under the title.
- Create Poll Sends a WhatsApp poll with a question and answer options, with a configurable limit on how many options a participant may select.
- Reply To Message Sends a reply quoted against an earlier message so the recipient sees which message is being answered, optionally with a media URL attached.
- Forward Message Forwards an existing message into another chat or group, keeping its original content and attachment.
- Send Reaction Attaches an emoji reaction to an existing message. An empty emoji removes a reaction set earlier.
- Edit Message Replaces the text of a message already sent. WhatsApp only allows editing within a limited period after delivery.
- Delete Message Deletes a message from the conversation, revoking it for the recipient where WhatsApp still permits it.
- Mark Message As Read Marks a received message as read, which shows the blue read receipt to the sender and clears the unread badge on the chat.
Messages
6- Get Chat Messages Returns messages from a single chat, newest or oldest first, optionally starting from a given date. This is how an agent reads recent history before deciding how to reply.
- Get Message By ID Retrieves a single message by its WhatsApp identifier with its body, type, direction and timestamp.
- Get All Messages Returns messages across every chat on the connected session, paged and optionally limited to a start date. Used to sweep for new activity when a webhook is not in place.
- Search Messages Finds messages containing given text, optionally restricted to one contact. Useful for locating an order number or reference the customer mentioned earlier in a long thread.
- Get Sent Message History Returns messages sent through the Wappi API from this profile, which is the record to check when reconciling what an automation actually delivered.
- Download Message Media Retrieves the file attached to a message so a flow can process a document, image or voice note a customer sent in.
Chats
8- Get Chats Returns the chats on the connected session, optionally narrowed to a specific set of phone numbers or chat identifiers.
- Filter Chats Searches chats by a fragment of the phone number, the chat name or the text of the last message, which is the quickest way to locate a conversation from a partial detail.
- Get Chats By Days Returns chats grouped by day, letting a flow review activity over a recent window and optionally include archived or deleted conversations.
- Archive Chat Moves a conversation into the archived list so it no longer appears in the main chat view of the connected session.
- Unarchive Chat Restores a previously archived conversation to the main chat view.
- Delete Chat Removes a conversation and its message history from the connected session.
- Start Typing Indicator Shows the typing indicator in a conversation, which makes an automated reply feel less abrupt when a flow pauses before answering.
- Stop Typing Indicator Clears the typing indicator in a conversation.
Contacts
4- Get Contacts Returns the contacts visible to the connected WhatsApp session with their names and identifiers. On a session gateway this is a real account's contact list, which is worth knowing before any broadcast.
- Get Contact Retrieves a single contact from the connected session by phone number or contact identifier.
- Check Number Registered Checks whether a phone number has a WhatsApp account before a flow tries to message it. Numbers must start with the country code, so Russian and Kazakh numbers begin with 7 rather than 8.
- Get Contact Info Returns profile details for a number or a group, such as the display name, profile picture and about text where WhatsApp exposes them.
Groups
9- Create Group Creates a group with a name and an initial set of participants, returning the group identifier the other group operations expect.
- Add Group Participants Adds one or more phone numbers to an existing group. Numbers that block group invites are reported back as not added.
- Remove Group Participant Removes a single member from a group. The connected session must hold group admin rights.
- Promote Group Admin Grants group administrator rights to a member, allowing them to manage participants and group settings.
- Demote Group Admin Removes group administrator rights from a member, returning them to an ordinary participant.
- Set Group Name Renames an existing group. The connected session must hold group admin rights.
- Set Group Description Replaces the description shown in a group's information panel.
- Get Group Invite Link Returns the shareable invite link for a group so it can be sent to people who should join.
- Leave Group Removes the connected session from a group. Remaining members keep the group and its history.
Profile and Session
6- Get Profile Status Returns the connection state and settings of the WhatsApp profile, showing whether the session is authorised and ready to send. Agents check it before a broadcast so a flow does not send into a disconnected session.
- Get QR Code Returns the QR code used to link a WhatsApp account to the profile, scanned from the phone's linked devices screen.
- Get Auth Code Returns the pairing code that links a WhatsApp account to the profile by entering it on the phone, as an alternative to scanning a QR code.
- Restart Profile Restarts the profile application, which is the usual recovery step when the session stops responding or messages stay queued.
- Set Profile Status Text Sets the About text shown on the WhatsApp profile of the connected session.
- Send Story Publishes a status update from the connected session with text and an optional image or video referenced by URL. It is not addressed to a recipient, so it reaches the contacts of that session rather than a chosen audience.
Frequently Asked Questions
What can FlowRunner do with Wappi?
FlowRunner agents can run Send Message, Send Media By URL, and Send Image in Wappi, plus 47 more actions.
Does connecting Wappi to FlowRunner require OAuth?
No. Wappi connects to FlowRunner with an API key, no OAuth flow required.
Can Wappi trigger a FlowRunner workflow automatically?
Wappi doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with Wappi
$100 in credits. No card required. Connect in minutes.