
# Revoca il consenso di un utente

`DELETE /v1/users/{user_id}/consents/{consent_id}` · autorizzazione `users:write`

Revoca un consenso OAuth che l'utente ha concesso a un'applicazione. Le famiglie di refresh token dell'utente per quell'applicazione vengono revocate, i token di accesso emessi prima della chiamata smettono di essere accettati da introspection e dal controllo di revoca, e la successiva richiesta di autorizzazione dell'applicazione chiede di nuovo il consenso all'utente. Le sessioni dell'utente e le altre applicazioni non vengono toccate. La revoca viene registrata nel log di audit di gestione come `consent.revoked`.

Revocare un consenso già revocato restituisce `404`.

## Richiesta

| Parametro | In | Obbligatorio | Descrizione |
|---|---|---|---|
| `user_id` | path | sì | ID utente, con prefisso `usr_`. |
| `consent_id` | path | sì | ID consenso, con prefisso `cns_` (da [Elenca i consensi di un utente](list-consents.md)). |

## Risposta

`204 No Content`.

## Errori

Ogni errore è un body `application/problem+json` con un `code` stabile.

| HTTP | `code` | Quando |
|---|---|---|
| 404 | `not_found` | L'utente non esiste in questo ambiente, oppure il consenso non esiste, appartiene a un altro utente o è già revocato. |
| 401 | `unauthenticated` | La chiave API manca, non è valida o è stata revocata. |
| 403 | `insufficient_permissions` | La chiave non ha l'autorizzazione `users:write`. |
| 429 | `rate_limited` | È stato superato il limite di richieste; rispetta `Retry-After`. |
| 503 | `service_unavailable` | Una dipendenza non è disponibile temporaneamente; riprova più tardi. |

## Esempio

```bash
curl -X DELETE https://api.eu.keenauth.com/v1/users/usr_0a1b2c3d4e5f6g7h8j9k0m1n2p/consents/cns_01jb2k8m5c3f6t9w2y4b7d0g3k \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```

CLI: `keenauth users consents delete usr_0a1b2c3d4e5f6g7h8j9k0m1n2p cns_01jb2k8m5c3f6t9w2y4b7d0g3k --yes`

## Dati personali

Questo endpoint tratta dati personali: registrazioni dei consensi. [Dati personali nelle API di KeenAuth](/docs/policies/personal-data) descrive cosa viene memorizzato, per quanto tempo viene conservato e come viene cancellato. Non inviare categorie particolari di dati personali (salute, dati biometrici, religione, opinioni politiche, orientamento sessuale) in nessun campo.
