開発者向け

iotBind で開発する

マイコン向けに設計されたシンプルな API。URL 1 つ、デバイスキー、そしていくつかのパラメーターだけです。

HTTP / HTTPS

GET または POST リクエストでデータを送受信し、JSON でレスポンスを受け取ります。

MQTT

MQTT.one ブローカー経由でパブリッシュ/サブスクライブし、コマンドを即座に届けます。

Webhooks

何かが起きたとき、ご自身のサーバーで署名付きの通知を受け取ります。

クイックスタート

  1. 1

    アカウントを作成

    無料で登録し、メールアドレスを確認します。

  2. 2

    デバイスを追加

    スイッチ、センサー、タンク、トラッカーを追加し、鍵アイコンを開いて固有 ID とシークレットキーをコピーします。

  3. 3

    最初のリクエストを送信

    以下のサンプルをスケッチで使うか、ブラウザでテストしてください。

基本

API バージョン 1 のベースアドレスは http://api.iotbind.com/v1 です(HTTPS にも対応)。すべてのリクエストには、クエリ文字列(GET)またはフォームフィールド(POST)として次のパラメーターを含めます:

パラメーター説明
method"get" or "post":パラメーターの送信方法。常に必須です。
keyデバイスのシークレット API キー。常に必須です。
uidデバイスの固有 ID。常に必須です。

デバイスキーは秘密にしてください。漏えいした場合は、デバイスの鍵アイコンから新しいキーを生成してください。古いキーはすぐに無効になります。

スイッチ

スイッチのオン/オフ、最大 3 つの値の保存、現在の状態の読み取りができます。

GET | POST http://api.iotbind.com/v1/switch.php

パラメーター説明
cmd 任意のコマンド: onoffgetping
data1 保存する任意のテキストまたは数値。
data2 保存する任意のテキストまたは数値。
data3 保存する任意のテキストまたは数値。
データを送信
http://api.iotbind.com/v1/switch.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=on&data1=24.5&data2=OK
レスポンス: {"MESSAGE":"UPDATED"}
デバイスを読み取る
http://api.iotbind.com/v1/switch.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Living room", "type": "RGB Light", "cmd": "on",
  "data1": "24.5", "data1_unit": "C", "data2": "OK", "data2_unit": "", "data3": "", "data3_unit": ""
}

同じパラメーターは POST のフォームフィールドとしても使えます。その場合は次を指定します: method=post · デバイスが接続中であることを通知するには、次を送信します: cmd=ping → {"MESSAGE":"PING OK"}

センサー

最大 3 つの測定値を保存したり、最新の値を読み取ったりできます。

GET | POST http://api.iotbind.com/v1/sensor.php

パラメーター説明
cmd 任意のコマンド: getping
data1 保存する任意のテキストまたは数値。
data2 保存する任意のテキストまたは数値。
data3 保存する任意のテキストまたは数値。
データを送信
http://api.iotbind.com/v1/sensor.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&data1=23.4&data2=41&data3=1012
レスポンス: {"MESSAGE":"UPDATED"}
デバイスを読み取る
http://api.iotbind.com/v1/sensor.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Greenhouse", "type": "Temperature",
  "data1": "23.4", "data1_unit": "C", "data2": "41", "data2_unit": "%", "data3": "1012", "data3_unit": "hPa"
}

同じパラメーターは POST のフォームフィールドとしても使えます。その場合は次を指定します: method=post · デバイスが接続中であることを通知するには、次を送信します: cmd=ping → {"MESSAGE":"PING OK"}

液体タンク

タンクの水位と温度の保存、ポンプの切り替え、状態の読み取りができます。

GET | POST http://api.iotbind.com/v1/tank.php

パラメーター説明
cmd 任意のコマンド(タンクのポンプを切り替え): onoffgetping
level タンクの水位(数値)。
temperature 任意のタンク温度(数値)。
データを送信
http://api.iotbind.com/v1/tank.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=on&level=67&temperature=21
レスポンス: {"MESSAGE":"UPDATED"}
デバイスを読み取る
http://api.iotbind.com/v1/tank.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Roof tank", "type": "Water Level", "cmd": "on",
  "level": "67", "level_unit": "%", "temperature": "21", "temperature_unit": "C"
}

同じパラメーターは POST のフォームフィールドとしても使えます。その場合は次を指定します: method=post · デバイスが接続中であることを通知するには、次を送信します: cmd=ping → {"MESSAGE":"PING OK"}

GPS トラッキング

最大 4 つの追加値とともに位置を保存したり、最新の位置を読み取ったりできます。

GET | POST http://api.iotbind.com/v1/tracking.php

パラメーター説明
cmd 任意のコマンド: getping
latitude 緯度(数値)。
longitude 経度(数値)。
data1 保存する任意のテキストまたは数値。
data2 保存する任意のテキストまたは数値。
data3 保存する任意のテキストまたは数値。
data4 保存する任意のテキストまたは数値。
データを送信
http://api.iotbind.com/v1/tracking.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&latitude=24.7136&longitude=46.6753&data1=62
レスポンス: {"MESSAGE":"UPDATED"}
デバイスを読み取る
http://api.iotbind.com/v1/tracking.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Car", "type": "GPS tracking",
  "latitude": "24.7136", "longitude": "46.6753", "data1": "62", "data1_unit": "km/h"
}

同じパラメーターは POST のフォームフィールドとしても使えます。その場合は次を指定します: method=post · デバイスが接続中であることを通知するには、次を送信します: cmd=ping → {"MESSAGE":"PING OK"}

MQTT

iotBind は MQTT.one サービスと連携します。デバイスが変化するとプラットフォームがお客様のトピックにパブリッシュし、デバイスは JSON メッセージを iotBind にパブリッシュします。

  1. MQTT.one アカウントを作成し、必要なトピックを追加します。
  2. プラットフォームで「MQTT サービス」を開き、MQTT.one アカウントを連携します。
  3. デバイス設定で「MQTT メッセージをパブリッシュ」をオンにし、トピックを選択します。
  4. MQTT.one の接続情報を使い、クライアント ID iotbind-<UNIQUE_ID> でボードをブローカーに接続します。
  5. アカウントに表示されている iotbind トピックに JSON メッセージをパブリッシュします。
iotbind/switch/ トピックへのメッセージ
{ "key": "DEVICE_KEY", "uid": "UNIQUE_ID", "cmd": "off", "data1": "24.5" }

MQTT を利用するには、MQTT 機能を含むプランと、次のサイトのアカウントが必要です: MQTT.one

エラーコード

400不正なリクエスト:アドレス、パラメーター、または本文が無効です。
401認証エラー:デバイスキーまたは固有 ID が正しくありません。
404見つかりません:要求されたリソースは存在しません。
429リクエストが多すぎます:間隔を空けるか、プランの上限をご確認ください。

次のプロジェクトにはクラウドを

無料アカウントは 1 分で作成できます。今日、最初のデバイスを接続しましょう。