Getting a 400 error when trying to kick off an outbound call via the Personal Connection API. The docs say this endpoint is for initiating calls from a specific user’s device, but I’m hitting a wall with the payload structure.
Here’s the request I’m sending to POST /api/v2/outbound/campaigns/{campaignId}/calls:
{
"contactId": "c-12345",
"userId": "u-67890",
"callType": "PERSONAL_CONNECTION",
"phoneNumber": "+61298765432",
"metadata": {
"reason": "follow_up"
}
}
The response comes back immediately:
{
"message": "Invalid request body",
"status": 400,
"code": "bad.request",
"errors": [
{
"message": "Field 'callType' is not valid for this endpoint",
"code": "invalid.parameter"
}
]
}
I’ve checked the auth token. It’s a valid client credentials token with outbound:campaign:write and user:call:center:write scopes. The contact and user IDs exist and are active. I can manually start a call from the UI using Personal Connection, so the feature is enabled for this user.
Tried swapping callType to OUTBOUND but that just routes it through the normal campaign queue instead of using the user’s personal line. The API docs for Personal Connection are pretty sparse. Is there a specific header I’m missing? Or is the endpoint path wrong? I’m using Python requests to make the call.
import requests
url = f"{base_url}/api/v2/outbound/campaigns/{campaign_id}/calls"
headers = {
"Authorization": f"Bearer {access_token}",
"Content-Type": "application/json"
}
response = requests.post(url, headers=headers, json=payload)
The error is consistent. No variation in the payload fixes it. Looking for anyone who’s actually got this working in a hybrid setup.