API / anonimizzare o eliminare

Ciao. Stiamo utilizzando Discourse ospitato con OAuth. Ci siamo resi conto all’improvviso che, quando elaboriamo le cancellazioni, non stiamo cancellando dalla nostra istanza di Discourse.

Mi piacerebbe poter anonimizzare un account OPPURE cancellare un account in modo programmatico tramite l’API, ma non vedo un modo semplice per farlo, dato che non conosco l’ID dell’account su Discourse.

Sto tralasciando qualcosa di ovvio? Hai qualche suggerimento?

Grazie,

Andrew

4 Mi Piace

Do you know if email addresses match between your OAuth identity provider and Discourse? If they do, you could get the Discourse user based on their email address by making an authenticated API request to /admin/users/list/all.json?email=<users_email_address>. For example:

curl -X GET "http://localhost:3000/admin/users/list/all.json?email=bob@example.com" \
-H "Api-Key: $api_key" \
-H "Api-Username: system"
5 Mi Piace

They should match, thank you – that was the call I was missing. Verifying.

Sono interessato anche all’utilizzo di una chiamata API per anonimizzare un utente. Qual è l’endpoint API che state utilizzando per anonimizzare un utente?

L’endpoint API per l’anonimizzazione:

Metodo HTTP: PUT
Endpoint: https://example-community.dev/admin/users/{id}/anonymize


Puoi utilizzare la chiamata mostrata sopra per ottenere il valore {id} se conosci già l’email dell’utente che desideri anonimizzare

7 Mi Piace

L’endpoint /anonymize è stato rimosso dalla documentazione API?

Stavo cercando qui:

Sia sotto users che sotto admin.

2 Mi Piace

Potrebbe non essere ancora stato aggiunto alla documentazione dell’API; farò in modo che venga documentato a breve.

3 Mi Piace

@sarahann la rotta /anonymize è stata aggiunta alla documentazione dell’API.

3 Mi Piace

Uff! Mi hai spaventato per un attimo :stuck_out_tongue:

Grazie per la rapidità con cui hai risposto!

1 Mi Piace