Skip to content
Jorge Silva edited this page Jul 15, 2013 · 9 revisions

This page details the specifications for the RESTful API as of June 2013.

Definitions

  • Pattern (raw observation): list of access points with signal strength level as seen by the client device. Refer to BSSID and RSSI.
  • Fingerprint: The normalized representation of a Pattern used by the tagin! engine to retrieve URNs and compare indoor locations.
  • URN (Unique Resource Name): the unique identifier (string) generated by the tagin! engine. A URN is always associated with a Fingerprint that represents all observed neighbors (i.e., 'Fingerprint centroid'). When referring to the server, we are talking about the global URNs. In contrast, URNs generated locally by the client device are never sent/stored to/on the server.
  • Fingerprint centroid: Any fingerprint that is stored on the server AND associated to a URN (because it represents a collection of neighbouring fingerprints that have been 'collapsed' into it by the tagin! engine).

POST (Write) Requests

Endpoint Function Payload Access Returns
~/patterns Add the given observed Pattern to the engine Pattern public URN

GET (Read) Requests

Endpoint Function Payload Access
~/urns/[URN1]/distanceto/[URN2] Relative distance between two URNs. none public
~/urns/[URN]/neighbours List of neighbouring URNs ordered increasingly according to relative distance max_count public
~/patterns List of all stored patterns none private
~/patterns/[PATTERN_ID] Details on a particular pattern, including all its BSSID / RSSI pairs none private
~/fingerprints List of all stored fingerprints none private
~/fingerprints/[FINGERPRINT_ID] Details on fingerprint (id) including associated URN, and centroid (beacons and ranks) none private

DELETE Requests

Endpoint Function Payload Access
~/urns/[URN] The URN to delete none private
~/patterns/[PATTERN_ID] The pattern to be deleted none private