Web Messaging API: 403 Forbidden when calling DELETE /api/v2/conversations/messaging/{conversationId}

We’re trying to programmatically terminate web messaging sessions from our backend service to enforce strict session timeouts and propagate that lifecycle event into our OpenTelemetry trace. The backend runs in our Manila office and uses a standard OAuth client credentials flow to get an access token. When we hit the Genesys Cloud DELETE /api/v2/conversations/messaging/{conversationId} endpoint, we get a 403 Forbidden response. The token works fine for reading conversation details or updating participant attributes, so the scope looks correct. We’ve verified the conversation ID is valid and the session is active. It feels like there’s a specific permission missing on the service account or a weird quirk with the Messaging API that blocks external termination.

Here’s the Python snippet we’re using to make the call. The response.raise_for_status() is throwing the error. We’ve also tried adding the X-Genesys-Idempotency-Key header just in case, but no luck. Does the service account need a specific role like webmessaging:conversation:delete that isn’t documented, or is there a different endpoint we should be hitting to close the session from the server side? We need this to ensure our distributed traces capture the full end-to-end latency including the cleanup phase.