Skip to content

iMessage API · MCP server · Webhooks

Blue bubbles, by API.

Send and receive real iMessages from your app, your CRM or your AI agent. bubbl3 gives you a full REST API, real-time webhooks and a native MCP server, running on dedicated lines that we pool, warm up and rotate for you.

Flat per-line pricing No per-message fees Built for AI agents
Northside Dental iMessage
Hi Maya, it's Northside Dental. You're due for a cleaning. Want me to grab you a spot this week?
Yes please. Anything Thursday after 4?
Thursday at 4:30 with Dr. Patel is open. Should I lock it in?
Perfect, thank you
Done. See you Thursday at 4:30.
Delivered · Read 4:12 PM

One API, every channel. iMessage first, with automatic fallback when a contact isn't on iMessage.

iMessageSMS fallbackREST APIWebhooksMCPNode · Python · cURL

Why blue bubbles

Green bubbles get skimmed. Blue bubbles get answered.

SMS was built for one-way alerts. iMessage is where your customers actually talk to people they know. bubbl3 puts your business in that thread, with the reactions, typing indicators, read receipts and rich media people expect.

Typical SMS

  • Looks like a marketing blast
  • Per-message and carrier fees
  • Weeks of A2P paperwork before you send
  • Low-res media, no typing or read receipts

bubbl3 iMessage

  • Native blue bubbles from a real phone number
  • Flat monthly price per line
  • Reactions, typing, read receipts and HD media
  • Automatic SMS fallback from the same number

Platform

Everything you need to run iMessage at scale.

We handle the hardware, the numbers and the deliverability. You get clean primitives to build on.

Real blue bubbles

Messages arrive as genuine iMessages from dedicated phone numbers, not shared short codes.

Line pools and rotation

Group lines into pools. We spread sends across them and respect daily per-line limits, so no single number burns out.

Warm-up and health checks

New lines ramp up gradually. Line health is monitored around the clock, and flagged lines are swapped out automatically.

Automatic fallback

If a contact isn't on iMessage, we fall back to SMS from the same number, and tell you which service delivered.

Real-time webhooks

Inbound replies, delivery and read receipts, reactions and typing events, pushed to your endpoint the moment they happen.

Rich messaging

Photos, video, voice memos, tapback reactions, typing indicators and group threads, all through the same API.

AI-native

Give your AI agent a phone number.

bubbl3 ships with a native MCP server. Connect Claude, ChatGPT, Cursor or your own agent framework and it can send messages, read replies and manage conversations, with your rules and limits enforced on every call.

  • send_messageSend an iMessage from a line or pool, with automatic fallback.
  • list_conversationsPull recent threads and unread replies for a contact or pool.
  • get_conversationRead full message history so the agent has context.
  • reactAdd a tapback, or show typing while the agent thinks.
  • line_healthCheck capacity and status before a big send.
Agent · connected to bubbl3 MCP
You

Text everyone who asked about the spring promo yesterday and offer them a call slot.

bubbl3.list_conversations(label="spring-promo", since="yesterday") → 14 conversations · 11 awaiting reply
bubbl3.send_message(pool="sales", to=contacts[11], text="Hey {first_name}, want to grab 15 min tomorrow?") → 11 queued across 4 lines · within daily limits
Agent

Done. I messaged 11 people from your sales pool, spread across 4 lines. I'll flag replies here as they come in.

Developers

A full API, not a black box.

Everything in bubbl3 is available programmatically: messages, contacts, lines, pools, webhooks and routing rules. If you can see it in the dashboard, you can automate it.

  • REST API with clear, versioned endpoints
  • Signed webhooks with retries and replay
  • SDKs for Node and Python, or plain HTTP from any language
  • Idempotency keys so retries never double-send
  • Sandbox mode for building before you go live
import { Bubbl3 } from "@bubbl3/sdk";

const b3 = new Bubbl3(process.env.BUBBL3_API_KEY);

const msg = await b3.messages.send({
  to: "+19175550142",
  pool: "reminders",        // rotate across a pool
  text: "Your order has shipped",
  fallback: "sms",
  idempotencyKey: "order-8812-shipped",
});

console.log(msg.service, msg.status); // "imessage" "delivered"

Flexible by design

Your workflows, your rules.

Every account is configurable down to the line. Set it up once in the dashboard, or manage it all through the API.

Routing rules

Send by pool, team, region or campaign. Keep a contact on the same line so every conversation feels personal.

Limits and quiet hours

Per-line daily caps, send windows by time zone and pacing controls, enforced for humans and agents alike.

Workflows and automations

Trigger messages from CRM events, form fills or your own backend, and branch on replies, reactions or silence.

Custom contact cards

Set the name, photo and details your recipients see, so your business is recognised the first time you text.

How it works

Live in days, not months.

Tell us your volume

Share how many messages you plan to send and how you'll use them. We'll size the right number of lines.

We provision your lines

Dedicated numbers are set up, registered and warmed up for you, grouped into pools you control.

Connect and send

Plug in through the API, webhooks or MCP, and start sending blue bubbles from your app or agent.

Pricing

Simple pricing, built around your volume.

Pay per line, not per message. Every plan includes the full API, webhooks, MCP access and SMS fallback.

Pilot

Custom · for testing

Prove it out with a small set of lines before you scale.

  • A few dedicated lines
  • Full API, webhooks and MCP
  • Onboarding with our team
Request a pilot

Enterprise

Volume · 100+ lines

For high-volume senders who need dedicated capacity and support.

  • Volume pricing
  • Dedicated account manager
  • Custom limits and SLAs
  • Security review support
Talk to sales

Pricing shown is indicative for the mockup and will be confirmed in your proposal.

FAQ

Questions, answered.

Are these real iMessages?

Yes. Messages are delivered as native iMessages, blue bubbles from real phone numbers, to anyone with iMessage turned on. If a contact isn't on iMessage, we fall back to SMS from the same number.

What is a line?

A line is a dedicated phone number on the bubbl3 platform. Each line has a daily limit on new contacts to protect deliverability, so higher volumes use more lines grouped into a pool.

How does MCP work with bubbl3?

MCP is an open standard that lets AI assistants use outside tools. Add the bubbl3 MCP server to Claude, ChatGPT, Cursor or your own agent, and it can send and read messages with the same permissions and limits as your API key.

Can I bulk-blast marketing messages?

No. bubbl3 is built for real conversations, not spam. Pacing, per-line limits and opt-out handling are built in, which also keeps your lines healthy and your messages landing.

Do you charge per message?

No. You pay a flat monthly price per line plus a platform fee. Send and receive as many messages as your lines' daily limits allow.

How fast can we get started?

Most teams can start with a pilot within days of signing. Tell us your expected volume in the form below and we'll come back with a recommended setup.

Request access

Let's get your first blue bubble out the door.

Tell us a little about your team and how many messages you expect to send. We'll reply within one business day with a recommended setup and pricing.

  • Fast replyA real person responds within one business day.
  • Sized to your volumeWe'll recommend how many lines and pools you need.
  • Private by defaultYour details are only used to follow up on this request.
By submitting, you agree to be contacted about bubbl3. No spam, ever.