Errore durante il tentativo di aggiornare la watchlist per un gruppo tramite API (PUT groups/{id}.json)

Priorità/Gravità:

medio-alta

Piattaforma:

Script Python e riga di comando cURL

Versione del server Discourse:

3.6.0.beta3-latest (6adb4f8e84)

Descrizione:

quando tento di aggiornare i watching_category_ids di un gruppo esistente, il mio script Python (che utilizza una semplice “requests.put”) riporta il seguente errore:

_doPut> ERRORE dalla richiesta: 422 Unprocessable Entity {‘user_count’: 2, ‘errors’: [‘Hai fornito parametri non validi alla richiesta: update_existing_users’]}

anche se non c’è nessun parametro chiamato update_existing_users nei miei dati JSON.

Usando cURL per verificare tramite:

curl -k -L -X PUT -H 'api-key:xyz’ \
   -H 'api-username:system'  \
   -H 'Accept:application/json;charset=utf-8'  \
   -H 'Content-Type:application/json'   \
   --data '{\"group\":{\"name\":\"eb-chair-exo\",\"watching_category_ids\":[336,337]}}' \
   https://cms-phys-talk.web.cern.ch/groups/46.json

Ottengo lo stesso errore:

{“user_count”:2,“errors”:[“Hai fornito parametri non validi alla richiesta: update_existing_users”]}%

Passaggi per la riproduzione:

curl -k -L -X PUT -H 'api-key:xyz’ \
   -H 'api-username:system'  \
   -H 'Accept:application/json;charset=utf-8'  \
   -H 'Content-Type:application/json'   \
   --data '{\"group\":{\"name\":\"eb-chair-exo\",\"watching_category_ids\":[336,337]}}' \
   https://cms-phys-talk.web.cern.ch/groups/46.json

edit: aggiunta la versione del server discourse