Discourse_api: site_setting_update disable_emails

Die API-URL Discourse API Docs für die Site-Einstellung disable_emails gibt an, dass folgender Payload übergeben werden muss:

{
    "disable_emails": false
}

Aber beim Ausführen des folgenden curl-Befehls erhalte ich einen Fehler. Kann mir jemand sagen, was ich falsch mache?

curl -X PUT -H "Content-Type: application/json" \
     -H "Api-Key: $DISCOURSE_API_KEY" -H "Api-Username: $USER" \
     --data '{ "disable_emails": false }' \
     $DISCOURSE_URI/admin/site_settings/disable_emails
{"errors":["value"]}

Dieser Fehler {"errors":["value"]} ist sehr verwirrend. Ich habe auch "false" und 0 versucht, mit demselben Ergebnis.

Ich bin zu curl gewechselt, weil discourse_api mit folgendem Aufruf nicht funktionierte:

client.site_setting_update(name: 'disable_emails', value: false)

Wenn jemand weiß, was bei meinem Aufruf falsch läuft, bitte ich um Aufklärung!

(Im Fehlerprotokoll erscheint nichts)

Oh, ich denke, diese Einstellung wurde in eine Aufzählung verschoben. Die Optionen sind:

  • nein
  • ja
  • Nicht-Mitarbeiter

Danke @Falco, es funktioniert! Die Dokumentation ist also defekt. Ich habe das Repository geklont und werde es später reparieren.