API documentation

Welcome to the API of Omnidots.

In the documentation some parameters or paths can be substituted. These are shown with curly brackets like so: /something/{replace}

In the examples repetition or more data is denoted with 4 dots ("....").

Tokens / authorization

All API end points require a token for authorization. Tokens can be managed from the token list page.

For all our API endpoints the token needs to be passed as: GET /api/v1/{endpoint}?token={token}

For additional details about tokens please see the token endpoint For compactness the token is omitted in the parameters list

Responses

All endpoints reply with a dictionary as JSON. If the request failed the reply with look like this: { "ok": false, "message": "{reason for failure}" }

If the request was successful then the reply will be with "ok" on "true". Any additional information can be supplied by the endpoint. Example: { "ok": true, .... }

If the request had missing parameters then "ok" will be "false" and a "help" is given. { "ok": false, "help": "http://honeycomb.omnidots.com/api/doc/{accessed_api}" }

If some parameter was wrong, for example passing a text instead of a number. The following response can be expected: { "ok": false, "message": "Invalid parameters given" }

An internal server error might happen as well. You can expect the status code to be 500 in that case. { "ok": false, "message": "Interval server error" }

Parameters

Some end points have parameters. These can be passed with the url as just like normal HTTP GET variables: ?param1=1&param2=2&param1=3

Note that "param1" is repeated in the above example. This will be interpreted as a list. This behaves just like normal HTTP GET variables


Available API endpoints:

URL Description
/api/v1/user/authenticate Athenticate user and return a temperary API token.
/api/v1/user/account Get user account by API token.
/api/v1/token_details Tests the token and returns account info if the token is valid.
/api/v1/list_measuring_points Gives a list of measuring points that this token can access.
/api/v1/configure_measuring_point Configure a measuring point.
/api/v1/list_sensors Gives a list of sensors that this token can access.
/api/v1/get_peak_records Fetch peak particle velocity/acceleration records for a given measuring point.
/api/v1/get_vdv_records Fetch VDV records for a given measuring point.
/api/v1/get_veff_records Fetch Veff/KB records for a given measuring point.
/api/v1/get_traces_list Get a list of traces for a given time range.
/api/v1/get_traces Get detailed traces for a given time range.