Gibt es einen API-Aufruf, um das Logo-Bild einer Kategorie festzulegen?

Wir verwenden API-Aufrufe von einem externen Programm, um einige Themen automatisch zu erstellen.

Wir möchten nun automatisch das Logo-Bild einiger Kategorien ändern, indem wir das Bild aus einigen zuvor erstellten Beiträgen in Discourse extrahieren.

In der API-Dokumentation konnten wir jedoch keine Option finden, das Logo-Bild von Kategorien festzulegen, nur Farbe, Namen oder Textfarbe.
Discourse API Docs

Gibt es eine Möglichkeit, das zu tun?
Schauen wir an der falschen Stelle in der Dokumentation?

Vielen Dank im Voraus.

1 „Gefällt mir“

Die beste Dokumentation für die API ist Discourse. Siehe How to reverse engineer the Discourse API

4 „Gefällt mir“

Vielen Dank, ich werde es mir genauer ansehen.
Es scheint, dass Sie es mit dem Entwicklertools des Browsers analysieren können.
Aber bei dem Logo-Bild einer Kategorie gibt es keinen Bearbeitungsmodus, nur eine Schaltfläche, um ein Dialogfeld zum Auswählen zu öffnen, und ich sehe im Browser nicht, welches Feld Discourse aktualisiert.

Das Problem, das ich habe, ist, dass es keine PUT-Methode gibt, um das Logo festzulegen.

Es gibt eine POST-Methode, mit der Sie alle Kategorieeigenschaften festlegen können.

Aber diese POST-Methode dient zum Erstellen einer Kategorie, nicht zum Aktualisieren und Ändern der Kategorieeigenschaften.
Vielleicht kann sie auf irgendeine Weise zum Aktualisieren der Kategorie verwendet werden.

1 „Gefällt mir“

Es ist ein zweistufiger Prozess.

  1. Wenn Sie ein Logo hochladen, wird der Endpunkt uploads.json mit dem Bild aufgerufen. Wenn dies erfolgreich ist, erhalten Sie eine ID in der Antwort.
  2. Rufen Sie nun den Endpunkt auf, den Sie zuvor gesehen haben, und verwenden Sie den Parameter uploaded_logo_id mit der id, die Sie im vorherigen Schritt erhalten haben.
6 „Gefällt mir“

Vielen Dank.

Ich habe versucht, es mit den Entwicklertools des Browsers zu reverse-engineeren.

Ja, es scheint, dass Sie zuerst uploads.json zum Hochladen verwenden.

In unserem Fall ist das Bild bereits im System, da es ein Foto ist, das in einen Beitrag eingebettet ist. Ich stelle mir also vor, dass wir die ID aus dem Beitrag erhalten können.

Und dann müssen Sie nur die PUT-Methode zu Foro OjoDigital - la comunidad hispano hablante de los amantes de la fotografía.? verwenden.
mit uploaded_logo_id={image_id} ohne weitere Informationen?

Danke, ich werde es versuchen.

3 „Gefällt mir“

Ich würde erwarten, dass es so funktioniert.

5 „Gefällt mir“

Danke, wir werden es versuchen, ich werde mit dem Programmierer sprechen.

2 „Gefällt mir“

Siehe

für ein Beispiel für die Verwendung der neuen Bild-Upload-API in Discourse. Es dient einem anderen Zweck, aber dasselbe gilt wahrscheinlich.

1 „Gefällt mir“

Großartig, vielen Dank.