Como encontro posts excluídos via API?

Estou tentando usar a API para manter uma lista de posts recentes. Isso funciona bem usando posts.json.

Mas o problema que estou enfrentando é que posts excluídos não aparecem em posts.json. E não parece haver um posts_deleted.json ou algo similar.

Então, como posso encontrar todos os posts excluídos via API? Isso parece algo simples, mas não consigo entender. Estou perdendo algo?

Acho que isso não é possível. Talvez, se você postar alguns detalhes sobre o motivo pelo qual está tentando encontrar postagens excluídas via API, alguém possa ter ideias sobre maneiras alternativas de abordar o problema que você está tentando resolver.

Uma possibilidade é que você possa configurar um webhook de evento de postagem para apontar para um serviço externo. Esse webhook será acionado quando uma postagem for criada, editada, excluída ou recuperada. Possivelmente, esse webhook forneceria as informações de que você precisa.

Eu uso a API para armazenar postagens no meu banco de dados, assim não preciso chamar a API toda vez que quiser exibir dados para cada usuário. Isso também me permite conectar os dados completamente a todas as minhas tabelas, adicioná-los a visualizações, etc.

Depois, posso mostrar informações sobre as postagens no meu site, fora do Discourse.

Mas, como aparentemente não há como descobrir quando as postagens são excluídas, acabo exibindo algumas postagens já apagadas, e as pessoas não entendem por que os links não funcionam corretamente.

Não entendo por que não há como encontrar postagens excluídas. Parece uma ferramenta muito óbvia. Até existe um campo em posts.json para “usuário excluiu”, mas esse campo aparentemente nunca pode ser verdadeiro, porque o posts.json nunca mostrará uma postagem excluída. Então, ou esse campo não deveria existir, ou o posts.json deveria mostrar as postagens excluídas.

Essa é uma ótima abordagem!

Acho que apontar um webhook de Evento de Post para sua aplicação resolveria isso. Quando um post é excluído, o X-Discourse-Event do webhook será definido como post_destroyed. Você poderia salvar os IDs dos posts destruídos em sua aplicação e excluir esses posts ao exibir o conteúdo do Discourse no seu site.