SurveyMonkey добавляет вебхуки

У нас сложилось впечатление, что мы можем добавить webhook/url для каждого получателя, которого мы добавили, используя Receivers/Bulk. Итак, если бы наши получатели выглядели так, как показано ниже, мы могли бы просто добавить данные веб-перехватчика с каждой из записей. Посмотрев документы некоторое время, похоже, что это не так.:

{
    "contacts" :[{
        "email":"[email protected]",
        "first_name": "John",
        "last_name": "Doe",
        "custom_fields": {
            "1": "2428156"
        }
    },
    {
        "email":"[email protected]",
        "first_name": "Somebody",
        "last_name": "Else",
        "custom_fields": {
            "1": "2428143"
        }
    }]
}

Кто-нибудь знает, возможно ли это? Если нет, то как все остальные отправляют получателей массово и каждый из них в этом списке переходит к правильному URL-адресу веб-перехватчика для анализа ответов?

Заранее спасибо, Ура


person whoopah    schedule 20.12.2016    source источник


Ответы (1)


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

POST /v3/webhooks
{
    "name": "Test Webhook",
    "event_type": "response_completed",
    "object_type": "survey",
    "object_ids": ["<survey_id>"],
    "subscription_url": "http://example.com/mywebhook"
}

Затем для каждого завершенного сообщения для указанных опросов вы получите уведомление с телом, подобным этому, на ваш адрес подписки:

{
    "respondent_id": "<response_id>",
    "recipient_id": "<recipient_id>",
    "survey_id": "<survey_id>",
    "user_id": "<user_id>",
    "collector_id": "<collector_id>"
}

recipient_id сообщит вам, для какого получателя был этот конкретный ответ, который вы можете использовать для любого варианта использования. Если вам нужна дополнительная информация, вы можете сделать запрос на получение детали ответа

GET /v3/surveys/<survey_id>/responses/<response_id>/details

Или не включайте /details, если вам не нужны ответы, вам нужны только метаданные для этого ответа.

Или, если вам нужна более подробная информация об этом получателе, а не ответы, вы можете получить данные получателя

GET /v3/collectors/<collector_id>/recipients/<recipient_id>

Что дает вам информацию, которую вы, возможно, сохранили в extra_fields или еще где-то.

person General Kandalaft    schedule 20.12.2016
comment
Спасибо за подробный ответ, действительно помогает. Итак, я так понимаю, мы можем создать веб-хук с начальным идентификатором или идентификаторами опроса, а затем, когда нам нужно, просто сделать патч для API, чтобы добавить идентификаторы опроса? - person whoopah; 20.12.2016
comment
Да, точно. Вы также можете прослушать object_type из collector и дать список идентификаторов коллекционеров в object_ids, если хотите. Но да, если вы хотите слушать больше опросов/сборщиков, просто исправьте тот же список идентификаторов, которые вы хотите слушать сейчас. - person General Kandalaft; 20.12.2016
comment
Потрясающий. спасибо.... У меня есть еще один вопрос относительно вебхуков. Я создаю его сейчас, и просто для проверки я отправляю точно (на самом деле копию / вставку) того, что используется в качестве примера в Документах API, и продолжаю получать этот ответ (который на самом деле не говорит, что не так): {ошибка : {документы: developer.surveymonkey.com/api/v3/#error-codes, сообщение: недопустимая схема в предоставленном теле., идентификатор: 1002, имя: неверный запрос, http_status_code: 400}} - person whoopah; 20.12.2016
comment
Вы копируете/вставляете ответ из примера? Он включает в себя такие ключи, как id и href, которые вам не разрешено отправлять при создании. Вы также получите сообщение об ошибке (более конкретное), если вы не являетесь владельцем предоставленных вами идентификаторов опроса/коллектора. - person General Kandalaft; 20.12.2016
comment
хороший вопрос, но нет, я копирую из примера запроса и заменяю идентификаторы одним из наших идентификаторов опроса, а URL-адрес подписки - одним из наших (который существует): {name: My Webhook, event_type: ответ завершен, object_type: опрос, object_id:[1234,5678],subscription_url:surveymonkey.com/webhook_reciever} - person whoopah; 20.12.2016
comment
Я думаю, что ваш URL-адрес подписки не проходит проверку схемы на наличие правильного URL-адреса, попробуйте добавить https://, если у вас его еще нет, в противном случае все выглядит нормально. - person General Kandalaft; 20.12.2016
comment
упс, я не понял этого при копировании/вставке, которое я сделал при добавлении комментария, но он там есть. Я сделал это с URL-адресом в примере документации по API и то же самое - person whoopah; 20.12.2016
comment
Ах, в документации есть ответ, заполненный пробелом, должен быть response_completed для типа события, когда я переключился, все прошло нормально. - person General Kandalaft; 20.12.2016