Check iMessage Availability (Single Address)
iMessage Availability
Check iMessage Availability (Single Address)
Check if a phone number or email is on iMessage — no saved lead required. REST endpoint in the Tuco AI iMessage API — bearer-token auth, JSON.
GET
Check iMessage Availability (Single Address)
The simplest way to check if a phone or email has iMessage. Just pass the address as a query parameter. No lead ID, no saved contact required.
Single Address Check
Request
Phone number (E.164 format) or email address to check.Examples:
+14155551234, frank@example.comResponse
Whether the API call completed without errors.
true if the address is registered on iMessage right now.The address that was checked (echoed back).
Not available
Single Address Check (POST)
POST /api/check-availability
You can also POST a single address instead of using the GET query param.
Request
A single phone number or email to check. Mutually exclusive with
addresses.Response
Batch Check (Multiple Addresses)
POST /api/check-availability
Check up to 100 addresses in a single request. Each address is checked sequentially (3s gap per device).
Request
Array of phone numbers or emails to check. Max 100 per request. Mutually exclusive with
address.Response
Rate Limits
| Limit | Value |
|---|---|
| API rate limit | 200 req/min per workspace |
| Daily cap | 70 checks/day per line (e.g., 3 lines = 210 checks) |
| Device gap | 3 seconds between checks on the same physical device |
Error Codes
| Code | When | Body |
|---|---|---|
400 | Missing or empty address param (GET) | { "error": "Address parameter is required (phone or email)" } |
400 | Missing both address and addresses (POST) | { "error": "addresses array is required and must not be empty" } |
400 | Too many addresses (POST, >100) | { "error": "Maximum 100 addresses per request" } |
401 | Invalid API key | { "error": "Unauthorized" } |
429 | Rate limit exceeded | { "error": "Rate limit exceeded" } |
429 | All lines hit daily cap | { "error": "Daily availability check quota exhausted" } |
500 | Server error | { "error": "Internal server error" } |