Домейнери
Стежте за аукціонами GoDaddy, DropCatch, NameJet, Dynadot і рештою з однієї JSON-стрічки. Більше не треба щоранку заходити на кожен майданчик.
Expired Domains API для SEO-фахівців і агенцій
Той самий інвентар, що в застосунку Karma.Domains — gTLD і ccTLD, з Ahrefs, Majestic, Moz, Semrush, SimilarWeb і Wayback у кожному звіті. Збережені фільтри, анотації, посилання для шерингу з 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. Один ключ — іншим не треба жити в застосунку.
Зберігайте фільтри пошуку за назвою, тегуйте звіти й синхронізуйте анотації зі своїм стеком. Список тегів безкоштовно; запис коштує 1 кредит агента на акаунтах x402.
POST посилання для шерингу з share_url для гостьового перегляду або enrich SEO перед відправкою shortlist — опитуйте 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 кредит агента за запис на акаунтах 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.