What are Webhooks?

Document created by Renee Carney Administrator on Sep 27, 2016Last modified by jordan on Oct 4, 2016
Version 4Show Document
  • View in full screen mode

Overview

Bridge now uses webhooks to provide other applications with real-time information. Webhooks are similar to APIs in that they send data from the app to a third party application. However, webhooks let you skip a step. With most APIs, there is a request for data followed by a response. With webhooks, data is automatically sent when there is new data to send. This makes webhooks much more efficient for both Bridge and you.

 

Currently, a webhook must be configured by a Bridge Support user. You can work with your Implementation Consultant, Customer Success Manager, or a Bridge Support User to set up the notifications that you need.

 

 

A webhook consists of the following elements:

    • Name: This is only used for identifying the webhook. There are no restrictions on what the name can be. We recommend giving it a name that helps you remember what the webhook does and what tools or users are using it.
    • Destination URL: This is the location where Bridge will send the payload data. Payload data is simply the requested information in a message. The destination URL will need to have a way to receive the message and will need to be correctly configured to process the JSON body that will be sent to it.
    • Bearer Token: This is simple method for knowing that messages are coming from Bridge. Each individual webhook can be configured with a secret token. This secret token  will be included in the header of the messages. As with the webhooks name, there are no restrictions on what the secret token can be.
    • HMAC Secret: In cases where the message needs to be authenticated, a shared secret key can be provided. This key will be used to produce an HMAC, or message signature, that will be used to verify the message was sent by Bridge and has not been tampered with during delivery. This feature should be used only if you are are already aware of HMAC.

 

 

Steps for Configuration

Once the name, destination, and tokens have been specified, you can begin configuring your webhook. Configuration of the webhook includes choosing the resources and events you would like to be sent to the Destination URL. Resources are the objects where changes occur, such as users and courses. Events are the type of changes that are made to those objects, such as creation and deletion. You can select multiple resources to be sent to one Destination URL. Additionally, multiple resources events can also be sent to one Destination URL. For example, you can request information about course creation, course updates, and live training creation be sent to the same Destination URL. You can select as many or as few events as you would like.

 

 

The following events are available for each resource:

 

ResourceEventPayload Format
UsersCreateUpdateDeleteUser Object:
  • id
  • uid
  • first_name
  • last_name
  • email
  • roles
  • name
EnrollmentsCreateUpdateDeleteCompleteCourse Object:
  • id
  • Title
Learner Object:
  • id
  • email
  • uid
  • first_name
  • last_name
Enrollment info:
  • id
  • state
  • score
  • end_at (due date)
  • completed_at
  • attempts_count
  • required
  • sources_count
CoursesCreateUpdateDeleteCourse Object:
  • id
  • estimated_time
  • passing_threshold
  • title
  • is_published
  • has_certificate
  • program_ids
  • external_status
  • course_type
  • enrollments_count
  • tags
  • is_library_item
Author Object:
  • id
  • email
  • first_name
  • last_name
Live TrainingsCreateUpdateDeleteLive-training object:
  • id
  • title
  • author_id
  • description
  • sessions_count
  • enrollments_count
Sessions object:
  • id
  • start_at
  • end_at
  • location
  • seats
  • registered_count
  • concluded_at
Author object:
  • id
  • email
  • first_name
  • last_name
Live Training RegistrationsCreateUpdateDeleteRegistration Object:
  • id
  • live_course_session_id
  • name
  • present_at
ProgramsCreateUpdateDeleteProgram object:
  • id
  • title
  • is_published
  • assignment_period
  • course_count
  • Course objects
  • id
  • title

 

 

 


2 people found this helpful

Attachments

    Outcomes