Вебхуки для прострочених доменів

Вебхуки Expired Domains, які надсилають POST, коли домен збігся з фільтром — або зрушила ціна

Підписка тим самим ключем Pro, що й у Public API. Karma.Domains надсилає підписану JSON-подію в Zapier, Make, n8n, IFTTT або на будь-яку публічну HTTPS-адресу, коли спрацьовує фільтр, змінюється аукціон або ви оновлюєте нотатку, обране чи завдання користувача.

30 Підписок
5 000 Доставок на день
3 Типи підписок
60/min Спільний ліміт запитів
Запитати ШІ
  • ChatGPT
  • Claude
  • Gemini
  • Grok
  • Perplexity

Підключіть Zapier, Make, n8n або IFTTT

Створіть тригер вебхука у своєму інструменті, скопіюйте його HTTPS-адресу і зареєструйте її через POST /v1/webhooks. Той самий виклик працює для будь-якого клієнта — змінюється лише URL.

Потрібен тариф Pro або вище. Створіть або скиньте ключ у Профіль → Розробнику. Ставтеся до нього як до пароля.

Підписки 30 на акаунт
Доставки 5 000 за добу UTC
Ліміт запитів 60 запитів на хвилину на ключ (спільний з Public API і MCP)

Zapier — Webhooks by Zapier, Catch Hook

  1. Створіть Zap і виберіть Webhooks by Zapier як тригер. Укажіть Catch Hook.
  2. Скопіюйте HTTPS-адресу вебхука, яку показує Zapier.
  3. Надішліть POST /v1/webhooks з ключем Pro, цим URL, типом kind і потрібними подіями. Перевірте Zap після першої доставки.
curl https://api.karma.domains/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "kind": "filter",
    "url": "https://hooks.zapier.com/hooks/catch/123456/abcdef",
    "events": ["domain.matched_filter"],
    "bases": ["expired", "auctions"],
    "filter": { "karmascore_min": 60 }
  }'

Три способи підписки

Одна подія — один звіт, крім подій завдань користувача: там одна подія на завдання. Секрет повертається лише під час створення підписки або під час його зміни.

Збіг із фільтром

kind=filter надсилає domain.matched_filter, коли звіт починає збігатися з тими самими фільтрами, що й POST /v1/reports/search. Курсор стартує в момент підписки, тож старі рядки не повторюються. Звіт, який знову потрапив у фільтр після виходу з нього, може спрацювати ще раз.

Підписка

curl https://api.karma.domains/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "kind": "filter",
    "url": "https://hooks.example.com/karma",
    "events": ["domain.matched_filter"],
    "bases": ["expired", "auctions"],
    "filter": { "karmascore_min": 60 }
  }'

Подія, яку ви отримуєте

{
  "id": "evt_example",
  "type": "domain.matched_filter",
  "version": "1",
  "subscription_id": "sub_example",
  "object": {
    "domain": "example.com",
    "report_id": "665f0example",
    "report_type": "expired"
  },
  "data": { "current": { "changed_at": 1710000000 } },
  "links": { "report": "https://karma.domains/app/reports/expired/report-665f0example/" }
}

Конкретний звіт

kind=reports стежить максимум за 100 звітами. Події аукціону покривають ціну, кількість ставок, скоро завершення і завершення. Події нотатки, тегів і обраного спрацьовують лише для акаунта, який зробив зміну — інший акаунт, що стежить за тим самим звітом заради ціни, їх не отримує. ending_soon_seconds потрібен лише якщо вибрано auction.ending_soon.

Підписка

curl https://api.karma.domains/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "kind": "reports",
    "url": "https://hooks.example.com/karma",
    "events": ["auction.price_changed", "report.note_changed"],
    "reports": [{ "report_type": "auctions", "report_id": "665f0example" }]
  }'

Подія, яку ви отримуєте

{
  "id": "evt_example",
  "type": "auction.price_changed",
  "version": "1",
  "subscription_id": "sub_example",
  "object": {
    "domain": "example.com",
    "report_id": "665f0example",
    "report_type": "auctions"
  },
  "data": {
    "current": { "price": 120, "bid_count": 4 },
    "previous": { "price": 100, "bid_count": 3 },
    "changes": { "price_delta": 20, "bid_count_delta": 1 }
  }
}

Завдання користувача

У kind=user немає фільтра і списку звітів. usertask.created спрацьовує один раз, коли завдання збережено. usertask.completed спрацьовує один раз, коли воно завершене. Проміжний прогрес не надсилається. У тілі — назва завдання і кількість звітів, а не кожен домен у завданні.

Підписка

curl https://api.karma.domains/v1/webhooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "kind": "user",
    "url": "https://hooks.example.com/karma",
    "events": ["usertask.created", "usertask.completed"]
  }'

Подія, яку ви отримуєте

{
  "id": "evt_example",
  "type": "usertask.completed",
  "version": "1",
  "subscription_id": "sub_example",
  "object": {
    "task_id": "665f0task",
    "report_type": "expired"
  },
  "data": {
    "current": { "task_name": "French plumbing", "reports_count": 12 }
  }
}

Доставки підписуються за Standard Webhooks. Кожен POST містить webhook-id, webhook-timestamp і webhook-signature. Секрет whsec_ приходить один раз — під час створення і під час зміни секрету. Надішліть POST /v1/webhooks/{id}/ping, щоб доставити webhook.ping і перевірити URL.

Часті запитання

Це той самий ключ, що в Public API?

Так. Один ключ Pro з Профіль → Розробнику для REST, MCP і вебхуків. Створення та зміна підписок враховується в спільному ліміті 60 запитів на хвилину.

Які ліміти у вебхуків?

30 підписок на акаунт і 5 000 доставок за добу UTC. Після денної стелі підписка переходить у quota_paused до наступної доби UTC. Підписку можна поставити на паузу самостійно через PATCH.

На які події можна підписатися?

kind=filter приймає лише domain.matched_filter. kind=reports приймає auction.price_changed, auction.bid_count_changed, auction.ending_soon, auction.ended, report.note_changed, report.tags_changed і report.favorite_changed. kind=user приймає usertask.created і usertask.completed.

Чому в події немає Majestic (або іншої метрики)?

Дані звіту надходять у фоні, не одним пакетом. Фільтр, який не вимагає метрику, може спрацювати до того, як вона з’явиться. Звіт із низьким пріоритетом може так і не отримати її.

Чи треба вказувати обов’язкову метрику у фільтрі?

Так, якщо потрібні лише звіти, де вона вже є. Це звужує вибірку і може затримати подію, поки метрика не збереться. Для прострочених доменів затримка важлива — ім’я може піти зі стрічки, поки ви чекаєте. Якщо потрібен найраніший сигнал, не включайте метрику у фільтр і перевірте її після POST.

У якому порядку зазвичай з’являються метрики?

Спочатку дані аукціону, потім Karma Metric, потім Karma Score і контент з архіву, потім SEO-метрики (Majestic, Moz, Ahrefs та решта), потім дані Google. Фіксованого очікування немає. Пізніший крок може бути пропущений.

Події нотатки й обраного приходять усім, хто стежить за звітом?

Ні. Вони приходять лише в підписки акаунта, який змінив нотатку, теги або обране. Стеження за ціною того самого звіту з іншого акаунта лишається на подіях аукціону.

Де схема запиту?

Типи і консоль try-it — у Swagger UI. Сторінка Public API описує пошук, звіти і решту REST.

Той самий інвентар, що в застосунку — на вашу URL

Зареєструйте HTTPS-адресу і почніть отримувати події

Один ключ Pro. 30 підписок. 5 000 доставок на день.

Pro Потрібен тариф
30 Підписок
5 000 Доставок на день
Отримати API-ключ

Хочете забирати дані самі? Дивіться Public API

Зручніше чат? Дивіться MCP-сервер