Blue Reacher
Check iMessage availability16 / 50

Check iMessage availability

POST /v1/capability: look up whether phone numbers can receive iMessage before you send, up to 100 per call.

POST https://api.bluereacher.com/v1/capability

Batch lookup, up to 100 phone numbers per call. Tells you whether each number can take an iMessage before you spend a send on it. Requires read permission. Test keys work here: the simulator returns realistic imessage and sms answers marked "sandbox": true and never queues a real probe.

Numbers the platform already knows answer instantly from observed delivery state. Unknown numbers can queue a live probe (probe: true, the default) when the workspace has probes enabled and an online line with probe quota; probes are silent, the person on the other end sees nothing. Probe quota is 50/day per line.

Why check before you send

  • You stop burning sends. An iMessage aimed at an Android number falls back to SMS. Knowing first lets you route or skip.
  • Your reply rate stays honest. Filter the never-deliverables out and campaign metrics describe real conversations.
  • Your lines stay healthy. Only messaging people who can receive keeps delivery signals clean.
  • Lists rot. People switch phones. A check the morning of a send catches the number that left iMessage in July.

Request

FieldTypeRequiredDescription
phonesarrayyesUp to 100 E.164 numbers
probebooleannoQueue live probes for unknown numbers. Default true
curl -X POST https://api.bluereacher.com/v1/capability \
  -H "Authorization: Bearer brk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "phones": ["+16465550119", "+13035550101"] }'

Response

{
  "results": [
    {
      "phone": "+16465550119",
      "status": "imessage",
      "confidence": "confirmed",
      "last_checked": "2026-08-30T14:41:53Z",
      "probe_queued": false
    },
    {
      "phone": "+13035550101",
      "status": "pending",
      "confidence": null,
      "last_checked": null,
      "probe_queued": true
    }
  ],
  "probes_enabled": true,
  "probes_queued": 1
}
statusMeaning
imessageDelivers as a blue bubble
smsFalls back to SMS
unknownNot known and no probe queued
pendingProbe queued; re-check shortly

confidence distinguishes confirmed (observed delivery) from inferred. The practical pattern: run the check over your list before a campaign, send the imessage group with confidence, and decide per use case whether the sms group is worth green-bubble outreach.

On this page