Add an Idempotency-Key header to each logical Entity Search or Contact Search request. The header is optional today, but strongly recommended for production clients.
Rules
- Keys are trimmed and must be no more than 128 characters.
- The idempotency scope is the API credential plus the key. The same key used with another API key is a different request.
- Reusing a key with the same canonical request returns
409 request_already_exists.
- Reusing a key with a different canonical request returns
409 idempotency_error.
- lev8 does not execute or bill the upstream search a second time for either conflict.
- The current API does not replay a previous SSE or JSON response.
Recommended pattern
- Generate a UUID when your application creates a logical search job.
- Persist it with the job before making the HTTP request.
- Use the same key only to determine whether that exact job was already admitted.
- Do not automatically create a new key after a timeout or partial stream. Preserve the request ID and resolve the original state first.
A failed or interrupted request can retain billing state for reconciliation. Blindly retrying with a new key can start a second billable search.