Device (generic)

POST /device/log/{interactionType}

Logs an interaction against a generic device or none at all. Posting an interaction against no device is allowed only if that interaction type has been flagged as “deviceless” in the configuration or the codebase.

Deviceless interaction types defined in the codebase are:

  • connect
  • connected
  • seen
  • entered
  • exited
  • download
  • downloaded
  • upload
  • feedback

Example request:

POST /device/log/upload
{
  "delegate_id": 1,
  "recordedAt": "201-12-12T06:35:08+1300",
  "upload": "iVBORw0KGgoAA[ ... more base64 encoded stuff ... ]oI5NwAAAABJRU5ErkJggg=="
}

POST /device/seen

This is a special endpoint for UHF readers. They send a list of tags wrapped in a application/x-www-form-urlencoded. Because the software is proprietary we have a dedicated endpoint and some dedicated configuration parameters.

POST /device/log-batch

You can send a batch of requests to this endpoint and they will be processed in order and a ordered collection of responses will be returned.

Example request:

POST /device/log-batch
{
  "interactions": {
    "a": {
      "delegate_id": 1,
      "interactionType": "upload",
      "upload": "$aUniqueName"
    },
    "b": {
      "delegate_id": 1,
      "device_id": 123,
      "interactionType": "check-in"
    }
  },
  "sharedValues": {
    "aUniqueName": "iVBORw0KGgoAA[ ... more base64 encoded stuff ... ]oI5NwAAAABJRU5ErkJggg=="
  }
}