Use o backend para fazer a chamada:
- se você precisar que isso seja seguro,
- se precisar que o backend processe o resultado
- se a(s) chamada(s) pode(m) demorar para ser concluída
Se for uma operação demorada, coloque-a em um Job.
Isso exigirá algum código Ruby em um Plugin e uma das gems mencionadas acima.
Não é necessariamente muito fácil começar a desenvolver plugins para o Discourse, pois é uma plataforma grande, complexa e com opiniões bem definidas, mas há bons guias oficiais aqui e MUITOS plugins de código aberto existentes para você consultar (veja Customization > Plugin e os links para o GitHub). Tente encontrar um que faça algo semelhante e observe como ele é resolvido no código.
Se for algo mais superficial, considere usar um Theme Component. Consulte os guias de desenvolvimento de temas aqui.
Veja exemplos, como este: discourse-tc-quote-of-the-day/get-quote.js.es6 no master · merefield/discourse-tc-quote-of-the-day (github.com)