Contact support@responsive.io to access this feature or request enablement.
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 Content Library.
To create a webhook, perform the following steps:
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. |
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.
{
"EVENT_ID": "EVT-60ae7adb1b3cb967a6450f9c",
"EVENT_TYPE": "TEST",
"PERFORMED_BY": "john@responsive.io",
"PERFORMED_AT": "2021-05-26 12:44:11 PST"
}
{
"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"
}
{
"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"
}
{
"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"
}