Benutzererstellung und -aktivierung über die API

Hallo zusammen, wir nutzen die Version 2.5.0.beta3 und haben Probleme beim Erstellen eines Benutzers über die API.

Wir möchten einen Benutzer erstellen und sofort einen Beitrag über die API verfassen können, ohne dass dieser den Bestätigungslink in der E-Mail anklicken muss.

Wir haben das Aktiv-Flag beim Erstellen eines Benutzers auf verschiedene Weise angepasst, können aber die Notwendigkeit der Bestätigungs-E-Mail nicht abschaffen.

{"errors":["Sie sind nicht berechtigt, die angeforderte Ressource anzuzeigen."],"error_type":"invalid_access"}

1 „Gefällt mir“

Es sieht so aus, als wäre Version 2.5.0.beta3 am 22. April 2020 veröffentlicht worden, und die von mir für dieses Problem erstellte Korrektur wurde am 14. April 2020 veröffentlicht. Daher sollten Sie einen aktiven Benutzer über die API mit einer einzigen Anfrage erstellen können.

Können Sie bitte überprüfen, ob Ihre Anfrage und Antwort ähnlich wie dieser curl-Befehl aussehen:

curl -i -sS -X POST "http://localhost:3000/users"  \
-H "Content-Type: multipart/form-data;"  \
-H "Api-Key: 079fb2bb12d3b436bb11bde8eb58aaa9a36560fa7d79b14b3087aa40b1ebc2c4"  \
-H "Api-Username: blake.erickson"  \
-F "name=8fe87241ca91a69f5ccd"  \
-F "username=8fe87241ca91a69f5ccd"  \
-F "email=8fe87241ca91a69f5ccd@example.com"  \
-F "password=c9193506a8f5e402a88cf2f8cee3f258"  \
-F "active=true"  \
-F "approved=true"

HTTP/1.1 200 OK

{
  "success": true,
  "active": true,
  "message": "Ihr Konto ist aktiviert und einsatzbereit.",
  "user_id": 10
}
2 „Gefällt mir“

Der curl-Befehl wurde ausgeführt, und die Antwort zeigt, dass der Benutzer nicht aktiv ist. Die Meldung besagt, dass der Benutzer per E-Mail aktiviert wird.

C:\Windows\system32>curl -i -sS -X POST https://our-discourse-host/users -H "Content-Type: multipart/form-data;" -H "Api-Key: The-API-key" -H "Api-Username: The-username" -F "name=8fe87241ca91a69f5ccd" -F "username=8fe87241ca91a69f5ccd" -F "email=8fe87241ca91a69f5ccd@testemail.test" -F "password=c9193506a8f5e402a88cf2f8cee3f258" -F "active=true" -F "approved=true"
HTTP/1.1 200 OK
{
"success":true,
"active":false,
"message":"<p>Sie sind fast fertig! Wir haben eine Aktivierungs-E-Mail an <b>8fe87241ca91a69f5ccd@testemail.test</b> gesendet. Bitte befolgen Sie die Anweisungen in der E-Mail, um Ihr Konto zu aktivieren.</p><p>Wenn die E-Mail nicht ankommt, überprüfen Sie Ihren Spam-Ordner.</p>",
"user_id":13
}

@blake Könntest du bitte Beitrag #3 prüfen und mir mitteilen, ob mir dort etwas fehlt?