Documentação da API de domínios expirados

Uma API REST com respostas JSON para inteligência de domínio: métricas de SEO (TF, CF, DA, DR, idade, backlinks, tráfego, etc.), histórico da Webback Machine, mais de 400.000 novos domínios todos os dias, mais de 30 fontes de dados de domínio e mais de 90 filtros para pesquisa precisa. Inclui leilões ao vivo, domínios expirados, relatórios completos, favoritos, verificações de disponibilidade, Karma Metric e dados de perfil. Chave Pro Bearer, 60 solicitações por minuto.

Experimente gratuitamente!
Use créditos de bônus!

API pública Karma.Domains fornece acesso programático a relatórios de domínio: leilões, expirados, pedidos em espera e compre agora. Todas as respostas são JSON sobre HTTPS. URL base: https://api.karma.domains, prefixo de rota: /v1.

Karma.Domains é uma plataforma de inteligência de domínio para investidores, equipes de SEO e pipelines de automação:

  • Mais de 400.000 novos domínios diariamente em fluxos de descoberta e monitoramento (mais de 7.000.000 domínios no total)
  • Mais de 30 fontes de dados de domínio no geral, incluindo 27+ fontes de leilão/expirado/pedido pendente/compre agora (GoDaddy, NameJet, DropCatch, Dynadot, GNAME, Namecheap etc.)
  • Mais de 90 filtros para pesquisa precisa em qualidade de domínio, SEO, histórico de conteúdo e sinais de leilão (TF, CF, DA, DR, idade, backlinks, tráfego, palavras-chave, texto âncora, etc.)
  • Cobertura de TLDs e ccTLDs (por exemplo, .com, .net, .org, .biz, .info, .at, .be, .ca, .cc, .cl, .co, .co.nz)
  • Dados de SEO e autoridade dos principais fornecedores: Ahrefs, Majestic, Moz, SimilarWeb
  • Conteúdo histórico e sinais de mudança via Wayback Machine

Esquemas de solicitação e resposta (campos de filtro, estrutura de relatório, classificação de enums) — nos documentos interativos: Swagger UI ou ReDoc. Esta página é uma visão geral da integração: autenticação, limites, lista de endpoints, fluxos de trabalho típicos e exemplos.

Introdução

A API pública é para scripts, painéis internos, sistemas CRM e qualquer automação que precise dos mesmos dados que o aplicativo da web Karma.Domains.

  • Formato: JSON
  • Versão da API: 1.0.0
  • Bancos de dados: auctions, expired, backorder, buynow; pesquise tudo de uma vez — POST /v1/reports/search (igual à tabela “todos os bancos de dados” na IU)
  • Documentação de campo: somente em OpenAPI
  • Disponível apenas no Pro plan and above

Autenticação

Cada solicitação deve incluir o cabeçalho:

Authorization: Bearer YOUR_API_KEY

Como obter uma chave API

  1. Plano Pro (sem o Pro, a API não está disponível).
  2. Profile → Settings — crie ou redefina a chave na seção Chave de API.

A mesma chave é usada para MCP server (assistentes de IA). O limite de solicitações é compartilhado entre REST e MCP.

Respostas típicas quando a chave está errada

Código Razão
401 Cabeçalho ausente, chave inválida ou erro de digitação em Bearer
403 A chave é válida, mas a conta não possui Pro ativo (Pro plan required for API access)

Sempre envie Accept: application/json.

Limitação de taxa

  • 60 solicitações por minuto por chave de API
  • Janela: 60 segundos
  • O contador é compartilhado entre todos os endpoints da API pública e MCP

As respostas bem-sucedidas incluem cabeçalhos:

Cabeçalho Descrição
X-RateLimit-Limit Limite (60)
X-RateLimit-Remaining Solicitações restantes na janela atual
X-RateLimit-Reset Carimbo de data e hora Unix quando a janela é redefinida

Quando o limite é excedido: 429 Too Many Requests e Retry-After cabeçalho (segundos até nova tentativa).

Dicas: use page_size até 50 para listas; não pesquise POST /search com mais frequência do que o necessário — as respostas são armazenadas em cache (consulte “Cache”).

Daily row quota

  • 50,000 list rows per day per account (API key / signed-in user)
  • Reset: UTC midnight
  • Counter is shared across Public API list endpoints, MCP list tools, web UI tables, and CSV export

Each list request charges page_size rows (the requested page size, not total_count).

Successful list responses include headers:

Header Description
X-Quota-Limit Daily limit (50000)
X-Quota-Remaining Rows left today
X-Quota-Reset Unix timestamp when the daily quota resets

When the quota is exceeded: 429 Too Many Requests and Retry-After (seconds until reset).

Pagination depth: for a single search/filter, page × page_size must not exceed 5000 (e.g. with page_size=50, max page is 100). This limits deep scraping of one result set; the daily quota caps total volume across all queries.

Visão geral do terminal

Parâmetros completos de consulta/corpo — em OpenAPI.

Método Caminho Propósito
POST /v1/reports/search Pesquisar relatórios por corpo ReportListFilterSchema, paginação, classificação
GET /v1/reports/favorites Lista de relatórios favoritos do usuário atual
POST /v1/reports/favorites Adicionar um relatório aos favoritos
DELETE /v1/reports/favorites/{report_type}/{report_id} Remover dos favoritos
GET /v1/reports/by-domain/{domain} Encontre IDs de relatório por nome de domínio exato
GET /v1/reports/{report_type}/{report_id} Relatório completo por tipo de banco de dados e ID do relatório
GET /v1/reports/check/expired/{report_id} Verifique se o domínio caiu para um relatório expirado
GET /v1/user Perfil de usuário (PublicUserProfileSchema)
GET /v1/domains/checker/expiry/{domain} Verificação ao vivo: se o domínio está disponível para registro
GET /v1/domains/checker/karma_metric/{domain} Cálculo da métrica de Karma ao vivo via WayBack Machine

Referência de parâmetros do modelo

Abaixo está um mapa prático em nível de parâmetro para os três modelos principais do OpenAPI que definem a maioria dos recursos da API.

ReportListFilterSchema (corpo da solicitação para POST /v1/reports/search)

Semântica de valor usada neste esquema:

  • null ou campo omitido = sem filtro.
  • Os campos de consulta de string suportam , para AND e | para OR quando documentado.
  • Os intervalos de datas são matrizes de 2 strings: [from, to].
  • A maioria dos intervalos de pontuação usa *_min / *_max inclusivos.
Parâmetro Tipo Descrição
domain string|nulo Filtro de substring de domínio, sem distinção entre maiúsculas e minúsculas. , = AND (todos os termos devem corresponder), | = OR (qualquer termo). Comprimento máximo: 350.
tlds string|nulo Lista de TLDs separada por vírgula ou espaço (por exemplo, .com .net .org). Comprimento máximo: 350.
domain_type string[]|nulo Valores permitidos: auctions, backorder, buynow, expired. Lógica OR entre valores selecionados.
favorites booleano |nulo true = apenas favoritos, false = exclui favoritos. Requer contexto de usuário autenticado.
categories string[]|nulo Lógica OR por categoria, suporta formato Category / Subcategory, correspondência de substring sem distinção entre maiúsculas e minúsculas.
languages string Consulta de idioma com , (AND) / | (OR), correspondência de substring sem distinção entre maiúsculas e minúsculas. Comprimento máximo: 350.
keywords string|nulo Pesquise no conteúdo do Wayback (title, description, h1-h6, etc.). , = E, | = OU. Comprimento máximo: 350.
website_ids string[] IDs como GA/Metrika para encontrar domínios do mesmo proprietário.
domain_length_min / domain_length_max inteiro |nulo Limites de comprimento de domínio (documentados como 1..30).
domain_numbers / domain_hyphens boolean Exigir/excluir dígitos e hífens em nomes de domínio.
report_added_time string[2] |nulo Intervalo de datas: ["YYYY-MM-DD","YYYY-MM-DD"]. O back-end aplica limites de dia de início/término automaticamente.
karmascore_min / karmascore_max inteiro |nulo Limites do KarmaScore, 0..100.
karmametric_min / karmametric_max inteiro |nulo Limites da métrica de Karma, 0..100.
brandscore_min / brandscore_max inteiro |nulo Limites de Brandscore, 0..100.
openpagerank_min / openpagerank_max inteiro |nulo Limites abertos do PageRank, documentados como 0..10.
ahrefs_dr_min / ahrefs_dr_max número |nulo Limites de DR do Ahrefs, 0..100.
ahrefs_ur_min / ahrefs_ur_max número |nulo Limites UR do Ahrefs, 0..100.
ahrefs_ar_min / ahrefs_ar_max inteiro |nulo Limites de classificação do Ahrefs (>= 0).
majestic_tf_min / majestic_tf_max inteiro |nulo Limites Majestosos do TF, 0..100.
majestic_cf_min / majestic_cf_max inteiro |nulo Limites Majestic CF, 0..100.
majestic_bl_min / majestic_bl_max integer Limites de backlinks majestosos.
majestic_rd_min / majestic_rd_max integer Limites de domínios de referência majestosos.
majestic_topics / majestic_lang string[] / string Filtros de tópico e idioma âncora.
moz_da_min / moz_da_max inteiro |nulo Limites Moz DA, 0..100.
moz_ss_min / moz_ss_max inteiro |nulo Limites de pontuação de spam do Moz, 0..100.
moz_bl_min / moz_bl_max integer Limites de backlinks do Moz.
moz_rd_min / moz_rd_max integer Limites de domínios de referência Moz.
moz_bl_url / moz_bl_anchor string Filtros de URL de backlink / frase âncora do Moz.
sw_visits_min / sw_visits_max integer Limites de visitas SimilarWeb.
sw_last_traffic_date string[2] |nulo Intervalo de meses da Web semelhante: ["YYYY-MM","YYYY-MM"].
sw_country_filters object[] Filtros de compartilhamento de país (country, opcional share_min).
sw_ts_direct_min...sw_ts_social_max número |nulo Limites de compartilhamento do canal de origem de tráfego SimilarWeb, 0..100.
wa_age_min / wa_age_max inteiro |nulo Idade do domínio Wayback em anos.
wa_first_snap / wa_last_snap string[2] |nulo Intervalo de datas: ["YYYY-MM-DD","YYYY-MM-DD"] para a primeira/última janela de snapshot.
wa_changes_min/max, wa_redirects_min/max, wa_parkings_min/max integer Contadores de histórico Wayback.
wa_hieroglyphs, wa_redirects, wa_error403 boolean Sinalizadores de qualidade de conteúdo Wayback.
wa_lang_filters object[] Filtros de linguagem Wayback (language, opcional ratio_min).
wa_server_code, wa_server_code_ratio_min/max inteiro |null / número |nulo Filtro de código do servidor Wayback (por exemplo, 200, 301, 302, 403, 404) + limites de proporção 0..100.
ke_etv_min/max, ke_total_min/max integer Palavras-chave em todos os lugares limites de valor de tráfego/palavras-chave.
ke_keyword string Filtro de frase Keywords Everywhere.
google_has_index, google_has_mentions booleano |nulo true/false/unset semântica para exigir índice ou menções no Google SERP.
google_title_index/mentions, google_description_index/mentions string Filtros de título/frase de descrição do snippet SERP.
trustpilot_rating_min/max, trustpilot_reviews_count_min/max número |null / inteiro |nulo Limites de classificação da Trustpilot (0..5) e limites de contagem de avaliações.
trustpilot_category string Filtro de frase de categoria Trustpilot.
auction_source string[]|nulo Nomes de fontes de leilão (sem distinção entre maiúsculas e minúsculas) ou valor composto `fonte
auction_end_time, auction_added_time string[2] |nulo Intervalo de datas: ["YYYY-MM-DD","YYYY-MM-DD"].
auction_price_min/max number Limites de preço do leilão.
auction_bids_min/max integer Limites de contagem de lances de leilão.
combine_seo objeto |nulo CombineSEOFilter de vários fornecedores: autoridade/backlinks/refdomains/traffic/keywords/backlink-url/anchors, com lógica OR no escopo do fornecedor em cada linha e AND entre as linhas.

ReportListResponseSchema (resposta para POST /search e GET /favorites)

Parâmetro Tipo Descrição
report_list ReportItem[] Linhas paginadas para visualização de tabela e geração de listas restritas.
total_count integer Número total de registros correspondentes para o filtro atual.

Os campos de nível de linha report_list[] (de ReportItem) incluem:

Parâmetro Tipo Descrição
report_id string Identificador de relatório estável (usado para relatório completo e favoritos).
report_type string Um de auctions, expired, backorder, buynow.
domain, domain_tld string Nome de domínio e TLD.
added_at, updated_at integer Carimbos de data e hora.
processed, demo, is_expired boolean Sinalizadores de estado usados ​​em fluxos de trabalho de UI/API.
karmascore, karmametric, brandscore integer Métricas principais de qualidade/brandabilidade.
ahrefs_dr, ahrefs_ur number Métricas de resumo do Ahrefs.
majestic_tf/cf/bl/rd, moz_da/ss/bl/rd integer Métricas de resumo do Majestic e Moz.
ke_etv, ke_total integer Valores de resumo de palavras-chave em todos os lugares.
sw_last_traffic, sw_country_share, sw_sources integer/object Resumos de tráfego da Web semelhantes.
wa_age, wa_last_snap, wa_changes, wa_langs, wa_server_code integer/array Sinais de resumo do Wayback.
google_index, trustpilot_rating, trustpilot_reviews_count boolean/number/integer Campos de resumo do Google/Trustpilot.
auctions array/object Resumo das entradas do leilão, se disponível.

ReportFullResponseSchema (resposta para GET /v1/reports/{report_type}/{report_id})

Parâmetro Tipo Descrição
report_id, report_type, domain, domain_tld string Campos de identidade principais.
domain_length, domain_numbers, domain_hyphens integer/boolean Atributos de estrutura de domínio.
favorite, demo, processed, is_expired boolean Reportar sinalizadores de estado e relacionados ao usuário.
added_at, updated_at, created_at, checked_at, expire_checked_at integer Carimbos de data e hora do ciclo de vida.
providers_status object Mapa de status de processamento por provedor (valores de string).
web_archive object Dados da Wayback Machine — veja o detalhamento abaixo.
metrics DomainMetrics Métricas aninhadas de SEO/tráfego/reputação — veja o detalhamento abaixo.
auctions objeto |nulo Lotes do leilão agrupados por end_time — veja detalhamento abaixo.

metricsDomainMetrics

A maioria dos blocos provedores pode ser um objeto com dados, false (não carregado) ou null. categories e blacklists também podem ser [] quando vazios.

Parâmetro Tipo Descrição
openpagerank número |inteiro |booleano |nulo Pontuação do PageRank aberto (normalmente 0 a 10) quando disponível.
categories CategoriaDados[] |booleano |nulo Categorias de conteúdo de provedores de classificação.
blacklists Dados de listas negras[] |booleano |nulo Acertos na lista negra de segurança/reputação.
ahrefs AhrefsData|booleano |nulo Métricas de domínio Ahrefs.
majestic MajesticData|booleano |nulo Majestic Trust/Citation Flow e perfil de backlink.
moz MozData|booleano |nulo Autoridade Moz, pontuação de spam e detalhes de backlink.
keywordseverywhere Palavras-chave em todos os lugaresDados |booleano |nulo Keywords Everywhere estimativas de tráfego/palavras-chave.
similarweb DadosWebSimilar|booleano |nulo Visitas, fontes e compartilhamento geográfico semelhantes na Web.
brandscore BrandscoreData|booleano |nulo Componentes de pontuação de brandability.
karma_metric KarmaMetricData|booleano |nulo Pontuação Karma Metric da história do Wayback.
trustpilot TrustpilotData|booleano |nulo Classificação da Trustpilot e estatísticas de revisão.
google GoogleDados |booleano |nulo Indexe o Google e mencione trechos de SERP.
ai_summary string|nulo Texto de resumo do domínio gerado por IA.

AhrefsData

Parâmetro Tipo Descrição
domain_rating número |nulo Ahrefs DR.
url_rating número |inteiro |nulo Ahrefs UR.
ahrefs_rank inteiro |nulo Classificação Ahrefs (menor = mais forte).

MajesticData

Parâmetro Tipo Descrição
tf, cf inteiro |nulo Fluxo de confiança / Fluxo de citação (0..100).
backlinks, refdomains inteiro |nulo Contagens de backlinks e domínios de referência.
primary_topic string|nulo Categoria temática principal.
topics matriz |nulo Lista de distribuição de tópicos.
anchor_lang matriz |nulo Distribuição do idioma do texto âncora.
indexed_urls, referring_ips, referring_subnets inteiro |nulo Contadores de índice e diversidade de rede.

MozData

Parâmetro Tipo Descrição
moz_domain_authority inteiro |nulo Moz DA.
moz_spam_score inteiro |nulo Pontuação de spam do Moz.
page_rank, moz_link_propensity número |inteiro |nulo Classificação legada e propensão de link.
Campos moz_*_to_subdomain inteiro |nulo Contadores gráficos de links Moz (páginas/domínios, follow/nofollow/redirect/deleted).
moz_da_history_values string|nulo Valores de histórico do DA serializado.
backlinks MozBacklink[] |nulo Linhas de backlink (domain_source, url_source, domain_target, url_target, anchor_text, harmonic_centrality, last_found_date).

KeywordseverywhereData

Parâmetro Tipo Descrição
etv inteiro |nulo Valor estimado do tráfego.
total_keywords inteiro |nulo Total de palavras-chave rastreadas.
data Palavra-chaveItem[] |nulo Linhas de palavras-chave (position, etv, keyword).

SimilarWebData

Parâmetro Tipo Descrição
estimated_monthly_visits objeto |nulo Mês → mapa de visitas.
traffic_sources Fontes de tráfego|nulo Compartilhamentos de canais: Social, Paid Referrals, Mail, Referrals, Search, Direct (proporções 0..1).
top_country_shares CountryShare[] |nulo Distribuição geográfica (Country, CountryCode, Value).
engagments Engajamentos |nulo BounceRate, PagePerVisit, Visits, TimeOnSite, Month, Year.
category string|nulo Categoria de site semelhante.

BrandscoreData

Parâmetro Tipo Descrição
pronounceability, memorability, uniqueness, appeal, brandscore integer Componentes de brandability e pontuação final.

KarmaMetricData

Parâmetro Tipo Descrição
karma_metric integer Pontuação final, 0..100.
components KarmaMetricComponents A_mass, A_cont, A_stab, A_trend (cada 0..100).
period string|nulo Período no formato YYYY-MM (ou null quando indisponível).

TrustpilotData

Parâmetro Tipo Descrição
rating número |nulo Classificação, normalmente 0..5.
reviews_count inteiro |nulo Número de comentários.
category string|nulo Categoria de negócios Trustpilot.

GoogleData

Parâmetro Tipo Descrição
google_index GoogleItem[] |nulo Páginas indexadas para site:domain (rank, url, title, description).
google_mentions GoogleItem[] |nulo Mencione os resultados de pesquisas de domínios citados.

CategoryData / BlacklistsData

Modelo Campos-chave
CategoryData categories[], vendor, info_url
BlacklistsData vendor, info_url, opcional info

web_archive (carga útil da máquina Wayback)

Objeto com três blocos principais: info, ts_summary, history. Nas respostas do relatório completo, history é retornado como o mais novo primeiro.

Parâmetro Tipo Descrição
info objeto |nulo Resumo da cobertura do arquivo para o domínio.
ts_summary objeto |nulo Sinais agregados de KarmaScore/Wayback usados ​​em filtros de tabela.
history array Linha do tempo do instantâneo (um objeto por captura Wayback).

web_archive.info

Parâmetro Tipo Descrição
snap_counter integer Número total de instantâneos Wayback contados.
years_counter integer Número de anos com atividade de arquivo (sinal de idade do domínio).
first_ts integer Carimbo de data/hora Unix do primeiro instantâneo.
last_ts integer Carimbo de data e hora Unix do instantâneo mais recente.
years object Ano → mapa mensal de contagem de instantâneos (dados de minigráfico/calendário).

web_archive.ts_summary

Parâmetro Tipo Descrição
average_karma_score integer KarmaScore médio, 0..100 (mapeia para o campo de lista karmascore).
wa_changes integer Número de alterações significativas de conteúdo no histórico verificado.
wa_langs array Linhas de distribuição de idiomas: language, pageRatio (0..100).
wa_server_code array Distribuição de código HTTP: server_code (por exemplo, 200, 301, 403), response_ratio (0..100).
wa_tags array Tags de conteúdo detectadas ao longo do histórico.
pattern_shares array Linhas de compartilhamento de padrão: factor, description, share.
chart_data array Pontos da série temporal: timestamp, karma_score, lang, server_code, tags, detected_patterns.

web_archive.history[] (linha de instantâneo)

Parâmetro Tipo Descrição
snaped_at integer Carimbo de data e hora Unix do instantâneo.
webarchive_link string|nulo URL de retorno para esta captura (null ao fechar o snap do espaço reservado).
headers objeto |nulo Metadados HTTP, geralmente status_code (200, 301, 302, 403, 404, 429,…), original_url.
screenshot booleano |nulo true se a captura de tela existir (binário armazenado separadamente; busca por meio da API de captura de tela na interface do usuário).
content_info objeto |nulo Conteúdo da página analisado (veja abaixo).
karma_score objeto |nulo Pontuação por instantâneo: score (0..100), detected_patterns, tags (sinalizações de pornografia/criptografia/jogos/…).
redirects matriz |nulo Redirecione os dados da cadeia quando presentes.
website_ids matriz |nulo IDs de site detectados (name, website, ids[]), por exemplo. tags de análise.
built_with objeto |nulo Carga útil de detecção de pilha de tecnologia (quando disponível).

web_archive.history[].content_info

Parâmetro Tipo Descrição
lang string|nulo Código de idioma da página detectado.
title, description, keywords string|nulo Campos de texto de meta/página usados ​​em filtros e UI.
generator, author, copyright string|nulo Metacampos adicionais.
h1h6 string[]|nulo Textos de cabeçalho (pesquisáveis ​​via filtro keywords).
cloud_words matriz |nulo Entradas da nuvem de palavras (word).
external_links, internal_links matriz |nulo Listas de links de saída/entrada.
rel_canonical, meta_robots string|nulo URL canônico e meta de robôs.
length_symbols, length_words integer Contadores de tamanho de conteúdo.

auctions (lotes de leilão)

Presente quando o relatório possui dados de leilão (auctions, e às vezes linhas relacionadas em outras bases). Nas respostas do relatório completo, os lotes são agrupados por horário de término:

{
  "1764441900": [
    { "source": "godaddy", "sale_type": "auction", "price": 120, "bids": 3, "...": "..." }
  ]
}
  • Chave do objeto = end_time (segundos Unix).
  • Valor = array de objetos de lote que terminam naquele momento (várias plataformas podem compartilhar uma chave).
Parâmetro Tipo Descrição
source string Fonte de plataforma/registrador de leilão (por exemplo, godaddy, namejet, dynadot, dropcatch, sedo, sav.com). Não diferencia maiúsculas de minúsculas em filtros.
sale_type string Tipo de listagem (por exemplo, auction, buynow, Closeout, Pre-Release, Dropped).
domain string Nome de domínio do lote.
item_id string ID de lote/listagem específico da plataforma.
end_time integer Hora de término do lote (segundos Unix); também usado como chave de agrupamento no relatório completo.
price number Preço atual (normalmente em USD).
bids inteiro |nulo Contagem de lances quando aplicável.
currency string Símbolo/código de moeda (padrão "$").
report_type string Base proprietária: auctions, backorder ou buynow.
priority integer Classificação interna/peso de prioridade (padrão 0).

Dica de filtro: auction_source na pesquisa aceita fonte simples (godaddy) ou valor composto source|sale_type (por exemplo, godaddy|auction).

Para restrições de campo exatas (regras anuláveis, valores enum, mínimo/máximo, objetos aninhados), sempre use OpenAPI ou ReDoc.

Parâmetro report_type

Para relatório completo e favoritos: auctions, expired, backorder, buynow. O valor all é usado apenas na lógica de pesquisa (todos os bancos de dados), não como {report_type} no caminho.

Paginação e classificação (listar endpoints)

Parâmetros de consulta:

Parâmetro Padrão Descrição
page 1 Número da página
page_size 10 Tamanho da página (máx. 50)
sort_by added_at Classifique o nome da coluna (como na tabela da UI; enum no OpenAPI)
sort_desc true true — descendente

Depth limit: page × page_size ≤ 5000. Requests beyond this return 422 validation error.

Domínios em URLs

Para {domain} no caminho, use codificação percentual (IDN, cirílico, etc.). O servidor normaliza o nome (punycoded/minúsculas).

Fluxos de trabalho típicos

1. Pesquisa → relatório completo

  1. POST https://api.karma.domains/v1/reports/search com corpo de filtro (ver OpenAPIReportListFilterSchema).
  2. De report_list[], pegue report_id e report_type.
  3. GET https://api.karma.domains/v1/reports/{report_type}/{report_id}.

Os filtros correspondem a filters in the web UI — fácil de comparar com a UI; consulte OpenAPI para o esquema de campo.

2. Domínio exato sem uma longa pesquisa

  1. GET /v1/reports/by-domain/example.com
  2. Na resposta, matches[] — até uma entrada por banco de dados onde existe o domínio.
  3. Escolha o report_typeGET /v1/reports/{report_type}/{report_id} necessário.

Se matches estiver vazio — o domínio não está nos bancos de dados Karma.

3. Favoritos

  • Apenas lista: GET /v1/reports/favorites
  • Mesma lista via pesquisa: POST /v1/reports/search com "favorites": true no corpo
  • Adicione: POST /v1/reports/favorites com {"report_id": "...", "report_type": "expired"}
  • Remover: DELETE /v1/reports/favorites/expired/{report_id}

4. Descartar verificação (relatório expirado)

GET /v1/reports/check/expired/{report_id}id do relatório, não nome de domínio.

  • Após verificação bem-sucedida, atualiza o registro do relatório no servidor
  • is_expired: true — o domínio provavelmente está disponível para registro (não “data de expiração do WHOIS passada”)
  • Repita a verificação ao vivo para o mesmo relatório — no máximo uma vez a cada 3 horas (regra de negócios)
  • A resposta HTTP é armazenada em cache 1 hora para GET repetido com o mesmo report_id (consulte “Cache”)

5. Verificação de domínio sem relatório no banco de dados

GET /v1/domains/checker/expiry/{domain} — WHOIS/DNS ativo; não altera o relatório do banco de dados.

  • available: true — provavelmente registrável
  • available: false — tomado ou reservado
  • A repetição da solicitação para o mesmo domínio dentro de ~1 hora pode retornar uma resposta em cache

6. Métrica de Karma em tempo real

GET /v1/domains/checker/karma_metric/{domain} — Métrica de Karma da WayBack Machine; não atualiza o relatório. Campos de resposta — OpenAPI (KarmaMetricData). Cache de resposta por domínio — ~1 hora.

Leia mais sobre a Métrica Karma in the blog

7. Equilibre e planeje

GET /v1/user — email, balance (créditos), sinalizadores de plano, dados de assinatura. A chave da API não está na resposta. Resposta armazenada em cache ~1 minuto por chave — não faça pesquisas com mais frequência do que o necessário para obter um equilíbrio atualizado.

Cache

No nível da API pública, o corpo da resposta HTTP é armazenado em cache. Alguns endpoints usam atualização antecipada (atualização em segundo plano antes que o TTL expire: 4 minutos para TTL de 5 minutos, 50 minutos para TTL de 1 hora).

Ponto final TTL
POST /v1/reports/search 5 minutos
GET /v1/reports/favorites 5 minutos
POST /v1/reports/favorites nenhum
DELETE /v1/reports/favorites/{report_type}/{report_id} nenhum
GET /v1/reports/by-domain/{domain} 5 minutos
GET /v1/reports/check/expired/{report_id} 1 hora
GET /v1/reports/{report_type}/{report_id} nenhum
GET /v1/user 1 minuto
GET /v1/domains/checker/expiry/{domain} 1 hora
GET /v1/domains/checker/karma_metric/{domain} 1 hora

Os favoritos de POST/DELETE alteram os dados do servidor imediatamente, mas uma repetição de GET /favorites ou POST /search com favorites: true pode retornar uma lista obsoleta até que o cache expire (5 min).

Solicitar exemplos (curl)

Substitua YOUR_API_KEY pela sua chave de perfil. URL base: https://api.karma.domains.

A pesquisa expirou com um filtro

curl -X POST "https://api.karma.domains/v1/reports/search?page=1&page_size=25&sort_by=added_at&sort_desc=true" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "karmascore_min": 60,
    "domain_type": ["expired"]
  }'

Corpo do filtro — quaisquer campos de ReportListFilterSchema em OpenAPI.

Relatório completo

curl "https://api.karma.domains/v1/reports/expired/507f1f77bcf86cd799439011" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Pesquisa por domínio

curl "https://api.karma.domains/v1/reports/by-domain/example.com" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Adicionar aos favoritos

curl -X POST "https://api.karma.domains/v1/reports/favorites" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "report_id": "507f1f77bcf86cd799439011",
    "report_type": "expired"
  }'

Verificação de disponibilidade de domínio

curl "https://api.karma.domains/v1/domains/checker/expiry/mybrand.com" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Métrica de Carma

curl "https://api.karma.domains/v1/domains/checker/karma_metric/mybrand.com" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Casos de uso de integração

Pipeline de seleção expirado todas as noites

Cron diário: POST /search com um filtro JSON salvo (como um saved filter na UI), paginação com page_size=50, exporte report_id para seu banco de dados. Análise detalhada — GET relatório completo apenas para a lista restrita.

Monitorando uma lista de nomes antes do registro

Fila de domínios → GET /domains/checker/expiry/{domain} → ramificação em available. Não requer relatório no Karma.Domains.

Sincronizando favoritos com CRM interno

Periódico GET /favorites; na ação do usuário no CRM — favoritos POST/DELETE. Considere o cache de lista de aproximadamente 5 minutos.

Análise de BI/funil

Exporte páginas de pesquisa, agregue total_count e métricas de report_list sem abrir a IU. Esquema de linha de lista — ReportListResponseSchema em OpenAPI.

Scripts MCP + em uma chave

A equipe usa MCP no Cursor para pesquisa ad-hoc e API pública para ETL estável. Total 60 solicitações por minuto — planeje lotes e espera em 429.

MCP e API pública

API pública (REST) PCM
Público Desenvolvedores, scripts, ETL Assistentes de IA (Cursor, Claude)
Interface HTTP+JSON Diálogo, ferramentas
Documentos Esta página + OpenAPI /pt/expired-domains-mcp/
Dados Mesmos relatórios e bancos de dados Mesmo
Chave e limite Compartilhado Compartilhado

Para novas integrações de código, comece com REST. Para experimentos de bate-papo – MCP.

Perguntas frequentes

Onde está a referência completa do campo de filtro?

OpenAPI, esquema ReportListFilterSchema. Os significados dos campos correspondem a filter help na IU.

Qual é a diferença entre available e is_expired?

Ambos no contexto da API significam: o domínio provavelmente está disponível para registro. available — verificação ao vivo por nome (/domains/checker/expiry). is_expired — cheque vinculado a um relatório de banco de dados expirado (/reports/check/expired/{report_id}).

Por que 403 com uma chave correta?

Nenhum plano Pro ativo. Verifique a assinatura no perfil.

Por que a resposta da API não corresponde à IU ou a uma ação recém-executada?

Cache HTTP da API pública — veja a tabela em “Cache”. Considere o TTL ao sincronizar com a IU.

Quais valores sort_by são permitidos?

Lista de enum em OpenAPI — nomes de colunas da tabela de relatório no aplicativo web.

Preciso desta página se o OpenAPI existir?

OpenAPI é a fonte da verdade para tipos e campos. Esta página adiciona contexto: limites, cache, ordem de chamada, casos de uso e armadilhas que não estão no esquema.

Existe uma caixa de areia?

Nenhuma caixa de areia separada; use uma conta Pro e respeite os limites de taxas. Para depuração, GET /user e um POST /search estreito com um filtro estrito funcionam bem.

Códigos de erro

Código Significado
200 Sucesso
401 Não autorizado (chave)
403 Não profissional
404 Relatório ou recurso não encontrado
422 Erro de validação de corpo/consulta (filtro inválido, sort_by,…)
429 Limite de taxa excedido
503 Limitador de taxa temporariamente indisponível

O corpo do erro geralmente possui detail (string ou matriz de objetos de validação). Exemplo:

{
  "detail": "Invalid API key"
}

Experimente gratuitamente!

Use créditos de bônus!

Abrir lista de domínios
+5