← Все статьи

Дайджест FourA: 4-11 сентября 2026

Каждый отказ в тарифе теперь указывает конкретный лимит, proxy-порт сохраняет настройки таргетинга для ключа, а Browser, включая интерактивные страницы, доступен на всех планах.

Главное

Это был отказ самого сайта или вашего тарифного плана? Каждый запрос, отклоненный вашим тарифом, теперь возвращает причину в одном header, а Auto и Playground также считывают этот ответ. Порт proxy теперь запоминает параметры таргетинга по ключу, а рендеринг в Browser, включая интерактивные страницы, доступен на каждом тарифе, включая Free.

Что нового

Ошибки с указанием источника отказа

Когда лимит вашего тарифа отклоняет запрос, response содержит header X-FourA-Limit с указанием конкретной причины: plan_limit_credits, plan_limit_rate, plan_limit_browser_daily и еще четыре варианта. В теле ответа этот код дублируется в поле reason рядом с установленным для вас лимитом. Общие лимиты нашей платформы никогда не добавляют этот header, поэтому само его наличие говорит о том, что отказ связан именно с вашим аккаунтом, а не с высокой нагрузкой на FourA.

import requests

r = requests.post(
    "https://api.foura.ai/api/single",
    headers={"X-API-Key": "pk_live_..."},
    json={"url": "https://example.com/data"},
)
limit = r.headers.get("X-FourA-Limit")
if limit:
    print("my plan stopped this:", limit, r.json()["error"])

Каждый лимит вашего аккаунта теперь определяется текущим тарифом, а раздел Usage & Limits показывает каждый параметр рядом с текущим расходом за период. В справочнике по rate limits описаны все семь кодов и указано, какие из них сбрасываются после короткого ожидания.

Режим Auto считывает тот же код и реагирует на него. Лимит, блокирующий одну ступень (например, дневную квоту браузера), оставляет остальную цепочку рабочей, а уже проверенные выходы не считаются виновными в отказе со стороны тарифа. Лимит, означающий исчерпание ресурсов самого аккаунта (кредиты, трафик или недоступный на тарифе продукт), сразу останавливает всю цепочку и возвращает отказ без перебора остальных маршрутов. Это не меняет назначение режима Auto: позвольте ему найти рабочий уровень, затем воспроизведите возвращенную сессию на /api/single или /api/browser и направьте туда основной объем трафика.

Playground показывает это наглядно. Строка над ответом сообщает, что именно обработало страницу: уже открытая сессия для этого хоста, прямой request, ротируемый proxy или реальный браузер, а также был ли пройден challenge, какая попытка увенчалась успехом и сколько это стоило. Если запрос заблокирован вашим тарифом, строка начинается со слов "Stopped by your plan, not by the site" и указывает конкретный лимит.

Proxy-порт, в бета-версии

Proxy-порт позволяет любому клиенту, поддерживающему proxy URL, направлять трафик через наши выходы без вызовов API. Это бета-версия: трафик через этот порт пока не тарифицируется, SLA по доступности отсутствует, а названия параметров могут измениться.

На этой неделе выбор настроек стал прозрачнее: общая сеть (наши собственные выходы, включенные в тариф) или резидентная сеть (домашние адреса, расходующие премиум-трафик тарифа). Резервный переход на резидентную сеть при невозможности выполнить запрос через общую включается отдельным переключателем, который по умолчанию выключен. Включать его автоматически значило бы тратить ваш лимит без спроса.

Таргетинг теперь привязан к учетным данным. Сохраните страну, регион, город или тип устройства в настройках proxy-пользователя, и каждое соединение с этими данными будет применять заданные параметры. За счет этого строка подключения сокращается до базовых учетных данных и только тех параметров, которые отличаются. При этом параметры в username имеют приоритет для конкретного соединения, а any сбрасывает сохраненное значение: например, -city-any запрашивает всю страну для ключа, в котором зафиксирован конкретный город.

Используете отдельный профиль браузера на каждый адрес? Укажите нужное количество sticky-адресов, и на странице отобразится список строк с уникальными именами сессий. Кнопка создания новых имен генерирует свежий набор, если целевой сайт заблокировал старый, а сами строки доступны в виде URL или host:port:user:pass (формат, поддерживаемый большинством proxy-менеджеров). Вся грамматика параметров username приведена в документации по proxy-порту.

Защищенные страницы на каждом тарифе

Рендеринг в браузере и интерактивные страницы доступны на всех тарифах, включая Free, различаются только лимиты. На Free и Developer также включен объем премиального исходящего трафика, поэтому вы можете проверить работу с защищенной страницей на собственном URL до оплаты.

Премиальные точки выхода в Proxy Finder больше не привязаны к конкретным сайтам. Отправляйте exitClass: premium для любого целевого ресурса, и доступность определяется исключительно лимитом премиального трафика вашего тарифа (и его остатком).

Биллинг на основе ваших реквизитов

Компания, номер VAT и страна, указанные в Billing Details, используются в счетах и определяют расчет VAT при оформлении и каждом продлении. Если ввести другие данные в форме оплаты, они переопределят это поле только для текущего платежа.

Если тариф настроен в рамках индивидуального договора, в разделе Plan & Usage появится кнопка Confirm: выберите помесячную или годовую оплату, привяжите карту и оплатите весь период сразу без перерасчета.

Рядом с балансом кредитов в Plan & Usage добавлены две карточки: для трафика и для премиального трафика. Каждая отображает расход относительно лимита тарифа с учетом докупленных пакетов. Если доступно пополнение нужного типа, кнопка Buy отображается прямо на соответствующей карточке. Детали описаны в руководстве по биллингу.

Под капотом

Поминутный rate limit учитывает только объем трафика, отправленный за эту минуту, вплоть до начала следующей. Таблицы в панели управления адаптированы под экраны ноутбуков, а на мобильных устройствах широкие таблицы прокручиваются горизонтально внутри своего блока. Таблицы в блоге прокручиваются так же на экранах с небольшим разрешением. Список отправленных приглашений на странице организации отображается сразу при загрузке.

Понятный ответ об ошибке позволяет скорректировать логику работы. Если задача остановилась, специальный header сразу указывает, нужно ли подождать секунду, дождаться полуночи по UTC или проверить лимиты тарифа.