Вебхуки

Вебхуки позволяют вам получать уведомления в реальном времени о ваших ссылках — как при их нажатии, так и при создании, обновлении или удалении. Linkly отправляет POST-запрос на указанный(е) вами URL(ы) с подробной информацией о каждом событии.

Варианты использования

  • Платформы автоматизации: Запускайте рабочие процессы в Make или Zapier при нажатии на ссылки
  • Пользовательская аналитика: Отправляйте данные о кликах в собственную систему аналитики
  • Обновления CRM: Обновляйте записи клиентов при нажатии на ссылки
  • Уведомления в Slack: Получайте уведомления в Slack при нажатии на важные ссылки
  • Отслеживание лидов: Отслеживайте, когда потенциальные клиенты взаимодействуют с вашими ссылками

Совет: Для большинства случаев автоматизации наша интеграция Make или интеграция Zapier проще в настройке, чем пользовательские вебхуки. Они включают мгновенные триггеры кликов на основе вебхуков без необходимости в кодировании.

Как настроить вебхуки на уровне ссылки

1
2

Прокрутите вниз до раздела Webhooks.

3

Введите URL(ы) вебхука, по одному в строку.

Вы можете добавить несколько URL-адресов вебхуков. Все URL-адреса получат один и тот же payload при нажатии на ссылку.

Введите URL(ы) вебхука, по одному в строку.
Введите URL(ы) вебхука, по одному в строку.
4

Нажмите Save.

Вебхуки на уровне ссылки срабатывают только при нажатии на конкретную ссылку.

Как настроить вебхуки на уровне рабочего пространства

1

Перейдите в Settings (значок шестеренки на боковой панели).

2

Нажмите Workspace Settings

3

Введите URL(ы) вебхука, по одному в строку.

Вы можете добавить несколько URL-адресов вебхуков. Все URL-адреса получат один и тот же payload при нажатии на любую ссылку в вашем рабочем пространстве.

Введите URL(ы) вебхука, по одному в строку.
Введите URL(ы) вебхука, по одному в строку.
4

Нажмите Save Settings.

Вебхуки на уровне рабочего пространства срабатывают при каждом клике на любую ссылку в вашем рабочем пространстве.

Примечание: Если вы настроите вебхуки на обоих уровнях, оба будут срабатывать при нажатии на эту ссылку.

События

Каждый вебхук получает все типы событий в его области действия — вебхук на уровне ссылки получает события для этой ссылки, вебхук на уровне рабочего пространства получает события для каждой ссылки в рабочем пространстве. Проверьте поле event верхнего уровня, чтобы их различить:

eventОтправляется при
clickНажатии на короткую ссылку. Содержит объект click с данными запроса посетителя.
link.createdСоздании новой ссылки в рабочем пространстве.
link.updatedИзменении настроек ссылки. Срабатывает при каждом обновлении, включая автосохраняемые правки, поэтому вы можете получить несколько в одной сессии редактирования.
link.deletedУдалении ссылки. Объект link сохраняет slug и домен, которые он имел перед удалением.

Payload вебхука

Payload клика

При возникновении клика Linkly отправляет POST-запрос со следующим JSON payload:

{
  "event": "click",
  "timestamp": "2025-01-15T10:30:00Z",
  "link": {
    "id": 12345,
    "name": "My Campaign Link",
    "url": "https://example.com/landing-page",
    "full_url": "https://yourdomain.com/abc123",
    "domain": "yourdomain.com",
    "slug": "/abc123",
    "destination": "https://example.com/landing-page",
    "workspace_id": 1,
    "enabled": true,
    "cloaking": false,
    "forward_params": true,
    "block_bots": true,
    "public_analytics": false,
    "utm_source": "newsletter",
    "utm_medium": "email",
    "utm_campaign": "spring-sale",
    "og_title": "Special Offer",
    "og_description": "Check out our spring sale!",
    "rules": [
      {
        "what": "country",
        "matches": "US",
        "url": "https://example.com/us-landing"
      }
    ]
  },
  "click": {
    "id": "01KYPGEEPJSPR3S564QRBDGA1W",
    "country": "US",
    "is_eu_country": false,
    "platform": "desktop",
    "browser_name": "Chrome",
    "referer": "https://twitter.com/",
    "isp": "Comcast",
    "bot_name": null,
    "destination": "https://example.com/landing-page",
    "params": {
      "utm_source": "twitter"
    }
  }
}

Поля payload

Информация о событии

ПолеОписание
eventclick, link.created, link.updated или link.deleted
timestampВременная метка ISO 8601 клика
ПолеОписание
idУникальный идентификатор ссылки
nameПрозвище ссылки
urlИсходный URL назначения
full_urlURL короткой ссылки
domainПользовательский домен (если настроен)
slugПуть/slug URL
destinationФактическое назначение для этого клика (может отличаться от url, если применены правила)
workspace_idИдентификатор рабочего пространства
enabledАктивна ли ссылка
rulesМассив правил перенаправления (гео, устройство, ротатор)
utm_*UTM параметры, если настроены
og_*Настройки Open Graph, если настроены

Объект Click

ПолеОписание
idУникальный идентификатор этого клика, 26-символный ULID. Начальные символы кодируют время клика, поэтому id сортируются хронологически как простые строки
countryДвухбуквенный код страны (например, "US", "GB")
is_eu_countryПроисходил ли клик из ЕС
platformПлатформа устройства (desktop, ios, android и т. д.)
browser_nameНазвание браузера (Chrome, Safari, Firefox и т. д.)
refererURL-адрес источника (если доступно)
ispИнтернет-провайдер
bot_nameИдентификатор бота (null для человеческих кликов)
destinationФинальный URL-адрес назначения для этого клика
paramsПараметры запроса, переданные ссылке

Примечание о конфиденциальности: IP-адреса никогда не включаются в payload вебхуков.

Payload жизненного цикла ссылки

События link.created, link.updated и link.deleted имеют одну структуру. Объекта click нет — вы получаете event, timestamp и полный объект link:

{
  "event": "link.created",
  "timestamp": "2026-06-20T10:30:00Z",
  "link": {
    "id": 12345,
    "name": "My Campaign Link",
    "url": "https://example.com/landing-page",
    "full_url": "https://yourdomain.com/abc123",
    "domain": "yourdomain.com",
    "slug": "/abc123",
    "workspace_id": 1,
    "enabled": true,
    "rules": []
  }
}

Интеграции платформ автоматизации

Для более простой настройки без пользовательского кодирования используйте наши встроенные интеграции:

  • Интеграция Make - Платформа визуальной автоматизации с мгновенными триггерами кликов
  • Интеграция Zapier - Подключайте Linkly к тысячам приложений без кода

Обе интеграции используют вебхуки под капотом, но обрабатывают всю настройку автоматически.

Лучшие практики

Несколько вебхуков

Вы можете добавить несколько URL-адресов вебхуков (по одному в строку). Все URL-адреса получат один и тот же payload при возникновении клика.

Обработка ошибок

  • Вебхуки имеют принцип fire-and-forget - Linkly не повторяет неудачные доставки
  • Сбои вебхуков никогда не влияют на перенаправление - пользователи всегда достигают пункта назначения
  • Убедитесь, что конечная точка вебхука отвечает быстро (рекомендуется < 5 секунд)

Безопасность

  • Используйте HTTPS конечные точки для URL-адресов вебхуков
  • Проверяйте входящие запросы в обработчике вебхука
  • Рассмотрите добавление параметра secret в URL вебхука для проверки

Тестирование

  1. 1
    Установите URL вебхука, используя сервис типа webhook.site или RequestBin
  2. 2
    Нажмите на вашу ссылку
  3. 3
    Проверьте полученный payload
  4. 4
    После проверки переключитесь на производственный URL вебхука

Доступ к API

Вы также можете управлять вебхуками программно через API:

POST   /api/v1/link/:link_id/webhooks
DELETE /api/v1/link/:link_id/webhooks/:hook_id
GET    /api/v1/link/:link_id/webhooks

POST   /api/v1/workspace/:workspace_id/webhooks
DELETE /api/v1/workspace/:workspace_id/webhooks/:hook_id
GET    /api/v1/workspace/:workspace_id/webhooks

Дополнительные сведения см. в документации API.

Часто задаваемые вопросы о вебхуках

Какие события могут отправлять вебхуки?

Вебхуки срабатывают на четырех событиях, определяемых полем event в payload. Вы получаете click при нажатии на ссылку, а также link.created, link.updated и link.deleted при изменении ссылок. Каждый вебхук получает все типы событий в его области действия, поэтому ветвитесь по полю event для обработки каждого.

Почему мои вебхуки не срабатывают?

Убедитесь, что URL вебхука действителен и доступен, и что вебхуки сохранены на ссылке или рабочем пространстве. Для событий клика помните, что вебхуки срабатывают только при фактической записи клика - исключенные IP-адреса или пропущенные краулеры их не запустят.

Почему некоторые поля имеют значение null в payload вебхука?

Некоторые поля могут быть null, если информация была недоступна (например, нет referer), параметры конфиденциальности предотвратили сбор или клик был от бота (в этом случае bot_name будет заполнен).

Повторяет ли Linkly неудачные доставки вебхуков?

Нет. Вебхуки работают по принципу fire-and-forget. Неудачные доставки не повторяются, и Linkly не отслеживает статус доставки вебхуков. Запросы вебхуков имеют тайм-аут 5 секунд.

Поддерживает ли Linkly постбэки для отслеживания конверсий?

Нет. Вебхуки Linkly работают только в исходящем направлении и срабатывают при возникновении кликов. Мы не можем получать данные постбэков от партнерских сетей или платформ объявлений. Для отслеживания конверсий используйте встроенное отслеживание платформы назначения, передавайте ID клика через переадресацию параметров запроса или используйте нашу интеграцию BigQuery для связи данных о кликах с данными о конверсиях.

Использовать ли мне вебхуки или Make/Zapier?

Для большинства случаев автоматизации наши интеграции Make или Zapier проще в настройке. Они используют вебхуки под капотом, но обрабатывают всю конфигурацию автоматически. Используйте пользовательские вебхуки, когда вам нужно отправить данные в собственные системы или требуется больший контроль над интеграцией.

Могу ли я иметь вебхуки как на уровне ссылки, так и на уровне рабочего пространства?

Да. Если вы настроите вебхуки на обоих уровнях, оба будут срабатывать при нажатии на эту ссылку. Это полезно, если вам нужно вести рабочее пространство-широкое логирование плюс определенные действия для определенных ссылок.

Доступность в планах

Доступно на Business и выше

Сравнить планы →

Получите 100 коротких ссылок и отслеживайте 500 кликов в месяц бесплатно.