前回ライセンスを追加しましたので、次はMerakiのAPIを紹介します。MerakiのAPIを使用することによってMerakiデバイスの状態を取得や構築をProgram上で可能になります。アプリケーション専用のDashboardや自動設定など、可能性を秘めています。今回はそのAPIの使用方法を簡単に紹介します。APIはNode.js・Python・Curlにも対応します。
Find your API Key
Organization>CONFIGURE>Settingsします。
Dashboard API accessのEnable access to the cisco Meraki Dashboard API Checkboxに入れます。
API accessのProfieをクリックします。
Generate new API Keyボタンを押してAPI Keyを生成します。
API Keyが表示されます。
COPYして大事なところに保存してください。
I have stored my new API keyのCheckbox入れ、Doneで完成。
API KEYが表示されるのはいまだけなので、大事に保存してください。
(まぁ、また新規作成もできるので)
API Keyが作成されました。
Play it!
以下のLinkにアクセスし、MerakiのAPI をテストできます。
https://developer.cisco.com/meraki/api-v1/#!getting-started
Configurationをクリックします。
X-Cisco-Meraki-API-Keyで先のStepで生成したAPI KEYを貼り付けます。
Get Device
EndPoints>API>GENERAL>devices>CONFIGURE>Get Deviceをクリックします。
APIの各リクエストにも詳しい説明やテストができます。
ParameterのTabを開き、SerialのFieldにあなたのデバイスのSerial Numberを入れ、Runします。
Response 200 OKが表示されたらOK!
GET NETWORK
次はもう1つのAPIリクエストを試してみましょう。EndPoints>API>GENERAL>devices>CONFIGURE>Get Networkをクリックします。
NetworkidはGet Deviceのリクエストから取得できます。
Networkidを入力し、Runすると401認証してないエラーが出てきます。その場合はConfigurationでAPI Keyを入力して、試してみてください。
よし、Response 200 OKの返答がきました。
CURL
次はCurlコマンドからAPIを試してみます。
Installation
下記のコマンドでCurlをインストールします。
sudo apt-get install curl |
TemplateのTabを開きます。
CurlのTabにExampleがのっています。
Copyします。
Test
Terminalに貼り付け、Api keyとNetworkidを変更します。
実行するとAPIから返答がきます。
Python
最後はPythonとRequest Libraryを組み合わせてるのSample Codeは以下です。
import requests serial=’xxxx’ Network_ID=’xxxx’ import os API_KEY=os.environ.get(‘MERAKI_DASHBOARD_API_KEY’) url=”https://api.meraki.com/api/v1/devices/{}”.format(serial) print(url) payload=None headers={ “Content-Type”: “application/json”, “Accept”: “application/json”, “X-Cisco-Meraki-API-Key”: “{}”.format(API_KEY) } response = requests.request(‘GET’, url, headers=headers, data = payload) print(response.text.encode(‘utf8’)) |