jquery ajax? fetch?
Через что инициализируем отправку?
Если через fetch , то Promise переходит в состояние rejected при ошибке сети или если что-то препятствует завершению запроса. В противном случае наступает состояние resolved, по нему можно смотреть какой ответ.
И если ошибка -> повторяем запрос (Promise#catch)
Если через $.ajax() то на сколько помню, там в error: function () падает. Посмотрите доку.
А вообще надо бы разобраться, почему так происходит, что иногда 400/403 падают, судя по всему с wp чет не фурычит)