Limites de consumo
A API da Ahrefs está disponível em planos pagos elegíveis. Em todos os outros planos, você ainda terá acesso a um conjunto limitado de consultas de teste gratuitas.
Todas as solicitações, exceto as consultas de teste gratuitas e os endpoints do Rank Tracker, Management, Public e alguns outros, consomem unidades de API. Se um endpoint for gratuito, você verá uma observação sobre isso na página de documentação dele; caso contrário, ele consome unidades.
O consumo de unidades por solicitação é calculado da seguinte forma:
max(base_cost, per_row_cost * num_rows)
O base_cost de cada solicitação é de 50 unidades. O per_row_cost é a soma dos custos de cada campo único que aparece no resultado retornado ou nos parâmetros where ou order_by. Se um campo aparecer em vários parâmetros, ele será contado uma vez.
O custo padrão de um campo é de 1 unidade. No entanto, algumas métricas são mais caras e podem consumir 5 ou 10 unidades. Essas exceções são indicadas na descrição dos campos de cada endpoint. Solicitações atendidas pelo cache não consomem unidades.
Cada solicitação da API indica seu comportamento de consumo de unidades por meio dos seguintes cabeçalhos de resposta:
x-api-rowsO número de linhas retornadas.x-api-units-cost-rowO custo em unidades por linha.x-api-units-cost-totalO total de unidades que a solicitação deve consumir com base no número de linhas e no custo por linha.x-api-units-cost-total-actualO total de unidades que a solicitação efetivamente consumiu.x-api-cacheSe a solicitação foi atendida a partir do cache. Um de:hitmissno_cache
info
Uma boa forma de estimar o custo de uma solicitação é executá-la com um destino gratuito e verificar o valor do campo x-api-units-cost-total. Para exibir os cabeçalhos de resposta ao usar o comando curl, você pode usar a opção -v ou --verbose.
Exemplo 1
Considere uma solicitação ao endpoint Site Explorer - Classificação de domínio (/site-explorer/domain-rating).
Ele não aceita os parâmetros select, where ou order_by e retorna uma única linha contendo dois campos — domain_rating e ahrefs_rank — com um custo por linha de 2 unidades.
O custo total das linhas (custo por linha multiplicado pelo número de linhas) é menor que o custo base. Portanto, essa solicitação custa o valor base de 50 unidades.
Exemplo 2
Considere uma solicitação mais complexa ao endpoint Site Explorer - Backlinks (/site-explorer/all-backlinks), que permite configurar os parâmetros select, where e order_by.
Suponha que essa solicitação tenha dois campos selecionados:
select=title,traffic
dois campos na expressão de filtro:
where={"and":[{"field":"traffic","is":["gt",1000]},{"field":"refdomains_source","is":["gt",10]}]}
e um campo de ordenação:
order_by=traffic:desc
Entre esses parâmetros, há três campos únicos: title e refdomains_source custam 1 unidade cada, enquanto traffic custa 10 unidades. Assim, o custo por linha é 1 + 1 + 10 = 12 unidades.
Suponha que a solicitação retorne 500 linhas. Então, o custo total das linhas (12 * 500 = 6000 unidades) excede o custo base. Portanto, o custo dessa solicitação é de 6000 unidades.