Assets

Use these API endpoints to read assets.

Current version: 1

Example asset

{
  "asset": {
    "id": "Abc123",
    "name": "Name",
    "code": "Code",
    "created_at": "2021-01-01T13:00:00.000+01:00",
    "updated_at": "2021-01-01T13:00:00.000+01:00",
    "current_geo_location": {
      "id": "Abc123",
      "latitude": 52.255223,
      "longitude": 6.160636,
      "radius_accuracy": 48.5,
      "recorded_at": "2021-01-01T13:00:00.000+01:00"
    },
    "current_temperature": {
      "id": "Abc123",
      "degrees": 21.0,
      "recorded_at": "2021-01-01T13:00:00.000+01:00"
    },
    "current_sensor_value": {
      "id": "Abc123",
      "recorded_at": "2021-01-01T13:00:00.000+01:00",
      "sensor1_raw_value": 123,
      "sensor2_raw_value": 123,
      "sensor3_raw_value": 123
    },
    "node": {
      "id": "Abc123",
      "sigfox_id": "123ABC",
      "status": "Status",
      "last_seen_at": "2021-01-01T13:00:00.000+01:00",
      "updated_at": "2021-01-01T13:00:00.000+01:00",
      "hardware_type": "Hardware Type",
      "hardware_version": "1.1",
      "firmware_version": "0.8",
      "battery_level": 90
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <id>Abc123</id>
  <name>Name</name>
  <code>Code</code>
  <created-at type="dateTime">2021-01-01T13:00:00+01:00</created-at>
  <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
  <current-geo-location>
    <id>Abc123</id>
    <latitude type="float">52.255223</latitude>
    <longitude type="float">6.160636</longitude>
    <radius-accuracy type="float">48.5</radius-accuracy>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
  </current-geo-location>
  <current-temperature>
    <id>Abc123</id>
    <degrees type="float">21.0</degrees>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
  </current-temperature>
  <current-sensor-value>
    <id>Abc123</id>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
    <sensor1-raw-value type="integer">123</sensor1-raw-value>
    <sensor2-raw-value type="integer">123</sensor2-raw-value>
    <sensor3-raw-value type="integer">123</sensor3-raw-value>
  </current-sensor-value>
  <node>
    <id>Abc123</id>
    <sigfox-id>123ABC</sigfox-id>
    <status type="symbol">Status</status>
    <last-seen-at type="dateTime">2021-01-01T13:00:00+01:00</last-seen-at>
    <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
    <hardware-type type="symbol">Hardware Type</hardware-type>
    <hardware-version>1.1</hardware-version>
    <firmware-version>0.8</firmware-version>
    <battery-level type="integer">90</battery-level>
  </node>
</asset>

Index

Gets a list with all assets. This is a paginated response.

URL
GET https://my.iobee.eu/api/assets

Response

Status
200 - OK
Body
{
  "assets": [
    {
      "id": "Abc123",
      "name": "Name",
      "code": "Code",
      "created_at": "2021-01-01T13:00:00.000+01:00",
      "updated_at": "2021-01-01T13:00:00.000+01:00",
      "current_geo_location": {
        "id": "Abc123",
        "latitude": 52.255223,
        "longitude": 6.160636,
        "radius_accuracy": 48.5,
        "recorded_at": "2021-01-01T13:00:00.000+01:00"
      },
      "current_temperature": {
        "id": "Abc123",
        "degrees": 21.0,
        "recorded_at": "2021-01-01T13:00:00.000+01:00"
      },
      "current_sensor_value": {
        "id": "Ref001",
        "recorded_at": "2021-01-01T13:00:00.000+01:00",
        "sensor1_raw_value": 123,
        "sensor2_raw_value": 123,
        "sensor3_raw_value": 123
      },
      "node": {
        "id": "Abc123",
        "sigfox_id": "123ABC",
        "status": "Status",
        "last_seen_at": "2021-01-01T13:00:00.000+01:00",
        "updated_at": "2021-01-01T13:00:00.000+01:00",
        "hardware_type": "Hardware Type",
        "hardware_version": "1.1",
        "firmware_version": "0.8",
        "battery_level": 90
      }
    }
  ],
  "_next_page": {
    "token": "eyJzIjoxNjA5NTAyNDAwLjAsImkiOm51bGx9",
    "empty": true,
    "remaining": 0,
    "url": "https://my.iobee.eu/docs/api/assets?page_token=eyJzIjoxNjA5NTAyNDAwLjAsImkiOm51bGx9"
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<hash>
  <assets type="array">
    <asset>
      <id>Abc123</id>
      <name>Name</name>
      <code>Code</code>
      <created-at type="dateTime">2021-01-01T13:00:00+01:00</created-at>
      <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
      <current-geo-location>
        <id>Abc123</id>
        <latitude type="float">52.255223</latitude>
        <longitude type="float">6.160636</longitude>
        <radius-accuracy type="float">48.5</radius-accuracy>
        <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
      </current-geo-location>
      <current-temperature>
        <id>Abc123</id>
        <degrees type="float">21.0</degrees>
        <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
      </current-temperature>
      <current-sensor-value>
        <id>Ref001</id>
        <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
        <sensor1-raw-value type="integer">123</sensor1-raw-value>
        <sensor2-raw-value type="integer">123</sensor2-raw-value>
        <sensor3-raw-value type="integer">123</sensor3-raw-value>
      </current-sensor-value>
      <node>
        <id>Abc123</id>
        <sigfox-id>123ABC</sigfox-id>
        <status type="symbol">Status</status>
        <last-seen-at type="dateTime">2021-01-01T13:00:00+01:00</last-seen-at>
        <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
        <hardware-type type="symbol">Hardware Type</hardware-type>
        <hardware-version>1.1</hardware-version>
        <firmware-version>0.8</firmware-version>
        <battery-level type="integer">90</battery-level>
      </node>
    </asset>
  </assets>
  <_next-page>
    <token>eyJzIjoxNjA5NTAyNDAwLjAsImkiOm51bGx9</token>
    <empty type="boolean">true</empty>
    <remaining type="integer">0</remaining>
    <url>https://my.iobee.eu/docs/api/assets?page_token=eyJzIjoxNjA5NTAyNDAwLjAsImkiOm51bGx9</url>
  </_next-page>
</hash>

Show

Gets the specified asset.

URL
GET https://my.iobee.eu/api/assets/:id

Response

Status
200 - OK
Body
{
  "asset": {
    "id": "Abc123",
    "name": "Name",
    "code": "Code",
    "created_at": "2021-01-01T13:00:00.000+01:00",
    "updated_at": "2021-01-01T13:00:00.000+01:00",
    "current_geo_location": {
      "id": "Abc123",
      "latitude": 52.255223,
      "longitude": 6.160636,
      "radius_accuracy": 48.5,
      "recorded_at": "2021-01-01T13:00:00.000+01:00"
    },
    "current_temperature": {
      "id": "Abc123",
      "degrees": 21.0,
      "recorded_at": "2021-01-01T13:00:00.000+01:00"
    },
    "current_sensor_value": {
      "id": "Ref001",
      "recorded_at": "2021-01-01T13:00:00.000+01:00",
      "sensor1_raw_value": 123,
      "sensor2_raw_value": 123,
      "sensor3_raw_value": 123
    },
    "node": {
      "id": "Abc123",
      "sigfox_id": "123ABC",
      "status": "Status",
      "last_seen_at": "2021-01-01T13:00:00.000+01:00",
      "updated_at": "2021-01-01T13:00:00.000+01:00",
      "hardware_type": "Hardware Type",
      "hardware_version": "1.1",
      "firmware_version": "0.8",
      "battery_level": 90
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <id>Abc123</id>
  <name>Name</name>
  <code>Code</code>
  <created-at type="dateTime">2021-01-01T13:00:00+01:00</created-at>
  <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
  <current-geo-location>
    <id>Abc123</id>
    <latitude type="float">52.255223</latitude>
    <longitude type="float">6.160636</longitude>
    <radius-accuracy type="float">48.5</radius-accuracy>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
  </current-geo-location>
  <current-temperature>
    <id>Abc123</id>
    <degrees type="float">21.0</degrees>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
  </current-temperature>
  <current-sensor-value>
    <id>Ref001</id>
    <recorded-at type="dateTime">2021-01-01T13:00:00+01:00</recorded-at>
    <sensor1-raw-value type="integer">123</sensor1-raw-value>
    <sensor2-raw-value type="integer">123</sensor2-raw-value>
    <sensor3-raw-value type="integer">123</sensor3-raw-value>
  </current-sensor-value>
  <node>
    <id>Abc123</id>
    <sigfox-id>123ABC</sigfox-id>
    <status type="symbol">Status</status>
    <last-seen-at type="dateTime">2021-01-01T13:00:00+01:00</last-seen-at>
    <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
    <hardware-type type="symbol">Hardware Type</hardware-type>
    <hardware-version>1.1</hardware-version>
    <firmware-version>0.8</firmware-version>
    <battery-level type="integer">90</battery-level>
  </node>
</asset>

Create

Creates the specified asset.

URL
POST https://my.iobee.eu/api/assets

Request

Body
{
  "asset": {
    "name": "Name",
    "code": "Code",
    "sigfox_id": "123ABC",
    "profile": "profile id"
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <name>Name</name>
  <code>Code</code>
  <sigfox-id>123ABC</sigfox-id>
  <profile>profile id</profile>
</asset>
Fields
name The name of the asset to create. If the name is not present or blank we will use the Sigfox ID as name.
code The code of the asset to create.
sigfox_id The Sigfox ID of the node to couple to this asset. If this node is already coupled to another asset, the node will be transferred to this asset. Required.
profile The ID or name of the profile to activate, required. If the profile is not present or blank, we will use your default profile. If you don't have a default profile, no profile will be set.

Response

Status
200 - OK
Body
{
  "asset": {
    "id": "Abc123",
    "name": "Name",
    "code": "Code",
    "created_at": "2021-01-01T13:00:00.000+01:00",
    "updated_at": "2021-01-01T13:00:00.000+01:00",
    "node": {
      "id": "Abc123",
      "sigfox_id": "123ABC",
      "status": "Status",
      "last_seen_at": "2021-01-01T13:00:00.000+01:00",
      "updated_at": "2021-01-01T13:00:00.000+01:00",
      "hardware_type": "Hardware Type",
      "hardware_version": "1.1",
      "firmware_version": "0.8",
      "battery_level": 90
    },
    "profile": {
      "id": "Ref001",
      "name": "Name"
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <id>Abc123</id>
  <name>Name</name>
  <code>Code</code>
  <created-at type="dateTime">2021-01-01T13:00:00+01:00</created-at>
  <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
  <node>
    <id>Abc123</id>
    <sigfox-id>123ABC</sigfox-id>
    <status type="symbol">Status</status>
    <last-seen-at type="dateTime">2021-01-01T13:00:00+01:00</last-seen-at>
    <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
    <hardware-type type="symbol">Hardware Type</hardware-type>
    <hardware-version>1.1</hardware-version>
    <firmware-version>0.8</firmware-version>
    <battery-level type="integer">90</battery-level>
  </node>
  <profile>
    <id>Ref001</id>
    <name>Name</name>
  </profile>
</asset>
Status
422 - Unprocessable Entity
Body
{
  "asset": {
    "errors": {
      "node": [
        {
          "error": "not_found"
        }
      ]
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <errors>
    <node type="array">
      <node>
        <error type="symbol">not_found</error>
      </node>
    </node>
  </errors>
</asset>

Update profile

Changes the profile for the specified asset.

URL
PUT/PATCH https://my.iobee.eu/api/assets/:id/profile

Request

Body
{
  "asset": {
    "profile": "profile id"
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <profile>profile id</profile>
</asset>
Fields
profile The ID or name of the profile to activate, required

Response

Status
200 - OK
Body
{
  "asset": {
    "id": "Abc123",
    "name": "Name",
    "code": "Code",
    "created_at": "2021-01-01T13:00:00.000+01:00",
    "updated_at": "2021-01-01T13:00:00.000+01:00",
    "profile": {
      "id": "Ref001",
      "name": "Name"
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<asset>
  <id>Abc123</id>
  <name>Name</name>
  <code>Code</code>
  <created-at type="dateTime">2021-01-01T13:00:00+01:00</created-at>
  <updated-at type="dateTime">2021-01-01T13:00:00+01:00</updated-at>
  <profile>
    <id>Ref001</id>
    <name>Name</name>
  </profile>
</asset>
Status
422 - Unprocessable Entity
Body
{
  "node": {
    "errors": {
      "profile": [
        "not_found"
      ]
    }
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<node>
  <errors>
    <profile type="array">
      <profile type="symbol">not_found</profile>
    </profile>
  </errors>
</node>