消費量の上限
Ahrefs API は、対象となる有料プランで利用できます。 それ以外のプランでも、無料のテストクエリ(制限あり)は引き続きご利用いただけます。
無料のテストクエリと ランクトラッカー、Management、Public、および その他一部 のエンドポイントを除くすべてのリクエストは、API ユニットを消費します。 エンドポイントが無料の場合、その旨がドキュメントページに記載されています。記載がない場合はユニットを消費します。
リクエストあたりのユニット消費量は、次のとおり計算されます。
max(base_cost, per_row_cost * num_rows)
各リクエストの base_cost は 50 ユニットです。 per_row_cost は、返却結果に含まれるフィールド、または where / order_by パラメータに指定されたフィールドのうち、重複のない各フィールドのコストの合計です。 同じフィールドが複数のパラメータに含まれる場合でも、カウントは1回のみです。
フィールドのデフォルトのコストは 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リクエストがキャッシュから提供されたかどうか。 次のいずれか:hitmissno_cache
info
リクエストのコストを見積もる良い方法は、無料ターゲットで実行し、x-api-units-cost-total フィールドの値を確認することです。 curl コマンドでレスポンスヘッダーを表示するには、-v または --verbose オプションを使用します。
例 1
サイトエクスプローラー - ドメインレーティング エンドポイント(/site-explorer/domain-rating)へのリクエストを考えます。
このエンドポイントは select、where、order_by パラメータを受け付けず、domain_rating と ahrefs_rank の2フィールドを含む1行のみを返します。行あたりのコストは 2 ユニットです。
総行コスト(行あたりコスト × 行数)はベースコストを下回ります。 そのため、このリクエストのコストはベースの 50 ユニット です。
例 2
サイトエクスプローラー - 被リンク エンドポイント(/site-explorer/all-backlinks)への、より複雑なリクエストを考えます。このエンドポイントでは select、where、order_by パラメータを設定できます。
このリクエストで選択されているフィールドが 2 つあるとします:
select=title,traffic
フィルター式には 2 つのフィールドがあります:
where={"and":[{"field":"traffic","is":["gt",1000]},{"field":"refdomains_source","is":["gt",10]}]}
また、並べ替えフィールドが 1 つあります:
order_by=traffic:desc
これらのパラメータ全体で重複を除いたフィールドは 3 つあり、title と refdomains_source はそれぞれ 1 ユニット、traffic は 10 ユニットかかります。 したがって、行あたりのコストは 1 + 1 + 10 = 12 ユニットです。
リクエストが 500 行を返すとします。 この場合、総行コスト(12 * 500 = 6000 ユニット)がベースコストを上回ります。 そのため、このリクエストのコストは 6000 ユニット です。