> ## Documentation Index
> Fetch the complete documentation index at: https://docs.emailx.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Idempotenza e recupero

> Ripeti una modifica logica senza crearne accidentalmente una seconda.

Ogni POST e PATCH richiede `Content-Type: application/json` e un `Idempotency-Key` scelto dal chiamante. La chiave accetta 1–128 lettere ASCII, cifre e `_.:/-`. Il corpo della richiesta non può superare 256 KiB.

```http theme={null}
Idempotency-Key: crm-contact-creation-001
```

Usa una nuova chiave per una nuova modifica logica. Per riprovare, conserva chiave, metodo, percorso e corpo JSON originali. Una richiesta identica ancora memorizzata restituisce il risultato precedente con `Idempotent-Replayed: true`; una richiesta cambiata genera `409 idempotency_conflict`. I permessi vengono verificati di nuovo anche sul replay.

## La conservazione è limitata

I record di replay durano fino a 24 ore. Perdita o rimozione dei dati dallo storage possono ridurre la protezione. Non è un registro permanente che garantisce l'esecuzione una sola volta. Conserva il collegamento tra operazioni logiche e ID restituiti.

## Una modifica dall'esito incerto

Un timeout, `5xx`, `request_in_progress` o `result_uncertain` può indicare una modifica salvata senza risposta finale registrata.

1. Rileggi la risorsa o cercala con un'identità esatta.
2. Conserva richiesta e chiave originali durante la verifica.
3. Non creare una chiave nuova solo per forzare un altro tentativo.
4. Se l'esito resta ambiguo, condividi l'ID della richiesta con il referente.

CLI e MCP espongono `mutation_may_have_succeeded` e non riprovano automaticamente. Il dry-run della CLI valida in locale senza HTTP: non verifica lo stato corrente e non prenota una risorsa.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.