Nur Top-Level-Beiträge im Thema über die Discourse-API abrufen

Ich möchte die 20 neuesten Beiträge erhalten, die auf einem Thema auf oberster Ebene liegen, ohne rekursiv Beitragsantworten erneut abzurufen und zu filtern, bis ich 20 habe. Gibt es dafür einen Filter, den ich in der API einfach übersehen habe?

Aktuell scheint das Stream-Array in der Antwort Beiträge und deren Antworten nach Beitragsnummer zu enthalten. Wenn ich also 4 Beiträge habe [1,2,3,4] und eine Antwort auf Beitrag 1 schreibe, lautet der Stream nun [1,2,3,4,5]. Der einzige Weg, festzustellen, dass 5 eine Antwort auf 1 ist, besteht darin, den Beitrag selbst zu prüfen, „reply_to_post_number" => 1 zu finden und ihn herauszufiltern. Habe ich etwas übersehen?

1 „Gefällt mir“

That is correct. There is not a filter that can be added to the topic endpoint to get what you are after. However we do have the

which you could use to write a sql query to get what you are after. You can then save that query and hit the api endpoint for the saved query and pass it a topic_id as a param.

2 „Gefällt mir“

There isn’t a real way to get what you actually want out of this, because the metadata is messy, and people are messy and don’t really care about your analytics too much :wink:

2 „Gefällt mir“

Thanks, I will give this a shot.

Wir haben jetzt den Query-Parameter filter_top_level_replies=true, der dies für Sie erledigt.

Hier ist ein Beispiel dafür hier auf Meta https://meta.discourse.org/t/linkify-words-in-post/82193.json?filter_top_level_replies=true