
# Esporta i miei dati

`POST /fapi/v1/me/exports` · chiamato dall'host di accesso dell'ambiente

Avvia un'esportazione dei dati propri dell'utente autenticato (GDPR, articoli 15 e 20). Il pacchetto viene preparato in background; quando è pronto, l'utente riceve un'email nella lingua della richiesta e il file può essere scaricato con [Scarica un'esportazione](/docs/api/fapi/me/exports/download) per 7 giorni.

Il pacchetto è un file ZIP con un file JSON per ogni tipo di dato: profilo, indirizzi email e numeri di telefono, identità collegate, autenticatori (senza segreti), sessioni con i relativi indirizzi IP, appartenenze alle organizzazioni, concessioni OAuth, consensi ed eventi di accesso. Non contiene mai un hash della password, un seed TOTP, codici di recupero, token o `app_metadata`.

Richiede un accesso recente: se la sessione non è stata verificata negli ultimi 5 minuti, oppure l'utente ha un secondo fattore e la sessione non lo ha usato, la risposta è `401 step_up_required` e non viene avviato nulla. Se un'esportazione dell'utente è ancora in preparazione, viene restituita quella e non ne parte una nuova. Un utente può richiedere al massimo 2 esportazioni in 24 ore.

## Richiesta

Intestazioni:

| Intestazione | Obbligatoria | Descrizione |
| --- | --- | --- |
| `Idp-Client` | sì | Identificatore dell'SDK. |
| `Origin` | sì | Deve essere esattamente `https://<host di accesso>`. |

Corpo:

```json
{}
```

## Risposta

`202 Accepted`:

```json
{"id": "job_01jbx4k6v8m2c9w5s7r3t1q0zy", "status": "queued", "file": null, "failure_reason": null,
 "created_at": "2026-11-03T09:30:00Z", "started_at": null, "completed_at": null, "expires_at": null}
```

## Errori

| Stato | Codice | Quando |
| --- | --- | --- |
| 401 | `unauthenticated` | Nessun cookie di sessione valido. |
| 401 | `step_up_required` | Accesso più vecchio di 5 minuti, oppure è richiesto un secondo fattore; l'intestazione `WWW-Authenticate` contiene `max_age=300` (e `acr_values` quando è richiesto un secondo fattore). |
| 403 | `origin_not_allowed` | `Origin` manca o è errato. |
| 429 | `export_rate_limited` | Due esportazioni sono già state richieste nelle ultime 24 ore; riprova dopo `Retry-After`. |
| 429 | `rate_limited` | Troppe esportazioni sono in preparazione nell'ambiente; riprova dopo `Retry-After`. |
| 503 | `service_unavailable` | La directory degli utenti è temporaneamente non disponibile; riprova dopo `Retry-After`. |

## Esempio

```bash
curl -X POST https://example.keenauth.app/fapi/v1/me/exports \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -H "Content-Type: application/json" \
  -d '{}' \
  -b cookies.txt
```

## Dati personali

Questo endpoint tratta dati personali: richieste di privacy (i record di esportazione propri dell'utente). [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.
