Домейнеры
Следите за аукционами GoDaddy, DropCatch, NameJet, Dynadot и остальными из одной JSON-ленты. Больше не нужно каждое утро заходить на каждую площадку.
Expired Domains API для SEO-специалистов и агентств
Тот же инвентарь, что в приложении Karma.Domains — gTLD и ccTLD, с Ahrefs, Majestic, Moz, Semrush, SimilarWeb и Wayback в каждом отчёте. Сохранённые фильтры, аннотации, share-ссылки с share_url и SEO enrich через REST. Bearer-ключ на тарифе Pro, 60 запросов в минуту, общий с MCP.
Один базовый URL, Bearer-ключ, ответы в JSON. Вызовите POST /v1/reports/search — имена полей ниже синхронизируются из схемы OpenAPI при сборке.
Нужен тариф Pro или выше. Создайте или сбросьте ключ в Профиль → Настройки. Относитесь к нему как к паролю — никогда не вставляйте в публичные чаты или репозитории.
| Base URL | https://api.karma.domains |
|---|---|
| Auth | Authorization: Bearer YOUR_API_KEY |
| Format | JSON over HTTPS |
| Лимит запросов | 60 запросов/минуту на ключ (общий с MCP) |
| Квота списков | 50 000 строк/день (UTC), page_size 1–100, page × page_size ≤ 5000 |
| Квота live-tools | 200 вызовов/день (UTC, без cache); cache hits не считаются |
Интерактивная консоль — Swagger UI.
curl, Python, PHP, JavaScript, Go, Apps Script, Perl — и LOLCODE. По умолчанию curl и поиск expired-доменов с KarmaScore не ниже 60. Ответы усечены — в реальных payload есть каждое поле схемы.
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"
} Ответы выше усечены. Полное тело каждого эндпоинта — Swagger UI.
Те же площадки, что в приложении. Фильтр auction_source — имя (godaddy) или source|sale_type (godaddy|bid). Элементы объединяются через OR.
aftermarket_pl Все aftermarket_pl|auction Auctions aftermarket_pl|buynow Buy Now alibabacloud Все alibabacloud|buynow Buy Now cznic Все cznic|auction Auctions domainlore Все dropcatch Все dropcatch|prerelease Pre-Release dropcatch|dropped Dropped dropcatch|privateseller Private Seller dynadot Все dynadot|auction Auctions dynadot|closeout Closeout dynadot|backorder Backorder dynadot|buynow Buy Now efty Все efty|buynow Buy Now gname Все gname|auction Auctions gname|backorder Backorder gname|buynow Buy Now godaddy Все godaddy|bid Auctions godaddy|closeout Closeouts hugedomains Все hugedomains|buynow Buy Now namecheap Все namecheap|buynow Buy Now namejet Все nameshift Все nameshift|auction Auctions nameshift|buynow Buy Now namesilo Все namesilo|buynow Buy Now nicsell Все park.io Все porkbun Все porkbun|buynow Buy Now rakkodomain Все rakkodomain|buynow Buy Now sav.com Все sav.com|dropped Dropped sav.com|customer Customer sav.com|expired Expired sedo Все sedo|buynow Buy Now seo.domains Все seo.domains|buynow Buy Now subreg Все webexpire Все whc Все whc|auction Auctions whc|backorder Backorder Поля тела для POST /v1/reports/search — тот же набор, что в таблице приложения. Откройте группу, чтобы увидеть имена OpenAPI. Пары min/max показаны в одной строке.
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) Типы, enum и примеры — Swagger UI.
Полные пути. Откройте маршрут, чтобы увидеть поля ответа из схемы.
/v1/reports/search Search reports across all bases (auctions, expired, backorder, buynow). Поля ответа
report_list total_count Каждый элемент в 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. Поля ответа
domain matches Каждый элемент в matches
report_id report_type domain added_at /v1/reports/check/expired Check whether the report domain is available (drop). Поля ответа
timestamp is_expired /v1/reports/report Get full report by collection type and MongoDB document id. Поля ответа
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 Вложенный объект 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. Поля ответа
report_list total_count Каждый элемент в 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. Поля ответа
status message /v1/reports/favorites Remove a report from the current user's favorites. Поля ответа
status message /v1/user Return the authenticated user's profile (email, joined date, credits, plans). Поля ответа
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 Запись аннотаций, share и enrich требуют Pro. x402-агенты платят 1 кредит за запись.
/v1/user/saved-filters Create or replace a saved search filter by name. Поля ответа
status message /v1/user/saved-filters Create or replace a saved search filter by name. Поля ответа
status message /v1/user/saved-filters Delete a saved search filter by name. Поля ответа
status message /v1/reports/annotations/tags Distinct annotation tags for the current user (sorted). Поля ответа
tags /v1/reports/annotations Delete report annotation. Поля ответа
status message /v1/reports/annotations Delete report annotation. Поля ответа
status message /v1/reports/annotations Delete report annotation. Поля ответа
status message /v1/reports/share Create or reuse a guest share link for a bases report. Поля ответа
token expires_at share_url /v1/reports/{report_type}/{report_id}/enrich-seo Start paid SEO enrich job (Pro/Unlimited). Поля ответа
job_id /v1/reports/enrich-jobs/{job_id} Poll an SEO enrich job by ID. Поля ответа
status progress result error 1 кредит за домен, если ответ не из кэша
/v1/domains/checker/expiry Check if a domain name appears free for registration (live WHOIS/DNS). 1 credit per domain; cache hits free
Поля ответа
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
Поля ответа
karma_metric components period Вложенный объект 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
Поля ответа
domain metrics Вложенный объект 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
Поля ответа
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
Поля ответа
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
Поля ответа
domain summary backlinks /v1/domains/checker/anchors Live Moz anchor-text aggregation and word frequencies. 1 credit per domain; cache hits free
Поля ответа
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
Поля ответа
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
Поля ответа
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
Поля ответа
domain default_resolver dns /v1/domains/checker/whois Live structured WHOIS/RDAP (registrar, contacts, nameservers, dates). 1 credit per domain; cache hits free
Поля ответа
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
Поля ответа
domain da ss bl rd Интерактивная консоль — Swagger UI.
Тот же инвентарь, что на сайте — утренний обход, инструмент в воркфлоу или ассистент.
Следите за аукционами GoDaddy, DropCatch, NameJet, Dynadot и остальными из одной JSON-ленты. Больше не нужно каждое утро заходить на каждую площадку.
Фильтруйте по DA, TF/CF, DR, бэклинкам и возрасту Wayback, чтобы находить имена для 301 или пересборки. Те же метрики, что на странице отчёта, в списке с пагинацией.
Slack-боты, n8n, таблицы CRM, Sheets, внутренние дашборды. Обычный REST, CORS открыт, работает с curl, Python, PHP, JavaScript, Go, Apps Script и Perl.
Тот же Bearer-ключ, что у MCP. Спросите в чате или вызовите POST /v1/reports/search из tool call. Один инвентарь для скриптов и ассистентов.
Expiry, WHOIS, DA, трафик и DNS по любому имени — не только по тем, что уже в базе. 1 кредит за домен; попадания в кэш бесплатны.
Гоняйте одни и те же фильтры по нишам клиентов, листайте JSON и складывайте id отчётов в таблицу или CRM. Один ключ — остальным не нужно жить в приложении.
Сохраняйте фильтры поиска по имени, ставьте теги на отчёты и синхронизируйте аннотации со своим стеком. Список тегов бесплатен; write-операции стоят 1 agent credit на x402-аккаунтах.
POST share-ссылки с share_url для гостевого просмотра отчёта или enrich SEO перед отправкой шортлиста — опрашивайте job, пока метрики не обновятся.
Да. Те же базы и отчёты — аукционы, expired, backorder и buy-now. Скрипты получают JSON; в браузере тот же инвентарь с полными таймлайнами Wayback на странице отчёта.
Да. Без Pro ключ не выдаётся. Смотрите тарифы.
Да. Один ключ из Профиль → Настройки для REST и MCP-сервера. Лимит 60 запросов в минуту общий.
60 запросов в минуту на ключ по всем маршрутам Public API и MCP. В успешных ответах есть X-RateLimit-Limit, X-RateLimit-Remaining и X-RateLimit-Reset. Сверх лимита — HTTP 429 и Retry-After. Списковые эндпоинты также делят квоту 50 000 строк в день (сброс по UTC).
Чтение списков и отчётов идёт в лимит запросов и дневную квоту строк, без дополнительных кредитов. Live-проверки доменов стоят 1 кредит за домен (попадания в кэш бесплатны). Повторная проверка expired-листинга бесплатна, не чаще одного раза в 3 часа на один отчёт. PUT/DELETE saved-filters, PUT/DELETE annotations и POST share стоят 1 agent credit за write на x402-аккаунтах.
Да. Запись аннотаций и POST /v1/reports/share требуют тариф Pro. Список тегов через GET /v1/reports/annotations/tags и чтение аннотаций входят в квоту вашего плана.
POST /v1/reports/{report_type}/{report_id}/enrich-seo возвращает 202 с id job. Опрашивайте GET /v1/reports/enrich-jobs/{job_id} до завершения. Нужен Pro или Unlimited. Успешный enrich стоит 3 кредита (Pro) или 22 (Unlimited) — как на сайте.
Имена фильтров и поля ответа на этой странице генерируются из схем бэкенда при сборке. Типы, enum и консоль try-it — в Swagger UI.
Да. Ответы — JSON по HTTPS: их можно брать в n8n, Zapier, Sheets, CRM, Slack или любом дашборде, который умеет REST. Для Claude, Cursor, ChatGPT и других ассистентов с MCP используйте MCP-сервер — без ручной сборки HTTP. Тот же ключ, тот же инвентарь.
REST — для скриптов, n8n, CRM и всего, где нужен явный HTTP. MCP — для ChatGPT, Claude, Cursor и других ассистентов, которые вызывают инструменты в чате. Тот же ключ, те же данные, общий лимит. Смотрите лендинг MCP.
Да. Каждый эндпоинт Public API принимает платные запросы x402 — кредиты агента в USDC, без браузерного аккаунта. Манифест: /.well-known/x402.
Тот же инвентарь, что в приложении — по HTTPS
Один Bearer-ключ для REST и MCP. 60 запросов в минуту. Имена полей на этой странице совпадают с OpenAPI.