建設現場IoTセンサーデータ取得API
APIについて
このドキュメントに定義されている建設現場IoTセンサーデータ取得APIは、与えられたURLにアクセスしたユーザーに対して、センサーデータのレスポンスを返すAPIです。
共通仕様 ¶
ホスト
レスポンスヘッダー
レスポンスヘッダー本文
{
"Access-Control-Allow-Credentials": ["true"],
"Access-Control-Allow-Origin": ["*"],
"Content-Type": ["application/json"],
"X-Amzn-Trace-Id": [トレースID],
"cache-control": ["no-cache"]
}
Body
"センサーデータ"
HTTPステータスコード
各機能で共通するHTTPステータスコードと状態の説明は以下の通りです。
| ステータスコード | 意味 |
|---|---|
| 200 | リクエストが正常に処理された |
共通エラー形式 ¶
Body
"レスポンスメッセージ"
エラーメッセージ
全APIに共通のエラーメッセージとして、以下を定義する。
| ステータスコード | レスポンスメッセージ | 意味 |
|---|---|---|
| 400 | Parameter is Not Found | リクエストにパラメータを指定していない |
| 403 | Invalid Parameter | パラメータが正しくない |
| 500 | Internal Server Error | その他内部エラー |
| 502 | Internal Server Error | サーバーエラー |
| 503 | DB Service Unavailable | DBが参照不可状態 |
API一覧 ¶
ゲートウェイ名と件数の指定取得 ¶
指定したゲートウェイ名と指定したデータ取得件数(1~100)でセンサーデータを取得するAPIです。
GW名と件数の指定取得GET/construction_site_sensor_data{?gatewayIndex,limit}
Example URI
GET api.e-sense.haudi.jp/v1/construction_site_sensor_data?gatewayIndex=gateway1&limit=100
URI Parameters
- limit
number(required) Example: 100データ取得件数
- gatewayIndex
string(required) Example: gateway1データ取得するゲートウェイ名
Response
200Headers
Content-Type: application/json
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
X-Amzn-Trace-Id: トレースID
cache-control: no-cacheBody
[
{
"gatewayIndex": "gateway1",
"loudness": [
{
"name": "loudnessMeter1",
"level": 80,
"levelEq": 80.3,
"levelMax": 79.5,
"levelMin": 79.1
}
],
"vibration": [
{
"name": "vibrationMeter1",
"levelX": 55.2,
"levelY": 56.1,
"levelZ": 55
}
],
"ts": "2022-01-19T20:40:31.012345+09:00"
}
]Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"items": {
"type": "object",
"properties": {
"gatewayIndex": {
"type": "string",
"description": "ゲートウェイ名"
},
"loudness": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "騒音計名"
},
"level": {
"type": "number",
"description": "サウンドレベル"
},
"levelEq": {
"type": "number",
"description": "時間平均サウンドレベル"
},
"levelMax": {
"type": "number",
"description": "サウンドレベルの最大値"
},
"levelMin": {
"type": "number",
"description": "サウンドレベルの最小値"
}
},
"required": [
"name",
"level",
"levelEq",
"levelMax",
"levelMin"
]
},
"description": "騒音計の情報"
},
"vibration": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "騒音計名"
},
"levelX": {
"type": "number",
"description": "X方向の振動レベル瞬時値"
},
"levelY": {
"type": "number",
"description": "Y方向の振動レベル瞬時値"
},
"levelZ": {
"type": "number",
"description": "Z方向の振動レベル瞬時値"
}
},
"required": [
"name",
"levelX",
"levelY",
"levelZ"
]
},
"description": "振動計の情報"
},
"ts": {
"type": "string",
"description": "センサーのタイムスタンプ"
}
},
"required": [
"gatewayIndex",
"loudness",
"vibration",
"ts"
],
"additionalProperties": false
}
}