Перейти к основному содержимому
Опубликовано: 

Как создать вебхук-ссылку для вашей системы

Если в списке готовых интеграций нет вашей системы, вы можете самостоятельно настроить передачу контактов и других данных о клиентах из вашей системы в Sendsay — без ручной загрузки файлов, с помощью специальной webhook-ссылки.

Вебхук-ссылка позволит сопоставить данные из JSON-файла с нужными полями анкет. В случае если вам необходимо передавать данные о событиях в рассылках, вы также можете делать это через вебхуки.

Важно

Этот способ передачи данных в Sendsay возможен, только если ваша система умеет отправлять вебхуки POST-запросом с передачей данных в JSON-файле.

Рассмотрим настройку передачи информации о клиентах на примере 4 основных полей — email-адреса, имени, фамилии и отчества клиента. Следуя инструкции, вы поймёте, как передавать в Sendsay другие поля:

  1. Получите API-ключ, скопируйте его и сохраните в надёжном месте — в целях безопасности ключ отображается только один раз при генерации.

  2. Определите, какие данные о клиентах вы хотите загружать в Sendsay. В Sendsay подписчики не могут существовать без email-адресов, поэтому email — необходимое поле для корректной работы передачи данных.

  3. Теперь необходимо получить пример JSON-файла, который ваша система будет передавать в Sendsay. Для этого перейдите на webhook.site и скопируйте адрес вашей тестовой webhook-ссылки в поле Your Unique URL:

    Link example

  4. В своей внешней системе настройте отправку вебхука в формате POST-запроса с JSON-файлом — при срабатывании нужного события (например, при создании контакта, заявки или сделки). Затем вставьте скопированный на предыдущем шаге URL-адрес в поле адреса вебхука в вашей системе.

  5. Инициируйте событие для передачи данных — например, создайте контакт, заявку или сделку.

  6. Вернитесь на webhook.site. Если в вашей системе всё сработало корректно, то в левой части вы увидите запрос, а в разделе Raw Content — содержимое JSON-файла, который прислала ваша система:

    Link example

    Как видно, в нашем примере система передала email, имя, фамилию и отчество клиента в формате JSON.

  7. При необходимости создайте нужные поля в анкете Sendsay — чтобы данные из JSON-файла передавались в эти поля.

    Для создания вебхук-ссылки нам понадобятся коды тех полей, куда необходимо записывать данные, передаваемые из вашей системы. Посмотреть коды можно в разделе Подписчики → Анкеты:

    Link example

    Например, для поля Имя отображается код [% anketa.base.firstName %], где base.firstName — указывает на поле Имя в базовой анкете.

    Коды полей в нашем примере:

    • Имяbase.firstName,
    • Фамилияbase.lastName,
    • Отчествоbase.middleName,
    • Email-адресmember.email, это поле хранится в системной анкете.
  8. Определите коды передаваемых полей из вашей внешней системы. Для этого вернитесь к JSON-файлу, который вы получили на webhook.site. В нашем примере это:

    {
    "customer": {
    "firstName": "Иван",
    "lastName": "Петров",
    "patronymic": "Сергеевич",
    "email": "example@mail.ru"
    }
    }

    Здесь видим такую структуру данных: customer → имя поля → значение, в вашей системе структура может быть сложнее или проще. Выпишите коды всех значений из JSON файла. В нашем примере будет такой набор:

    • customer.firstName,
    • customer.LastName,
    • customer.patronymic,
    • customer.email.

    Некоторые системы отправляют данные в виде объектов массива, каждый из которых содержит набор полей. Например:

    {
    "client": {
    "custom_fields": [
    {
    "id": 29249,
    "name": "Фамилия",
    "value": "Петров"
    },
    {
    "id": 29250,
    "name": "Отчество",
    "value": "Сергеевич"
    }
    ]
    }
    }

    Здесь поля Фамилия и Отчество являются элементами массива custom_fields, который, в свою очередь, находится в объекте client. У элементов массива нет собственных ключей, но есть порядковый номер, — и он жёстко определён. Нумерация элементов массива всегда начинается с 0. Чтобы получить значения фамилии и отчества, надо пройти по такому пути:

    • Фамилия: client → нулевой элемент массива custom_fields → value
    • Отчество: client → первый элемент массива custom_fields → value

    Значит, коды полей, в которых хранятся значения фамилии и отчества, будут следующими:

    • Фамилия: client.custom_fields[0].value
    • Отчество: client.custom_fields[1].value
  9. Теперь необходимо создать специальную вебхук-ссылку, которая позволит переместить данные из JSON-файла в нужные поля анкет в Sendsay. Формат ссылки на примере передачи только email-адреса:

    https://be.sendsay.ru/backend/api/<API-КЛЮЧ>/member.set/email/-/КОД-ПОЛЯ-В-SENDSAY,set.copy,КОД-ПОЛЯ-В-JSON

    где:

    • <API-КЛЮЧ> — ваш ключ, который вы сгенерировали на шаге 1,
    • КОД-ПОЛЯ-В-SENDSAY — код поля Sendsay, который вы определили на шаге 7,
    • set.copy — команда, которая буквально говорит системе «помести данные из полей JSON-файла в поля Sendsay»,
    • КОД-ПОЛЯ-В-JSON — код передаваемого поля в JSON, который вы определили на шаге 8.

    В результате готовая ссылка в нашем примере будет иметь следующий вид:

    https://be.sendsay.ru/backend/api/19mP7ERf6VLDvQls-RJ9Qra9ff2g3h8g3HT289fhu2mo3rPZrdW_U6y45ZWTixQU4et6qm97LktmbBke/member.set/email/-/member.email,set.copy,customer.email

    Если вы хотите передавать и другие поля, повторите команду /<КОД ПОЛЯ В SENDSAY>set.copy<КОД ПОЛЯ В JSON>/. Команду для каждого поля данных необходимо отделить слэшем /.

    В нашем примере с передачей полей Email, Имя, Фамилия и Отчество итоговая ссылка будет выглядядеть так:

    https://be.sendsay.ru/backend/api/19mP7ERf6VLDvQls-RJ9Qra9ff2g3h8g3HT2u8odW_U6y45ZWTixQU4et6qm97LktmbBke/member.set/email/-/member.email,set.copy,customer.email/base.firstName,set.copy,customer.firstName/base.lastName,set.copy,customer.lastName/base.middleName,set.copy,customer.patronymic

    Если данные в JSON-формате будут переданы точно как описано в этом примере, в Sendsay после срабатывания указанного события появится новый подписчик с email-адресом, именем, фамилией и отчеством, — которые запишутся в соответствующие поля анкет.

    Создайте свою ссылку по этой инструкции.

  10. Вставьте получившуюся ссылку в настройках вебхука в вашей системе.

На этом настройка интеграции завершена. Чтобы протестировать отправку данных, инициируйте событие, которое запустит передачу данных из вашей системы в Sendsay. Затем перейдите в Sendsay и удостоверьтесь, что в базе контактов появится подписчик с соответствующими данными.

Читайте также:
Как передавать данные о событиях в рассылках