Pular para o conteúdo principal

Idempotência

Toda escrita (POST, PUT, PATCH) aceita o header X-Idempotency-Key. Com ele, repetir a mesma requisição (por um timeout, uma queda de rede, um retry automático) não cria nada duas vezes: a API devolve a resposta original.

curl -H "Authorization: Bearer $KOBANA_TOKEN" \
-H "Content-Type: application/json" \
-H "X-Idempotency-Key: disparo-2026-10-31-baixa" \
-X POST https://api.kadu.ia.br/v1/tasks/2f1c…/run \
-d '{"environment_id":"8a40…","reference_date":"2026-10-30"}'

Regras​

RegraValor
Formato da chavetexto opaco, de 1 a 255 caracteres
Validade24 horas
Escopoa organização: a mesma chave em organizações diferentes não colide
O que identifica a requisiçãométodo, caminho, query e corpo
SituaçãoResposta
Chave novaa requisição roda normalmente, e a resposta fica guardada
Mesma chave, mesma requisiçãoa resposta original (status e corpo), com X-Idempotent-Replay: true
Mesma chave, requisição diferente409 IDEMPOTENCY_KEY_REUSED
Mesma chave enquanto a primeira ainda processa409 IDEMPOTENCY_REQUEST_IN_PROGRESS

Gere uma chave por operação de negócio (por exemplo, disparo-<data>-<tarefa>), e não por tentativa: é a mesma chave em todos os retries que torna o retry seguro.

O endpoint de disparo aceita o mesmo header, com as mesmas regras.