TypeScript SDK: disconnectParticipant returns 404 on valid participant ID

Trying to drop a specific participant from a conference using the Node SDK (@genesyscloud/conversations-api-v2). The call works for the initiator but fails for others with a 404.

const resp = await apiInstance.disconnectConferenceParticipant(conversationId, participantId, { 
 reason: 'agent_initiated' 
});

The participantId is pulled directly from the participants array in the GET call right before this. I’ve verified the ID matches the id field in the JSON payload. Is there a race condition where the participant state changes between the GET and the disconnect? Or is the SDK sending the wrong endpoint?

Checked the network tab and it’s hitting /api/v2/conversations/conferences/{id}/participants/{id}/disconnect. The response body says "message": "participant not found". Weird because the ID exists in the active list.