Now launching iMessage API!Learn more

Products

Ships to

Build an agentiMessage API9 min read

Flow on iMessage: features, pricing and limits

What an agent on Flow's iMessage line can do, what each plan costs, and the limits that apply: shared and dedicated lines, writing first, groups and restrictions.

The short answer

Flow puts your agent on a real Apple number: customers text it and get blue-bubble replies. Start free for 25 people, support 300 people a month on a $25 shared line, or move to a dedicated line for $100 a month and 1,000 people a day (a new line starts at 250 a day and ramps to 1,000 over its first 14 days). Writing first comes with the $40 a month Outbound add-on on a dedicated line; the conversations it starts ramp from 2 a day to 40 a day over 21 days. Plans cap people, not messages.

Building on the iMessage API? Build on iMessage with Flow: one agent for iMessage, WhatsApp and Telegram. New to it? Read the iMessage API guide.

What an agent can do

An agent on Flow’s iMessage line can do most of what a person can do in Messages. It goes through the same Flow Messaging API as WhatsApp and Telegram.

Receiving. A customer texts the line from Messages on iPhone, iPad or Mac, from a phone number or an Apple ID email. They can send photos and files, which Flow stores and hands the agent as a file. They can send voice notes, and the agent gets the audio file, with the transcript iMessage itself made when it made one. They can tapback a message, or react with any emoji, and add a dedicated line to a group so the agent reads every message in it. They can also call a dedicated line’s number, and calls are forwarded to the business, included.

Sending. The agent can send:

Feature What it does
Text Up to 9,999 characters, with emoji and line breaks
Rich text Bold, italic, underline, strikethrough, bigger or smaller text, and animated words
Subject line A bold title above the message
Link previews Rich previews for links, or plain links when turned off
Photos and files One image, video, audio file or document per message, with an optional caption
Voice messages Audio as a real iMessage voice memo (mp3, wav, m4a, caf, aac)
Message effects Slam, loud, gentle, invisible ink, echo, spotlight, balloons, confetti, love, lasers, fireworks, celebration (12 in all)
Tapbacks Love, like, dislike, laugh, emphasize, question, or any emoji, and removing them (not in groups)
Threaded replies Replies to a specific customer message
Group chats Replies in any group a dedicated line was added to
Typing indicator Shows “typing…” for up to 60 seconds while the agent works (not in groups)
Read receipts Marks the customer’s messages as read
Edit Changes a sent message within 15 minutes, also in groups
Unsend Takes back a sent message within 2 minutes
SMS and RCS fallback Reaches customers on Android or without iMessage, from the same number: included on every plan
Delivery status Your app is told when each message is sent, delivered or failed
Writing first Starts a conversation with someone who has not texted the line yet but expects to hear from you: the $40 a month Outbound add-on, on a dedicated line; the conversations it starts ramp from 2 a day to 40 a day over 21 days

Flow converts nothing. Buttons, lists, carousels, locations and contact cards are not iMessage kinds: Flow refuses them with 422 unsupported_content and sends nothing, so send a text that lists the options instead. See tapbacks, typing and effects for how these work through an API.

Getting customers onto the line

Every line comes with an opt-in link and a QR code that opens Messages with the line’s number filled in. The customer’s first text opens the conversation, and every reply after that works. iMessage opt-in links and QR codes shows where to put them.

Unless writing first is switched on for a dedicated line, the line only replies, so customers must text first. Typing indicators and read receipts work only for 5 minutes after your line’s last message to the customer, so send a reply first. Lines are US numbers, and customers anywhere can message them.

Pricing

iMessage is priced on its own, separate from Flow’s other plans, by line type and by how many people the agent talks with.

Plan Line Price People per channel Writes first?
Free Shared $0 25 (a trial, no monthly reset) No, customers text first
Shared Shared $25 a month 300 a month and 200 a day No, customers text first
Dedicated Your own number $100 a month 1,000 a day (250 a day at first, ramping to 1,000 over the first 14 days), no monthly cap No, customers text first
+ Outbound (writing first) Dedicated only +$40 a month Same as the plan; new conversations ramp from 2 a day to 40 a day over 21 days Yes

SMS and RCS fallback from the same number is included on every plan, the free trial too. Call forwarding is included on dedicated lines.

  • Free trial: starts at your first sign-in at flow.engineer, on Flow’s shared iMessage, WhatsApp and Telegram lines, for 25 people per channel.
  • Shared line: one Flow number used by many businesses. Each customer joins a business by texting its join message, and each business sees only its own customers. It only replies and has no group chats. SMS and RCS fallback is included.
  • Dedicated line: a number only your business uses. It is the only way to write to people first or join group chats, and the option for more than 300 people a month. It also gets 300 people a month and 200 a day on Flow’s shared WhatsApp and Telegram senders. For more than 1,000 people a day, add another dedicated line.
  • A person is anyone whose messages the agent reads, counted once a day and once a month (UTC calendar day and month; once in total on the free trial). In a group, every member who writes counts; members who stay silent do not. Limits are per account and channel.
  • At a limit, a new person is held, not delivered, and people already in conversation keep working.
  • No setup fee. A dedicated line costs only its monthly price and the Outbound add-on if you choose it.
  • Plans cap people, not messages. There are no per-message fees. You buy a plan, and the $40 Outbound add-on, yourself in the Flow dashboard under Settings → Usage and billing → Choose a plan. Flow reviews each dedicated line, then sets it up, usually within a day.
  • Which to pick: a pilot fits the free trial. An agent that only answers, for up to 300 people a month, fits the $25 shared line. Your own number, groups or more people fits a $100 dedicated line. SMS/RCS fallback reaches Android customers on every plan. Reminders, follow-ups or any message the customer did not ask for first need writing first: the $40 a month Outbound add-on on a dedicated line.

iMessage API pricing shows how Flow’s plans work at different volumes.

Line safety

Flow paces every line automatically to keep it healthy. Replies to customers who wrote in the last 24 hours always go straight out. With the Outbound add-on, the new conversations a line starts ramp up over 21 days, from 2 a day to 40 a day, and if a line sees blocks or failed deliveries, Flow pauses cold sends before the number is at risk. Separately, a new dedicated line’s limit of different people starts at 250 a day and ramps to 1,000 a day over its first 14 days. Flow reviews each new dedicated line, then sets it up, usually within a day.

Limits and restrictions

Plans cap different people, not messages, per account and channel, by UTC calendar day and month. Replies count too: every person the agent replies to counts toward that day’s limit, but more messages to someone already counted that day add nothing. The limits bite when more different people write in a day or a month, or when a dedicated line writes first.

Limit Value
Replies to a customer who wrote in the last 24 hours Sent right away, not paced; the customer counts toward the day’s people limit
Different people a day (per account and channel, UTC day) 200 on the shared plan; 1,000 on a dedicated line (250 a day at first, ramping to 1,000 over its first 14 days)
Message length 9,999 characters
Files per message One, with an optional caption
Typing indicator and read receipts Only for 5 minutes after your line’s last message to the customer (send a reply first), not in groups
Edit window 15 minutes after sending
Unsend window 2 minutes after sending
A queued message not yet sendable Fails after 72 hours

Restrictions to know before you build:

  • No bulk or cold sends. No bulk sends, marketing blasts or messages to bought or scraped lists, on any plan.
  • Who the line may write to. Without Outbound, people opt in by texting the line, through the opt-in link, the QR code or a sign-up form that opens Messages; a ticked box on a website does not start an iMessage conversation. With the Outbound add-on, a dedicated line may also write first, but only to people who gave your business their number and expect to hear from you, such as a customer who asked for appointment reminders.
  • A first message must say who is writing and why, and offer a way to opt out, such as reply STOP. Honour opt-outs right away. A first message from a new line cannot contain marketing, links, emails, phone numbers, prices or attachments.
  • No spam, scams, phishing or impersonation, and you must have the right to any brand name you use.
  • No regulated data. Flow publishes no SOC 2 report and signs no HIPAA BAA; don’t send health information, card or bank account numbers, or government IDs.
  • Groups are dedicated lines only, and join-only. The agent replies in groups it was added to, but cannot create a group, rename it, or add or remove people.
  • Delivery is not guaranteed. People whose device or country restricts iMessage will not get messages.
  • Numbers are US numbers, rented from Flow. Customers anywhere can message them.

For how it compares with other providers, see the best iMessage API. To build on it, start with Build an iMessage AI agent.

Frequently asked questions

How much does Flow's iMessage line cost?

iMessage is priced on its own by line type and the number of people the agent talks with. The free trial on the shared line covers 25 people, a $25 a month shared line fits 300 people a month and 200 a day, and a dedicated line, your own number, is $100 a month for 1,000 people a day (a new line starts at 250 a day and ramps to 1,000 over its first 14 days). SMS/RCS fallback is included on every plan, and call forwarding is included on a dedicated line. Writing first comes with the $40 a month Outbound add-on on a dedicated line, and the conversations it starts ramp from 2 a day to 40 a day over 21 days.

Can a Flow agent write to people first?

Yes, with the $40 a month Outbound add-on on a dedicated line, to people who gave your business their number and expect to hear from you. New conversations ramp from 2 a day to 40 a day over the add-on's first 21 days. Shared lines only reply, so customers text first.

Does Flow support group chats on iMessage?

On a dedicated line, the agent can reply in any group the line was added to, with text, files, effects and threaded replies. The shared line has no group chats. Groups are join-only: it cannot create a group, rename it, or add or remove people.

What happens when a customer does not have iMessage?

The same conversation continues over SMS or RCS from the same number. SMS/RCS fallback is included on every plan: the free trial, shared lines and dedicated lines.

Can I send marketing messages or bulk texts?

No. iMessage is for conversations people expect. Flow does not allow bulk sends, marketing blasts or messages to bought or scraped lists, on any plan. Writing first (the Outbound add-on) is only for people who expect to hear from your business.

Can I use iMessage for health information or card numbers?

No. Flow publishes no SOC 2 report and signs no HIPAA BAA; don't send health information, card or bank account numbers or government IDs over iMessage.

Start hereiMessage API: a developer’s guideThe overview of how iMessage APIs work, and what to ask a provider. Build an agentBuild an iMessage AI agentWebhook in, model call, tools, reply out: the Flow loop, memory, testing and production safeguards.Build an agentiMessage agent with the Vercel AI SDKTake a Vercel AI SDK agent and answer on iMessage with streamed, chat-sized bubbles.Build an agentiMessage agent with the OpenAI Agents SDKReceive an iMessage, run an OpenAI Agents SDK agent and send the result back as bubbles.Build an agentiMessage agent with the Claude Agent SDKRun a Claude agent for each iMessage and deliver its streamed answer.Build an agentLangChain iMessage agentConnect a LangChain model or chain to an iMessage conversation.Build an agentiMessage API for coding agentsLet Claude Code, Cursor or Codex set up and test a messaging integration for you.

All posts: the Flow blog. The Flow docs have the reference.

From reading to building

Your agent, on iMessage and everywhere else.

Flow gives your agent an iMessage line, and the same code answers on WhatsApp and Telegram and works as an MCP server and CLI. See how it works on iMessage.

Build on iMessage with Flow