REST API

Authentication
  • Example Request (user, POST): <endpoint URL>/rest/auth (form data: user=<username>, password=<password>)

    curl -X POST 'https://api.devicewise.com/rest/auth' \
    --data-urlencode 'username=demo@devicewise.com' \
    --data-urlencode 'password=demo123'
  • Example Request (thing, POST): <endpoint URL>/rest/auth (form data: thingKey=<key>, apptoken=<token>)

    curl -X POST 'https://api.devicewise.com/rest/auth' \
    --data-urlencode 'thingKey=358239051214957' \
    --data-urlencode 'appToken=OPEN-ANDROID' \
    --data-urlencode 'appId=demo'
  • Example Response: sessionId as a string
Endpoints
  • property.publish
    • POST <endpoint URL>/rest/<thingkey>/property/<propkey> (form data: sessionId=<sessionId>,value=<value>)

      curl -X POST 'https://api.devicewise.com/rest/358239051214957/property/rssi' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \
      --data-urlencode 'value=-51'
  • property.current
    • GET http://<open server>/rest/<thingkey>/property/<propkey>?sessionId=<sessionId>

      curl -X GET 'https://api.devicewise.com/rest/358239051214957/property/rssi?sessionId=50m3535510n1dg035h3r3'
  • property.history / property.aggregate
    • GET <endpoint URL>/rest/<thingkey>/property/<propkey>?sessionId=<sessionId>&last=24h&series=hour&calc=wavg

      curl -X GET 'https://api.devicewise.com/rest/358239051214957/property/rssi?sessionId=50m3535510n1dg035h3r3&last=24h&series=hour&calc=wavg'
  • alarm.publish
    • POST <endpoint URL>/rest/<thingkey>/alarm/<alarmkey> (form data: sessionId=<sessionId>, state=<state>, msg=<msg>)

      curl -X POST 'http://api.devicewise.com/rest/358239051214957/alarm/switch' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \
      --data-urlencode 'state=Off' \
      --data-urlencode 'msg=The switch has been turned off'
  • log.publish
    • POST <endpoint URL>/rest/<thingkey>/log (form data: sessionId=<sessionId>, level=<level>, msg=<msg>)

      curl -X POST 'https://api.devicewise.com/rest/358239051214957/log' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \
      --data-urlencode 'level=1' \
      --data-urlencode 'msg=This is a level 1 log message.'
  • thing.attr.set
    • POST <endpoint URL>/rest/<thingkey>/attribute/<attrkey> (form data: sessionId=<sessionId>, value=<value>)

      curl -X POST 'https://api.devicewise.com/rest/358239051214957/attribute/brand' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \
      --data-urlencode 'value=Apple'
  • location.publish
    • POST <endpoint URL>/rest/<thingkey>/location (form data: sessionId=<sessionId>, lat=<latitude>, lng=<longitude>)

      curl -X POST 'https://api.devicewise.com/rest/358239051214957/location' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \
      --data-urlencode 'lat=22.012' \
      --data-urlencode 'lng=-80.666'
  • location.current
    • GET <endpoint URL>/rest/<thingkey>/location?sessionId=<sessionId>

      curl -X GET 'https://api.devicewise.com/rest/358239051214957/location?sessionId=50m3535510n1dg035h3r3'
  • method.exec
    • POST <endpoint URL>/rest/<thingKey>/method.exec

      curl -X POST 'https://api.devicewise.com/rest/358239051214957/method.exec' \
      --data-urlencode 'sessionId=50m3535510n1dg035h3r3' \ 
      --data-urlencode 'params={"method":"methodKey","ackTimeout":30,"params":{"paramKey":"paramValue"}}'