L’avevo già fatto e l’endpoint API per l’eliminazione è quello che ho sempre utilizzato, lo stesso per entrambe le azioni (solo eliminazione ed eliminazione+blocco) — l’unica differenza sta nei parametri utilizzati (block_ip, block_email, ecc.), come ho menzionato sopra.
Penso di aver finalmente capito qual era il problema con le mie richieste: l’API di Discourse vuole le stringhe ‘true’ e ‘false’ invece di valori truthy/falsy. Mia colpa per non aver notato l’avviso a riguardo nella documentazione.
Questo era probabilmente ciò che ha causato tutto questo pasticcio.