Universal Event Web Services

Overview

Universal Controller supports the following RESTful-based web service for Universal Events.

Formatting specifications for the web service, including details about parameter requirements, are provided.

Authorization to publish or push a Universal Event is assigned by the Universal Event Create permission, or by the ops_admin role.

Note

When publishing or pushing Universal Events through the Web Service API, take into consideration both Universal Controller server and Database server sizings.

Publish Universal Event 


Description
URIhttp://host_name/uc/resources/universalevent/publish
DescriptionPublsh a global Universal Event.

HTTP Method

POST

Example URI

http://localhost:8080/uc/resources/universalevent/publish
AuthenticationHTTP Basic
Consumes Content-Typeapplication/xml, application/json
Produces Content-Typetext/plain
Example Responses
  • Status 200

    • Universal Event "{eventname}" published.

  • Status 400

    • Invalid Time To Live. Value must be non-negative or empty.

    • Universal Event attributes unknown for Universal Event Template "{eventname}".

    • Universal Event attribute name required.

    • Universal Event attribute "{attributename}" duplicated.

    • Universal Event attribute "{attributename}" unknown for Universal Event Template "{eventname}".

    • Universal Event attribute value "{attributevalue}" for attribute "{attributename}" is not a valid integer.

    • Universal Event attribute value "{attributevalue}" for attribute "{attributename}" is not a valid float.

  • Status 403

    • Operation prohibited due to security constraints.

  • Status 404

    • Universal Event Template "{eventname}" not found.

    • A universal template with id "{templateid}" does not exist.

  • Status 500

    • Unexpected request failure. See log(s) for more details.


Publish Universal Event: XML and JSON Example Request

XML Request

JSON Request

 XML
<?xml version="1.0" encoding="UTF-8" ?>
<universalEvent>
  <name>ExampleEvent</name>
  <businessServices>
    <businessService>BusinessServiceName1</businessService>
    <businessService>BusinessServiceName2</businessService>
  </businessServices>
  <ttl>60</ttl>
  <attributes>
    <attribute>
      <name>example_attribute1</name>
      <value>Value1</value>
    </attribute>
    <attribute>
      <name>example_attribute2</name>
      <value>Value2</value>
    </attribute>
  </attributes>
</universalEvent>
 JSON
{
   "name": "ExampleEvent",
   "businessServices": [
      "BusinessServiceName1",
      "BusinessServiceName2"
    ],
    "ttl": 60,
    "attributes": [
       {
          "name": "example_attribute1",
          "value": "Value1"
       },
       {
          "name": "example_attribute2",
          "value": "Value2"
       }
    ]
}

Push Universal Event 

The push endpoint provides an Inbound Webhook endpoint for third party Webhook integration with Universal Events.

  • The request body is captured as the payload attribute.

  • ttl and businessService (multi-value) query parameters specify the Universal Event TTL and Member of Business Services, respectively.

  • All other query parameters are captured as attributes with the exception of an access_token query parameter.

    • Any character in a query parameter name that is not a letter or digit is converted to an underscore (_).

  • All headers are captured as attributes with the exception of authorization and connection.

    • Any character in a header name that is not a letter or digit is converted to an underscore (_).


Description

URL

http://host_name/uc/resources/universalevent/push/${eventName}

HTTP Method

POST

Description

Publish a global Universal Event.

Consumes Content-Type

application/xml, application/json, text/plain

Produces Content-Type

text/plain

Example URI

http://localhost:8080/uc/resources/universalevent/push/MyUniversalEvent?ttl=0&businessService=A&businessService=B&query_parameter1=value1

Example Responses

  • Status 200

    • Universal Event "{eventname}" published.

  • Status 400

    • Invalid Time To Live. Value must be non-negative or empty.

    • Universal Event Template "{eventname}" not found.

  • Status 403

    • Operation prohibited due to security constraints.

  • Status 404

    • Universal Event Template "{eventname}" not found.

  • Status 500

    • Unexpected request failure. See log(s) for more details.