SIP Trunk Analytics API missing leg_id for failed BYOC registrations

Can anyone explain why the /api/v2/analytics/interactions/realtime endpoint omits the leg_id field for interactions routed through our secondary BYOC trunks during carrier failover events?

We manage 15 BYOC trunks across APAC regions. When the primary carrier experiences a SIP 408 Request Timeout, our outbound routing logic correctly fails over to the backup trunk. However, the real-time analytics stream drops the correlation data for these specific leg transitions.

The initial leg registers correctly with a valid call_sid, but once the failover triggers, the subsequent analytics payload for the new leg lacks the leg_id necessary for stitching the conversation timeline in our custom dashboard. This breaks our SLA reporting for Singapore and Jakarta nodes.

{
 "interaction_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "legs": [
 {
 "id": null,
 "type": "external",
 "state": "connected"
 }
 ]
}

We have verified that the SIP credentials and registration status are active on the backup trunk. Is this a known limitation of the analytics API when handling mid-call trunk swaps, or is there a specific configuration in the outbound routing policy that needs adjustment to preserve the metadata?