Back to top

建設現場IoTセンサーデータ取得API

APIについて

このドキュメントに定義されている建設現場IoTセンサーデータ取得APIは、与えられたURLにアクセスしたユーザーに対して、センサーデータのレスポンスを返すAPIです。

共通仕様

ホスト

api.e-sense.haudi.jp/v1

レスポンスヘッダー

レスポンスヘッダー本文

{
    "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
HideShow
limit
number (required) Example: 100

データ取得件数

gatewayIndex
string (required) Example: gateway1

データ取得するゲートウェイ名

Response  200
HideShow
Headers
Content-Type: application/json
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
X-Amzn-Trace-Id: トレースID
cache-control: no-cache
Body
[
  {
    "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
  }
}

Generated by aglio on 03 Feb 2023