# LoopMessage: an iMessage, SMS, RCS and WhatsApp carrier API metered by daily contacts

slug: loopmessage · https://miscsubjects.com/a/loopmessage · category: reference · tags: imessage, messaging-api, loopmessage, vendor-reference · updated 2026-09-22T05:11:01.278Z

LoopMessage is a cloud messaging service that sends iMessage, SMS, RCS and WhatsApp through one API from sender identities it manages, and it describes itself as a carrier: "Omnichannel messaging carrier for businesses and AI assistants. Send iMessage, SMS, RCS and WhatsApp through one API and reduce communication costs." The customer does not run a Mac or an iPhone. The customer orders a **sender name**, which is an iMessage identity that LoopMessage registers (an email address by default, a phone number as a paid option), and sends through `https://a.loopmessage.com/api/v1/message/send/` with an `Authorization` header carrying an API key.

Two more terms matter. A **dedicated sender** is a sender name used by one customer; a **shared sender** is one from a pool LoopMessage manages, sold "only for AI assistant use cases". A **unique active daily contact** is the unit LoopMessage meters, in place of messages.

## The send call

One endpoint carries every send. The body takes `contact` (a phone number or an iMessage email), `text`, and an optional `sender` id, which becomes required when starting a conversation with a new contact. Optional fields: `subject` (rendered as a bold title), `attachments` (an array of public HTTPS URLs), `effect` (13 named iMessage effects from `slam` to `celebration`), `reply_to_id`, `passthrough` (up to 1,000 characters returned on every webhook for that message), `channel` (`imessage`, `sms`, `rcs` or `whatsapp`, otherwise chosen automatically), `contact_file` (attach a vCard), and `preview` (rich link previews on or off). The same endpoint sends into an iMessage group. Separate calls send a voice message, a reaction, a typing indicator, a Read status, and, on the newest API generation, edit or unsend a message.

The response is a queue receipt, not a delivery: "When you receive a successful response with code 200 from send request, it means that the server accepted your request for send and added it to the queue." Delivery arrives later by webhook or by a status lookup on the returned `message_id`. Phone numbers are accepted in several written forms and normalized to E.164.

## Webhooks

LoopMessage posts JSON to a URL registered per organization and expects a 200 within 15 seconds; anything else is retried. Event names seen in the documentation on 2026-09-21: `message_inbound`, `message_scheduled`, `message_sent`, `message_failed` (with an `error_code`), `message_delivered`, `message_read`, `message_reaction` (with `associated_attachment` when the reaction lands on one attachment of several), plus group, typing and speech events for transcribed voice messages. A webhook-history page in the dashboard shows past deliveries.

## Sending first, and the limits

LoopMessage's pricing page answers the question it expects most: "Is it possible to send an outbound text first?" Yes, if three things hold: the customer ordered a dedicated sender with the "init conversations" option, completed a warm-up period, and is contacting someone who recently opted in or gave consent. The same page refuses one use outright: "Unfortunately, we do not support outbound-only messaging where you do not expect any interaction or response from the recipient." A DUNS number and Apple ID setup are part of onboarding a dedicated sender.

Plan limits are counted in contacts, not messages: "You have unlimited messaging with limits on the number of unique contacts per day and per month." A customer over the daily limit can still receive but cannot reply until the rolling 24-hour window clears.

## Plans and prices

From loopmessage.com/pricing on 2026-09-21. Dedicated sender: Sandbox at $0 with unlimited messages to 5 contacts; Light from $59.99 a month with "Unlimited messaging up to 300 unique active daily contacts"; Regular from $99.99 a month up to 1,000. Add-ons on a dedicated sender: a phone number in place of an email identity at $15 a month or $15 once; SMS/RCS fallback with call forwarding at $15 a month (requires the phone-number option); WhatsApp at $10 a month; "init conversations" at $30 a month or $30 once; a sender name at a one-time $15. Shared sender: Free for schools and non-profits with 100 monthly contacts; Regular at $20 a month starting at 50 monthly contacts, with a further 50 contacts at $50; phone number, SMS/RCS fallback and WhatsApp included. Bulk discounts start at 3 senders. Payment by card in any currency or by wire.

## Beyond the send endpoint

The documentation index lists an audience (contact) store, campaigns, message history, organizations, sender pools, an embedded inbox, paid content, sign-up forms, deferred (scheduled) messages, an S3-bucket option for attachment storage, a Twilio API adapter, and a Model Context Protocol server at `https://mcp.loopmessage.com/mcp` that serves documentation search only, not sending. Integrations named on the changelog: HighLevel/LeadConnector, Zapier, Pipedream, n8n, Slack and email. Regions: a helpdesk page lists supported phone-number regions, and an April 2026 changelog entry adds Australia.

## Compliance as LoopMessage states it

A helpdesk page titled "Is it Apple authorized API?" exists, alongside one on the difference from Apple Business Chat and one on HIPAA and SOC 2 status; on 2026-09-21 those pages were the only compliance statements found, and no certification was asserted on the pricing or documentation index pages. Sign-up is refused for residents of a listed set of countries, and messaging works anywhere Apple allows iMessage.

## Sources

1. LoopMessage llms.txt — https://loopmessage.com/llms.txt
2. LoopMessage Sending Messages — https://loopmessage.com/apidocs/send-message
3. LoopMessage pricing — https://loopmessage.com/pricing
4. How the pricing plan limits work? — https://loopmessage.com/helpdesk/pricing-plan-limit
5. LoopMessage MCP — https://loopmessage.com/apidocs/mcp

