This document describes the RESTful web service interface for the Event Hub.

It is designed for those interested in:

  • developing for platforms not described in the sample code section,
  • understanding the API features in more detail, and possibly
  • contributing enhancements to the API.

Return Codes and Error Handling

Return Code Description
200 Successful Operation
204 No Events in the Queue
207 One of your Raise Requests failed - see return body for details
400 Bad Request - Unable to interpret body of the message
401 Unauthorized - Failure to authenticate
403 Forbidden
404

Resource Not Found

405 Method Not Allowed
409 Conflict / Duplicate Key
500 Internal System Error
503 Not Implemented

Standard HTTP Headers

Field Value
Accept text/xml
  text/json
Content-Type

application/xml

  application/json

Base URL

https://api.byu.edu/domains/eventhub/1.0.0

API Store URL

https://api.byu.edu/store/apis/info?name=BYUEventHub&version=1.0.0&provider=BYU%2Fmdh26

 

Authentication Methods

Method

Description

OAuth 2.0 All calls made to the EventHub must use one of the supported OAuth 2.0 flows. More information about the OAuth flows can be found here.

Archive Resource

URL Structure HTTP Method Description
/archives Get Retrieve Archives

Domain Resource

URL Structure HTTP Method Description
/domains/{domain} Delete Delete Domain
/domains Get List Domains
/domains Post Define a new Domain

Entity Resource

URL Structure HTTP Method Description
/entities/{domain}/{entity} Delete Delete an Entity
/entities Get List Entities
/entities Post Define a new Entity

Event Type Resource

URL Structure HTTP Method Description
/event-types/{domain}/{entity}/{event_type} Delete Delete an Event Type
/event-types?{search_criteria} Get List Event Types
/event-types Post Define an Event Type
/event-types/{domain}/{entity}/{event_type} Put Update an Event Type

Event Resource

URL Structure HTTP Method Description
/events?{count=} Get Retrieve next set of Events
/events/{eventID} Put Acknowledge a set of Events
/events Post Raise one or more Events

Subscription Resource

URL Structure HTTP Method Description
/subscriptions/{domain}/{entity}/{event_type} Delete Delete one of my Subscriptions
/subscriptions?{search_criteria} Get List Subscriptions based on search criteria
/subscriptions Post Subscribe to an Event Type

Summary Resource

URL Structure HTTP Method Description
/summaries Get Retrieve Usage Summaries

Webhook Resource

URL Structure HTTP Method Description
/webhooks Delete Delete my Webhook's URL and settings
/webhooks?{search_criteria} Get Search Webhooks
/webhooks Post Register my Webhook's URL and set my options
/webhooks Put Update my Webhook's URL or modify my options