おんどとりWebStorageで管理されている機器のアラートログ最新20件を取得します。
https://api.webstorage.jp/v1/devices/alert
参照専用IDでもご利用できます。
※ RTR500BMの電源異常および接点入力のアラートログについてはこちらのAPIで取得できません。
12回/1時間
30秒に1回警報が送られた場合でも、おんどとり Web Storageに保存されているすべてのアラートログ(最大20件)を取得できるよう設計しました。
※警報監視間隔は30秒が最短間隔です。
レートリミット自体は短期間に一斉にアクセス集中することを避けて負荷を分散するための方針となります。ご了承ください。
| 項目名 | 値 |
|---|---|
| HTTP Method | POST |
| X-HTTP-Method-Override | GET |
| Host | api.webstorage.jp:443 |
| Content-Type | application/json |
| パラメータ名 | 型 | 要否 | デフォルト値 | 説明 |
|---|---|---|---|---|
| api-key | string(45文字) | 必須 | --- | 取得済みのAPI KEY |
| login-id | string(8文字) | 必須 | --- | 利用者ID。参照専用IDでも可。 |
| login-pass | string(4~16文字) | 必須 | --- | 上記利用者IDに対するパスワード |
| remote-serial | string(8文字) | 必須 | --- | アラートログを取り出す機器シリアル番号。複数台指定はできません。 |
| base-serial | string(8文字) | 必須 | --- | 上記の子機が登録されている親機シリアル番号(単体動作機器は、機器のシリアル番号)。複数台指定はできません。 |
リクエストヘッダ
POST /v1/devices/alert HTTP/1.1 Host: api.webstorage.jp:443 Content-Type: application/json X-HTTP-Method-Override: GET
リクエストボディ
{
"api-key":"73pfobnche8d1p6laqnemsbnpkght3bjv047oid6p2sg3",
"login-id":"tbzz9999",
"login-pass":"ppaasswwoorrdd",
"remote-serial":"52BA0001",
"base-serial":"58580001"
}
※この例では、親機RTR500BW(sn:58580001)に紐付いているRTR-502(sn:52BA0001)のアラートログ20件をjson形式で取得。
WindowsやMac端末などのコマンドラインから利用可能なcurlコマンドを使ったリクエスト例です。リクエストヘッダとリクエストボディを含む形でのコマンド例になっています。
curl -X POST \
-H "Content-Type: application/json" \
-H "X-HTTP-Method-Override: GET" \
-d '{"api-key":"73pfobnche8d1p6laqnemsbnpkght3bjv047oid6p2sg3","login-id":"tbzz9999","login-pass":"ppaasswwoorrdd","remote-serial":"52BA0001","base-serial":"58580001"}' \
https://api.webstorage.jp:443/v1/devices/alert
| 項目名 | 値 | 説明 |
|---|---|---|
| HTTP status code | (**) | HTTPステータスコード |
| Content-Type | application/json; charset=utf-8 | 文字コードはUTF-8 |
| X-RateLimit-Limit | (integer) | 単位時間あたりのアクセス上限 |
| X-RateLimit-Reset | (integer) | 単位時間の秒数 |
| X-RateLimit-Remaining | (integer) | 単位時間あたりのアクセス残数 |
(**) HTTPステータスコードが「200」であれば正常に処理が完了しています。それ以外のHTTPステータスコードが返ってきた場合にはエラーにより処理されていません。 エラー発生時には下記のようなエラー情報を含むJSONデータが返ってきます。
HTTP/1.1 400 Bad Request
Server: api.webstorage.jp
Content-Type: application/json; charset=utf-8
X-RateLimit-Limit: 60
X-RateLimit-Reset: 60
X-RateLimit-Remaining: 57
{
"error":{
"code": エラーコード,
"message": "エラーの内容"
}
}
下記の表において、channel.nameのように項目名にピリオド(.)が含まれるような場合は、channelに含まれる配列の要素を示しています。
| 項目名 | 型 | 説明 |
|---|---|---|
| remote-serial | string | 指定した機器(子機)情報のシリアル番号 |
| remote-model | string | 指定した機器(子機)情報のモデル名称 |
| remote-name | string | 指定した機器(子機)情報の機器名称 |
| base-serial | string | 指定した親機のシリアル番号(単体動作機器は、機器のシリアル番号) |
| base-model | string | 指定した親機のモデル名称。(単体動作機器は、機器のモデル名称) |
| base-name | string | 指定した親機の機器名称(単体動作機器は、機器の名称) |
| time-diff | string(*1) | 親機に設定されている時差情報[単位は分]。(単体動作機器は、機器の時差情報) |
| std-bias | string(*1) | 親機に設定されている標準時差[単位は分]。(単体動作機器は、機器の標準時差) |
| dst-flg | string(*1) | 夏時間フラグ。機器の夏時間設定がONの場合は1、OFFの場合は0が返ります。(単体動作機器は、機器の夏時間フラグ) |
| dst-bias | string(*1) | 親機に設定されている夏時間時差[単位は分]。夏時間設定のON/OFFに関わらず60固定。 |
| channel | 配列 | 測定チャンネル情報。データが不足している機器を指定した場合には空配列となる場合があります。 |
| channel.name | string | チャンネル名称(*2) |
| channel.num | string(*1) | チャンネル番号 (1 ~ 6) |
| channel.unit | string | チャンネル測定単位 |
| alert-logs | 配列 | データ件数0件の場合には空配列となります。 |
| alert-logs.unixtime | string(*1) | アラート発生日時(unixtime) |
| alert-logs.ch1 | string | 上記unixtimeにおけるch1のアラート内容。ch1のアラートがない場合は存在しません。 |
| alert-logs.ch2 | string | 上記unixtimeにおけるch2のアラート内容。ch2のアラートがない場合は存在しません。 |
| alert-logs.ch3 | string | 上記unixtimeにおけるch3のアラート内容。ch3のアラートがない場合は存在しません。 |
| alert-logs.ch4 | string | 上記unixtimeにおけるch4のアラート内容。ch4のアラートがない場合は存在しません。 |
| alert-logs.ch5 | string | 上記unixtimeにおけるch5のアラート内容。ch5のアラートがない場合は存在しません。 |
| alert-logs.ch6 | string | 上記unixtimeにおけるch6のアラート内容。ch6のアラートがない場合は存在しません。 |
| alert-logs.battery-level | string | 上記unixtimeにおける電池残量のアラート内容。電池残量のアラートがない場合は存在しません。 |
| alert-logs.communication-status | string | 上記unixtimeにおける通信状態のアラート内容。通信状態のアラートがない場合は存在しません。 |
(*1) 値は数値ですが、型は文字型となっています。
(*2) RTR500Bシリーズ/RTR-500シリーズの子機はチャンネル名称を設定できないため、「ch+チャンネル番号」が入ります。
※実際のレスポンスは下記の例のように見やすい形に整形されていない場合がありますのでご了承ください。
HTTP/1.1 200 OK
Server: api.webstorage.jp
Content-Type: application/json; charset=utf-8
X-RateLimit-Limit: 60
X-RateLimit-Reset: 60
X-RateLimit-Remaining: 57
{
"remote-serial": "52140001",
"remote-model": "TR-72wf",
"remote-name": "東側の窓の外",
"base-serial": "52140001",
"base-model": "TR-72wf",
"base-name": "東側の窓の外",
"time-diff": "540",
"std-bias": "0",
"dst-flg": "0",
"dst-bias": "60",
"channel": [
{
"name": "temp",
"num": "1",
"unit": "C"
},
{
"name": "humid",
"num": "2",
"unit": "%"
}
],
"alert-logs": [
{
"unixtime": "1742259344",
"ch1": " [ch1:temp] 上限値警報: 30.9 C (上限値: 30.5 C)",
"ch2": " [ch2:humid] 下限値警報: 29 % (下限値: 30 %)",
"battery-level": "[電池残量] 正常"
},
{
"unixtime": "1742258355",
"ch1": " [ch1:temp] 正常復帰",
"ch2": " [ch2:humid] 正常復帰",
"battery-level": "[電池残量] 警報発生中"
},
{
"unixtime": "1742254755",
"ch1": " [ch1:Ch.1] センサエラー: --- C",
"battery-level": "[電池残量] 正常"
}
]
}