Concetti di base

Idempotenza

Riprova una richiesta che modifica i dati senza eseguirla due volte. Invia una Idempotency-Key e a ogni ripetizione Gemlead risponde con il primo risultato.

Invia una chiave

Aggiungi l'header Idempotency-Key a qualsiasi POST, PATCH, PUT o DELETE. Usa un valore univoco per ogni operazione, fino a 255 caratteri. Un UUID v4 è un'ottima scelta.

Se la connessione cade prima della risposta, invia la stessa richiesta con la stessa chiave. Gemlead esegue il lavoro una volta sola e ti restituisce il suo risultato, così un endpoint webhook non viene mai creato due volte.

Le chiavi vengono conservate per 24 ore. Le richieste GET non modificano mai i dati e non hanno bisogno di una chiave.

curl -X POST https://gemlead.ai/api/v1/webhook_endpoints \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 9f1c4f5e-3b0a-4f7e-9d2c-6a8b1e2d4c7f" \
  -d '{
    "url": "https://example.com/webhooks/gemlead",
    "events": ["lead.hot"]
  }'

Come risponde Gemlead

RichiestaRisposta
Stessa chiave, stesso metodo, path e body, entro 24 oreDi nuovo la prima risposta, con lo stesso stato e lo stesso body, e l'header Idempotent-Replayed: true.
Stessa chiave, ma un altro metodo, path o body409 idempotency_error con il codice idempotency_key_reused.
Stessa chiave mentre la prima richiesta è ancora in corso409 con il codice idempotency_key_in_use. Riprova un secondo dopo.
Una chiave più lunga di 255 caratteri400 con il codice idempotency_key_invalid.

Quando riprovare

  • In caso di errore di rete o timeout, riprova con la stessa chiave.
  • In caso di 500, riprova con la stessa chiave dopo una breve attesa.
  • In caso di 400, 401, 403 o 404, correggi la richiesta e inviala con una nuova chiave.