FlowRunner
PricingContact
Theme
Start Free

OpenPhone

Messaging

Work your OpenPhone business phone system from any flow: agents send SMS and MMS from shared team numbers, pull call history with recordings, AI summaries, and transcripts, sync contacts with custom fields, and register webhooks for real-time message and call events.

19 actions API key available
OpenPhone website ↗ Platform Documentation ↗ Capability data verified 2026-07-27
A webhook registered with Create Webhook reports a completed call on the support number
Get Call Summary pulls the AI synopsis and next steps once processing finishes
Get Call Transcript retrieves the time-stamped dialogue for the details the summary compressed
The agent drafts a follow-up text confirming what was promised on the call, with dates and amounts
List Contacts matches the caller to a contact record so the follow-up uses their name and history
The rep who took the call reads the draft and fixes anything before it goes out under the team's number
Send Text Message delivers the approved follow-up from the same number the customer just called
The call, summary, and sent message log to the CRM record for the audit trail

What This Integration Enables

A business phone number is the most personal channel a company operates: texts from it land in the same thread as messages from friends, and calls to it are answered by name. OpenPhone makes that channel shared and inspectable, and this connector makes it programmable. FlowRunner agents send SMS and MMS from team numbers, read message and call history, pull recordings, AI summaries, and transcripts after calls end, and keep the contact list synced with the systems the rest of the company runs on. The connector defines no triggers, but the Webhooks actions fill that role: register a webhook for messages, calls, summaries, or transcripts, and OpenPhone pushes events to your flow the moment they happen. - Send order confirmations, reminders, and follow-ups from a shared team number - Turn completed calls into CRM entries with summary, transcript, and recording links attached - Sync contacts with custom fields between OpenPhone and the CRM - Sweep conversations for threads waiting on a reply and surface them to the team - Register webhooks so inbound messages and completed calls start flows in real time

Without FlowRunner

Calls end and evaporate What was promised on the phone lives in one rep's memory, and follow-ups happen when they remember
The shared number is a black box Texts and calls pile up across the team, and nobody can say which conversations are waiting on a reply
Call notes are optional Logging a call into the CRM is manual, so the record is whatever the busiest person had time to type

With FlowRunner

Every call leaves a paper trail Summaries, transcripts, and recordings file themselves into the CRM minutes after hangup
Follow-ups go out the same hour Agents draft the confirmation text from the transcript, and a rep approves it before it sends
The queue is visible Conversations get swept on a schedule, and threads waiting on your team surface in Slack before customers chase

Use Case Scenarios

The call log that writes itself into the CRM

A webhook fires when a call completes on the sales line. The agent calls Get Call for the participants and duration, Get Call Summary for the synopsis and next steps, and Get Call Recordings for the media URL. It matches the caller to a contact with List Contacts, then writes the whole package to [HubSpot](/integrations/hubspot) as a logged activity and appends a row to [Google Sheets](/integrations/google-sheets) for the weekly call report. Reps stop typing call notes, and the CRM stops depending on whether they did.

Order updates in the thread customers actually read

A [Shopify](/integrations/shopify) order ships. The agent resolves the customer's number, checks List Conversations for an existing thread with the support line, and sends the tracking link with Send Text Message from that same number. When the customer replies with a question, the inbound message webhook posts the thread to [Slack](/integrations/slack) with conversation history attached, and a person answers from context instead of cold.

The unanswered-thread sweep

Twice a day, the agent runs List Conversations sorted by last activity, then List Messages on recently active threads to find conversations where the last message is inbound and hours old. The offenders post to the support channel with the customer's name, the waiting message, and the assigned number. The team clears the list before lunch. Nobody installs a new inbox; the phone system they already use just stops hiding its backlog.

Human-in-Loop Highlight

Send Text Message is a write that lands in a customer's personal message thread, from the number your whole team answers on, and there is no unsend. A wrong amount, a follow-up to the wrong sibling of a shared family number, a tone that reads badly in SMS: each one arrives under the identity your customers trust most. So outbound texting in FlowRunner workflows is drafted at machine speed and released at human speed. The agent assembles the follow-up from Get Call Summary and the transcript, fills in the contact's details, and holds it for the rep who actually had the conversation. The rep approves, edits, or discards, and only then does Send Text Message fire. Reserve full autonomy for the low-stakes sends, like a shipping notification with a tracking link. Anything drafted by inference from a conversation gets read by a person who was in it.

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

19 actions

Messages

3
  • Send Text Message Sends SMS or MMS from one of your OpenPhone numbers to one or more E.164 recipients, up to 1600 characters. The action every customer-facing workflow ends with, and the one this page gates.
  • List Messages Retrieves the chronological message history between one of your numbers and specific participants, with pagination. The raw material for backlog sweeps and context assembly.
  • Get Message Retrieves one message's sender, recipients, content, direction, delivery status, and timestamps.

Calls

5
  • List Calls Lists calls for a number and participants with direction, status, duration, and timestamps. Used to reconstruct a relationship's call history.
  • Get Call Retrieves one call's full details, including participants, duration, and the user who handled it.
  • Get Call Recordings Returns a call's recording segments with downloadable media URLs. Only recorded calls have them; archival flows check before assuming.
  • Get Call Summary Retrieves the AI-generated synopsis and next steps for a completed call. Fields can be null while processing, so flows poll or wait on the summary webhook.
  • Get Call Transcript Retrieves the time-stamped dialogue attributed to each participant. The source of truth when a workflow needs what was actually said, not the compressed version.

Contacts

6
  • List Contacts Lists workspace contacts with default and custom field values, filterable by external ID or source. The matching step that connects a phone number to a person.
  • Get Contact Retrieves one contact's full details, custom fields, source, and timestamps.
  • Create Contact Creates a contact with name, company, role, email, and phone, optionally linked to an external system by external ID. Used to mirror new CRM leads into the phone system.
  • Update Contact Updates only the fields you provide on an existing contact, custom fields included. The default write for keeping OpenPhone aligned with the CRM.
  • Delete Contact Permanently deletes a contact. Cannot be undone, so cleanup workflows present their list before this runs.
  • List Contact Custom Fields Lists the custom fields defined in the workspace with the keys needed to set them. The discovery step before writing business-specific contact data.

Phone Numbers

1
  • List Phone Numbers Lists workspace numbers with IDs, E.164 values, names, and assigned users. Supplies the from value for sends and the scope for history queries.

Conversations

1
  • List Conversations Lists conversations most recently active first, filterable by number or participant. The entry point for backlog sweeps and thread lookups.

Webhooks

3
  • List Webhooks Lists configured webhooks with URLs, event types, status, and the numbers they cover. The audit view for what is currently wired to what.
  • Create Webhook Registers real-time delivery of message, call, call summary, or call transcript events to a URL you control, optionally scoped to specific numbers. How OpenPhone events start FlowRunner flows.
  • Delete Webhook Permanently removes a webhook and stops its deliveries. Cannot be undone; decommissioning flows confirm the target first.

Frequently Asked Questions

What can FlowRunner do with OpenPhone?

FlowRunner agents can run Send Text Message, List Messages, and Get Message in OpenPhone, plus 16 more actions.

Does connecting OpenPhone to FlowRunner require OAuth?

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

Can OpenPhone trigger a FlowRunner workflow automatically?

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

Start building with OpenPhone

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