Docs
Пошук документації...⌘K

Споживання лімітів

Ahrefs API доступний на відповідних платних тарифах. На всіх інших тарифах у вас все одно буде доступ до обмеженого набору безкоштовних тестових запитів.

Усі запити, окрім безкоштовних тестових запитів та ендпоїнтів Rank Tracker, Management, Public і деяких інших, споживають одиниці API. Якщо ендпоїнт безкоштовний, ви побачите про це примітку на сторінці його документації; інакше він споживає одиниці.

Споживання одиниць на один запит обчислюється так:

max(base_cost, per_row_cost * num_rows)

base_cost кожного запиту становить 50 одиниць. per_row_cost — це сума вартостей кожного унікального поля, яке присутнє або в поверненому результаті, або в параметрах where чи order_by. Якщо поле з’являється в кількох параметрах, воно враховується один раз.

Стандартна вартість поля — 1 одиниця. Однак деякі метрики дорожчі й можуть споживати 5 або 10 одиниць. Такі винятки зазначено в описі полів кожного ендпоїнта. Запити, що обслуговуються з кешу, не споживають одиниць.

Кожен запит API повідомляє про споживання одиниць через такі заголовки відповіді:

  • x-api-rows Кількість повернених рядків.
  • x-api-units-cost-row Вартість за рядок у одиницях.
  • x-api-units-cost-total Загальна кількість одиниць, яку запит має витратити на основі кількості рядків і вартості за рядок.
  • x-api-units-cost-total-actual Загальна кількість одиниць, яку запит фактично витратив.
  • x-api-cache Чи було запит обслуговано з кешу. Одне з: hit miss no_cache

info

Хороший спосіб оцінити вартість запиту — виконати його з безплатною ціллю і перевірити значення поля x-api-units-cost-total. Щоб відобразити заголовки відповіді під час використання команди curl, можна скористатися опцією -v або --verbose.

Приклад 1

Розгляньмо запит до ендпойнта Site Explorer - Рейтинг домену (/site-explorer/domain-rating).

Він не підтримує параметри select, where або order_by і повертає один рядок із двома полями — domain_rating і ahrefs_rank, із вартістю 2 одиниці за рядок.

Сумарна вартість рядків (вартість за рядок, помножена на кількість рядків) менша за базову вартість. Тому цей запит коштує базову суму — 50 одиниць.

Приклад 2

Розгляньмо складніший запит до ендпойнта Site Explorer - Беклінки (/site-explorer/all-backlinks), який дозволяє налаштовувати параметри select, where і order_by.

Припустімо, у цьому запиті вибрано два поля:

select=title,traffic

два поля у виразі фільтра:

where={"and":[{"field":"traffic","is":["gt",1000]},{"field":"refdomains_source","is":["gt",10]}]}

та поле сортування:

order_by=traffic:desc

У цих параметрах є три унікальні поля: title і refdomains_source коштують по 1 одиниці кожне, а traffic — 10 одиниць. Отже, вартість за рядок: 1 + 1 + 10 = 12 одиниць.

Припустімо, запит повертає 500 рядків. Тоді сумарна вартість рядків (12 * 500 = 6000 одиниць) перевищує базову вартість. Тому вартість цього запиту — 6000 одиниць.