Skip to content
LinqCopy agent prompt

Capability

Check whether a recipient address supports iMessage or RCS before sending a message.

Check iMessage capability
client.capability.checkIMessage(CapabilityCheckIMessageParams { address, from } body, RequestOptionsoptions?): HandleCheckResponse { address, available, reason, selected_service }
POST/v3/capability/check_imessage
Check RCS capability
client.capability.checkRCS(CapabilityCheckRCSParams { address, from } body, RequestOptionsoptions?): HandleCheckResponse { address, available, reason, selected_service }
POST/v3/capability/check_rcs
ModelsExpand Collapse
HandleCheck { address, from }
address: string

The recipient address to check. check_imessage accepts an E.164 phone number or an email address; check_rcs accepts an E.164 phone number only and rejects an email with a 400, since RCS has no email addressing.

from?: string

Optional sender phone number. If omitted, an available phone from your pool is used automatically.

HandleCheckResponse { address, available, reason, selected_service }
address: string

The recipient address that was checked

available: boolean

Whether the recipient supports the checked messaging service

reason?: "not_supported"

Why available is false. Only present on a negative result.

not_supported is the only value returned with a 200, and it means the check completed and the recipient is genuinely not reachable over this service. On check_rcs, sender-side faults do not return 200 — they return 503 with a specific error code. check_imessage does not use this mapping.

selected_service?: string

The service that would actually carry a message to this address right now, which is not always the service you checked — a recipient without RCS resolves to SMS. Absent when the check could not determine one.