SORACOM API を呼び出すには、SORACOM API が規定したルールに従って、HTTP リクエストを実行します。
このページでは、例として curl コマンドを利用して SORACOM API を呼び出し、IoT SIM の情報を取得する操作を説明します。
ステップ 1: API キーと API トークンを発行する
SORACOM API を呼び出す際は、API キーと API トークンが必要です。詳しくは、API キーと API トークンを発行する を参照してください。
ステップ 2: API を呼び出し Subscriber の情報を取得する
次に、listSubscribers API を呼び出し、Subscriber の一覧を取得してみましょう。
先ほど取得した API キーと API トークンを、それぞれリクエストの X-Soracom-API-Key
ヘッダーと X-Soracom-Token
ヘッダーに指定して送信します。
$ curl -X GET \
-H "X-Soracom-API-Key: 先ほど取得した API キー" \
-H "X-Soracom-Token: 先ほど取得した API トークン" \
https://api.soracom.io/v1/subscribers
# Response:
# 200 OK
#
# [
# {
# "imsi": "44010xxxxxxxxxx",
# "msisdn": "8180xxxxxxxx",
# :
# },
# :
# ]
Operator に Subscriber が 1 つでも登録されていれば、上記のように Subscriber の一覧が JSON 形式で取得できます。
ステップ 3: API を呼び出し Subscriber の速度クラスを変更する
続いて、この JSON に含まれる IMSI (International Mobile Subscriber Identity) を指定して、その IoT SIM の速度クラスを変更してみましょう。
$ curl -X POST \
-H "X-Soracom-API-Key: 先ほど取得した API キー" \
-H "X-Soracom-Token: 先ほど取得した API トークン" \
-H "Content-Type: application/json" \
-d "{\"speedClass\":\"s1.fast\"}" \
https://api.soracom.io/v1/subscribers/${SIMのIMSI}/update_speed_class
# Response:
# 200 OK
#
# {
# "imsi": "44010xxxxxxxxxx",
# "msisdn": "8180xxxxxxxx",
# :
# "speedClass": "s1.fast",
# :
# }
Response Code: 200 OK が返り、Response Body に含まれている IoT SIM の速度クラスが変更されていることが確認できます。
Windows のコマンドプロンプト (cmd.exe
) から API 呼び出しを行う場合、リクエストボディに JSON を指定するときに注意が必要です。コマンドプロンプトでは、""
(ダブルクォーテーション) で囲まれた文字列は ""
内の文字列だけが意味を持ち、文字列を囲んでいるダブルクォーテーションは削除されます。また、"
単体ではダブルクォーテーションの文字そのものとして解釈されます。
たとえば、JSON {"key":"value"}
を Windows のコマンドプロンプトでは "{"""key""":"""value"""}"
と書きます。
速度クラスを変更したときの注意事項については、IoT SIM の速度クラスを変更する を参照してください。
API を複数回呼び出す場合のヒント
API を複数回呼び出す場合の手順は、以下のとおりです。
Auth:auth API
を呼び出して、SAM ユーザーまたはルートユーザーの API キーと API トークンを発行します。SAM ユーザーの API キーと API トークンを発行するために必要な情報と、ルートユーザーの API キーと API トークンを発行するために必要な情報は異なります。詳しくは、API キーと API トークンを発行する を参照してください。
手順 1 で発行した API キーと API トークンを指定して API を複数回呼び出します。
API キーと API トークンが漏洩した可能性がある場合
Auth:auth API
を呼び出してから、Auth:logout API
を呼び出すまでに、API キーと API トークンが漏洩した可能性がある場合は、無効化してください。詳しくは、API キーと API トークンを無効化する を参照してください。API キーと API トークンはいつでも発行できます。ストレージなどに永続的に保存しておく必要はありません。
API の呼び出しがすべて終わったら、
Auth:logout API
を呼び出して API キーと API トークンを無効化します。