Лимиты, повторы и один заголовок, который делает их безопасными
Лимит — это не наказание. Это причина, по которой бесплатный сервис может одновременно оставаться бесплатным и открытым для программ.
Что ограничено и чем
Лимиты — это фиксированные окна, которые считаются либо по адресу, либо по аккаунту. Программа без ключа может создать десять страниц в сутки с одного адреса; с ключом — десять страниц в час на том аккаунте, которому ключ принадлежит. У валидации, загрузки картинок по URL, импорта, claim-ссылок и MCP-эндпоинта свои окна: щедрые для реальной работы и узкие для цикла.
Адреса никогда не хранятся в сыром виде: счётчик ключуется солёным хэшем — так же, как статистика посетителей. Строка лимитера — это запись, а страница о приватности обещает, что сырой адрес не записывается никогда; это обещание включает и её.
- Когда окно исчерпано, приходит 429 с кодом rate_limited.
- В теле лежит retryAfter в секундах, то же значение — в заголовке Retry-After.
- Столько и подождите. Не повторяйте сразу и не размазывайте ту же работу по нескольким адресам.
- Если нужного больше, чем позволяет окно, — это повод поговорить, а не искать обход.
Почему ключ идемпотентности лучше цикла повторов
- Создание, которое отвалилось по таймауту, могло всё-таки пройти. Слепой повтор даёт второй аккаунт на имени, которое теперь занято.
- Пришлите с созданием заголовок Idempotency-Key — и повтор вернёт первый ответ вместо того, чтобы что-то создавать.
- Ключ привязан к вызывающему, так что два клиента не прочитают ответы друг друга, и живёт он сутки.
- Подойдёт любая уникальная строка: идентификатор задачи, хэш запроса, адрес плюс метка времени.
Ограничения, которые не про скорость
Есть ещё два потолка, и они по другой причине. Программа может создать десять страниц на одном аккаунте — человек, добавляющий страницы руками, не ограничен вовсе, потому что человек, нажимающий кнопку, не цикл. И страница держит восемьдесят блоков: гораздо больше, чем стоит иметь, и гораздо меньше, чем сгенерирует генератор, если его не остановить.
Страницы, сделанные программой и никем не забранные, подметаются: снимаются с публикации через тридцать дней, если их никто ни разу не открывал, и удаляются через шестьдесят. Один-единственный визит освобождает страницу от этого навсегда.