The Meraki API allows you to automate and manage your Meraki network programmatically. It is a RESTful API that provides access to Meraki dashboard data and configurations.


1. Enable Meraki API

Before using the API, you must enable it in the Meraki Dashboard:

  • Login to Meraki Dashboarddashboard.meraki.com
  • Go to “Organization” > “Settings”
  • Scroll to “Dashboard API access” and toggle it ON.
  • Click “Save”.

2. Generate an API Key

  • Go to “My Profile” (top-right corner in the dashboard).
  • Scroll to “API access”.
  • Click “Generate API Key”.
  • Copy and save the API Key (It won’t be shown again).

⚠️ Security Note: Treat your API key like a password—never expose it in public or store it in unsecured locations.


3. Test API Connectivity

Use Postman or cURL to test API access.

Example: Get Organization List

Using cURL:

curl -L -H "X-Cisco-Meraki-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-X GET "https://api.meraki.com/api/v1/organizations"

Using Python:

import requests

API_KEY = "YOUR_API_KEY"
url = "https://api.meraki.com/api/v1/organizations"

headers = {
"X-Cisco-Meraki-API-Key": API_KEY,
"Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())

4. Common Meraki API Endpoints

Here are some useful endpoints:

Organization Management

ActionMethodEndpoint
List organizationsGET/organizations
Get org detailsGET/organizations/{orgId}
Claim devices to orgPOST/organizations/{orgId}/claim

Network Management

ActionMethodEndpoint
List networksGET/organizations/{orgId}/networks
Create a networkPOST/organizations/{orgId}/networks
Delete a networkDELETE/networks/{networkId}

Device Management

ActionMethodEndpoint
List devices in a networkGET/networks/{networkId}/devices
Get device detailsGET/devices/{serial}
Update device settingsPUT/devices/{serial}

5. Advanced Usage

  • Meraki Python SDK: Use the official Meraki Python library for easier API calls. bashCopyEditpip install meraki pythonCopyEditimport meraki API_KEY = "YOUR_API_KEY" dashboard = meraki.DashboardAPI(API_KEY) orgs = dashboard.organizations.getOrganizations() print(orgs)
  • Webhooks: Configure webhooks for real-time alerts.
  • Automation: Automate network provisioning, VLAN assignments, SSID management, etc.

6. API Documentation

For a complete list of API endpoints, visit Meraki API Docs.

Leave a comment

Hey there, fellow nerds and net-surfers!

Welcome to my corner of the internet where I talk about the holy trinity of tech: NetworkingLinux, and Security — or as I like to call it, “Ctrl+Alt+Fix-It”. If you’re into packet sniffing (the legal kind), hardening Linux boxes, or figuring out why your network is being as moody as a teenager, you’re in the right place.

This blog is where I dump useful knowledge, random tech rants, and occasional troubleshooting victories so future me (and hopefully you) can benefit. Expect bash scripts, firewall rules, sarcastic comments, and the occasional meme — because what’s IT without a little command-line chaos and caffeine?

Whether you’re a curious beginner or a battle-hardened sysadmin, I hope you’ll find something here to learn, laugh at, or copy-paste in desperation.

Welcome aboard — and may your logs always be verbose.

Let’s connect