Initiating Cobrowse Session via Conversations API returns 400

Hey everyone,

I’m trying to automate the start of a cobrowse session for our agents. We have a custom dashboard running in a side window, and when an agent clicks “Start Cobrowse,” I want it to trigger the session programmatically instead of relying on the standard UI button flow. The goal is to keep everything within our custom tooling.

I’ve been looking at the Conversations API documentation, specifically the Interactions endpoint. I’m attempting to POST to /api/v2/conversations/cobrowse to create the initial interaction. Based on what I’ve read, this should create the session and return the necessary URLs for the participant to join.

Here is the cURL command I am running for testing:

curl -X POST \
 https://myorg.mypurecloud.com/api/v2/conversations/cobrowse \
 -H 'Authorization: Bearer <my_token>' \
 -H 'Content-Type: application/json' \
 -d '{
 "from": {
 "id": "agent-user-id-123",
 "name": "Test Agent",
 "email": "agent@company.com"
 },
 "to": [
 {
 "id": "customer-id-456",
 "name": "Customer User",
 "email": "customer@company.com"
 }
 ],
 "type": "cobrowse"
 }'

The response I get back is a 400 Bad Request. The error body is pretty sparse:

{
 "message": "Validation failed",
 "parameters": [
 {
 "name": "type",
 "message": "Invalid interaction type"
 }
 ]
}

This is confusing because cobrowse is listed as a valid type in the InteractionType enum. I’ve double-checked the user IDs to ensure they exist and are active. The token has the conversation:read and conversation:write scopes.

Is there a specific prerequisite for the to participant? Do they need to be in a specific state or have a prior interaction? Or am I missing a required field in the payload that isn’t explicitly marked as required in the docs?

Any help would be appreciated. I’m stuck on this validation error.