Report a missed call
Reports a missed call from a customer and triggers the same side effects as a Telnyx-detected missed call: caller phone normalization, customer match-or-create, upcoming reservation lookup, and WhatsApp template dispatch (MISSED_CALL or MISSED_CALL_WITH_RESERVATION).
Use this endpoint when the integrating partner already detects missed calls through their own PBX or telco integration and wants to bypass Telnyx provisioning. The restaurant must have the MISSED_CALLS feature enabled and an approved WhatsApp template for the relevant message type.
Idempotency
- Pass
external_call_idto make replays safe. A second request with the sameexternal_call_idfor the same restaurant returnsoutcome: SKIPPED_DUPLICATEwithout re-sending the WhatsApp message. - Idempotency is scoped to the partner API and never collides with Telnyx-originated call ids.
Cooldown
- A 6-hour per-caller cooldown is enforced. Repeat calls within that window return
outcome: SKIPPED_COOLDOWNand do not dispatch a message.
Outcome semantics
- A
201response with aSKIPPED_*outcome is not an error. The platform received the report and intentionally chose not to dispatch the WhatsApp message (feature disabled, suppression, no template, etc.). - A
502response means an unexpected internal failure occurred while dispatching the WhatsApp message. Retry the same payload with the sameexternal_call_idto recover safely.
Authorizations
Restaurant-scoped partner API token passed as Authorization: Bearer <token>.
Body
Missed call report payload. The caller phone number is required; the rest is optional and improves replay safety and observability.
Payload to report a missed call. Triggers the same side effects (customer match, reservation lookup, WhatsApp template dispatch) as a Telnyx-detected call.
Caller phone number. E.164 format (+33612345678) is recommended. National-format strings are accepted and will be normalized using the restaurant's country.
3 - 40Partner-supplied unique id for this call. Replaying with the same value within the same restaurant returns outcome: SKIPPED_DUPLICATE without re-sending the WhatsApp message. Recommended for any retry-safe integration.
1 - 128ISO-8601 timestamp of the missed call. Defaults to the request time. Used as the cutoff for the 6-hour per-caller cooldown.
Response
Missed call processed. Inspect data.outcome to know whether a WhatsApp message was dispatched.
