DevToolPal
RU
4xx Ошибки клиента

428 Precondition Required

Требуется предусловие

Что это значит

Сервер требует, чтобы запрос был условным (If-Match и т. п.), чтобы избежать потерянных обновлений.

Типичные причины

  • PUT или PATCH без If-Match к API с обязательной оптимистичной блокировкой

Как исправить

Если вы клиент или посетитель

Получите ресурс через GET, возьмите его ETag и передайте в If-Match вместе с обновлением.

Если вы владелец сайта или API

Объясните в теле, какой заголовок требуется.

Пример ответа

HTTP/1.1
HTTP/1.1 428 Precondition Required
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Precondition Required",
  "status": 428,
  "detail": "Send If-Match with the ETag you last read."
}

Спецификация

RFC 6585 §3

Частые вопросы

› Зачем API требовать If-Match?

Чтобы два клиента незаметно не перезаписали изменения друг друга.

› 428 или 412?

428: предусловие не отправлено. 412: отправлено, но не выполнилось.