Идемпотентность
Как повторить создание заказа и не получить дубль.
POST /api/v1/orders требует externalId, ваш идентификатор заказа во
внешней системе. Он же служит ключом идемпотентности.
| Запрос | Ответ |
|---|---|
первый POST с externalId: "A-1001" | 201, новый заказ |
повторный POST с тем же externalId | 200, тот же заказ без изменений |
Поэтому запрос безопасно повторять после таймаута или обрыва связи: если
первая попытка дошла, вторая вернёт уже созданный заказ. Тело повтора API не
сравнивает с оригиналом, изменения шлите через PATCH.
Поиск по своему идентификатору
Заказ можно получить по externalId без хранения нашего id:
curl "https://refsales.ru/api/v1/orders/A-1001?by=externalId" \
-H "Authorization: Bearer rsk_live_xxx"После создания externalId не меняется: PATCH его не принимает.