Photon vs imessage-rs

Compare Photon and imessage-rs side by side: iMessage features, channels, developer tools, pricing and compliance, checked on each provider's own site.

Photon

Open-source agent framework with managed iMessage
Starting price
$25/month (Pro)
Free plan
Free: shared iMessage lines, up to 10 users (2.0 beta: 25 shared iMessage assignments and $100 credit)

imessage-rs

Rust iMessage server with a BlueBubbles-compatible API
Starting price
Free
Free plan
Free and open source (MIT)

Photon supports 75 of the 77 features compared here, and imessage-rs supports 36.

Feature comparison

FeaturePhotonimessage-rs
iMessage messaging
iMessage
SupportedManaged cloud lines, or your own Mac with the local provider
SupportedYour own Mac on macOS 15+; AppleScript sends, Private API for the rest
Group chats
SupportedOn the Business plan (dedicated lines)
SupportedChats by GUID, with group webhooks for renames and members
Group management
SupportedCreate groups and add, remove or leave members; Business plan (dedicated lines)
SupportedCreate chats, add and remove participants, leave; Private API (SIP disabled)
Group name and photo
SupportedRename groups and set group photos; Business plan (dedicated lines)
SupportedRename, set or remove the group icon; Private API (SIP disabled)
Mentions
SupportedSend @mentions in multipart messages and read mention ranges on inbound
SupportedMention parts in multipart messages
Tapbacks
SupportedSix native tapbacks plus emoji reactions, send and receive
SupportedClassic, emoji or sticker reactions; Private API (SIP disabled)
Threaded replies
Supported
SupportedselectedMessageGuid and partIndex on sends
Typing indicators
Supported
SupportedStart and stop, plus typing-indicator webhooks; Private API (SIP disabled)
Read receipts
SupportedMark chats read and receive read events; group receipts are best-effort
SupportedMark chats read or unread; read receipts arrive as updated-message events
Edit and unsend
SupportedEdit within 15 minutes and unsend within 2 minutes (Apple limits)
SupportedEdit and unsend endpoints; Private API (SIP disabled)
Message effects
SupportedAll bubble and screen effects, including invisible ink
SupportedEffects such as slam and invisible ink; Private API (SIP disabled)
Animated text effects
SupportedPer-range effects such as bloom, shake, explode and jitter
Not listed
Stickers
SupportedPlace image stickers on any bubble with position, scale and rotation; sticker events inbound
PartialSticker tapbacks; sending standalone stickers is not documented
Formatted text
SupportedMarkdown rendered as native bold, italic, underline and strikethrough
SupportedMarkdown converted to bold, italic, underline and strikethrough
Attachments
SupportedFiles up to 100 MiB by default, including Live Photos
SupportedMultipart uploads and downloads, with HEIC and CAF conversion
Live Photos
SupportedHEIC still plus MOV companion uploaded as one Live Photo
PartialDownload received Live Photos; sending is not documented
Rich link previews
Supportedrichlink() asks Messages to render its own preview
Not listed
Voice messages
Supported
SupportedisAudioMessage flag on attachment sends
Contact cards
SupportedvCard or structured contacts, plus the bot's own native contact card
Not listed
Polls
SupportedCreate, vote, add options and receive poll events; all managed plans
Not listed
Chat backgrounds
Supported
Not listed
Location sharing
SupportedFind My requests and live location; Business plan
PartialReads Find My device and friend locations; no in-chat location sharing documented
iMessage apps
SupportedCustom and live app cards; iMessage mini apps on the Business plan
Not listed
Live app cards
SupportedEdit an app card in place and render live UI without a new bubble
Not listed
Sender name and photo
SupportedShares the agent's name and photo automatically; Business plan
Not listed
FaceTime calls
Not listed
SupportedCreate FaceTime links, answer and leave calls; Private API in FaceTime.app
Delivery status
SupportedSent, delivered, read and send-error fields per message
Supportedupdated-message events for delivered and read, plus message-send-error
iMessage availability check
SupportedCheck if a number or email can get iMessage, SMS or RCS before sending
SupportediMessage and FaceTime availability endpoints
Focus and Notify Anyway
SupportedCheck if a recipient has Focus on, then trigger Notify Anyway
SupportedFocus status per handle and a notify endpoint for silenced messages
Numbers and delivery
Managed lines
SupportedSpectrum Cloud runs the Mac fleet; no Mac needed
Not supportedYou run your own Mac
Dedicated numbers
Supported$250 per line per month on Business
Not supportedNot offered; uses your own Apple ID
Shared numbers
SupportedFree and Pro route each user through a managed shared pool
Not supported
Bring your own number
SupportedYour own Apple ID when self-hosting on a Mac, and your own number for WhatsApp Business
SupportedYour own Apple ID; an endpoint switches the active iMessage alias
Line pooling
SupportedBusiness: auto-scale adds lines and a routing endpoint balances users
Not listed
SMS fallback
SupportedOn every plan per pricing; carrier rules apply to fallback traffic
Not listed
RCS fallback
Supported
Not listed
Outbound-first messaging
SupportedBusiness plan, up to 50 new contacts per line per day
SupportedPOST /api/v1/chat/new creates a chat
Calls on the iMessage number
SupportedPlace and receive SIP calls from the line people already text
PartialFaceTime only, on the same Apple ID; no phone calls
Other channels
SMS
BetaStandalone SMS and MMS numbers with 10DLC in the 2.0 beta; SMS fallback on iMessage lines today
Not listed
RCS
PartialSent on the iMessage line when the recipient cannot get iMessage
Not listed
WhatsApp
SupportedWhatsApp Business, one-to-one, on the Business plan
Not supportedNot offered
Telegram
Supported
Not supported
Slack
Supported@spectrum-ts/slack provider on npm and GitHub
Not supported
Email
BetaYour own domain with DKIM, SPF and inbound MX in the 2.0 beta
Not supported
Phone calls
SupportedSIP calls on iMessage lines; the 2.0 beta adds calls on SMS numbers
Not supportedNot offered; FaceTime only
Apple Messages for Business
BetaListed as available in the 2.0 beta
Not supportedNot offered
Unified channel API
SupportedOne Spectrum SDK across channels, and one REST model in the 2.0 beta
Not supportedNo other channels documented
Developer tools
REST API
SupportedREST API for projects and lines; sending over REST in the 2.0 beta
SupportedBlueBubbles-compatible API on 127.0.0.1:1234; password as a query parameter
TypeScript SDK
Supportedspectrum-ts, plus low-level iMessage and WhatsApp SDKs
Not listed
Python SDK
Betaphotonhq-api on PyPI, for the 2.0 beta API
Not listed
Other SDKs
SupportedGo client for Advanced iMessage; Rust and Go clients for the 2.0 API
SupportedRust crates on crates.io, such as imessage-db and imessage-private-api
CLI
Supported@photon-ai/cli manages projects, lines, users and billing
Not listedThe server binary has a bootstrap command for config; no messaging CLI documented
Webhooks
Supported
Supported17 event types; URLs set in config.yml or flags, not at runtime
Signed webhooks
SupportedHMAC-SHA256, plus Standard Webhooks signatures
Not supportedPlain JSON POST with no signature header
MCP server
SupportedHosted MCP server, plus an MCP server for the docs
Not listed
Open source
SupportedMIT: spectrum-ts, imessage-kit and most SDKs
SupportedMIT
Self-hosting
SupportedRun the open-source core on your own Mac and number, no Spectrum Cloud
SupportedSelf-hosted only, on your own Mac
Local testing
SupportedTerminal chat UI provider, no phone or number needed
Not listed
Custom channel providers
SupporteddefinePlatform plugs any interface into the same Spectrum API
Not listed
Event replay
SupportedCatch up on events after a disconnect from a durable sequence
PartialWebhooks are fire-and-forget; query messages after a timestamp to catch up
OpenTelemetry
SupportedOpt-in messaging traces in spectrum-ts, and traces in the 2.0 beta dashboard
Not listed
No-code integrations
Supportedn8n community nodes and a Dify plugin
Not listed
CRM integrations
Not listed
Not listed
Built for AI agents
Agent framework
SupportedSpectrum is a multi-channel agent framework with streaming replies
Not listed
Agent framework integrations
SupportedVercel Chat SDK, Mastra, LangChain, Convex and others
PartialDocumented setup for OpenClaw through its BlueBubbles channel; no own plugins
Streaming replies
SupportedAI output streams into one iMessage bubble, edited in place
Not listed
Agent group chats
BetaAgents find other agents and add them to a group chat (2.0 beta)
Not listed
Human handoff
BetaA person can reply in a conversation from the 2.0 beta Inbox
Not listed
Audit logs
BetaAPI logs and traces in the 2.0 beta dashboard
Not listed
Message history API
SupportedList and get messages per chat
SupportedMessage and chat query endpoints over the Messages database
Plans and compliance
Free plan
SupportedUp to 10 users on shared lines
SupportedFree, MIT software
Public pricing
Supported
SupportedFree, MIT; no paid plans mentioned
No per-message fees
SupportedNo per-message fees for iMessage, WhatsApp or Telegram; SMS, voice and email are metered in the 2.0 beta
SupportedFree software; no fees
Uptime SLA
SupportedContractual SLA on the Enterprise plan
Not supportedMIT software provided without warranty; uptime depends on your Mac
Isolated infrastructure
SupportedEach line runs in an isolated, dedicated environment
SupportedRuns entirely on your Mac
SOC 2 Type II
SupportedStated on photon.codes
Not listedSelf-hosted; compliance is up to whoever runs it
GDPR
SupportedPrivacy policy covers GDPR rights and SCC transfers
Not listed

Checked on each provider's own site and docs on 2026-10-25. “Not listed” means the provider does not mention it.

Pricing

Photon

Free plan, Pro at $25/month, Business at $250 per dedicated line per month, and custom Enterprise; the 2.0 beta adds metered SMS, voice and email.

Pricing model: plan tiers plus flat fee per dedicated line

Source

imessage-rs

Free, MIT-licensed software that runs on your own Mac.

Pricing model: free self-hosted software

Source

Which should you choose?

Choose Photon if you need animated text effects, rich link previews, contact cards and polls.

Choose imessage-rs if you need FaceTime calls.

Frequently asked questions