Django Web インターフェイスに慣れましょう。
ジュニパー Mist API は、Django Representational State Transfer(REST)フレームワーク上に構築されています。このアーキテクチャでは、閲覧可能なAPIが可能になり、Webブラウザから直接APIを操作できます。このAPIを使用すると、自分や他のユーザーがAPI内でCRUD操作を実行できるようになり、使いやすさと柔軟性が向上します。ある意味、Django インターフェイスは RESTful クライアントのように機能します。この関数は、単一のAPIオブジェクトでCRUD操作を実行する場合に便利です。
設定オブジェクトを変更するには、ジュニパー Mistポータルにログインし、オブジェクトのURL APIパスを知っている必要があります。オブジェクトを変更するための詳細とパラメーターについては、 APIドキュメント を参照してください。利用可能なすべてのオブジェクトのURL APIパスがあります。
このタスクでは、アクセスポイント(AP)からデバイス情報を取得し、Djangoインターフェイスから直接APの名前を変更する方法について説明します。
Django Web インターフェイスを使用して API を変更するには:
- ジュニパー Mistポータルにログインします。
- 特定のデバイスのAPI URLを開きます:https://<api-エンドポイント>/api/v1/sites/
/devices?name=<device name>
。デバイス名は大文字と小文字を区別します。
注:
コードブロックを再利用する場合は、プレースホルダー値を実際の値(APIトークン、組織ID、サイトID、AP名など)に置き換えます。
この場合、URLは次のようになります(site_idの一部は省略されています)。
https://{api-host}/api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices?name=TEST-rename
ブラウザは、Djangoインターフェイスを介して次のコマンドを発行します。
GET /api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices?name=TEST-rename
ジュニパー Mist は、通常MACアドレス(00000000-0000-0000-1000-
)に基づく一意の識別子をすべてのデバイスに割り当てます。デバイスAPIのコンテキストでは、
idと呼ばれます。APIがどの特定のデバイスの名前を変更すべきかを認識できるように、
id を使用してAPを参照する必要があります。
- 変更するには、デバイスID(
id)をAPI呼び出しに挿入し、ブラウザーに表示します。
新しい呼び出しは次のようになります。
https://{api-host}/api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices/00000000-0000-0000-1000-5c5b3xxxxxxx
出力は前のリクエストと同じです。ただし、APIコンテキストでは、名前ではなく
id に基づいて特定のデバイスに変更を加えることができるようになりました。「[ ]」の括弧が囲まれていないことに注意してください。
- 目的のAP名前変更呼び出しのコンテンツ入力ボックスにJavaScript Object Notation(JSON)形式のテキストを入力します。
idコンテキストはURLに存在するため、一意のデバイスID(id)を含める必要はありません。
- 完了したら、
PUTを押してリクエストをジュニパー Mistにプッシュします。結果は以下のようになり、APの名前が変更されたことを示しています。
{
"id": "00000000-0000-0000-1000-5c5b3xxxxxx",
"name": "RENAMED",
"site_id": "c1947558-268d-4d31-xxxx-xxxxxxxxxxxx",
"org_id": "3f12cb79-fb5e-4d4b-xxxx-xxxxxxxxxxxx",
"created_time": 1685989351,
"modified_time": 1686321430,
"map_id": null,
"mac": "5c5b3xxxxxxxx",
"serial": "A07451xxxxxxx",
"model": "AP43",
"hw_rev": "C02",
"type": "ap",
"tag_uuid": "3f12cb79-fb5e-4d4b-xxxx-xxxxxxxxxxxxxx",
"tag_id": 3056xxx,
"evpntopo_id": null,
"deviceprofile_id": null
}
詳細については、APIドキュメントサイトのサイトセクションを参照してください。