POST /api/v2/conversations/calls 400 Error: Malformed participant address

Hey folks. I’m running into a wall with the outbound call API. I’m writing a .NET service to initiate calls using the Genesys Cloud REST API. The goal is to trigger a call from our system to an external number. I’m using the POST /api/v2/conversations/calls endpoint. The authentication is handled via OAuth client credentials and seems fine because I can pull user data without issues. The problem hits when I send the POST request. I get a 400 Bad Request response. The error message says the participant address is malformed.

Here is the JSON payload I’m constructing in C#:

{
 "to": {
 "addresses": [
 {
 "address": "+15551234567",
 "addressType": "phone"
 }
 ]
 },
 "from": {
 "addresses": [
 {
 "address": "15559876543",
 "addressType": "phone"
 }
 ]
 },
 "wrapUpCode": "",
 "queueId": "my-queue-id-here"
}

The from address is a valid outbound IVR number in our org. The to address is a mobile number. I’ve checked the formatting. The plus sign is there. No spaces. I’ve tried removing the plus sign. I’ve tried using the E.164 format explicitly. Nothing works. The 400 error persists. The response body is just:

{
 "message": "Malformed participant address",
 "code": "bad_request",
 "status": 400
}

I’m debugging this in my local environment. The API version is v2. I’ve verified the queueId is correct. I’ve verified the from address is assigned to the user making the API call. Is there a specific format requirement for the address field that I’m missing? Maybe something with the country code? Or maybe the addressType needs to be different? I’ve looked at the documentation but it’s vague on the exact string format. Any ideas on what could cause this? I’ve been staring at this for hours. It feels like a simple syntax error but I can’t find it.