Как настроить передачу событий во внешние сервисы?

В статье описано как настроить передачу данных из Aplaut во внешние системы, например системы лояльности

Мы можем оповестить вашу внешнюю систему о написании отзыва, публикации или бане, а также по другим событиям и/или другим типам контента, отправив данные в вебхуке. Например, для начисления бонусов за отзыв, успешно прошедший модерацию.

Для настройки этого нам необходимо:

  1. Дать нам URL, на который нужно отправлять вебхуки.
  2. Если установлена защита по IP, добавить наши IP в список разрешенных, предварительно уточнив их у своего менеджера или в чате технической поддержки.
  3. Сообщить на какие события и по какому типу контента отправлять вебхуки.

Пример вебхука для отзыва (формат JSON):

{   
"id": "613f59762f42f8001932b595", (тип — string (ID отзыва))   
"created_at": "2021-09-13T17:00:22.176+03:00",   
"updated_at": "2021-09-13T17:00:22.176+03:00",   
"context_type": "product",   
"external_id": null,   
"rating": 5.0,   
"rating_details": [
{
"label": "Качество"
"name": "quality"
"value": 5
}
],   
"author_details": [     
{       
"label": "Email:",       
"name": "email",       
"value": "test@test.com"     
}
],   
"lang": "ru",   
"body": "Отличные саморез для работы с деревом",   
"pros": null,   
"cons": null,   
"published_at": null,   
"imported_at": "2021-09-13T17:00:22.151+03:00",   
"author_name": "Константин",   
"author_email": null,   
"origin": "omnibox",   
"syndication_source": null,   
"state": "published”,   
"product_id": "5ac6c4514b25650007dfbb7b",   
"photos": ["https://yoursite.ru/picture1.png","https://yoursite.ru/picture2.png"],
"videos":["https://yoursite.ru/video1.mp4","https://yoursite.ru/video2.mp4"],   
"tags": ["Тег_1", "Тег_2", "Тег_3"],   
"recommended": true,   
"custom_attributes": { "submitted_product_id": "1234567",  "custom_attribute_1": "qwerty" },
"location_name": "Санкт-Петербург",   
"likes": 0,   
"dislikes": 0,   
"order_number": null,   
"custom_source": null,   
"custom_medium": null,   
"custom_campaign": null,   
"location": {     
"continent_code": "EU",     
"continent": "Европа",     
"country_code": "RU",     
"country": "Россия",     
"city": "Санкт-Петербург",     
"postal_code": "190807",     
"latitude": 59.8981,     
"longitude": 30.2619,     
"time_zone": "Europe/Moscow",     
"client_ip": "5.18.171.189"   },   
"comments": [
{
"id":"66727839418074001669e0c3",
"commentable_id":"667277cfed85740019141206",
"commentable_type":"Review",
"text":"Спасибо за отзыв!",
"author_name":"Имя",
"author_email":"yourname@yourmail.ru",
"author_type":"User",
"state":"published",
"lang":"ru"
}
],
"product": {     
"name": "Саморезы по дереву 4.0x40 мм потайная головка конструкционный (500 шт.)",     
"url": "https://yoursite.ru/",     
"external_id": "11111111", (тип — string (Внешний ID товара (offer.id в YML файле)))     
"alias": null,     
"group_id": null,     
"category_name": "Саморезы (шурупы) по дереву конструкционные",     
"brand_name": null,     
"description": "Предназначены для монтажа деревянных конструкций из цельной и срощенной древесины между собой, а так же металлических конструкций (например: уголки крепежные, пластины, металлический профиль) к основанию из цельной или срощенной древесины. Шурупы имеют потайную головку, шлиц в форме шестигранной звезды TORX Т20, неполную крупную резьбу, острый с ребрами наконечник, который предотвращает раскалывание древесины. Не требуют предварительного засверливания.nИзготовлены из стали, имеют желтопассивированное защитное покрытие.nnТехнические характеристики:nДиаметр шурупа: 4 мм.nДлина шурупа: 40 мм.nДлина резьбы: 24 мм.nПроизводитель: Тайвань.",     
"recommended_product_ids": [],     
"custom_attributes": {},     
"reviews_count": 15,     
"questions_count": 0,     
"published_group_reviews_count": 13,     
"published_group_questions_count": 0,     
"rating": 3.25,     
"rating_details": [],     
"recommended": 53.84615384615385,     
"created_at": "2018-04-06T03:50:25.367+03:00",     
"updated_at": "2021-09-13T07:37:43.112+03:00"
}
}

Типы контента и события, на которые можно настроить отправку вебхука:

  1. Отзыв:
    1. Бан = ban_review
    2. Обновление = update_review 
    3. Обновление тегов = update_review_tags 
    4. Публикация = publish_review 
    5. Создание =  create_review 
    6. Удаление = destroy_review 
    7. Удержание = held_review
  2. Комментарий к отзыву:
    1. Создание = create_comment
    2. Обновление = update_comment
    3. Удаление = destroy_comment
  3. Вопрос:
    1. Создание = create_question
    2. Обновление = update_question
    3. Удаление = destroy_question
  4. Ответ на опрос:
    1. Создание = create_survey_response
    2. Обновление тегов = update_survey_response_tags
  5. Ответ на вопрос:
    1. Создание = create_answer
    2. Обновление = update_answer
    3. Удаление = destroy_answer
  6. Диалог:
    1. Создание = create_conversation

Примечания.

  • В вебхуках не предусмотрены дополнительные фильтры, а также не настраивается содержание ответа, всегда отправляются все данные, содержащиеся в определенном типе контента;
  • Если в ответ на отправку вебхука мы получаем ошибку, он отправится снова еще несколько раз;
  • Один вебхук можно настроить на несколько событий;
  • Ответ на успешный запрос мы не логируем (логируются только ошибки).
👆 На этом пока всё