Has anyone encountered a persistent 400 Bad Request when attempting bulk shift swap approvals via the WFM API for agents assigned to BYOC trunk groups in the APAC region?
We are observing this specific error when attempting to approve shift swaps. The payload validates correctly against the Swagger schema, and individual swap approvals for the same agents succeed without issue. However, when we batch approve swaps for a group of 15 agents (who are primarily on BYOC trunks), the API returns a 400 with the following body:
{
"errors": [
{
"code": "INVALID_REQUEST_BODY",
"message": "The request body is invalid. Check the payload structure and required fields."
}
]
}
This is frustrating because the error message is generic. We have verified that all required fields (shiftSwapId, approverId, comment) are present and correctly formatted. Interestingly, if we filter the batch to include only agents on standard Genesys Cloud trunks, the approval succeeds. When BYOC trunk agents are included, even one, the entire batch fails with the 400 error.
We are using the Python SDK version 3.2.1 and making requests from our Singapore-based orchestration server. The timestamps are all in UTC+8. Could there be a hidden dependency on trunk type in the WFM service that isn’t documented? Or is this a known issue with the bulk endpoint handling specific user attributes linked to BYOC configurations?
Any insights or workarounds would be appreciated. We need to automate this process and cannot rely on manual approval for these shifts.