SIP INVITE trace propagation and 408 spikes

How does the X-GC-Trace-Id header propagate when a SIP INVITE hits a media server? Trying to map call legs in Datadog APM, but the trace breaks at the SIP ingress. The sip_trunk config in genesyscloud_sip_trunk terraform module is set to encryption: tls, yet the logs don’t show the header. The genesys-cloud-sdk-go v1.65.0 client is doing jack all here. It’s weird because the 408 Request Timeout errors spike when the media server tries to bridge. The metric push fails since call_leg_id returns null.

Problem
PureCloudPlatformClientV2 does not handle SIP header injection for trace propagation. The Go client isn’t dropping the header; the SIP trunk configuration misses the trace context toggle. You’ll see 408 spikes when the media server waits for a header that never arrives. Weird how the docs skip this.

Code

from PureCloudPlatformClientV2 import PureCloudPlatformClientV2, SdkConfiguration

config = SdkConfiguration()
config.region = "US_EAST"
api_instance = PureCloudPlatformClientV2.build(config).routing_sip_trunks_api
trunk = api_instance.get_routing_sip_trunk(trunk_id)
# Check trace propagation setting
print(trunk.trace_propagation_enabled)

Error
The output returns False or None. The 408 timeout happens because the ingress rejects the INVITE without the trace context.

Question
Check the trace_propagation_enabled flag on the trunk object. The SDK just wraps the API. The flag controls the header passthrough.