Chamando a API com external_id para resposta

É possível usar o external_id do SSO para chamar a API de resposta a postagens, a fim de evitar ter que determinar o nome de usuário do usuário primeiro com o external_id a cada vez?

Não, isso não é possível.

Você não precisa determiná-lo “toda vez”, você poderia decidir armazená-lo em cache no lado de quem está chamando.

Se o usuário A alterar o nome no Discourse, e o usuário B alterar o nome ao mesmo tempo para o nome anterior do usuário A, existe a possibilidade de que, ao obter o nome do usuário A através do cache, a resposta do usuário A seja vinculada ao usuário B?

Sim, embora isso soe um pouco teórico, é certamente possível. Seria melhor se fosse possível autenticar-se contra um ID de usuário.

Defina um webhook em user.updated para limpar seu cache para esse usuário!

Sim, esta deve ser uma solução relativamente boa. Obrigado.
No entanto, ainda existe a possibilidade de o webhook perder pacotes devido a flutuações de rede, fazendo com que o cache não seja atualizado.
Embora isso possa ser resolvido até certo ponto com o TTL (Time To Live) do cache, o problema ainda pode ocorrer antes que o cache TTL expire.
Por fim, a maneira mais segura é obter o nome de usuário exato através do external_id.
Claro, estas são apenas minhas especulações teóricas pessoais.