API

データ連携(Webhook)とAPIの違い

ウェビオセンサーから得られたデータをサーバに送信する方法としてWebhookによるデータ連携機能とAPIを提供しております。

WebhookとAPIは、データを「どちら側から送るか」が違います。Webhookによるデータ連携機能は、ウェビオサーバー側から貴社サーバにデータを送るのに対して、APIは貴社サーバからウェビオサーバにアクセスしてデータを取得します。どちらもプロトコルはHTTP(S)、データはJSON形式です。

Webhookによるデータ連携を使うと、センサーからデータが届いた直後に情報を受け取れるため、よりリアルタイムで無駄のないデータの受信が可能です。一方APIを使うと、センサーからのデータの更新有無に関わらず、定期的にデータを取得する必要が生じるなど無駄が多く、リアルタイムでのデータ取得に向いていません。

ウェビオでは、APIではなく、Webhookによるデータ連携をを強くお勧めいたします。

WebhookとAPIの違い

共通

APIサーバのURLはhttps://api.webiot.io です。

HTTPヘッダーにAPIキーをセットしてください。

Authorization: Bearer [API_KEY]

APIキー

APIキーはウェビオコンソールから発行、再発行することが可能です。APIキーは64文字のランダムな英数字で構成されています。

例: zhZ3cguLBC2UtEFKpeXM9KWCG9wGgEtXaY6pKzDBWZhm6BLSmx3zMJxgkZYPRCVD

APIキーの権限は、ウェビオコンソールのログインIDに対応しており、あなたが「オーナー」となっているセンサーのデータにのみアクセス可能です。現状のところチーム機能で共有されているセンサーのデータにはアクセスできませんので、必要な場合はセンサーの「オーナー」にご依頼いただき、APIキーを取得してもらってください。

ウェブ上ではAPIキーを一般公開しないようにお願いいたします。

将来的には、センサーの最新データ取得に限定した、センサーごとのAPIキー(Access-Control-Allow-Origin: * 付き) を発行可能とする予定です。

最新データの取得

ウェビオの各センサーの最新データをデータ種別ごとに取得できます。 温度・湿度・気圧センサーの場合は、temperatureのみ取得すれば、同時受信データ(value01-03)で湿度と気圧の情報も得られます。 センサーからの信号が途絶えている場合、最後に届いたデータが返されます。用途によっては、 "unixtime" で直近のデータか確認が必要です。

リクエスト

GET /api/sensors/[該当センサーのウェビオID]/[データ種別]

例: /api/sensors/BTXX01/temperature

レスポンス application/json

{
  "id": "BTXX01",
  "unixtime": 1501847516,
  "datatype": "temperature",
  "value": 23.45,
  "unit": "℃",
  "value01": 23.45,
  "value02": 40.56,
  "value03": 1023.4567,
  "dataid": "112f49f0-8cb0-11e8-bab3-8909bb8001ac",
  "packetid": 255,
  "rssi": -80,
  "battery": 3.14
}

項目の詳細は、データ連携と同様です。

履歴データCSVの取得

現在、ウェビオコンソールからダウンロードできるCSVと同じものがダウンロードできます。センサー別、月別となり、前日までのデータが含まれています。(毎日 01:00am(JST)ごろまでに更新)

リクエスト

GET /api/csv/[該当センサーのウェビオID]/[YYYY-MM]

例: /api/csv/BTXX01/2019-08

レスポンス text/csv

内容は、現在のウェビオコンソールでダウンロードできるCSVと同じです。

エラーが発生した場合

HTTPレスポンスコード200以外を返します。

  • レスポンス例 application/json
{
  "status": 403,
  "msg": "Invalid API Key"
}

お問い合わせ

ご不明な点がございましたら、お気軽にお問い合わせ下さい。
ピクスー株式会社

  • 所在地: 〒130-0026 東京都墨田区両国1-8-4 両国坂本ビル703 ピクスー株式会社
  • メール: info@webiot.io
  • 電話番号: 090-9863-0987(担当:塩澤)