Blue bubbles your customers actually read. Send and receive iMessage from your app, CRM, or AI agent over one secure REST API — delivery receipts, attachments, and real-time webhooks included.
# One request. One blue bubble. curl https://api.bluetext.app/v1/messages/send \ -H "Authorization: Bearer $DEVICE_TOKEN" \ -d '{ "to": "+14155551234", "content": "Your table is ready 🍷" }'
const res = await fetch("https://api.bluetext.app/v1/messages/send", { method: "POST", headers: { "Authorization": `Bearer ${process.env.DEVICE_TOKEN}` }, body: JSON.stringify({ to: "+14155551234", content: "Your table is ready 🍷", }), }); console.log(await res.json()); // { status: "queued" }
import requests res = requests.post( "https://api.bluetext.app/v1/messages/send", headers={"Authorization": f"Bearer {DEVICE_TOKEN}"}, json={"to": "+14155551234", "content": "Your table is ready 🍷"}, ) print(res.json()) # {"status": "queued"}
No demo calls, no carrier paperwork. Connect a device and start sending.
Email us during the private beta and receive your API credentials the same day.
hello@bluetext.appYour device connects outward over HTTPS — no ports, no VPN, no shared Wi-Fi.
device tokenOne request sends a real blue bubble. Replies stream back over webhooks.
POST /v1/messages/sendA focused API surface for the channel with the highest open rates on earth.
Real iMessage delivery from a real number. No gray-bubble SMS fallback unless you ask for it.
One POST to send. JSON everywhere. Predictable errors, idempotency keys, stable handles.
Delivered, read, and reply events stream to your webhook the moment they happen.
Photos, videos, voice memos, and files — full resolution, not carrier-mangled MMS.
Thread state, stable message handles, and approval flows so AI agents stay auditable.
Skip weeks of carrier registration. Your device, your numbers, message today.
import { BlueText } from "bluetext"; const bt = new BlueText(process.env.DEVICE_TOKEN); // On new CRM deal: send a blue-bubble nudge await bt.messages.send({ to: deal.contact.phone, content: `Hi ${deal.contact.firstName}, free Friday at 2pm?`, });
Your customers' messages deserve infrastructure that assumes adversaries exist.
Per connected device. No per-segment carrier math, no surprise fees.
Get API access during the private beta — no credit card, no A2P paperwork.
Request access