Cobrowse session init fails with 400, trace context lost

Can’t get this config to load properly… trying to kick off a cobrowse session via the Conversations API but getting a 400 Bad Request. I need to inject the OTel span context into the headers so I can track the latency from the trigger to the actual session start in Jaeger. The standard propagation.inject works fine for simple REST calls, but cobrowse seems picky about the payload structure.

Here’s what I’m sending to /api/v2/conversations/cobrowse/sessions:

{
 "type": "cobrowse",
 "toContact": {
 "address": "user-123",
 "type": "email"
 },
 "wrapUpCodeId": "123"
}

The 400 response doesn’t give much detail, just a generic error. I’m using the JS SDK to build the request. Is there a specific field missing in the toContact object that’s causing this? Or is the wrapUpCodeId required at initiation? Usually, that’s only for closing. I’ve checked the docs but they’re vague on the exact JSON schema for the body. The trace shows the request leaving the service but nothing on the Genesys side, which suggests it’s failing before even hitting the queue logic. Can’t figure out what’s wrong with the payload.