Como recuperar todos os tópicos de uma categoria

Olá a todos,
preciso obter todos e apenas os tópicos de uma categoria específica.
Portanto, de acordo com a documentação, parece que a maneira correta é usar o endpoint search.json.
O problema é que não entendi como definir o filtro de categoria.
Fiz algo como isto:

GET {{ _.base_url }}/search.json?q=#retail after:2023-12-05 order:latest_topic

mas obtenho um resultado nulo

{
	"grouped_search_result": null
}

Onde estou errando? Se eu remover a tag da categoria (#retail) funciona, mas em todas as categorias.

Obrigado desde já

Olá,

Você precisa codificar o parâmetro q.

É isso que você quer enviar: ?q=%23retail%20after%3A2023-12-05%20order%3Alatest_topic

Pedi ao chat-gpt e ele me deu uma solução que funciona, mas não está documentada em lugar nenhum :smiley:

GET {{ _.base_url }}/search.json?q=category:magazzino-partner after:2023-12-05

Se eu usar a tag de categoria, funciona!

Você está certo; é um filtro alternativo e avançado válido! Você ainda deve codificar o parâmetro; esse foi o seu problema (e pode se tornar outro, dependendo do que você usa).

Aqui está uma lista de filtros avançados principais:

in:bookmarks
in:created
in:mine
in:likes
in:watching
in:tracking
in:all-pms
in:first
in:personal-direct
in:pinned
in:posted
in:seen
in:tagged
in:unseen
in:untagged
in:wiki
with:images
status:archived
status:closed
status:noreplies
status:open
status:public
status:single_user
max_posts:<number>
max_views:<number>
min_post_count:<number>
min_posts:<number>
min_views:<number>
posts_count:<number>
after:<date>
badge:<name|id>
before:<date>
category:<slug|id>
created:@<username>
filetypes:<ext[,ext,..]>
filetype:<ext[,ext,..]>
group_messages: <name|id>
group: <name|id>
tag:<name>
tags:<name,name>
-tag:<name>
-tags:<name,name>
user:<username|id>
#<[=]category_slug[:subcategory_slug]>
@<username>
2 curtidas

Não há necessidade de usar a funcionalidade de pesquisa para isso, basta usar o JSON da lista de tópicos da categoria como
https://meta.discourse.org/c/dev/7.json

1 curtida

Sim, mas dessa forma não consigo filtrar por data. Usar a busca com “after” parece ser a solução para o meu caso de uso.

1 curtida

Observe que usar after na pesquisa retorna os tópicos com atividade após uma determinada data, não os tópicos criados após uma determinada data. Isso é o mesmo que usar a lista de tópicos mais recente e parar quando você ultrapassar sua data limite.

1 curtida

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