Контроль квоты
Когда страницы кончатся, API начнёт отдавать 402. Лучше узнать об этом заранее из заголовков ответа или отдельной проверкой по расписанию.
Из заголовков ответа#
Каждый PDF приходит с остатком в заголовках X-Quota-Remaining, X-Quota-Limit. Библиотеки предоставляют их полем quota. Удобно предупреждать прямо в коде, который создает документы:
python
pdf = client.html(html)
if pdf.quota and pdf.quota.remaining < 0.1 * pdf.quota.limit:
notify("pdfapi: осталось меньше 10% страниц")Отдельной проверкой#
GET /v1/me возвращает тариф, расход и дату, когда счётчик обнулится. Страниц он не тратит, так что его можно вызывать, когда вам удобно.
cURL
curl https://pdfapi.ru/api/v1/me -H "Authorization: Bearer $PDFAPI_KEY"Проверка для cron#
В каждой библиотеке есть пример quota: он печатает остаток и завершается с кодом 2, если страниц меньше порога. cron пришлёт письмо, мониторинг поднимет тревогу:
bash
# каждый час; код выхода 2 — страниц меньше 10% от лимита
0 * * * * PDFAPI_KEY=pdf_live_... python examples/quota.py 10 || echo "pdfapi: мало страниц"Когда страницы на исходе, смените тариф или напишите нам, если нужен объём больше лимита, доступного в тарифе Business.