API, creazione utente, non restituisce più user_id

Ho uno script che viene eseguito quotidianamente per creare nuovi utenti tramite l’API. Fino a pochi giorni fa, al completamento della richiesta POST, la risposta includeva l’user_id dell’utente appena creato. Ora l’API non lo fa più? Ma la documentazione dell’API indica che dovrebbe.

4 Mi Piace

L’utente viene creato?

La mia ipotesi è che per qualche motivo l’utente non venga creato ed è per questo che non restituisce lo user_id.

Gli utenti vengono creati. Ho confermato. E l’API restituisce questo stato ma manca lo user_id

{
    "success": true,
    "active": true,
    "message": "Il tuo account è stato attivato ed è pronto per l'uso."
}
2 Mi Piace

Sì. Sembra un bug, allora. Ho cercato spiegazioni su Commits · discourse/discourse · GitHub ma non ne ho trovata nessuna.

Per confermare il problema, ho creato un utente tramite l’API su 3.4.0.beta3-dev e ha restituito user_id nella risposta.

{
	"success": true,
	"active": true,
	"message": "Il tuo account è attivo e pronto all'uso.",
	"user_id": 3
}

L’ho fatto di nuovo dopo l’aggiornamento a 3.4.0.beta4-dev e user_id è quindi mancante:

{
	"success": true,
	"active": true,
	"message": "Il tuo account è attivo e pronto all'uso."
}
2 Mi Piace

Quindi hai ristretto il campo su dove si trova il commit errato.

1 Mi Piace

Solo una intuizione

probabilmente correlato a DEV: Change hide_email_address_taken default to true (#30293) · discourse/discourse@c1c7ea8 · GitHub spiegato qui:

Suppongo che sarebbe desiderabile sovrascrivere questo comportamento quando si tratta di una richiesta effettuata utilizzando una chiave API di amministrazione?

6 Mi Piace

Grazie! La modifica di tale impostazione ha ripristinato il risultato dell’API in modo da ottenere l’user_id nel risultato dopo aver creato un utente.

3 Mi Piace

Ciao,

Anche qui…

È qualcosa su cui gli sviluppatori stanno lavorando attivamente? Perché potrebbe essere complicato ricordare che queste impostazioni contrastano la documentazione :stuck_out_tongue: