Skip to main content

FlexML Call Flow

This section explains how FlexML requests are sent to your application, what information is included in them, and how your application should respond. It also covers status callbacks, which are asynchronous notifications sent during or after a call to report its outcome and intermediate events.

Typical FlexML Call Sequence

  1. Call Initiation: an inbound call comes in, or your application makes an API request for an outbound call.
  2. Initial Request: CarrierX sends the first HTTP request to your application URL.
  3. FlexML Response: Your application responds with a set of FlexML instructions wrapped in <Response> tags.
  4. Verb-specific Callbacks: As individual verbs complete (e.g., Dial, Gather, Play, Record), action callbacks are triggered if specified via the action attribute. These may occur while the call is still in progress.
  5. Final Status Callback: After the call ends, CarrierX sends a final callback reporting overall call results, including call duration, status, and any stored data.