Olá! Excelente análise, e sim - o comportamento desse endpoint pode gerar confusão pela forma como está descrito na documentação.
O que este endpoint realmente faz
Apesar da descrição mencionar "Add participants on behalf of a user", este endpoint não adiciona um novo participante à chamada.
Ele é usado apenas para atuar sobre um participante que já está na conversa, por exemplo:
-
Mutar / desmutar
-
Colocar em espera
-
Atualizar estado
-
Encerrar participação
Se o userId informado nĂŁo estiver presente na conversa, a API retorna:
Ou seja:
Este endpoint só funciona para participantes já existentes.
Endpoint correto para adicionar um novo participante
Para adicionar um novo participante (interno ou externo), use:
Exemplo – adicionando um usuário interno à chamada:
Exemplo – adicionando um número externo:
Observação: conference: true garante que os participantes atuais permaneçam na chamada ao incluir o novo participante.
Resumindo
| Ação desejada |
Endpoint correto |
Observação |
| Adicionar novo participante (interno ou externo) |
POST /participants |
Cria um novo participante |
| Atuar sobre um participante existente |
POST /participants/user/{userId} |
Só funciona se o usuário já estiver na conversa |
📝 Sobre o texto da documentação
VocĂŞ está certo em observar que a frase "add participants" nesta rota Ă© ambĂgua.
O "add" se refere ao conjunto de operações de participantes, mas esta rota especificamente não cria participantes. Vale abrir um doc feedback caso queira reportar o ponto - é algo que aparece para outros devs também.
------------------------------
Fernando Sotto dos Santos
Consultor Grupo Casas Bahia
------------------------------
Original Message:
Sent: 11-07-2025 08:01
From: Marisa Grasso
Subject: ADD PARTICIPANT TO CONV WITH USER ID
Hello,
I'm trying to understand the behavior of the endpoint:
The official documentation description says: "Add participants on behalf of a user", which makes it sound like it can add a new participant using userId only, to a conversation.
However, in practice:
If the userId in the path is not already a participant in the conversation, the API returns:
It seems that this endpoint can only update or act on an existing participant, not create a new one.
I want to clarify:
Is /participants/user/{userId} intended only to update existing participants, despite the wording "add participants" in the API Docs?
If so, why does the description use "add participants"?
What is the correct endpoint for adding a new participant using auserId to an ongoing conversation, without user context, with client credentials?
Any clarification or official guidance would be very helpful - the documentation is a bit misleading.
Thank you!
#PlatformAPI
------------------------------
Marisa Grasso
------------------------------