FlowRunner
PricingContact
Theme
Start Free

Apifonica

Voice & Telephony

Send messages, place calls, and manage numbers on the Apifonica voice and SMS platform. Agents reach customers on the channel that fits the moment and provision numbers as campaigns require them.

1 trigger 21 actions Basic auth available
Apifonica website ↗ Platform Documentation ↗ Capability data verified 2026-08-02
A monthly telephony review date fires on the flow's schedule
Agent runs List Numbers and List Pools to build the current number inventory
Agent scans List Calls and List Messages for traffic on each number in the review window
Agent calls Get Number on every idle candidate to see which application still points at it
Agent posts the release candidates with last-traffic dates and the matching lines from List Expenses
The telecom owner confirms which numbers to release before the agent calls Release Number

What This Integration Enables

Apifonica is not a voice agent. It is the carrier layer underneath one: numbers you buy and release, pools that rotate caller ID, messages that go out over SMS, RCS or WhatsApp, and calls that Apifonica drives by fetching call XML from a controller URL you supply. Teams reach for it when they need the telephony primitives without adopting somebody else's campaign product on top of them.

That makes it a different kind of connector to reason about. An agent using Apifonica spends most of its time on inventory and accounting: which numbers exist, which pool each one belongs to, which application answers it, what the account balance is before outbound traffic starts, and what the itemised expenses say the last period actually cost. The billable operations are few and sharp. Send Message, Make Call and Release Number each do something real and immediate the moment they run, which is exactly where FlowRunner's default belongs: the agent assembles the case, and a person makes the call that cannot be taken back.

Without FlowRunner

Numbers outlive campaigns Provisioned numbers keep billing after the campaign that needed them ends
Spend is opaque Telephony cost arrives as one invoice line with no per-number attribution
Routing drifts Nobody is sure which application still answers which number

With FlowRunner

Inventory reviewed on a cadence Every number is checked against real call and message traffic on a schedule
Cost tied to numbers Itemised expenses are matched to the numbers and pools that generated them
Releases are deliberate A number is only released after a named person confirms it, with the evidence attached

Use Case Scenarios

Monthly number inventory review

A flow wakes on a schedule at the end of each billing period. The agent builds the full inventory with List Numbers and List Pools, then checks each number against List Calls and List Messages for the review window. Numbers with no traffic get a Get Number lookup so the agent can report which application, if any, is still pointed at them. The agent pulls List Expenses and attaches the cost line for each candidate. It posts a single summary of what is idle, what it costs, and what is still wired up, and stops. Nothing is released until the telecom owner picks from that list.

Fulfilment notifications on the customer's channel

A Shopify order is marked fulfilled. The agent pulls the tracking detail, picks a sending number from the campaign's pool, and calls Send Message to text the customer their tracking link over SMS, RCS or WhatsApp. Delivery is not assumed. The agent follows up with Get Message to read the final status, price and any rejection reason, and routes the failures into a retry path with a different number rather than leaving a silent gap where a customer expected an update.

Call outcomes logged where the team already looks

The On Call Or Message Event trigger fires when a call completes. The agent reads the call detail with Get Call, pulls the matching recording from List Recordings as a hosted resource it can pass straight to a transcription step, and writes the outcome into an Airtable table with the number used, the duration and the disposition. Calls that ended without connecting are flagged as automation exceptions so someone can decide whether the number, the routing or the list is the problem.

Human-in-Loop Highlight

The gate is Release Number. Releasing a provisioned number takes it out of service immediately, and Apifonica may not be able to give it back. If that number is printed on packaging, sitting in a Google Business listing, or configured as the callback line on a live campaign, the release is a customer-facing outage that no rollback fixes. So the inventory agent does the work and then stops. It posts the candidate list to the telecom owner with, for each number, the date of its last inbound and outbound traffic, the application still bound to it from Get Number, its pool membership, and its cost line from List Expenses, and asks a direct question: "These four numbers had no traffic in the last 30 days. Release them, or keep any of them reserved?" The owner answers, and only the confirmed numbers reach Release Number. This is human-in-the-loop applied where it earns its keep, on the one operation in the connector that has no undo.

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

21 actions

Account and Spend

3
  • Get Account Retrieves the Apifonica account behind the configured credentials with its name and current status. Used as a connection check, and to alert when an account has been blocked before outbound traffic starts failing silently.
  • Get Balance Retrieves the current account balance. Used as a guard at the top of a flow so campaigns halt before low credit causes calls and messages to be rejected.
  • List Expenses Retrieves itemised account expenses so spend can be reconciled per period. Results are cursor paginated using the next link returned with each page. Used to attribute telephony cost back to the numbers and campaigns that generated it.

Number Inventory

6
  • List Available Numbers Retrieves the countries where Apifonica currently has numbers available to buy. Used to check availability before a flow attempts a purchase in a new market.
  • List Available Numbers By Country Retrieves the individual numbers available to buy in one country, with their type and pricing. Used to pick a specific number rather than accepting whatever the platform allocates.
  • List Numbers Retrieves the numbers provisioned on the account with their name, type, country, pool membership, the controller handling inbound calls and messages, and which of voice, messaging and recording are enabled. Supports filtering by name and number prefix.
  • Get Number Retrieves one provisioned number by its SID, showing which application handles its inbound calls and messages, its pool membership and its enabled capabilities. Used to confirm what is still wired to a number before touching it.
  • Update Number Updates a provisioned number's name and the applications that handle its inbound calls and messages. Used to repoint a number at a different controller without releasing and repurchasing it.
  • Release Number Releases a provisioned number back to Apifonica. The number stops receiving calls and messages immediately and may not be recoverable, which is why this belongs behind an explicit human confirmation rather than inside an unattended cleanup job.

Number Pools

3
  • List Pools Retrieves the number pools on the account. Pools group numbers so inbound routing and outbound caller ID can be managed as a set rather than number by number.
  • Add Number To Pool Adds a provisioned number to a pool so it participates in that pool's routing and caller ID rotation. Used to scale a campaign's number set up as volume grows.
  • Remove Number From Pool Removes a number from a pool. The number stays provisioned on the account but stops participating in that pool's routing and caller ID rotation.

Messaging

3
  • Send Message Sends a real, billable message over SMS, RCS or WhatsApp to a single recipient. Returns the message SID and its initial status, which can be tracked with Get Message or the event trigger. Used for transactional notifications where the channel should follow the customer rather than the sender's convenience.
  • List Messages Retrieves sent and received messages with their direction, delivery status, price and rejection reason. Filter by direction, status, destination prefix and creation window to build delivery reports or find failures worth retrying.
  • Get Message Retrieves one message by its SID with its final delivery status, price and any rejection reason. Used to confirm delivery after sending rather than assuming it.

Voice

4
  • Make Call Places a real, billable outbound call. Apifonica requests call instructions from the controller URL supplied on the action, which must return Apifonica call XML. Returns the call SID for tracking.
  • List Calls Retrieves calls with their direction, status, controller and timestamps. Filter by direction, status, destination prefix and creation window to report on outcomes or find calls that never connected.
  • Get Call Retrieves one call by its SID with its current status, direction, controller and timestamps. Used to poll an in-progress call or inspect a completed one.
  • List Recordings Retrieves call recordings for the account. Apifonica returns each recording as a hosted resource, so it can be handed straight to a transcription or storage step without downloading it first.

Applications

2
  • List Applications Retrieves the applications on the account. An Apifonica application is a webhook that receives call and message events at a controller URL and can return call XML to steer a live call. The trigger in this connector creates and removes its own, so those appear here alongside yours.
  • Get Application Retrieves one application by its SID, showing its controller URL, HTTP method and the list of events it is subscribed to. Used to confirm which events an integration is actually receiving.

Triggers

1 triggers

Event Triggers

1
  • On Call Or Message Event Fires on Apifonica call and message events, including when a call is answered or completed and when a message is delivered or fails. Used to close the loop on outbound traffic: log the outcome, retry a rejected message on another number, or start the follow-up work that depends on whether the person actually picked up.

Frequently Asked Questions

What can FlowRunner do with Apifonica?

FlowRunner agents can run Get Account, Get Balance, and List Expenses in Apifonica, plus 18 more actions.

Does connecting Apifonica to FlowRunner require OAuth?

No. Apifonica connects to FlowRunner with basic authentication (a username and password), no OAuth flow required.

Can Apifonica trigger a FlowRunner workflow automatically?

Yes. Apifonica supports 1 trigger that can start a FlowRunner workflow automatically.

Start building with Apifonica

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