Segnalo alcuni post utilizzando l’API e Python. Questo ha funzionato per diversi anni, fino a un recente aggiornamento a 3.2.0.beta4-dev. Ora ricevo DiscourseClientError: Non sei autorizzato a visualizzare la risorsa richiesta. La mia chiave API è ancora valida e non è stata revocata. Il reverse-engineering segnalando manualmente un post mostra che il payload per la segnalazione non è cambiato (tranne forse il valore di flag_topic, ma ciò non sembra importare). Qualche idea?
Una recente modifica al flagging è stata il passaggio a un’impostazione abilitata per gruppi anziché a un livello di fiducia (gruppi consentiti per il post di flag), se ciò potesse essere collegato in qualche modo?
Quindi forse “All Users” non ha più il permesso di segnalare, e ho bisogno di una nuova chiave API per un “Single User” che ha il permesso (io, per esempio)? Non mi è chiaro cosa significhi “All Users”. TL0?
Teoricamente, dato che l’impostazione predefinita di TL1 è rimasta la stessa durante il passaggio delle impostazioni, avrei pensato che le stesse autorizzazioni per la chiave API avrebbero ancora funzionato, anche se ora si basano sul gruppo anziché sul livello di fiducia, potrebbe esserci qualcos’altro che ha un effetto. C’è stata una segnalazione della visibilità del gruppo come fattore in un’altra stranezza che si è verificata per un’altra delle impostazioni che è stata spostata nel formato consentito per gruppo. Per caso, hai modificato la visibilità del tuo gruppo TL1 in qualche momento?
Ho anche provato con una nuova chiave API, questa volta per un singolo utente “discobot” (il mio webhook viene eseguito come utente discobot) e poiché discobot è TL0, ho cambiato flag post allowed groups in TL0. Ancora lo stesso errore: Non sei autorizzato a visualizzare la risorsa richiesta.
Ora funziona dopo aver aumentato @discobot a TL1. Non sono sicuro di quale sia la conclusione: assicurati solo che il tuo utente soddisfi sia le impostazioni basate sul livello di fiducia che quelle basate sui gruppi. Anche allora non riesco a spiegare perché funzionasse e poi si sia rotto.
Hmm. Non sono sicuro Sono contento che ora funzioni. Ho contattato lo sviluppatore che ha apportato la modifica per vedere se c’è di più, ma potremmo aspettare altri report per approfondire ora che il tuo è di nuovo operativo.
Beh, ha funzionato per un breve periodo, forse un giorno. Poi @discobot perde di nuovo la sua capacità di segnalare. Per essere chiari, questo non ha nulla a che fare con l’API: se impersono @discobot e navigo tra gli argomenti, l’icona di segnalazione non è disponibile. Se poi cambio il livello di fiducia di @discobot, anche a un livello inferiore, le icone di segnalazione riappaiono. Cercherò di caratterizzarlo meglio, ma qualcosa sembra sbagliato.
Inoltre, non so se il problema sia esclusivo di @discobot. Uso @discobot solo perché è l’utente che ci si aspetterebbe naturalmente di segnalare automaticamente i post. E ha funzionato per anni.
Potresti dover verificare con un utente diverso. C’è una sorta di “magia” che rimuove Discobot e System dai gruppi di livello di fiducia, quindi qualsiasi cosa basata sui gruppi di livello di fiducia che utilizza questi utenti ti darà risultati strani (attualmente vengono riaggiunti ogni volta che aggiorni il tuo forum e poi rimossi di nuovo poco dopo).
Se potessi creare un utente di test specifico per provare questo, i risultati sarebbero molto più chiari.