curlで検証
2つのリクエストを使って、API Clientがアクセストークンを取得できること、デバイス一覧を読み取れることを確認します。必要なのは curl だけで、Brunoコレクション、SDK、JSONコマンドラインツールは不要です。
事前準備
以下を準備してください。
clientIdclientSecretdevice:read権限
これらのコマンドはローカルでの検証にのみ使用してください。本番サービスでは、保護されたサーバー側の設定またはシークレットストレージから認証情報を読み込む必要があります。
1. アクセストークンの作成
まだ clientId と clientSecret がない場合は、先にAPI Keyを取得してください。
YOUR_CLIENT_ID と YOUR_CLIENT_SECRET を置き換えて実行します。
bash
curl --request POST 'https://openapi.svnwi.com/wlte/v1/auth/token' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET"
}'成功したレスポンスは、HTTPステータスが 200、code が SUCCESS、そして data.accessToken にアクセストークンが含まれます。
json
{
"code": "SUCCESS",
"message": "OK",
"data": {
"accessToken": "eyJ...",
"tokenType": "Bearer",
"expiresIn": 3600,
"clientId": "cli_xxxxx",
"scopes": ["device:read"]
}
}data.accessToken の値をコピーします。完全な契約についてはアクセストークンの作成(英語)を参照してください。
2. デバイス一覧の取得
最初のレスポンスからコピーしたトークンで YOUR_ACCESS_TOKEN を置き換えます。
bash
curl --request GET 'https://openapi.svnwi.com/wlte/v1/devices' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Accept: application/json'次の条件を満たせば検証成功です。
- HTTPステータスが
200 - レスポンスの
codeがSUCCESS data.devicesが配列であること
data.devices が空の配列であっても、認証とエンドポイントが機能していることは確認できます。通常は、アカウントまたはAPI Clientが現在アクセス可能なデバイスを持っていないことを意味します。
認証情報を安全に保つ
- 実際の認証情報を含むトークンリクエストをリポジトリに保存しないでください。
- 共有端末セッションで実行したり、スクリーンショットに含めたりしないでください。
clientSecretやアクセストークンをブラウザやモバイルのコードに置かないでください。- この一度限りの確認から先に進む前に、サーバー側のシークレットストレージを使用してください。
本番環境のセキュリティルールについてはベースURLとヘッダー(英語)を参照してください。
検証に失敗した場合
| コードまたは結果 | 確認すること |
|---|---|
AUTH_INVALID | clientId と clientSecret を確認する |
APP_DISABLED | API Clientとアプリケーションが有効になっているか確認する |
AUTH_SCOPE_DENIED | device:read 権限を追加し、新しいトークンを取得する |
data.devices が空 | アカウントがデバイスを所有し、API Clientがアクセスできるか確認する |
その他のレスポンスについてはよくある失敗を参照してください。
次のステップ
- Brunoによる完全な検証を実行する。
- そのままSDK統合に進む。
- デバイス監視ダッシュボードの構築方法を学ぶ。
