Existe algum endpoint que forneça os IDs de contas externas de um usuário a partir de seu ID do Discourse?

Continuando a discussão de Obter external_id por usuário para contas associadas?:

Vi que essa pergunta foi feita aqui, mas acho que não ganhou tração, pois estava apenas na categoria dev. Estou me perguntando se algo assim existe ou é possível, mesmo que não esteja documentado. Eu realmente preciso de uma maneira de obter todas as suas contas associadas e, idealmente, não gostaria de ter que armazená-la em um banco de dados separado e mantê-la sincronizada (por exemplo, um usuário remove sua conta social).

Você pode ver as informações no painel de administração, acho que você pode Como fazer engenharia reversa da API do Discourse.

1 curtida

Sim, então há uma seção associated_accounts, mas o problema é que ela não mostra o ID externo, como o que você precisaria usar com Discourse API Docs, que é o meu problema.

Por exemplo, eu precisaria obter o ID do usuário do Discord ou o ID 64 do Steam, que não são acessíveis a partir do endpoint.

Qual é o problema que você está tentando resolver? O que você vai fazer com as informações da conta externa?

Não sei se existe uma API que exponha isso. Teria que olhar o código-fonte. Talvez outra pessoa saiba.

Você pode precisar de um plugin que resolva seu problema. Talvez apenas adicionar as informações ao serializador do usuário para administradores.

1 curtida

Sim, então, basicamente, eu estava usando o Discourse SSO em um site externo e precisava ver se um usuário associou suas contas. Se eles tivessem, eu precisava de seus IDs para executar certas ações. Eu realmente queria evitar que eles fizessem login nesse site externo com Discord OAuth ou Steam OpenID porque parecia redundante e significaria que certas coisas poderiam não estar em sincronia com o Discourse.

Bem, eu ainda não entendi completamente, mas acho que você precisará de um plugin.

1 curtida

Ah, é possível criar um endpoint de API personalizado com um plugin? Terei que investigar isso. Obrigado!

Você pode criar um endpoint personalizado com essas informações usando Como executar consultas do Data Explorer com a API do Discourse

5 curtidas

Oh! Uau. Muito legal. Eu sabia que você poderia criar consultas personalizadas e chamá-las da API, mas não tinha ocorrido a mim que era um endpoint. Incrível.

4 curtidas

Obrigado por toda a ajuda de vocês dois! Parece que o explorador de dados pode ser o que eu preciso. Vou tentar agora mesmo.

Editar: Sim, uau - esse é um plugin tão poderoso. Obrigado!

3 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.