CXone Personal Connection API: 400 Bad Request on outbound call trigger

Is the correct approach to initiate an outbound call via the CXone Personal Connection API using a POST request to /api/v2/interactions/outbound-calls?

We are attempting to automate outbound dialing through a custom integration. The goal is to trigger a call from a specific user’s Personal Connection context. We have the necessary OAuth tokens and the user_id of the agent who should make the call. The documentation suggests passing the to number and the from number (which should be the user’s personal number or a configured DID).

Here is the JSON payload we are sending:

{
 "to": "+15550199",
 "from": "+15550100",
 "user_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "context": {
 "campaign_name": "Sales Outreach Q3"
 }
}

The HTTP request returns a 400 Bad Request error. The response body is minimal:

{
 "message": "Invalid request body",
 "code": "invalid_request_body"
}

We have validated the phone numbers in E.164 format. The user_id exists and is active. We are using the genesyscloud Terraform provider for other resource management, but this specific action requires a direct REST call since there is no Terraform resource for dynamic call triggering.

We are running this from a backend service in us-east-1. The API endpoint we are hitting is https://{organization_id}.my.cxone.com/api/v2/interactions/outbound-calls.

Is there a required header we are missing? Or is the context object causing the validation failure? We tried removing the context object, but the error persists. The from number is registered to the user in the CXone portal.

Any insights on what might be invalid in this payload?