Skip to main content

 

Cisco Meraki Documentation

Cisco MerakiダッシュボードAPI

MerakiダッシュボードAPIは、ソフトウェアがMerakiクラウド プラットフォームおよびMerakiマネージド デバイスと直接対話するためのインターフェースです。

このドキュメントは原文を 2025年07月07日付けで翻訳したものです。
最新の情報は原文をご確認ください。

概要

以下の Meraki Learning Hub の無料オンラインコースでも API を学べます:

Cisco SSO でサインイン、または無料アカウントを作成してトレーニングを開始してください。

Meraki ダッシュボード API は、ソフトウェアから Meraki クラウドおよび管理デバイスに直接アクセスするためのインターフェイスです。プロビジョニング、一括設定変更、監視、ロールベースアクセス制御などを自動化できます。RESTful API で HTTPS リクエストを送り、JSON をやり取りします。たとえば:

  • オーガナイゼーション、管理者、ネットワーク、デバイス、VLAN、SSID の追加
  • 自動化スクリプトで数千サイトを数分で展開
  • テレワーカー機器の自動オンボーディング/オフボーディング
  • 独自のダッシュボード構築

API ドキュメント

詳細は Meraki Developer Hub をご覧ください。

Postman コレクションは Meraki Developer Hub > Resources > Postman Collections からダウンロードできます。

注意:API コールはオーガナイゼーション単位で 1 秒あたり 10 コールに制限されています。

API & Webhooks ダッシュボードページ

API キーや Webhooks はダッシュボードの専用 UI で設定できます。オーガナイゼーション → 構成 → API & Webhooks に移動してください。

API & Webhooks ページ例

タブは以下の 3 つです:

  • API 分析
  • API キーとアクセス
  • Webhooks

このページはオーガナイゼーション管理者のみが閲覧できます。

API キーの生成

Cisco Meraki ダッシュボード API はすべてのオーガナイゼーションでデフォルトで有効化されています。

「API キーとアクセス」タブを開き、「API キー生成」をクリックしてキーを生成します。このキーは生成元の管理者アカウントと同じ権限を持ちます。

API キー生成例

API キー生成完了例

API キーのライフサイクル

  • ユーザープロファイルあたり2つまで:2つ生成するとボタンが無効化され、既存キーを1つ取り消すまで新規生成できません。
  • SAML/SSO 管理者は生成不可:セキュリティ要件により生成できません。
  • キーは管理者がアクセスするすべてのオーガナイゼーションを利用可能:複数オーガナイゼーションに属する管理者が生成すると、そのキーはすべてのオーガナイゼーションにアクセスできます。
  • 管理者削除とキー取り消し:管理者がオーガナイゼーションから削除されると、その管理者が生成したキーは当該オーガナイゼーションで無効化されます。他のオーガナイゼーションでは引き続き有効です。キーを取り消すと、すべてのオーガナイゼーションでアクセスが失われます。
  • キーに有効期限なし:管理者パスワードの有効期限切れは API キーに影響しません。

代替方法 – マイプロファイルページから生成

右上のアバターアイコン → My Profile でも API キーを生成できます。

My Profile での API キー生成例

生成された API キー表示例

API 分析の概要

API Analytics はオーガナイゼーションの API 利用状況を可視化し、統合やカスタムアプリの性能最適化を支援します。データは以下の API から取得されます:

API 分析へのアクセス

Meraki ダッシュボードで左ナビゲーションの オーガナイゼーション構成API & Webhooks を開くと、最初のタブが API 分析です。

このページはすべてのオーガナイゼーション管理者が閲覧できます。

API & Webhooks ページ例

モジュール

ページには以下の 3 セクションがあります:

ページは再読み込み時にのみデータが更新されます。

概要カード

「概要」セクションでは直近 24 時間の API 利用状況を一目で確認できます:

  • 総リクエスト数と内訳
  • 成功リクエスト数と割合
  • レート制限ヒット数(HTTP 429)と割合
    詳細は API レート制限ドキュメント を参照
  • その他エラー数(HTTP 400~499、429除く)と割合
    前日比の増減率も表示されます
  • 完全に処理された API リクエストのみ集計されます(リーチしないリクエストは除外)
  • 前日比増減率 = (最新24hのエラー合計 − 直前の24hのエラー合計)÷ 直前24hエラー合計 ×100

トレンドグラフ

トレンドグラフ例

「トレンド」セクションでは時間経過による API 利用を可視化します。グラフは 3 線で構成:

  • :成功リクエスト(HTTP 200~399)
  • :レート制限ヒット(HTTP 429)
  • :その他クライアントエラー(HTTP 400~499、429除く)

ポイントにカーソルを合わせるとリクエスト数と具体的なステータスコードが表示されます。HTTP ステータスコード解説も参照可能です。

フィルタで管理者やステータスコード別に表示を絞り込めます。時間範囲は最大 30 日間まで選択可能です。

時間範囲選択例

指標テーブル

指標テーブル例

「指標」セクションでは以下別に上位の利用状況を表示:

  • Applications: custom apps/スクリプト/パートナー連携
  • Operations: API で実行可能な具体操作
  • Admins: API キーを発行した管理者
  • Source IPs: リクエスト元 IP

各タブでリクエスト数、成功数、エラー数、成功率、全体に占める割合を表示し、色アイコンで問題箇所を示します。

  • :失敗率80%以上
  • :成功率20~80%
  • :成功率80%以上

ダウンロード(CSV エクスポート)

詳細な履歴ログを CSV でダウンロードできます。フィルタ適用後に「Download detailed logs」をクリックしてください。最大 100,000 件までエクスポートされます。

100,000 件を超える場合は期間を短くしてください。ダウンロード中はページを閉じないでください。

CSV ダウンロード例

CSV に含まれるカラム:

  • Admin ID
  • Admin Name
  • Admin Email
  • HTTP Method
  • Host
  • Path
  • Query String
  • User Agent
  • Timestamp
  • HTTP Response Code
  • Source IP
  • API Version
  • Operation ID

API Analytics FAQ

なぜ 5xx エラーは表示されないのですか?
5xx エラーは Cisco 側で監視およびアラート対象としており、顧客が対処可能なクライアントエラー(4xx)に絞って表示しています。

ダッシュボード API の利用

API リクエスト

すべてのリクエストにヘッダーで API キーを指定し、URL にバージョンを含めます。キー未指定や誤りの場合、リソース存在有無を隠すため 404 を返します。

X-Cisco-Meraki-API-Key: <secret key>

URL の例:

https://api.meraki.com/api/v1/<resource>

中国リージョンは api.meraki.cn、カナダは api.meraki.ca、インドは api.meraki.in、政府向けは api.gov-meraki.com を使用します。

リリース後のバージョンは下位互換を保ち、新リソース/オプションパラメータ/レスポンス追加/プロパティ順変更のみ行います。

ID は数値に見えても文字列として扱い、解析は避けてください。

HTTP メソッドは REST 規約に従います:

  • GET:リソース取得(一覧または個別)
  • POST:リソース作成や非冪等処理
  • PUT:リソース更新(既存のみ、冪等)
  • DELETE:リソース削除

注意:コール量はオーガナイゼーション単位で 1 秒あたり10件に制限されています。

POST /api/v1/organizations/{organizationId}/inventory/claim 等は 5 分あたり IP ごとに10件制限が追加適用され、429 と Retry-After が返ります。

ステータスとエラーコード

標準 RFC 9110 HTTP Status Codes を使用します。

  • 400: Bad Request:不正リクエスト(パラメータ不足など)
  • 401: Unauthorized:無効な API キー
  • 403: Forbidden:権限なし
  • 404: Not found:URL 不存在またはアクセス権限なし
  • 429: Too Many Requests:レート制限超過

さらに詳細な原因は JSON 形式で返されます:

{
    "errors": [
       "VLANs are not enabled for this network"
    ]
}

読み取り専用管理者は GET のみ可能で、その他は 403: Forbidden が返ります。

Examples

以下はリクエスト/レスポンスの例です。すべてではなく概要です。詳細は Meraki Developer Hub を参照してください。

オーガナイゼーション

指定した X-Cisco-Meraki-API-Key でオーガナイゼーション一覧を取得:

GET https://api.meraki.com/api/v1/organizations
Response code: 200
Response body: [{"id":"","name":""}]

特定オーガナイゼーションのメタデータを取得:

GET https://api.meraki.com/api/v1/organizations/
Response code: 200
Response body: { "id": , "name": "Test Organization" }

新しいオーガナイゼーションを作成:

POST https://api.meraki.com/api/v1/organizations
Request body: { "name": "Second Test Organization" }
Response code: 201
Response body: { "id": , "name": "Second Test Organization" }

注意:最終管理者を削除するとオーガナイゼーションが操作不能になるため、最後の管理者削除はできません。

ネットワーク

オーガナイゼーション内のネットワーク一覧を取得:

GET https://api.meraki.com/api/v1/organizations/networks
Response code: 200
Response body: [ { "id": , "name": "Test Network", "organization_id": , "type": "wireless", "timeZone": "America/Los_Angeles", "tags": " test " } ]

新しいネットワークを作成:

POST https://api.meraki.com/api/v1/organizations/networks
Request body: { "name": "Test Network 2", "organizationId": , "type": "appliance" }
Response code: 201
Response body: { "id": , "name": "Test Network 2", "organization_id": , "type": "appliance", "tags": null }

type には appliance, switch, wireless, systemsManager, camera を指定可能です。複合ネットワークはスペース区切りで複数指定します。

ライセンスとデバイス

デバイス/ライセンス/注文をオーガナイゼーションにクレーム:

POST https://api.meraki.com/api/v1/organizations/claim
Request body: { "order": "4CXXXXXXX" }
Response code: 200
Response body: 

SNMP 設定

オーガナイゼーションの SNMP 設定を取得/更新:

GET https://api.meraki.com/api/v1/organizations/snmp
Request body: { "v2cEnabled": true, "v3Enabled": true, "v3AuthMode": "SHA", "v3AuthPass": , "v3PrivMode": "AES128", "v3PrivPass": , "allowedIPs": ["5.6.7.8"] }
Response code: 200
Response body: { "v2Enabled": true, "v2CommunityString": , "v3Enabled": true, "authMode": "SHA", "authPass": , "privMode": "AES128", "privPass": , "allowedIPs": ["5.6.7.8"] }

管理者

オーガナイゼーションの管理者一覧を取得:

GET https://api.meraki.com/api/v1/organizations/admins
Response code: 200
Response body: [ { "name": "Jane Doe", "email": "jane@doe.com", "orgAccess": "full", "id":  } ]

orgAccess は full, read-only, none から選択します。

ネットワーク単位で権限を付与して管理者を追加:

POST https://api.meraki.com/api/v1/organizations/admins
Request body: { "name": "John Doe", "email": "john@doe.com", "orgAccess": "none", "networks": [{ "id": , "access": "full" }] }
Response code: 201
Response body: { "id": , "name": "John Doe", "email": "john@doe.com", "orgAccess": "none", "networks": [{ "id": , "access": "full" }] }

ネットワーク権限は full, read-only, monitor-only, guest-ambassador から選択します。タグ単位付与も可能です:

"tags": [{ "tag": "foo", "access": "read-only" }]

管理者を削除:

DELETE https://api.meraki.com/api/v1/organizations/admins/
Response code: 204
Response body: 
  • Was this article helpful?