6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SORACOM API Sandbox を使って IoT SIM の作成と解約を試してみた。

Last updated at Posted at 2024-12-09

目次

  1. はじめに
  2. 動作環境
  3. SORACOM API Sandbox とは
  4. 実践:SORACOM API Sandbox の設定と操作
  5. まとめ

はじめに

IoT プロジェクトを進める中で、API の動きを試してみたいと感じたことはありませんか?でも、本番環境をいじるのはちょっと怖い……そんな時に使えるのが「SORACOM API Sandbox」です。

この記事では、実際に私が Sandbox を使って IoT SIM の作成から解約まで試してみた様子をまとめました。失敗談やハマりどころも紹介するので、これから試す方の参考になれば嬉しいです。

実施するにあたって、下記の SORACOM ユーザードキュメントを参考にしました:


動作環境

私がこの記事を書く際に使用した環境です:

  • OS: macOS 14.3 (Sonoma)
  • SORACOM CLI バージョン: SORACOM CLI v1.3.0
  • 依存環境: Homebrew 3.6 以上
  • カバレッジタイプ: Global

SORACOM API Sandbox とは

SORACOM API Sandbox は、本番環境をいじることなく、SORACOM API の操作を安全に試せる環境です。この環境を使えば、たとえば、以下のことができます:

  • 架空のオペレーターの作成
  • 架空の IoT SIM の作成や管理
  • SIM の解約やその他 API 操作のテスト

「実際のデータに影響を与えない」という安心感があるので、API を初めて触る人でも気軽に試せます。


実践:SORACOM API Sandbox の設定と操作

以下に、私が実際に試した手順を詳しく書いていきます。これを読めば、きっとあなたも Sandbox を活用できるはず!

1. SORACOM CLI のインストールと設定

まずは SORACOM CLI のインストールから始めます。私は macOS を使っているので、Homebrew でインストールしました。

SORACOM CLI のインストール

arch -arm64 brew install soracom-cli

メモ:
私の環境では、初めに brew install soracom-cli を試したところ、以下のエラーが出ました:

Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
    arch -arm64 brew install ...

そのため、arch -arm64 を付けて再実行することで解決しました。このエラーが出た場合は、このオプションを忘れずに指定してください。

インストール後、バージョンを確認:

soracom version

実行結果(例):

SORACOM API client v1.3.0

Sandbox 用プロファイルの作成

次に、Sandbox 用のプロファイルを作成します。

soracom configure-sandbox

プロンプトに従って以下を入力しました:

  1. カバレッジタイプ: Global (選択肢 1 を入力)
  2. AuthKeyId と AuthKey: 本番環境の認証情報(確認用に必要です)
  3. Sandbox オペレーターのメールアドレスとパスワード: サンドボックス用の情報を入力

これでプロファイル sandbox が作成されました。


2. 架空のオペレーターの作成

作成したプロファイルを使って、Sandbox 内にオペレーターを作成します。

soracom operator get --profile sandbox

結果はこんな感じ:

{
  "createDate": "2024-12-05T09:27:34.193",
  "email": "shoichi+202412051827@*****",
  "operatorId": "OP0081733389",
  "updateDate": "2024-12-05T09:27:34.195"
}

自分の Sandbox オペレーター ID を確認できました。


3. 架空の IoT SIM の作成と登録

3.1 SIM の作成

次に、架空の IoT SIM を作成します。

soracom sandbox subscribers create --profile sandbox --coverage-type g \
--body '{
  "subscription": "plan01s"
}'

結果:

{
  "imsi": "001014383947094",
  "subscription": "plan01s",
  "status": "ready",
  "terminationEnabled": false
}

3.2 SIM の登録

作成した SIM を登録します。

soracom subscribers register --profile sandbox --coverage-type g \
--imsi 001014383947094 \
--body '{
  "registrationSecret": "34230"
}'

登録後に確認:

soracom subscribers list --profile sandbox

出力(抜粋):

[
  {
    "imsi": "001014383947094",
    "status": "ready",
    "subscription": "plan01s"
  }
]

作成した SIM が登録され、「status」が ready となっていることを確認できました。


4. SIM の解約プロテクション設定と解除

4.1 解約プロテクションの確認

まずは解約プロテクションの状態を確認します。

soracom sims list --profile sandbox

出力(抜粋):

[
  {
    "imsi": "001014383947094",
    "terminationEnabled": false
  }
]

この時点では terminationEnabledfalse、つまり解約プロテクションが無効であることを確認しました。

4.2 解約プロテクションの有効化/解除

プロテクションを有効化する場合:

soracom subscribers enable-termination --profile sandbox \
--imsi 001014383947094

解除する場合:

soracom subscribers disable-termination --profile sandbox \
--imsi 001014383947094

5. SIM の解約

最後に SIM の解約を試しました。

soracom subscribers terminate --profile sandbox \
--imsi 001014383947094

結果:

{
  "status": "terminated"
}

無事に解約完了!


まとめ

Sandbox を使えば、本番環境をいじることなく API の操作を安心して試せます。特に IoT SIM の解約といった操作を試せるのは魅力的でした。

今回のハマりポイントとして、「--profile sandbox」をつけ忘れると本番環境に対して API を叩いてしまうので注意が必要です。

ぜひ皆さんも試してみてください!

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?