Versions Compared

Key

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

xit

Table of Contents

General

opEvents versions 2.0 and newer provide a REST-style API for limited event management, e.g. creation and retrieval of single events, and lookup of events.
This version also comes with a simple client (both source and compiled), /usr/local/omk/bin/create_remote_event.pl (and .exe).

...

The body of the request must be a valid JSON document, containing the desired event properties as a hash. See opEvents Normalised Event Properties for a description of all the properties. Some properties (e.g. date, time) can be omitted and will be filled in automatically. As an absolute minimum, a node or a host property, and an event property must be present. If (and only if!) node is not present, then opEvents looks up host and attempts to find the canonical node for the hostname or IP address from the host property  - this heuristic is described in more detail here. The resulting node must be known to opEvents and must not be disabled for opEvents.

...

HTTP StatusHTTP HeadersBodyDescription
201LocationJSON hash object with success and id propertiesThe success property is set to 1 and only if the request was successful.
The id property is the new event's ID (but see the Limitations section below)
The Location header contains the complete URL for retrieving the newly created event.

...

HTTP StatusBodyDescription
401N/AYou are not authenticated.
404N/AYou are authenticated but not authorised to create events in opEvents.
400JSON hash object with  success being 0  and an error property.The error property contains an explanation
of what went wrong with your request, e.g. why the parameters were considered invalid.

...

GET of /events for Event Listing

GET /omk/opEvents/events

If your GET call provides an Accept header indicating JSON, or if you use /events.json as URI, then opEvents will look for matching events and return their properties in the form of a JSON object, an array of hashesevents. Extra query parameters can be used to narrow down the listing or search for particular events only; without  parameters you will get all events of the last two hours.

...

HTTP StatusBodyDescription
200JSON array of hashesobjectsEach array element is a hash of JSON object with the raw properties of the event in question.

...

If your GET call provides an Accept header indicating JSON, or if you use /events/<eventid>.json as URI, then the event will be looked up and all properties will be returned in the form of a JSON hashobject.

Successful Response

HTTP StatusBody
200JSON hash object with all known event properties.

...

HTTP StatusBodyDescription
401N/AYou are not authenticated.
404N/AYou are authenticated but not authorised to view events in opEvents.
404JSON hash object with an error property.

The error property contains an explanation of what went wrong
with your request, e.g. if you request a non-existent event.

...