Ich versuche, die Funktion „Thema nach x Tagen seit der letzten Antwort schließen“ auszulösen, kann aber nicht herausfinden, welche Berechtigung dafür benötigt wird. Ich möchte eigentlich keine volle Schreibberechtigung vergeben.
Ich habe immer eine 403-Fehlermeldung erhalten, es sei denn, ich habe vollen Schreibzugriff erteilt.
Aus den Hinweisen in der API-Ansicht zu den unterstützten URLs scheint keine das Format des Timers (/t/{ID}/timer) zu entsprechen. Aber vielleicht übersehe ich auch einfach etwas
Ich würde es vorziehen, keinen vollen Schreibzugriff zu erteilen, und versuche daher nur herauszufinden, welche Berechtigung speziell dafür benötigt wird.
Die 403-Fehlermeldung hängt wahrscheinlich mit der Berechtigung zusammen, die vom Timer-Endpoint des Themas benötigt wird, und nicht mit den Parametern duration_minutes oder based_on_last_post.
Ich würde die Autorisierungsanforderungen des Endpoints im aktuellen Discourse-Quellcode für POST /t/{id}/timer überprüfen, anstatt mich nur auf die in der API-Dokumentation angezeigten Berechtigungen zu verlassen. Die Timer-Aktion könnte dieselbe themenspezifische Schreib-/Moderationsfähigkeit erfordern, die auch von der Benutzeroberfläche verwendet wird, was erklären würde, warum der volle Schreibzugriff derzeit funktioniert.
Falls es eine feinere Berechtigung für Themens-Timer gibt, sollte es möglich sein, diese anhand der Autorisierungsprüfung des Endpoints und der entsprechenden Policy-/Guardian-Methode zu identifizieren. Andernfalls wäre es vorzuziehen, den API-Schlüssel nur auf den erforderlichen Themenbereich einzuschränken, anstatt einen breiteren Schreibzugriff zu erteilen.