Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If the changeVersion has been changed by another consumer since the GET request (#1 above), a 409 will be returned and the consumer will need to repeat the sequence again.

Event Notifications & Webooks

Webhooks

...

Notification Event Types

The allow applications to setup integrations which subscribe to certain YOUnite events. An API consumer integrates a webhook by following these steps:

  1. Create an URL endpoint where YOUnite notifications can be delivered.
    1. when an event occurs, a notification is triggered and an HTTP POST payload is sent to this URL endpoint.
  2. Register the URL endpoint with YOUnite and configure which events the consumer wants to subscribe to.

When a YOUnite subscribed event occurs, the consumer will receive an HTTP POST request and payload to the registered URL endpoint.

YOUnite Events

When registering a webhook, the consumer chooses which events they want to subscribe to. The list of subscribed events can be changed at anytime.  The following is list of event types that a subscriber can be notified of on a per zone (topic) basis.  Each time an event is triggered it publishes a new notification of a given event type  .  zone  basis:

EventEvent Type
Default ScopeAdditional Payload
A zone is created
ZONE
zone_
POSTALL
post
none
A zone is updated (including moved)
ZONE
zone_
PUT
update
ALLnone
A zone is deleted
ZONE_DELETEALLnone
A
zone
's thumbnail image is updated (TBD)ZONE_THUMBNAIL_PUTALLTBD
_delete

A data domain is created or a new version of

of the data domain has been created

DOMAIN_POSTALLTBD
domain_post

A data domain has been

created

updated

DOMAIN
domain_
PUTALL
update
TBD
A data domain has been deleted
DOMAIN
domain_
DELETE
delete
ALLTBD
An MDR has been created for a given data domain (TBD)
DOMAIN_NAME_DATA_POSTALLTBDTBD
mdr_post
An MDR has been updated in a given data domain (TBD)
DOMAIN_NAME_DATA_PUTALLTBD
mdr_put
An MDR has been deleted in a give data domain (TBD)
DOMAIN_NAME_DATA_DELETEALL
mdr_delete


Notification Event Response Body

The notification's JMS header s  response body includes the following:

keyvalue
descriptionA full description of the event - i.e. a full concatenation of the information described below for easy displaying.
changeVersionThe resources change version.
createdDateThe date the resource was created.
NameThe resource name
message-idThe JMS message ID.
dateCreatedUnix timestamp of when the event notification was sent

uuid

Zone uuid of target resource
eventTypeOne of the above described "Notification Event Types"
originatorNameThe name of the zone that generated the event.
originatorUuid

The UUID of the zone that generated the event.

timestampThe time the notification was created.
actionsSome PUT & PATCH commands provide multiple actions and this list contains a description of what actions were performed.
optionalOther key/values that are appropriate for the notification type

Requesting Notification Log

A client can make a request to get the log history for all notifications sent to their zone.  The user provides their zone and a from and to date.


Message Broker


...

Internal Errors

It is always recommended that YOUnite is deployed in a highly-available configuration. Not only should YOUnite be highly-available but so should the underlying services that it depends upon e.g. database and message broker.  If an API request is made to the YOUnite API service and one of the underlying services is  experiencing a catastrophic failure, the  YOUnite API service will return a 500 to the API consumer and the API consumer will have to retry their request.