Повтор допустим при временной ошибке и безопасной семантике операции. GET, HEAD, PUT, DELETE и OPTIONS идемпотентны по определению; для POST и PATCH это нужно обеспечить отдельно. Таймаут или 5xx не доказывает, что операция не выполнилась. Учитывайте контракт API, Retry-After, предел попыток и общий таймаут.