

API reference and integration guide
Everything you need to send blue-bubble iMessages from your CRM: the API, webhooks, integrations, deliverability, and the rules of the channel.
Base URL
https://api.bluereacher.com/v1
Sandbox
X-BlueReacher-Sandbox: true
Blue Reacher sends and receives iMessage (with SMS fallback) through a REST API and native CRM integrations, on dedicated iMessage lines with no A2P registration required. Attach files and voice memos, send tapbacks and typing indicators, and catch every reply on a webhook.
Send messages
Text, attachments, threaded replies and group chats from a line you own.
Receive messages
Inbound messages and delivery states pushed to your endpoint as they happen.
Rich messaging
Voice memos, images, video and PDFs at full quality rather than carrier-compressed.
Check availability
Ask whether a number can take an iMessage before you spend a send on it.
Lines
Dedicated numbers, one account each, with their own keys and their own pace.
Sequencing
Drip sends plus webhooks: how multi-step outreach runs over the API.
What the platform does
| Operation | Method | Reference |
|---|---|---|
| Send a message | POST /v1/messages | Send a message |
| Send to a group | POST /v1/messages with a group target | Groups |
| Send a native voice memo | POST /v1/voice-memos | Rich messaging |
| Track delivery, read a thread | GET /v1/status/{id}, GET /v1/conversations | Status and conversations |
| Check iMessage availability | POST /v1/capability | Check iMessage |
| Manage contacts and opt-outs | /v1/contacts, /v1/opt-out | Contacts |
| List lines with live capacity | GET /v1/devices | Lines |
| Tapbacks, typing, read state | /v1/reactions, /v1/typing, /v1/read | Rich messaging |
| Receive events | Signed webhooks | Webhooks |
How it works
Get a line. Your dedicated iMessage number is provisioned during white-glove setup. It is yours alone, never shared and never recycled.
Authenticate. Every request carries
Authorization: Bearer brk_your_api_key. Keys are created in the
dashboard and can be rotated at any time.
Send. One POST with a to and a message. iMessage first, SMS
fallback when the number cannot take a blue bubble.
Listen. Replies, delivery states and opt-outs arrive on your webhook as
signed events with a stable event_id.
curl https://api.bluereacher.com/v1/messages \
-H "Authorization: Bearer brk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"to": "+14155550142",
"message": "Thursday 10am still work for the walkthrough?"
}'{
"event": "message.received",
"event_id": "9f3c1b7e-2a64-4d8f-b0e5-c7a92d4f8e13",
"timestamp": "2026-08-31T07:41:22.310Z",
"data": {
"phone_number": "+14155550142",
"content": "Works. Send the invite.",
"direction": "incoming",
"service_type": "iMessage"
}
}Key concepts
| Concept | What it means |
|---|---|
| Line | A dedicated iMessage number on your account. Every send has one, and it never belongs to anyone else. |
| Thread | One conversation per number, held for years. Follow-ups land inside the history rather than starting fresh. |
| Delivery channel | Which rail actually carried a message: imessage or sms. Resolved per send, returned on every message. |
| Webhook | Your HTTPS endpoint. Inbound messages, delivery states and opt-outs POST to it, signed so you can verify them. |
| API key | A brk_ bearer token, scoped to your workspace, rotatable and revocable in the dashboard. Test keys (brk_test_) run the whole surface against a simulator. |
Opt-outs are read on every inbound message, honoured account-wide within seconds, and recorded in an exportable audit trail. You do not have to implement suppression yourself, and you cannot accidentally send around it.
Start here
Quickstart
First message sent and first reply caught, in about five minutes.
Authentication
Keys, rotation, revocation and where to keep them.
Key concepts
Lines, contacts, messages, and how they fit together.
Migrating in
Move an existing program across without losing suppression records.
Connect your stack
GoHighLevel
The native integration. Replies land in Conversations with nothing to build.
More native connections
HubSpot, Salesforce, Close, Pipedrive, Follow Up Boss, Jobber, and Meta lead forms, connected for you.
Zapier, n8n and Make
No-code paths for teams without an engineer to spare.
MCP server
One command wires your account into Claude Code, Claude Desktop or Cursor.
Build a campaign
Speed to lead
Reach an inbound form fill before anyone else answers.
No-show recovery
The first fifteen minutes after a missed slot decide it.
Appointment reminders
Confirmations that get read, in the thread they were booked in.
List reactivation
Wake a dormant list without burning the line doing it.
Going to production
API reference
Base URL, conventions, pagination, idempotency, errors and rate limits.
Rate limits
What a line paces at, what a 429 means, and how to back off.
Deliverability
Why the scaling move is more lines rather than more volume per line.
Compliance
Consent, TCPA and what no A2P registration does and does not cover.