Перейти до вмісту

Безпечні повтори

Коли з’єднання обривається, ви не можете знати, чи пройшло замовлення. Тому надішліть його знову: протягом 7 днів той самий Idempotency-Key означає те саме замовлення, і списання відбувається один раз.

Як це працює

POST /orders потребує заголовка Idempotency-Key: до 200 символів ASCII без пробілів, які ви вигадуєте самі й зберігаєте у своєму записі про замовлення. Добре підійде UUID. Для нового замовлення використовуйте новий Idempotency-Key.

curl -X POST "https://api.talismanleads.io/v1/orders" \
  -H "Authorization: Bearer tl_live_your_key_here" \
  -H "Idempotency-Key: crm-export-2026-11-05" \
  -H "Content-Type: application/json" \
  -d '{"checker":"whatsapp_status_detection","entries":["+14155550142","+12125550187"]}'

Що ви отримаєте у відповідь

Новий Idempotency-Key
201 і нове замовлення.
Той самий Idempotency-Key і той самий запит ще раз
200, те саме замовлення і Idempotent-Replay: true. Більше нічого не списується, навіть якщо ціна відтоді змінилася.
Той самий Idempotency-Key у той самий момент
Одне замовлення й одне списання. Ви отримаєте це замовлення або відмову, яка означає, що запит треба надіслати знову з тим самим Idempotency-Key, наприклад order_status_unknown або rate_limited.
Той самий Idempotency-Key з іншим запитом
409 idempotency_conflict. Замовлення не розміщується.
Той самий Idempotency-Key після відмови, наприклад insufficient_balance
Спроба виконується знову, тому замовлення пройде, щойно ви поповните баланс, за початково вказаною ціною. Завантажений файл має ще існувати: див. Розміщення замовлень. Якщо ціна змінилася, ви отримаєте 409 price_changed, а з новим Idempotency-Key замовлення розміщується за новою ціною.

Коли результат невідомий

Будь-яка втрачена відповідь, order_status_unknown і відповідь не у форматі JSON, наприклад 502 або 504 від шлюзу, означають одне й те саме: повторіть запит із тим самим Idempotency-Key, щоб дізнатися фактичний стан. Подвійного списання при цьому ніколи не буде. Ніколи не створюйте новий Idempotency-Key через те, що запит завершився за тайм-аутом або з помилкою: це нове замовлення, і за нього будуть списані кошти.

Робіть між повторами паузу в хвилину. Якщо за кілька хвилин відповідь досі order_status_unknown, зупиніться й зверніться до підтримки, вказавши request_id. Не створюйте новий Idempotency-Key.

Скільки діє Idempotency-Key

Idempotency-Key запам’ятовується на 7 днів від моменту першого надсилання. Після цього той самий Idempotency-Key розміщує нове замовлення, тому повторюйте запит протягом кількох днів, а для кожного нового замовлення використовуйте новий Idempotency-Key.

На цій сторінці