Endpoints

  • POST /webhooks - create a new webhook
  • GET /webhooks - list webhooks
  • GET /webhooks/{webhookId} - get details of a webhook by webhook id
  • DELETE /webhooks/{webhookId} - delete a webhook by webhook id

Webhook Object

  • id (string) - the unique identifier of the webhook
  • targetUrl (string) - the URL of the webhook endpoint on your server
  • sharedSecret (string) - a secret used to generate a signature for each request. Only returned when creating a webhook.
  • events (list of webhook events) - the list of webhook events enabled for this webhook
  • apiVersion (string) - Rise API Version used when sending the webhook event

Create Webhook

POST /webhooks

Request Parameters (JSON)

  • targetUrl (string, required)
  • events (list of events, required)
  • sharedSecret (string, optional)
  • apiVersion (string, optional) - Rise API Version to use for the webhook event. If not provided, will default to the Rise-API-Version header sent in the request, or, if that's not specified, the initial Rise API Version, 2020-07-16

Example Response

{ 
"id": "example-webhook-id",
"targetUrl": "https://example.com",
"events": ["course.completed"],
"sharedSecret": "the shared secret",
"apiVersion": "2020-07-16",
"url": "https://api.rise.com/webhooks/example-webhook-id"
}

Endpoint-specific Error Codes

  • code: 'duplicate_target_url' - cannot create webhook because the targetUrl is already in use by another webhook. A 409 response will be returned in this case.

List Webhooks

GET /webhooks

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 100 (defaults to 50)

Example Response

{ 
"webhooks": [
{
"id": "example-webhook-id",
"targetUrl": "https://example.com",
"events": ["course.completed"],
"apiVersion": "2020-07-16",
"url": "https://api.rise.com/webhooks/example-webhook-id"
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Retrieve Webhook by ID

GET /webhooks/{webhookId}

Example Response

{ 
"id": "example-webhook-id",
"targetUrl": "https://example.com",
"events": ["course.completed"],
"apiVersion": "2020-07-16",
"url": "https://api.rise.com/webhooks/example-webhook-id"
}

Endpoint-specific Error Codes

  • webhook_not_found - cannot retrieve webhook because the webhook doesn't exist

Delete Webhook by ID

DELETE /webhooks/{webhookId}

Success response

204 "No Content"

Endpoint-specific Error Codes

  • webhook_not_found - cannot delete webhook because the webhook doesn't exist
Did this answer your question?