Web API
注意事項
- 本ドキュメントに記載がない項目は、システム上で自動的に付加された項目なのでその項目の使用は非推奨となります。
- sensor_id, hw_addrの英字は大文字小文字の区別はありません(内部的に全て小文字で処理されます)。
Summary
endpoint
https://api.agri.iij.jp/v1
Headers
| Key | Value | Description |
|---|---|---|
| Authorization | POST /authの項を参照 | POST /authを除く |
| Content-Type | application/json |
Paths
| Path | Operation | Description |
|---|---|---|
| /auth | POST | api_tokenの発行 |
| /sensors | GET | センサーの一覧 |
| /sensors/{sensor_id} | GET | 指定センサーの個別情報と過去データ参照 |
| PUT | 指定センサーの個別設定 |
Paths
POST /auth
- api_tokenを発行します(有効期限90日)。
- 発行済みのapi_tokenが有効期限切れになった場合もこのAPIをコールして新しいapi_tokenを発行してください。
- 認証方法:リクエストヘッダ "Authorization: Bearer " に付加
- 新たなapi_keyの発行についてはお問い合わせください。
| Name | Description | Type | Data type | |
|---|---|---|---|---|
| api_key | 指定されたapi_key | body | string | required |
| api_secret | 指定されたapi_secret | body | string | required |
Responses
Status Code: 200
{
"api_key": "string",
"api_token": "string",
"expired": timestamp
}
GET /sensors
- センサーの一覧を取得します。
Responses
Statu Code: 200
{
"sensors": [
{
"hw_addr": "string",
"latest_values": {
"string": {
"value": number,
"timestamp": timestamp
}
},
"sensor_id": "string",
"longitude": number,
"latitude": number,
"custom": object,
"name": "string"
}
]
}
latest_valuesの詳細については、センサー固有の属性として後述します。
GET /sensors/{sensor_id}
- 指定センサーの個別情報と過去データ参照をします。過去データには以下を含みます。
- 水位などのセンサー固有のデータ
- 何もパラメータがない場合、各履歴は過去24時間の情報を返します。
- start_time, end_timeを指定した場合は24時間以上の時間を指定することができます。
- 一度に指定できる範囲は最大で100日です。
- start_time, end_timeはエポック時間(ミリ秒)を指定します。
- start_time, end_time片方しか指定がない場合は何もパラメータがない場合と同様です。
| Name | Description | Type | Data type | Example | |
|---|---|---|---|---|---|
| sensor_id | IIJより指定されたセンサーID値 | path | string | s-zz-0000000 | required |
| start_time | 履歴データの取得開始エポックミリ秒 | query | number | 1581562000000 | |
| end_time | 履歴データの取得最終エポックミリ秒 | query | number | 1581562500000 |
Responses
Status Code: 200
{
"sensor": {
"latest_values": {
"string": {
"value": value ,
"timestamp": timestamp
}
},
"sensor_id": "string",
"longitude": number,
"latitude": number,
"custom": object,
"name": "string",
},
"history": [
{
"hw_addr": "string",
"string": value,
"timestamp": 1584499800000
}
]
}
latest_valuesおよびhistoryの値については、センサーの固有の属性として後述します。
PUT /sensors/{sensor_id}
- 指定センサーの個別設定をします。
| Name | Description | Type | Data type | Example | |
|---|---|---|---|---|---|
| sensor_id | IIJより指定されたセンサーID値 | path | string | s-zz-0000000 | required |
| name | センサー設置場所の名称 | body | string | PaddyDevice | |
| latitude | センサー設置場所の緯度 | body | number | 12.345 | |
| longitude | センサー設置場所の経度 | body | number | 12.345 | |
| custom | ご自由にお使いください(JSON形式) | body | object | {
"device_status": 100
}
|
Responses
Status Code: 200
{
"sensor": {
"hw_addr": "string",
"latest_values": {
"string": {
"value": number,
"timestamp": timestamp
}
},
"sensor_id": "string",
"longitude": number,
"latitude": number,
"custom": object,
"name": "string"
}
}
センサー固有の属性
GET /sensors や GET /sensors/{sensor_id} で得られる、センサー固有の属性についての詳細を記述します。
水田センサー LP01
| 属性名 | タイプ | 単位 |
|---|---|---|
| voltage | number | V |
| water_level | number | cm |
| water_temperature | number | ℃ |
| substrate_temeperature | number | ℃ |
| status_code | number | |
| RSSI | number | |
| SNR | number |
変更履歴
- 2021.04.02
- 一度の GET /sensors/{sensor_id} で指定できる範囲を最大100日とする
- 2020.03.25
- manual.iij.jpに公開
- 2020.02.27
- POST /sensors および DELETE /sensors/{sensor_id} を廃止
- sensor.index を廃止
- 2020.01.06
- POST /sensors および DELETE /sensors/{sensor_id} を廃止予定
- 2019.12.26
- sensor.description を削除
- sensor.index を廃止予定
- 2019.11.28
- 初版公開