The PATCH /v2/contact_center/participants/{participantId} endpoint is throwing a 400 Bad Request with the body {"status": "failure", "code": "invalid_parameter", "message": "The request payload is invalid"}. This is hitting inside a self-hosted n8n instance using an HTTP Request node.
The workflow is designed to sync custom participant metadata during an active session. The payload being sent is a standard JSON object:
{
"participant": {
"external_id": "ext-99283",
"custom_fields": {
"priority_level": "high"
}
}
}
Ruled out OAuth2 credential expiration since other calls to the same account work fine. The Content-Type is set to application/json. It’s weird because the same payload works in a raw cURL request from the terminal, but the n8n node fails consistently. Checked the node.js logs on the host; nothing there but the generic 400 response from the Zoom gateway. The participantId is being pulled dynamically from a previous GET call, so it’s definitely a valid UUID.