Ublux
MessagingUse the Ublux WhatsApp Business API for messaging, which this connector covers rather than the PBX or telephony side. Agents send and receive WhatsApp business messages as a workflow step.
What This Integration Enables
The most useful thing to say about this connector is what it is not. Ublux is a communications company with a telephony product, and this integration covers the WhatsApp Business API only. It is not a PBX integration and it does not touch calls. Five actions, all of them shaped by Meta's WhatsApp Cloud API, and no trigger, because Ublux documents no webhook API and inbound notifications are configured by hand in the admin under WhatsApp and Webhooks. If you want a narrow, well-understood WhatsApp send-and-receive leg inside a larger flow, this is a clean one. If you want a support inbox with assignment and tags, look elsewhere in the catalog.
Three operational facts govern how you build on it. The API key is unique per phone number rather than per account, so each sender needs its own connection. Sending a message is billable on every call, which is a reason to guard Send WhatsApp Message behind explicit conditions rather than letting a retry loop run into it. And WhatsApp keeps uploaded media for roughly 30 days, so anything worth keeping is downloaded promptly rather than left where it landed. Message bodies follow Meta's schema directly, with messaging_product and recipient_type set for you, and the richer types, contacts, location and interactive, are supplied as a structured object in Advanced Payload. Outside an open 24 hour service window only template messages are delivered, which is not a Ublux rule but a WhatsApp one, and a flow that ignores it produces sends that cost money and reach nobody.
Without FlowRunner
With FlowRunner
Use Case Scenarios
Receipts that file themselves
A field technician photographs a parts receipt and sends it to the service number. The agent calls Download Media with the media identifier, which stores the file in FlowRunner and returns a URL, then hands that URL to an extraction step that reads the vendor, date and total. The values are written as an expense in QuickBooks Online and the original image is copied to Amazon S3 under the job number. Because WhatsApp only keeps the file for around 30 days, the archive copy is the record, not the conversation. The technician gets a confirmation back with the expense reference, and nobody transcribes a photograph.
Shipping notifications that respect the window
An order ships in Shopify. The customer last wrote in eight days ago, so the service window is closed and a free text message would not be delivered. The agent calls List Templates for the sending number, checks that the shipping notification template is approved by Meta rather than merely present, and calls Send WhatsApp Message with the Template type and its ordered variable values. When the same flow runs for a customer who wrote in an hour ago, it takes the Text branch instead and answers conversationally. One flow, two paths, and the choice made from the template's actual approval status rather than from a guess.
Documents sent without leaking the link
An invoice is generated and needs to reach a customer on WhatsApp. Rather than pasting a signed URL into the conversation, the agent calls Upload Media with the file, which returns a media identifier, and attaches that identifier to the message. The original link never appears in the chat, which matters when the document URL carries a token or points at a bucket you would rather not advertise. After the send, the flow archives the file to its own storage and the media identifier goes onto the retention list for the cleanup pass described below.
Human-in-Loop Highlight
Delete Media is the operation that stops this flow for a person, and it is the only one here that cannot be undone. It permanently removes a file from WhatsApp media storage by its identifier. Messages already delivered keep their attachment, but the stored copy is gone. That makes it useful, because a retention policy needs a real delete, and it makes it dangerous, because the agent running the policy is deciding what stops existing. So the agent does the safe half unattended and stops at the irreversible half. It walks the media identifiers older than the retention threshold, confirms each one has already been archived by checking the storage copy exists, and posts the list: "34 media items past the 30 day policy on sender +34 91 000 0000. All 34 have an archived copy in S3 under their job number. 2 could not be verified, listed separately. Delete the 32 verified, delete all 34, or hold?" A person answers, and only then does Delete Media run. Note also that Send WhatsApp Message is billable on every call, so any flow that sends in volume belongs behind a threshold check too. This is what automation exceptions look like in practice: the agent handles the ordinary cases and routes the ones where being wrong is expensive to somebody who can be accountable for the answer.
Agent Capabilities
5 actionsMessaging
2- Send WhatsApp Message Sends a real, billable WhatsApp Business message to one recipient and returns the message identifier assigned by WhatsApp. Text sends a free-form reply inside an open 24 hour customer service window; Template starts a conversation outside it with a pre-approved template and its ordered variable values; Image, Audio, Video and Document attach media by uploaded media identifier or public link. Contacts, Location and Interactive messages take their structured object in Advanced Payload following Meta's Cloud API schema. Guard it behind explicit conditions in a flow.
- List Templates Retrieves every message template registered against one Ublux WhatsApp sender number, with each template's name, language, category, approval status and component structure. Only templates approved by Meta can actually be sent, so an agent checks the status here before building a template send. Ublux returns the whole list in one response and documents no paging.
Media
3- Upload Media Uploads a file to WhatsApp from a public or FlowRunner file URL and returns the media identifier used to attach it to a message. Uploading first keeps the original link out of the conversation. WhatsApp stores uploaded media for roughly 30 days, so anything sent after that needs re-uploading.
- Download Media Downloads a file previously uploaded to or received through WhatsApp and stores it in FlowRunner file storage, returning a URL the rest of the flow can use. This is how inbound customer attachments reach a transcription or extraction step, and how they get archived before WhatsApp's retention window closes.
- Delete Media Permanently removes a file from WhatsApp media storage by its identifier. Messages already delivered keep their attachment. Used to clean up after a send or to honour a data retention policy once the file is archived elsewhere. This cannot be undone.
Frequently Asked Questions
What can FlowRunner do with Ublux?
FlowRunner agents can run Send WhatsApp Message, List Templates, and Upload Media in Ublux, plus 2 more actions.
Does connecting Ublux to FlowRunner require OAuth?
No. Ublux connects to FlowRunner with an API key, no OAuth flow required.
Can Ublux trigger a FlowRunner workflow automatically?
Ublux doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with Ublux
$100 in credits. No card required. Connect in minutes.