Domainers
Supervisa subastas de GoDaddy, DropCatch, NameJet, Dynadot y el resto desde un único feed JSON. Sin revisar cada plataforma cada mañana.
Expired Domains API para expertos SEO y agencias
El mismo inventario que la app Karma.Domains — gTLD y ccTLD, con Ahrefs, Majestic, Moz, Semrush, SimilarWeb y Wayback en cada informe. Filtros guardados, anotaciones, enlaces de compartición con share_url y enriquecimiento SEO por REST. Clave Bearer en Pro, 60 peticiones por minuto, compartido con MCP.
Una URL base, una clave Bearer, respuestas JSON. Llama POST /v1/reports/search — los nombres de campo de abajo se sincronizan del esquema OpenAPI en el build.
Requiere el plan Pro o superior. Crea o restablece la clave en Perfil → Ajustes. Trátala como una contraseña — nunca la pegues en chats públicos ni repositorios.
| Base URL | https://api.karma.domains |
|---|---|
| Auth | Authorization: Bearer YOUR_API_KEY |
| Format | JSON over HTTPS |
| Rate limit | 60 peticiones/minuto por clave (compartido con MCP) |
| Cuota de listados | 50.000 filas/día (UTC), page_size 1–100, page × page_size ≤ 5000 |
| Cuota live-tools | 200 llamadas/día (UTC, sin caché); hits de caché gratis |
Consola interactiva try-it — Swagger UI.
curl, Python, PHP, JavaScript, Go, Apps Script, Perl — y LOLCODE. Por defecto, curl más una búsqueda de dominios expired con KarmaScore de al menos 60. Las respuestas están recortadas — los payloads reales incluyen cada campo del esquema.
curl -X POST "https://api.karma.domains/v1/reports/search?page=1&page_size=25" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"karmascore_min":60,"domain_type":["expired"]}' Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} curl -X GET "https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} curl -X GET "https://api.karma.domains/v1/reports/by-domain?domain=example.com" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} curl -X GET "https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"domain": "mybrand.com",
"available": true
} curl -X GET "https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} curl -X GET "https://api.karma.domains/v1/user" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} curl -X POST "https://api.karma.domains/v1/reports/share" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"report_type":"expired","report_id":"65a1c2f8e4b0a91d3c7e4b12"}' Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} curl -X POST "https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} import requests
url = "https://api.karma.domains/v1/reports/search"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
params = {
"page": 1,
"page_size": 25,
}
body = {
"karmascore_min": 60,
"domain_type": ["expired"],
}
response = requests.post(url, headers=headers, params=params, json=body)
print(response.json()) Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} import requests
url = "https://api.karma.domains/v1/reports/report"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
params = {
"report_type": "expired",
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
}
response = requests.get(url, headers=headers, params=params)
print(response.json()) Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} import requests
url = "https://api.karma.domains/v1/reports/by-domain"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
params = {
"domain": "example.com",
}
response = requests.get(url, headers=headers, params=params)
print(response.json()) Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} import requests
url = "https://api.karma.domains/v1/domains/checker/expiry"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
params = {
"domain": "mybrand.com",
}
response = requests.get(url, headers=headers, params=params)
print(response.json()) Response
{
"domain": "mybrand.com",
"available": true
} import requests
url = "https://api.karma.domains/v1/domains/checker/domain_authority"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
params = {
"domain": "mybrand.com",
}
response = requests.get(url, headers=headers, params=params)
print(response.json()) Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} import requests
url = "https://api.karma.domains/v1/user"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
response = requests.get(url, headers=headers)
print(response.json()) Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} import requests
url = "https://api.karma.domains/v1/reports/share"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
body = {
"report_type": "expired",
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
}
response = requests.post(url, headers=headers, json=body)
print(response.json()) Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} import requests
url = "https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
}
response = requests.post(url, headers=headers)
print(response.json()) Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} <?php
$ch = curl_init('https://api.karma.domains/v1/reports/search?page=1&page_size=25');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'karmascore_min' => 60,
'domain_type' => ['expired'],
]),
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} <?php
$ch = curl_init('https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} <?php
$ch = curl_init('https://api.karma.domains/v1/reports/by-domain?domain=example.com');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} <?php
$ch = curl_init('https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"domain": "mybrand.com",
"available": true
} <?php
$ch = curl_init('https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} <?php
$ch = curl_init('https://api.karma.domains/v1/user');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} <?php
$ch = curl_init('https://api.karma.domains/v1/reports/share');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'report_type' => 'expired',
'report_id' => '65a1c2f8e4b0a91d3c7e4b12',
]),
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} <?php
$ch = curl_init('https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response; Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} const response = await fetch(
'https://api.karma.domains/v1/reports/search?page=1&page_size=25',
{
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
karmascore_min: 60,
domain_type: ["expired"],
}),
}
);
const data = await response.json(); Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} const response = await fetch(
'https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12',
{
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} const response = await fetch(
'https://api.karma.domains/v1/reports/by-domain?domain=example.com',
{
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} const response = await fetch(
'https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com',
{
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"domain": "mybrand.com",
"available": true
} const response = await fetch(
'https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com',
{
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} const response = await fetch(
'https://api.karma.domains/v1/user',
{
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} const response = await fetch(
'https://api.karma.domains/v1/reports/share',
{
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
report_type: "expired",
report_id: "65a1c2f8e4b0a91d3c7e4b12",
}),
}
);
const data = await response.json(); Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} const response = await fetch(
'https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo',
{
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
}
);
const data = await response.json(); Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.karma.domains/v1/reports/search?page=1&page_size=25", strings.NewReader(`{"karmascore_min":60,"domain_type":["expired"]}`))
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.karma.domains/v1/reports/by-domain?domain=example.com", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"domain": "mybrand.com",
"available": true
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.karma.domains/v1/user", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.karma.domains/v1/reports/share", strings.NewReader(`{"report_type":"expired","report_id":"65a1c2f8e4b0a91d3c7e4b12"}`))
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("POST", "https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo", nil)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
} Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} function run() {
const url = 'https://api.karma.domains/v1/reports/search?page=1&page_size=25';
const response = UrlFetchApp.fetch(url, {
method: 'post',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
contentType: 'application/json',
payload: JSON.stringify({
karmascore_min: 60,
domain_type: ["expired"],
}),
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} function run() {
const url = 'https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12';
const response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} function run() {
const url = 'https://api.karma.domains/v1/reports/by-domain?domain=example.com';
const response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} function run() {
const url = 'https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com';
const response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"domain": "mybrand.com",
"available": true
} function run() {
const url = 'https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com';
const response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} function run() {
const url = 'https://api.karma.domains/v1/user';
const response = UrlFetchApp.fetch(url, {
method: 'get',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} function run() {
const url = 'https://api.karma.domains/v1/reports/share';
const response = UrlFetchApp.fetch(url, {
method: 'post',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
contentType: 'application/json',
payload: JSON.stringify({
report_type: "expired",
report_id: "65a1c2f8e4b0a91d3c7e4b12",
}),
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} function run() {
const url = 'https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo';
const response = UrlFetchApp.fetch(url, {
method: 'post',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
Accept: 'application/json',
},
muteHttpExceptions: true,
});
const data = JSON.parse(response.getContentText());
Logger.log(data);
} Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'POST',
'https://api.karma.domains/v1/reports/search?page=1&page_size=25',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
'Content-Type' => 'application/json',
},
content => '{"karmascore_min":60,"domain_type":["expired"]}',
}
);
print $res->{content}; Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'GET',
'https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'GET',
'https://api.karma.domains/v1/reports/by-domain?domain=example.com',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'GET',
'https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"domain": "mybrand.com",
"available": true
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'GET',
'https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'GET',
'https://api.karma.domains/v1/user',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'POST',
'https://api.karma.domains/v1/reports/share',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
'Content-Type' => 'application/json',
},
content => '{"report_type":"expired","report_id":"65a1c2f8e4b0a91d3c7e4b12"}',
}
);
print $res->{content}; Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} use HTTP::Tiny;
my $res = HTTP::Tiny->new->request(
'POST',
'https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo',
{
headers => {
Authorization => 'Bearer YOUR_API_KEY',
Accept => 'application/json',
},
}
);
print $res->{content}; Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} HAI 1.2
BTW POST /reports/search — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/reports/search?page=1&page_size=25"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
I HAS A BODY ITZ "{""karmascore_min"":60,""domain_type"":[""expired""]}"
VISIBLE BODY
VISIBLE "I CAN HAS EXPIRED DOMAINS WIF KARMA 60"
KTHXBYE Response
{
"report_list": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"karmascore": 72,
"karmametric": 61,
"majestic_tf": 18,
"majestic_cf": 22,
"moz_da": 28,
"ahrefs_dr": 31.4,
"sr_as": 24,
"sw_last_traffic": 1200,
"wa_age": 9,
"wa_last_title": "Specialty coffee notes",
"auctions": null,
"...": "…"
}
],
"total_count": 1842
} HAI 1.2
BTW GET /reports/report — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/reports/report?report_type=expired&report_id=65a1c2f8e4b0a91d3c7e4b12"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "GIMMEH TEH FULL REPORT"
KTHXBYE Response
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "brewjournal.com",
"domain_tld": "com",
"added_at": 1710000000,
"processed": true,
"is_expired": true,
"metrics": {
"majestic": {
"tf": 18,
"cf": 22,
"bl": 1420,
"...": "…"
},
"moz": {
"da": 28,
"ss": 3,
"...": "…"
},
"ahrefs": {
"dr": 31.4,
"ur": 18.2
},
"similarweb": {
"visits": 1200,
"...": "…"
},
"karma_metric": {
"karma_metric": 61,
"...": "…"
},
"...": "…"
},
"web_archive": {
"age": 9,
"last_title": "Specialty coffee notes",
"...": "…"
},
"auctions": null,
"...": "…"
} HAI 1.2
BTW GET /reports/by-domain — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/reports/by-domain?domain=example.com"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "I CAN HAS DOMAIN example.com"
KTHXBYE Response
{
"domain": "example.com",
"matches": [
{
"report_id": "65a1c2f8e4b0a91d3c7e4b12",
"report_type": "expired",
"domain": "example.com",
"added_at": 1710000000
}
]
} HAI 1.2
BTW GET /domains/checker/expiry — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/domains/checker/expiry?domain=mybrand.com"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "IZ IT FREE OR IZ IT TAKEN"
KTHXBYE Response
{
"domain": "mybrand.com",
"available": true
} HAI 1.2
BTW GET /domains/checker/domain_authority — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/domains/checker/domain_authority?domain=mybrand.com"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "HOW BIG IZ TEH DA"
KTHXBYE Response
{
"domain": "mybrand.com",
"metrics": {
"dr": 31.4,
"ur": 18.2,
"da": 28,
"ss": 3,
"sr_as": 24,
"kdm": 61,
"...": "…"
}
} HAI 1.2
BTW GET /user — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/user"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "GIMMEH MAH CREDITS"
KTHXBYE Response
{
"id": "65a1c2f8e4b0a91d3c7e4b12",
"email": "[email protected]",
"balance": 420,
"pro_plan": 1,
"pro_task_credits": 350,
"unlimited_plan": 0,
"...": "…"
} HAI 1.2
BTW POST /reports/share — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/reports/share"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
I HAS A BODY ITZ "{""report_type"":""expired"",""report_id"":""65a1c2f8e4b0a91d3c7e4b12""}"
VISIBLE BODY
VISIBLE "PLZ SHARE DIS REPORT WIF MAH CLIENT"
KTHXBYE Response
{
"token": "abc123guest",
"expires_at": 1710000000,
"share_url": "https://karma.domains/app/share/abc123guest"
} HAI 1.2
BTW POST /reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo — do not ship this
I HAS A URL ITZ "https://api.karma.domains/v1/reports/expired/65a1c2f8e4b0a91d3c7e4b12/enrich-seo"
I HAS A KEY ITZ "YOUR_API_KEY"
VISIBLE SMOOSH "Authorization: Bearer " AN KEY MKAY
VISIBLE URL
VISIBLE "MAKE TEH SEO MOAR SHINY"
KTHXBYE Response
{
"job_id": "65a1c2f8e4b0a91d3c7e4b99"
} Las respuestas de arriba están recortadas. Cuerpo completo de cada endpoint — Swagger UI.
Las mismas plataformas que en la app. Filtra con auction_source — un nombre (godaddy) o source|sale_type (godaddy|bid). Los elementos se combinan con OR.
aftermarket_pl Todas aftermarket_pl|auction Auctions aftermarket_pl|buynow Buy Now alibabacloud Todas alibabacloud|buynow Buy Now cznic Todas cznic|auction Auctions domainlore Todas dropcatch Todas dropcatch|prerelease Pre-Release dropcatch|dropped Dropped dropcatch|privateseller Private Seller dynadot Todas dynadot|auction Auctions dynadot|closeout Closeout dynadot|backorder Backorder dynadot|buynow Buy Now efty Todas efty|buynow Buy Now gname Todas gname|auction Auctions gname|backorder Backorder gname|buynow Buy Now godaddy Todas godaddy|bid Auctions godaddy|closeout Closeouts hugedomains Todas hugedomains|buynow Buy Now namecheap Todas namecheap|buynow Buy Now namejet Todas nameshift Todas nameshift|auction Auctions nameshift|buynow Buy Now namesilo Todas namesilo|buynow Buy Now nicsell Todas park.io Todas porkbun Todas porkbun|buynow Buy Now rakkodomain Todas rakkodomain|buynow Buy Now sav.com Todas sav.com|dropped Dropped sav.com|customer Customer sav.com|expired Expired sedo Todas sedo|buynow Buy Now seo.domains Todas seo.domains|buynow Buy Now subreg Todas webexpire Todas whc Todas whc|auction Auctions whc|backorder Backorder Campos del body para POST /v1/reports/search — el mismo conjunto que la tabla de la app. Abre un grupo para ver los nombres OpenAPI. Los pares min/max van en una fila.
tlds List of TLD's separated by comma or space domain Domain Name. Use comma (,) for AND logic (all domains must match) or pipe (|) for OR logic (any domain matches). Case-insensitive substring search. categories List of categories. Each category will be searched with OR logic (any category matches). Use exact flat category names. Case-insensitive substring search. categories_exclude Categories to exclude. OR logic — domain is excluded if it has ANY listed category. Use exact flat category names. Case-insensitive substring search. domain_type Filter by domain base type: auctions, backorder, buynow, or expired. OR logic (any selected type matches). languages List of languages. Use comma (,) for AND logic (all languages must match) or pipe (|) for OR logic (any language matches). Case-insensitive substring search. keywords Keywords to search in web archive content (title, description, h1-h6, etc.). Use comma (,) for AND logic (all keywords must be found) or pipe (|) for OR logic (any keyword found). openpagerank_min openpagerank_max Openpagerank (OPR) (0-10) domain_numbers Domain Name has Numbers (True/False) domain_hyphens Domain Name has Hyphens (True/False) domain_length_min domain_length_max Domain Name Length (1-30) karmascore_min karmascore_max KarmaScore (0-100) brandscore_min brandscore_max Brandscore (0-100). Brandscore is the domain brandiness indicator: higher value = more brand-like, brandable (brand-worthy, suitable for a brand). karmametric_min karmametric_max Karma Metric (0-100) report_added_time Report added date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM-DD' (e.g., ['2020-01-01', '2023-12-31']). Time is automatically set to 00:00:00 for start and 23:59:59 for end. Filters by added_at field. website_ids List of website service IDs (e.g., Google Analytics ID, Yandex Metrika ID). OR logic - finds domains with ANY of the specified IDs. Used to find domains owned by the same owner. combine_seo Combined SEO filter. OR logic inside each group by selected vendors; groups are combined with AND. combine_authority_min combine_authority_max Domain Authority minimum (DR/DA/TF/OPR/AS). Supported vendors: ahrefs, moz, majestic, openpagerank, semrush. combine_backlinks_min combine_backlinks_max Backlinks minimum. Supported vendors: moz, majestic, semrush. combine_refdomains_min combine_refdomains_max Referring domains minimum. Supported vendors: moz, majestic, semrush. combine_traffic_min combine_traffic_max Traffic (visits) minimum. Supported vendors: similarweb, semrush. combine_keywords Keyword phrase filter. Supported vendor: keywordseverywhere. combine_backlink_url Backlink URL phrase filter. Supported vendor: moz. combine_anchors Backlink anchor phrase filter. Supported vendor: moz. favorites Filter by favorites. True = show only favorite reports, False = exclude favorites. Requires user_id to be provided. has_annotations Filter by report annotations. True = only reports with a note or tags, False = exclude annotated reports. Pro only. report_tags Filter by annotation tags (AND logic — report must contain all selected tags). Pro only. majestic_tf_min majestic_tf_max Majestic Trust Flow (TF) (0-100) majestic_cf_min majestic_cf_max Majestic Citation Flow (CF) (0-100) majestic_bl_min majestic_bl_max Majestic Backlinks (BL) majestic_rd_min majestic_rd_max Majestic Referring Domains (RD) majestic_topics Majestic topics. Can be a list of topic strings (each topic will be searched as OR) or a single integer. Supports phrase matching. majestic_lang Majestic anchor language. Use comma (,) for AND logic (all languages must match) or pipe (|) for OR logic (any language matches). Case-insensitive. moz_da_min moz_da_max Moz Domain Authority (DA) moz_ss_min moz_ss_max Moz Spam Score (SS) (0-100) moz_bl_min moz_bl_max Moz Backlinks (External Pages) moz_rd_min moz_rd_max Moz Referring Domains (RD) moz_bl_url Moz backlink URL source(s). Use comma (,) for AND logic (all URLs must be found) or pipe (|) for OR logic (any URL found). Case-insensitive phrase matching. moz_bl_anchor Moz backlink anchor text(s). Use comma (,) for AND logic (all anchors must be found) or pipe (|) for OR logic (any anchor found). Case-insensitive phrase matching. ahrefs_dr_min ahrefs_dr_max Ahrefs Domain Rating (DR) (0-100) ahrefs_ur_min ahrefs_ur_max Ahrefs URL Rating (UR) (0-100) ahrefs_ar_min ahrefs_ar_max Ahrefs Rank (AR) (lower rank = stronger domain) sr_as_min sr_as_max Semrush Authority Score (AS) (0-100) sr_bl_min sr_bl_max Semrush Backlinks sr_rd_min sr_rd_max Semrush Referring Domains sr_ip_min sr_ip_max Semrush Referring IPs sr_edu_min sr_edu_max Semrush EDU Backlinks sr_gov_min sr_gov_max Semrush GOV Backlinks sr_visits_min sr_visits_max Semrush Visits sr_users_min sr_users_max Semrush Unique Visitors sr_desktop_share_min sr_desktop_share_max Semrush Desktop Share (0-100%) sr_mobile_share_min sr_mobile_share_max Semrush Mobile Share (0-100%) sr_direct_min sr_direct_max Semrush Traffic Direct sr_search_organic_min sr_search_organic_max Semrush Traffic Search Organic sr_search_paid_min sr_search_paid_max Semrush Traffic Search Paid sr_referral_min sr_referral_max Semrush Traffic Referral sr_social_min sr_social_max Semrush Traffic Social sr_mail_min sr_mail_max Semrush Traffic Mail sw_visits_min sw_visits_max Similarweb Visits sw_ts_social_min sw_ts_social_max Similarweb Traffic Sources Social Ratio (0-100) sw_ts_paid_referrals_min sw_ts_paid_referrals_max Similarweb Traffic Sources Paid Referrals Ratio (0-100) sw_ts_mail_min sw_ts_mail_max Similarweb Traffic Sources Mail Ratio (0-100) sw_ts_referrals_min sw_ts_referrals_max Similarweb Traffic Sources Referrals Ratio (0-100) sw_ts_search_min sw_ts_search_max Similarweb Traffic Sources Search Ratio (0-100) sw_ts_direct_min sw_ts_direct_max Similarweb Traffic Sources Direct Ratio (0-100) sw_country_filters List of country filters with optional minimum traffic share. Each filter: {'country': 'US', 'share_min': 50} or {'country': 'GB'}. OR logic - matches any country. sw_country_share_min sw_country_share_max Similarweb Country Share Ratio (0-100) sw_last_traffic_date Similarweb last traffic date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM' (e.g., ['2023-01', '2023-12']). Filters by Year and Month fields. ke_etv_min ke_etv_max KeywordsEverywhere Estimated Traffic Value (ETV) ke_total_min ke_total_max KeywordsEverywhere Total Keywords ke_keyword KeywordsEverywhere keyword(s). Use comma (,) for AND logic (all keywords must be found) or pipe (|) for OR logic (any keyword found). Case-insensitive phrase matching. wa_age_min wa_age_max Domain age in years (Min) by Wayback Machine wa_first_snap Wayback Machine first snap date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM-DD' (e.g., ['2020-01-01', '2023-12-31']). Time is automatically set to 00:00:00 for start and 23:59:59 for end. wa_last_snap Wayback Machine last snap date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM-DD' (e.g., ['2020-01-01', '2023-12-31']). Time is automatically set to 00:00:00 for start and 23:59:59 for end. wa_hieroglyphs Content has Hieroglyphs (Asian Content) in Wayback Machine (True/False) wa_redirects Content has redirects in Wayback Machine. True = has redirects (HTTP codes 301, 302, 307, 308), False = no redirects. wa_error403 Content has HTTP error code 403 (Forbidden) in Wayback Machine. True = has 403 errors, False = no 403 errors. wa_changes_min wa_changes_max Minimum number of content changes in Wayback Machine history wa_parkings_min wa_parkings_max Minimum number of parking pages in Wayback Machine history wa_redirects_min wa_redirects_max Minimum number of redirects in Wayback Machine history wa_lang_filters List of language filters with optional minimum percentage. Each filter: {'language': 'en', 'ratio_min': 30} or {'language': 'ru'}. OR logic - matches any language. wa_server_code HTTP server response code in Wayback Machine (e.g., 200, 301, 302, 403, 404). Used together with wa_server_code_ratio_min/max. Filters by server_code field. wa_server_code_ratio_min wa_server_code_ratio_max Server Code Ratio in Wayback Machine (0-100) google_title_index Search in the Google snippet title when requesting site:domain.tld (domain's pages in Google index). Use comma (,) for AND or pipe (|) for OR. Case-insensitive. google_title_mentions Search in the Google snippet title when requesting "domain.tld" (mentions). Use comma (,) for AND or pipe (|) for OR. Case-insensitive. google_description_index Search in the Google snippet description when requesting site:domain.tld (domain's pages in Google index). Use comma (,) for AND or pipe (|) for OR. Case-insensitive. google_description_mentions Search in the Google snippet description when requesting "domain.tld" (mentions). Use comma (,) for AND or pipe (|) for OR. Case-insensitive. google_has_index At least one Google result for site:domain.tld (domain's pages in Google index). True/False. None = any. google_has_mentions At least one Google result for "domain.tld" (sites that mention the domain). True/False. None = any. auction_source Auction source(s). Each item can be a source name or 'source|sale_type' format (e.g., ['godaddy', 'namejet|buynow']). Case-insensitive matching. Items are combined with OR logic. auction_end_time Auction end time date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM-DD' (e.g., ['2024-01-01', '2024-12-31']). For 'auctions' report type, only shows active auctions (end_time >= now). auction_added_time Auction added time date range. Array of 2 strings: [start_date, end_date]. Format: 'YYYY-MM-DD' (e.g., ['2024-01-01', '2024-12-31']). For 'auctions' report type, only shows domains with active auctions. auction_price_min auction_price_max Auction Price (USD/EUR) auction_bids_min auction_bids_max Auction Bids (Number of bids) Tipos, enums y ejemplos — Swagger UI.
Rutas completas. Abre una ruta para ver los campos de respuesta del esquema.
/v1/reports/search Search reports across all bases (auctions, expired, backorder, buynow). Campos de respuesta
report_list total_count Cada elemento en report_list
providers_status report_id report_type domain domain_tld added_at processed updated_at checked_at expire_checked_at demo favorite annotation karmascore karmametric brandscore majestic_tf majestic_cf majestic_bl majestic_rd majestic_topics majestic_lang moz_da moz_da_history moz_ss moz_rd moz_bl ahrefs_dr ahrefs_ur sr_as sr_bl sr_rd sr_traffic sr_sources sr_zones ke_etv ke_total google_index openpagerank blacklists categories sw_last_traffic sw_visits_history sw_last_traffic_date sw_country_share sw_sources wa_langs wa_server_code wa_age wa_last_snap wa_changes wa_calender wa_last_title wa_last_desc wa_screenshot_snaped_at ai_summary auctions is_expired /v1/reports/by-domain Find report identifiers by exact domain name in all bases collections. Campos de respuesta
domain matches Cada elemento en matches
report_id report_type domain added_at /v1/reports/check/expired Check whether the report domain is available (drop). Campos de respuesta
timestamp is_expired /v1/reports/report Get full report by collection type and MongoDB document id. Campos de respuesta
report_id enrich_seo providers_status report_type favorite annotation demo guest_view is_expired processed added_at updated_at created_at checked_at expire_checked_at web_archive metrics domain domain_tld domain_length domain_numbers domain_hyphens auctions task Objeto anidado metrics
categories openpagerank majestic moz moz_anchor_profile ahrefs semrush keywordseverywhere similarweb brandscore karma_metric ai_summary google blacklists checked_services /v1/reports/favorites List the current user's favorite reports across all bases. Campos de respuesta
report_list total_count Cada elemento en report_list
providers_status report_id report_type domain domain_tld added_at processed updated_at checked_at expire_checked_at demo favorite annotation karmascore karmametric brandscore majestic_tf majestic_cf majestic_bl majestic_rd majestic_topics majestic_lang moz_da moz_da_history moz_ss moz_rd moz_bl ahrefs_dr ahrefs_ur sr_as sr_bl sr_rd sr_traffic sr_sources sr_zones ke_etv ke_total google_index openpagerank blacklists categories sw_last_traffic sw_visits_history sw_last_traffic_date sw_country_share sw_sources wa_langs wa_server_code wa_age wa_last_snap wa_changes wa_calender wa_last_title wa_last_desc wa_screenshot_snaped_at ai_summary auctions is_expired /v1/reports/favorites Add a report to the current user's favorites. Campos de respuesta
status message /v1/reports/favorites Remove a report from the current user's favorites. Campos de respuesta
status message /v1/user Return the authenticated user's profile (email, joined date, credits, plans). Campos de respuesta
id email joined balance pro_task_credits unlimited_plan pro_plan unlimited_subscription_info pro_subscription_info lang country timezone home theme referral_counter news Escritura de anotaciones, share y enrich requieren Pro. Agentes x402 pagan 1 crédito por escritura.
/v1/user/saved-filters Create or replace a saved search filter by name. Campos de respuesta
status message /v1/user/saved-filters Create or replace a saved search filter by name. Campos de respuesta
status message /v1/user/saved-filters Delete a saved search filter by name. Campos de respuesta
status message /v1/reports/annotations/tags Distinct annotation tags for the current user (sorted). Campos de respuesta
tags /v1/reports/annotations Delete report annotation. Campos de respuesta
status message /v1/reports/annotations Delete report annotation. Campos de respuesta
status message /v1/reports/annotations Delete report annotation. Campos de respuesta
status message /v1/reports/share Create or reuse a guest share link for a bases report. Campos de respuesta
token expires_at share_url /v1/reports/{report_type}/{report_id}/enrich-seo Start paid SEO enrich job (Pro/Unlimited). Campos de respuesta
job_id /v1/reports/enrich-jobs/{job_id} Poll an SEO enrich job by ID. Campos de respuesta
status progress result error 1 crédito por dominio salvo que la respuesta esté en caché
/v1/domains/checker/expiry Check if a domain name appears free for registration (live WHOIS/DNS). 1 credit per domain; cache hits free
Campos de respuesta
domain available /v1/domains/checker/karma_metric Compute Karma Metric from Web Archive history for a domain (live check). 1 credit per domain; cache hits free
Campos de respuesta
karma_metric components period Objeto anidado components
A_mass A_cont A_stab A_trend A_hist /v1/domains/checker/domain_authority Live Domain Authority metrics (Ahrefs, Moz, Semrush, Karma Metric). 1 credit per domain; cache hits free
Campos de respuesta
domain metrics Objeto anidado metrics
dr ur da ss bl rd sr_as sr_rd sr_bl opr kdm A_mass A_hist A_cont A_stab A_trend /v1/domains/checker/domain_age Live Wayback archive age: first/last snapshot timestamps and sparkline. 1 credit per domain; cache hits free
Campos de respuesta
domain first_ts last_ts snap_counter sparkline /v1/domains/checker/registration_expiry Live WHOIS/RDAP registration expiry (created/expires, days left, status). 1 credit per domain; cache hits free
Campos de respuesta
domain domain_status expires_ts created_ts updated_ts days_left /v1/domains/checker/backlinks Live Moz backlink summary and sample backlinks. 1 credit per domain; cache hits free
Campos de respuesta
domain summary backlinks /v1/domains/checker/anchors Live Moz anchor-text aggregation and word frequencies. 1 credit per domain; cache hits free
Campos de respuesta
domain summary sample_size anchors words /v1/domains/checker/pages Count unique page URLs from the site sitemap for a domain. 1 credit per domain; cache hits free
Campos de respuesta
domain root_sitemap_url total_pages truncated sitemaps urls /v1/domains/checker/traffic Live SimilarWeb and Semrush traffic estimates for a domain. 1 credit per domain; cache hits free
Campos de respuesta
domain similarweb semrush /v1/domains/checker/dns Live DNS lookup across public resolvers (A, AAAA, MX, NS, TXT, …). 1 credit per domain; cache hits free
Campos de respuesta
domain default_resolver dns /v1/domains/checker/whois Live structured WHOIS/RDAP (registrar, contacts, nameservers, dates). 1 credit per domain; cache hits free
Campos de respuesta
domain domain_status created_ts updated_ts expires_ts status name_servers dnssec registrar contacts privacy_masked raw /v1/domains/checker/spam_score Live Moz Spam Score plus DA, backlinks, and referring domains. 1 credit per domain; cache hits free
Campos de respuesta
domain da ss bl rd Consola interactiva try-it — Swagger UI.
El mismo inventario que el sitio — un barrido de mañana, una herramienta de flujo o un asistente.
Supervisa subastas de GoDaddy, DropCatch, NameJet, Dynadot y el resto desde un único feed JSON. Sin revisar cada plataforma cada mañana.
Filtra por DA, TF/CF, DR, backlinks y edad Wayback para encontrar nombres para un 301 o un rebuild. Las mismas métricas que en la página del informe, en una lista paginable.
Bots de Slack, n8n, tablas CRM, Sheets, dashboards internos. REST estándar, CORS abierto, funciona con curl, Python, PHP, JavaScript, Go, Apps Script y Perl.
La misma clave Bearer que MCP. Pregunta en el chat o llama POST /v1/reports/search desde un tool call. Un inventario para scripts y asistentes.
Expiry, WHOIS, DA, tráfico y DNS de cualquier nombre — no solo de los que ya están en la base. 1 crédito por dominio; los aciertos de caché son gratis.
Aplica los mismos filtros a varias nichos de cliente, recorre JSON y deja los id de informe en una hoja o CRM. Una clave — nadie más tiene que vivir en la app.
Guarda filtros de búsqueda por nombre, etiqueta informes y sincroniza anotaciones en tu stack. Listar etiquetas es gratis; las escrituras cuestan 1 crédito de agente en cuentas x402.
POST de un enlace de compartición con share_url para vista de invitado, o enriquece SEO antes de enviar una preselección — consulta el job hasta que las métricas estén actualizadas.
Sí. Las mismas bases e informes — subastas, expired, backorder y buy-now. Los scripts reciben JSON; la UI del navegador es el mismo inventario con timelines Wayback completos en la página del informe.
Sí. Sin Pro no se emite la clave. Consulta precios.
Sí. Una clave de Perfil → Ajustes para REST y el servidor MCP. El tope de 60 peticiones/minuto se comparte.
60 peticiones por minuto por clave en todas las rutas Public API y MCP. Las respuestas correctas incluyen X-RateLimit-Limit, X-RateLimit-Remaining y X-RateLimit-Reset. Si te pasas, HTTP 429 y Retry-After. Los endpoints de listado también comparten una cuota de 50.000 filas/día (reset UTC).
Lecturas de listados e informes cuentan contra el límite de peticiones y la cuota diaria de filas, no créditos extra. Los live checkers de dominio cuestan 1 crédito por dominio (los aciertos de caché son gratis). La re-comprobación de un listing expired es gratis, como máximo una vez cada 3 horas en el mismo informe. PUT/DELETE saved-filters, PUT/DELETE annotations y POST share cuestan 1 crédito de agente por escritura en cuentas x402.
Sí. Las escrituras de anotaciones y POST /v1/reports/share requieren el plan Pro. Listar etiquetas con GET /v1/reports/annotations/tags y leer anotaciones están incluidos en la cuota de tu plan.
POST /v1/reports/{report_type}/{report_id}/enrich-seo devuelve 202 con un id de job. Consulta GET /v1/reports/enrich-jobs/{job_id} hasta completar. Se requiere Pro o Unlimited. Un enriquecimiento exitoso cuesta 3 créditos (Pro) o 22 (Unlimited) — igual que en el sitio.
Los nombres de filtro y los campos de respuesta de esta página se generan a partir de los esquemas del backend en el build. Tipos, enums y una consola try-it están en Swagger UI.
Sí. Las respuestas son JSON por HTTPS — úsalas en n8n, Zapier, Sheets, un CRM, Slack o cualquier dashboard que llame REST. Para Claude, Cursor, ChatGPT y otros asistentes con MCP, usa el servidor MCP en lugar de cablear HTTP tú. Misma clave, mismo inventario.
REST es para scripts, n8n, CRM y todo lo que quiera HTTP explícito. MCP es para ChatGPT, Claude, Cursor y otros asistentes que llaman tools en el chat. Misma clave, mismos datos, rate limit compartido. Mira el landing MCP.
Sí. Cada endpoint de la Public API acepta peticiones de pago x402 — créditos de agente en USDC, sin cuenta de navegador. Manifiesto: /.well-known/x402.
El mismo inventario que la app — por HTTPS
Una clave Bearer para REST y MCP. 60 peticiones por minuto. Los nombres de campo de esta página coinciden con OpenAPI.