Save as PDF

Creating and Executing Webhooks for Responsive

Overview

Webhooks must be enabled prior to use. Contact your account manager, or accountmanagers@responsive.io, to enable it.

A webhook is an automated message sent from apps to a unique URL when a specified event occurs, enabling communication between two web applications. These user-defined callbacks over HTTP include a message or payload. The format is usually JSON and the request is done via an HTTP POST method.

With Responsive webhooks, you can send HTTP requests to a URL that you’ve configured whenever an event or action occurs in Responsive. Webhooks work with Responsive APIs to provide two-way communication between Responsive and other applications.

You want a notification sent to your custom application whenever a project is created in Responsive, and/or a notification sent whenever a Q&A pair is deleted from the Answer Library.

Select the applicable tab for your edition of Responsive.

  • Creating a Webhook

    To create a webhook, perform the following steps:

    1. Go to Organization Settings > Integration > Collaboration, then click Configure on the Webhook tile.
    2. Click Add Webhook.
    3. Enter the webhook’s details.
      • Name: The webhook’s name (required)
      • Description: A description of the webhook
      • URL: The destination of the messages sent by the webhook (required)
      • Optional Request Headers: The parameter name and parameter value for the authorization request headers. Click the plus icon to add more request headers.
        Click
        Hide to hide these fields.
      • Events: The events that will trigger a message to the specified destination URL (required).
        Note: Valid events are listed below.
      • Status: Click the toggle to make the webhook active and ready to be executed. You will still need to test it before it can be executed.
    4. Click Send Test Webhook to send a test event to the URL using the values in the Optional Request Header fields to provide authorization information.
      • If the test event is successful, a success toast message will be displayed.
      • If the test event fails, an error toast message will be displayed.
    5. Click Add.
    6. After the webhook has been added successfully, it will appear on the list of available webhooks. Click the Edit icon to edit the webhook, and the Trash icon to delete it, if necessary.
      Webhook_9.png

    Valid Webhook Events

    You can set up the following in Responsive as events that will trigger a corresponding webhook message.

    Event

    Description

    Section-Related Events:

    SECTION_COMPLETED

    Completing a section in a project triggers this event.

    Project-Related Events:

    PROJECT_CREATED

    Creating a project triggers this event.

    PROJECT_EDITED

    Editing project metadata triggers this event.

    PROJECT_COMPLETED

    Marking a project as complete triggers this event.

    PROJECT_ARCHIVED

    Archiving a project triggers this event.

    PROJECT_DELETED

    Moving a project to the trash or deleting it permanently triggers this event.

    Answer Library-Related Events:

    ANSWER_LIB_CREATED

    Saving a Q&A pair to the Answer Library or the first time triggers this event.

    ANSWER_LIB_UPDATED

    Changing a Q&A pair or publishing a pair in Answer Library Moderation triggers this event. Changing answers during Answer Library Moderation and Review also triggers this event.

    ANSWER_LIB_DELETED

    Deleting a Q&A pair triggers this event.

    Intake Related Events:

    INTAKE_CREATED

    Creating an Intake triggers this event.

    Executing a Webhook

    After an event occurs in the Responsive, the webhook will send a request with JSON callback to the URL which is configured at the time of creation.

    Each JSON callback contains the following:

    Response

    Description

    EVENT_ID

    EVENT_ID(String). Event ID will start with EVT- followed by unique ID.

    EVENT_TYPE

    EVENT_TYPE(String). Event that triggers the webhook.

    ENTITY_ID

    ENTITY_ID(Array[String]). List of entity IDs

    ENTITY_TYPE

    ENTITY_TYPE(String). Type of entity (SECTION, PROJECT, ANSWER_LIBRARY)

    PERFORMED_BY

    PERFORMED_BY(String). Email of the user who performed the event.

    PERFORMED_AT

    PERFORMED_AT(Date-Time). Date-Time of the event happened.

    Callbacks may have additional information, depending on the type of event associated with it.

    Sample Callback for a Test Event

    {
      "EVENT_ID": "EVT-60ae7adb1b3cb967a6450f9c",
      "EVENT_TYPE": "TEST",
      "PERFORMED_BY": "john@responsive.io",
      "PERFORMED_AT": "2021-05-26 12:44:11 PST"
    }

     

    Sample Callback for a Project-Related Event

    {
     "EVENT_ID": "EVT-60adfdb750b58a0c2d78bdd8",
     "EVENT_TYPE": "PROJECT_EDITED",
     "ENTITY_ID": [
       "5dd51ea63f3dad73ab0a344b"
     ],
     "ENTITY_TYPE": "PROJECT",
     "PERFORMED_BY": "john@responsive.io",
     "PERFORMED_AT": "2021-05-26 00:50:15 PDT"
    }

     

    Sample Callback for an Answer Library-Related Event

    {
     "EVENT_ID": "EVT-60adfdb750b58a0c1d78bed8",
     "EVENT_TYPE": "ANSWER_LIB_CREATED",
     "ENTITY_ID": [
       "5dd51ea63f3dad73ab0a344b",

        "5edc7dfe305d96661df0fc14"
     ],
     "ENTITY_TYPE": "ANSWER_LIBRARY",
     "PERFORMED_BY": "john@responsive.io",
     "PERFORMED_AT": "2021-05-26 00:52:15 PDT"
    }

     

    Sample Callback for a Intake-Related Event

    {
    "EVENT_ID": "EVT-60adfdb750b58a0c2d78bdd8",
    "EVENT_TYPE": "INTAKE_CREATED",
    "ENTITY_ID": [
    "5dd51ea63f3dad73ab0a344b"
    ],
    "ENTITY_TYPE": "INTAKE",
    "PERFORMED_BY": "abc@responsive.io",
    "PERFORMED_AT": "2023-03-26 00:50:15 PDT"
    }

  • Essentials features are subscription-based and may not be available for all users. Contact your account manager, or accountmanagers@responsive.io, for more details.

    Creating a Webhook

    To create a webhook, perform the following steps:

    1. Go to Organization Settings > Integration > Collaboration, then click Configure on the Webhook tile.
    2. Click Add Webhook.
    3. Enter the webhook’s details.
      • Name: The webhook’s name (required)
      • Description: A description of the webhook
      • URL: The destination of the messages sent by the webhook (required)
      • Optional Request Headers: The parameter name and parameter value for the authorization request headers. Click the plus icon to add more request headers.
        Click
        Hide to hide these fields.
      • Events: The events that will trigger a message to the specified destination URL (required).
        Note: Valid events are listed below.
      • Status: Click the toggle to make the webhook active and ready to be executed. You will still need to test it before it can be executed.
    4. Click Send Test Webhook to send a test event to the URL using the values in the Optional Request Header fields to provide authorization information.
      • If the test event is successful, a success toast message will be displayed.
      • If the test event fails, an error toast message will be displayed.
    5. Click Add.
    6. After the webhook has been added successfully, it will appear on the list of available webhooks. Click the Edit icon to edit the webhook, and the Trash icon to delete it, if necessary.
      Webhook_9.png

    Valid Webhook Events

    You can set up the following in Responsive as events that will trigger a corresponding webhook message.

    Event

    Description

    Section-Related Events:

    SECTION_COMPLETED

    Completing a section in a project triggers this event.

    Project-Related Events:

    PROJECT_CREATED

    Creating a project triggers this event.

    PROJECT_EDITED

    Editing project metadata triggers this event.

    PROJECT_COMPLETED

    Marking a project as complete triggers this event.

    PROJECT_ARCHIVED

    Archiving a project triggers this event.

    PROJECT_DELETED

    Moving a project to the trash or deleting it permanently triggers this event.

    Answer Library-Related Events:

    ANSWER_LIB_CREATED

    Saving a Q&A pair to the Answer Library or the first time triggers this event.

    ANSWER_LIB_UPDATED

    Changing a Q&A pair or publishing a pair in Answer Library Moderation triggers this event. Changing answers during Answer Library Moderation and Review also triggers this event.

    ANSWER_LIB_DELETED

    Deleting a Q&A pair triggers this event.

    Intake Related Events:

    INTAKE_CREATED

    Creating an Intake triggers this event.

    Executing a Webhook

    After an event occurs in the Responsive, the webhook will send a request with JSON callback to the URL which is configured at the time of creation.

    Each JSON callback contains the following:

    Response

    Description

    EVENT_ID

    EVENT_ID(String). Event ID will start with EVT- followed by unique ID.

    EVENT_TYPE

    EVENT_TYPE(String). Event that triggers the webhook.

    ENTITY_ID

    ENTITY_ID(Array[String]). List of entity IDs

    ENTITY_TYPE

    ENTITY_TYPE(String). Type of entity (SECTION, PROJECT, ANSWER_LIBRARY)

    PERFORMED_BY

    PERFORMED_BY(String). Email of the user who performed the event.

    PERFORMED_AT

    PERFORMED_AT(Date-Time). Date-Time of the event happened.

    Callbacks may have additional information, depending on the type of event associated with it.

    Sample Callback for a Test Event

    {
      "EVENT_ID": "EVT-60ae7adb1b3cb967a6450f9c",
      "EVENT_TYPE": "TEST",
      "PERFORMED_BY": "john@responsive.io",
      "PERFORMED_AT": "2021-05-26 12:44:11 PST"
    }

     

    Sample Callback for a Project-Related Event

    {
     "EVENT_ID": "EVT-60adfdb750b58a0c2d78bdd8",
     "EVENT_TYPE": "PROJECT_EDITED",
     "ENTITY_ID": [
       "5dd51ea63f3dad73ab0a344b"
     ],
     "ENTITY_TYPE": "PROJECT",
     "PERFORMED_BY": "john@responsive.io",
     "PERFORMED_AT": "2021-05-26 00:50:15 PDT"
    }

     

    Sample Callback for an Answer Library-Related Event

    {
     "EVENT_ID": "EVT-60adfdb750b58a0c1d78bed8",
     "EVENT_TYPE": "ANSWER_LIB_CREATED",
     "ENTITY_ID": [
       "5dd51ea63f3dad73ab0a344b",

        "5edc7dfe305d96661df0fc14"
     ],
     "ENTITY_TYPE": "ANSWER_LIBRARY",
     "PERFORMED_BY": "john@responsive.io",
     "PERFORMED_AT": "2021-05-26 00:52:15 PDT"
    }

     

    Sample Callback for a Intake-Related Event

    {
    "EVENT_ID": "EVT-60adfdb750b58a0c2d78bdd8",
    "EVENT_TYPE": "INTAKE_CREATED",
    "ENTITY_ID": [
    "5dd51ea63f3dad73ab0a344b"
    ],
    "ENTITY_TYPE": "INTAKE",
    "PERFORMED_BY": "abc@responsive.io",
    "PERFORMED_AT": "2023-03-26 00:50:15 PDT"
    }

Was this article helpful?

/