RESTful APIの概要
REST(Representational State Transfer)について理解し、ジュニパー Mist™ で RESTful API を使用する方法を理解しましょう。
ジュニパー Mist の 100% API アーキテクチャは、ジュニパー Mist ポータルの目に見えるすべての機能をサポートしています。ポータルで実行できることはすべて、API を使用して大規模に自動化できます。Representational State Transfer(REST)は、統一されたインターフェイスを備えたステートレスなクライアント/サーバーアーキテクチャです。マシンはユーザーインターフェイスを使用しないため、APIを使用することで、マシンが相互に通信するための定義された高速な方法が可能になります。
REST API を使用すると、システムやアプリケーションとの対話に関する独自の方法を作成できます。カスタム機能を作成することもできます。REST APIのその他の一般的なユースケースには、アプリケーション間の通信とデータ交換、アプリケーションとサーバー間のデータ交換、アプリケーション内のマイクロサービス間の通信などがあります。RESTはステートレスであるため、クラウドベースのサービスに最適です。
ジュニパー Mist API は、ジュニパー Mist アカウントをお持ちのお客様なら誰でも利用できます。
Mist APIリファレンスも参照してください。これには、開発者向けの追加のドキュメントと、API 呼び出しをテストする機能が含まれています。
ジュニパー Mist API アーキテクチャ
ジュニパーMistは、HTTPメソッド(GET、POST、PUT、DELETE)を使用するREST APIを使用して、JavaScript Object Notation(JSON)形式でデータを転送します。

RESTful APIリクエスト
RESTful API の使用は、開発で使用される CRUD (CREATE、READ、UPDATE、DELETE) メソッドと同様の方法に従います。これらは、データを扱うときに使用される 4 つの基本的なアクションまたは関数です。
| CRUD | HTTP/REST |
|---|---|
| 作成 | 投稿 |
| 読む | 取得 |
| 更新 | プット |
| 削除 | 削除 |
APIエンドポイントURLフォーマット
APIエンドポイントURLは、次の2つの部分で構成されています。
-
APIホスト(またはエンドポイント)—ジュニパーMist組織が関連付けられているグローバルリージョンのエンドポイント。これらのエンドポイントは、「 APIエンドポイント」と「グローバルリージョン」に一覧表示されています。
-
関数—APIエンドポイントの後ろはすべて、APIが呼び出す関数を表します。
例文
https://{api-host}/api/v1/sites/{site_id}/stats/devices/{device_id}。
https://{api-host}/api/v1/sites/13b0ee00-121a-456e-84e0-ead3008bc2f2/stats/devices/00000000-0000-0000-1000-d420b08532eb
コードブロックを再利用する場合は、プレースホルダー値を実際の値(APIトークン、組織ID、サイトID、AP名など)に置き換えます。
{api-host} 以降はすべて関数です。コールはグローバル クラウドに移動し、指定されたサイトにある指定されたデバイスの統計情報を要求します。
次のセクションでは、API 呼び出しを構成する構造について詳しく見ていきます。
API呼び出し構造
次の図は、API 呼び出しとそれを構成するさまざまなコンポーネントの例です。

| APIコールコンポーネント |
説明 |
|---|---|
| HTTPメソッド |
|
| ホスト(またはAPIエンドポイント) |
使用するMist Cloudを決定します(グローバル01、EMEA 01など)。ジュニパーMist組織が関連付けられているグローバルリージョンのエンドポイント。 APIエンドポイントとグローバルリージョンを参照してください。 |
| バージョン |
使用するAPIバージョン(現在、すべてのAPIでv1が使用されています)。 |
| スコープ |
要求が実行されているレベルを示します。例としては、msp、org、site、self、register、installer、const などがあります。 |
| スコープID |
使用するスコープを特定します。 |
| オブジェクト |
使用するオブジェクトのタイプ(デバイス、WLANなど)。 |
| オブジェクトID |
リクエストするオブジェクトを特定します。 |
REST API で上記の REST コマンド (POST、GET、PUT、DELETE) のいずれかを実行するには、各リクエストで次のようないくつかの要件を満たす必要があります。
-
認証:
-
APIトークン、ジュニパー Mistのログイン資格情報(この認証タイプは2026年9月に非推奨になる予定)、または外部のOAuth2プロバイダを使用して、自分の身分と認証プロセス中にアクセスできるものを示すことができます。
-
さまざまな認証方法の詳細については、「 認証」を参照してください。
注:すでに manage.mist.com にログインしている場合は、新しいブラウザタブを開き、https://{api-host}/api/v1/self/apitokensに移動し、[ POST ]ボタンをクリックするだけです。これにより、新しいAPIユーザートークンが自動的に作成されます。ホスト(APIエンドポイント)を確認するには、「 APIエンドポイントとグローバルリージョン」を参照してください。
トークンの詳細については、 APIトークンの作成 を参照してください。
-
-
HTTPヘッダー: このヘッダーは、次のようにコンテンツと認証タイプを指定します。
-
ジュニパーMistの場合、コンテンツタイプは常にapplication/jsonです。
-
認証は、トークンまたはCookie(CSRFトークンとセッションIDを含む)です。
-
-
ジュニパーMist組織が関連付けられているグローバルリージョンのエンドポイント。 APIエンドポイントとグローバルリージョンを参照してください。
次の表は、RESTful API リクエストを構成するさまざまな部分の例を示しています。
| CRUD動作 |
HTTPヘッダー認証 |
エンドポイントURL |
ペイロード(JSON) |
|---|---|---|---|
| 取得 |
APIトークン |
https://api.mist.com/api/v1/sites/:site_id/wlans |
|
| 削除 |
CSRFトークン、セッションID |
https://api.mist.com/api/v1/sites/:site_id/wlans/:wlan_id |
|
| 投稿 |
CSRFトークン、セッションID |
https://api.mist.com/api/v1/orgs/:org_id/inventory |
{["
|
| プット |
APIトークン |
https://api.mist.com/api/v1/sites/:site_id/wlans/:wlan_id |
{"ssid" : "新しい名前"} |
JSON ペイロード
関数が異なれば、JSON ペイロードに必要な要素も異なります。必要な詳細は 、APIドキュメントで確認できます。
以下は、サンプルのAPI呼び出しとレスポンス(JSONペイロード)です。
API呼び出し:
POST
/api/v1/orgs/{org_id}/rftemplates
応答(JSONペイロード):
{
"name": "new-rf-template",
"org_id": "a97c1b22-a4e9-411e-9bfd-d8695a0f9e61",
"band_5": {
"allow_rrm_disable": false,
"ant_gain": 0,
"channels": [],
"disabled": false,
"power_max": 17,
"power_min": 8
},
"band_24": {
"allow_rrm_disable": false,
"ant_gain": 0,
"channels": [],
"disabled": false,
"power_max": 17,
"power_min": 8
},
"country_code": "CA"
}
APIレート制限
ジュニパー Mist では、API 呼び出しが 1 時間あたり 5,000 に制限されています。1時間あたり5,000件を超える電話をかける必要がある場合は、 サポートチケットを作成してください。
大規模なデプロイでは、API呼び出しの制限にすぐに到達しないように、組織レベルでAPI呼び出しを行うことをお勧めします。
ブルートフォース攻撃を防ぐために、ログインAPI(/api/v1/login)は、3回のログイン失敗の後、レート制限されます。
API認証オプション
ジュニパー Mist API では、次の 3 つのオプションで認証をリクエストできます。

-
基本認証—トークン
-
パスワードのように保護します。
-
APIトークンの作成手順については、 APIトークンの作成を参照してください。
注意:セキュリティを強化し、業界のベストプラクティスに沿うため、Mistは2026年9月をもって、管理者ログインやスクリプトを含むすべてのユースケースで基本認証を非推奨にします。中断のないアクセスとサポートを確保するために、2026年9月までにすべての統合をトークンベースの認証に移行する必要があります。 APIトークンの作成を参照してください。 -
-
HTTPログイン—ユーザー名とパスワード
-
ダッシュボードログインのようなものです
-
二要素認証が可能です。
-
-
OAuth2
-
アカウントはOAuthプロバイダにリンクされている必要があります。
-
ブラウザへのアクセスが必要です。
-
認証の詳細については、 Mist APIリファレンスを参照してください。
簡単なAPIの例
Django APIインターフェイスは、API内でCRUD操作を実行できるWebベースのインターフェイスです。「 Django Web インターフェイスを使用して API を変更する」を参照してください。
Django API インターフェイスを使用して、最初の API 呼び出しを行うことができます。Mistにログインした後、同じブラウザを使用して新しいウィンドウを開き、URL https://{api-host}/api/v1/selfを入力します。これは、Global 01クラウドのURLです。別のクラウドを使用している場合、このURLは異なります。
これは、このAPI呼び出しを GET /api/v1/selfにすることと同じです。
上記の結果には、関連付けられている組織とサイトに対して割り当てられている権限が表示されます。