Для кого это
Чтение ответа перед тем, как конвейер начнет ему доверять
Чтение ответа — это шаг, который легче всего пропустить. Каждый ответ содержит ok, а аутентифицированный добавляет _credits с стоимостью и оставшимся балансом. Сначала парсите оба поля. Скрипт, записывающий данные из неудачного ответа, заполнит лог пустыми строками.
Ответ может быть валидным, но бесполезным, например, пустым списком для домена, в котором вы знаете, есть ссылки. Сравнивайте количество с данными прошлого месяца, прежде чем считать результат хорошим.
Проверяйте статус перед телом ответа
Относитесь к HTTP 401 и 402 как к двум разным остановкам. 401 означает, что ключ отсутствует или неверен — исправьте секрет. 402 означает, что кредиты закончились, и повторная попытка не поможет, пока вы не пополните баланс. В обоих случаях нужен человек, а не цикл повторных попыток.
Ведите учет кредитов
Логируйте поле _credits из каждого аутентифицированного вызова с датой и названием действия. За месяц этот лог ответит на вопрос, который большинство команд задает слишком поздно: какая задача потратила кредиты. Бесплатные действия не тарифицируются, поэтому они не добавляют ничего в эту строку.
