Networks
Networks
Networks class.
batch_network_floor_plans_auto_locate_jobs
Schedule auto locate jobs for one or more floor plans in a network.
API documentation: batchNetworkFloorPlansAutoLocateJobs
Parameters:
-
network_id(str) –Network ID.
-
jobs(list[BatchNetworkFloorPlansAutoLocateJobsJobsItem]) –The list of auto locate jobs to be scheduled. Up to 100 jobs can be provided in a request.
Returns:
-
BatchNetworkFloorPlansAutoLocateJobsResponse–Successful operation.
Example API response
{
"jobs": [
{
"id": "1234",
"networkId": "N_24329156",
"floorPlanId": "g_2176982374",
"status": "error",
"scheduledAt": "2018-02-11T00:00:00Z",
"completed": {
"percentage": 50
},
"ranging": {
"status": "in progress",
"completed": {
"percentage": 24
}
},
"gnss": {
"status": "in progress",
"completed": {
"percentage": 4
}
},
"errors": [
{
"source": "ranging",
"type": "missing anchors"
}
]
}
]
}
batch_network_floor_plans_devices_update
Update floorplan assignments for a batch of devices.
API documentation: batchNetworkFloorPlansDevicesUpdate
Parameters:
-
network_id(str) –Network ID.
-
assignments(list[BatchNetworkFloorPlansDevicesUpdateAssignmentsItem]) –List of floorplan assignments to update. Up to 100 floor plan assignments can be provided in a request.
Returns:
-
PublishNetworkFloorPlansAutoLocateJobResponse–Successful operation.
Example API response
{
"success": true
}
bind_network
Bind a network to a template.
API documentation: bindNetwork
Parameters:
-
network_id(str) –Network ID.
-
config_template_id(str) –The ID of the template to which the network should be bound.
-
auto_bind(bool | None, default:None) –Optional boolean indicating whether the network's switches should automatically bind to profiles of the same model. Defaults to false if left unspecified. This option only affects switch networks and switch templates. Auto-bind is not valid unless the switch template has at least one profile and has at most one profile per switch model.
Returns:
-
BindNetworkResponse–Successful operation.
Example API response
{
"id": "N_24329156",
"organizationId": "2930418",
"name": "Main Office",
"productTypes": [
"appliance",
"switch",
"wireless"
],
"timeZone": "America/Los_Angeles",
"tags": [
"tag1",
"tag2"
],
"enrollmentString": "my-enrollment-string",
"url": "https://n1.meraki.com//n//manage/nodes/list",
"notes": "Additional description of the network",
"isBoundToConfigTemplate": false,
"configTemplateId": "N_24329156"
}
cancel_network_floor_plans_auto_locate_job
Cancel a scheduled or running auto locate job.
API documentation: cancelNetworkFloorPlansAutoLocateJob
Parameters:
-
network_id(str) –Network ID.
-
job_id(str) –Job ID.
Returns:
-
None–Successful operation.
claim_network_devices
Claim devices into a network. (Note: for recently claimed devices, it may take a few minutes for API requests against that device to succeed).
API documentation: claimNetworkDevices
Parameters:
-
network_id(str) –Network ID.
-
add_atomically(bool | None, default:None) –Whether to claim devices atomically. If true, all devices will be claimed or none will be claimed. Default is true.
-
serials(list[str]) –A list of serials of devices to claim.
-
details_by_device(list[ClaimNetworkDevicesDetailsByDeviceItem] | None, default:None) –Optional details for claimed devices (currently only used for Catalyst devices).
Returns:
-
ClaimNetworkDevicesResponse–Successful operation.
Example API response
{
"serials": [
"Q234-ABCD-0001",
"Q234-ABCD-0002",
"Q234-ABCD-0003"
],
"errors": [
{
"serial": "Q234-ABCD-5678",
"errors": [
"Device already claimed"
]
}
]
}
create_network_firmware_upgrades_rollback
Rollback a Firmware Upgrade For A Network.
API documentation: createNetworkFirmwareUpgradesRollback
Parameters:
-
network_id(str) –Network ID.
-
product(CreateNetworkFirmwareUpgradesRollbackProduct | None, default:None) –Product type to rollback (if the network is a combined network).
-
time(str | None, default:None) –Scheduled time for the rollback.
-
reasons(list[CreateNetworkFirmwareUpgradesRollbackReasonsItem]) –Reasons for the rollback.
-
to_version(CreateNetworkFirmwareUpgradesRollbackToVersion | None, default:None) –Version to downgrade to (if the network has firmware flexibility).
-
predownload(CreateNetworkFirmwareUpgradesRollbackPredownload | None, default:None) –Predownload settings for the firmware upgrade.
Returns:
-
CreateNetworkFirmwareUpgradesRollbackResponse–Successful operation.
Example API response
{
"product": "switch",
"status": "pending",
"upgradeBatchId": "23456",
"time": "2020-10-21T02:00:00Z",
"toVersion": {
"id": "7857",
"firmware": "switch-15-5-2",
"shortName": "MS 25.5.2",
"releaseType": "stable",
"releaseDate": "2020-03-28T17:22:52Z"
},
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
],
"predownload": {
"enabled": false
}
}
create_network_firmware_upgrades_staged_event
Create a Staged Upgrade Event for a network.
API documentation: createNetworkFirmwareUpgradesStagedEvent
Parameters:
-
network_id(str) –Network ID.
-
products(CreateNetworkFirmwareUpgradesStagedEventProducts | None, default:None) –Contains firmware upgrade version information.
-
stages(list[CreateNetworkFirmwareUpgradesStagedEventStagesItem]) –All firmware upgrade stages in the network with their start time.
Returns:
-
GetNetworkFirmwareUpgradesStagedEventsResponse–Successful operation.
Example API response
{
"products": {
"switch": {
"nextUpgrade": {
"toVersion": {
"id": "1234",
"shortName": "MS 15.2.1"
}
}
}
},
"stages": [
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Group Description"
},
"milestones": {
"scheduledFor": "2018-02-11T00:00:00Z",
"startedAt": "2018-02-11T00:00:00Z",
"completedAt": "2018-02-11T00:00:00Z",
"canceledAt": "2018-02-11T00:00:00Z"
},
"status": "Completed"
}
],
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
]
}
create_network_firmware_upgrades_staged_group
Create a Staged Upgrade Group for a network.
API documentation: createNetworkFirmwareUpgradesStagedGroup
Parameters:
-
network_id(str) –Network ID.
-
name(str) –Name of the Staged Upgrade Group. Length must be 1 to 255 characters.
-
description(str | None, default:None) –Description of the Staged Upgrade Group. Length must be 1 to 255 characters.
-
is_default(bool) –Boolean indicating the default Group. Any device that does not have a group explicitly assigned will upgrade with this group.
-
assigned_devices(CreateNetworkFirmwareUpgradesStagedGroupAssignedDevices | None, default:None) –The devices and Switch Stacks assigned to the Group.
Returns:
-
NetworkFirmwareUpgradesStagedGroupResponse–Successful operation.
Example API response
{
"groupId": "1234",
"name": "My Staged Upgrade Group",
"description": "The description of the group",
"isDefault": false,
"assignedDevices": {
"devices": [
{
"serial": "Q234-ABCD-5678",
"name": "Device Name"
}
],
"switchStacks": [
{
"id": "1234",
"name": "Stack Name"
}
]
}
}
create_network_floor_plan
Upload a floor plan.
API documentation: createNetworkFloorPlan
Parameters:
-
network_id(str) –Network ID.
-
name(str) –The name of your floor plan.
-
center(CreateNetworkFloorPlanCenter | None, default:None) –The longitude and latitude of the center of your floor plan. The 'center' or two adjacent corners (e.g. 'topLeftCorner' and 'bottomLeftCorner') must be specified. If 'center' is specified, the floor plan is placed over that point with no rotation. If two adjacent corners are specified, the floor plan is rotated to line up with the two specified points. The aspect ratio of the floor plan's image is preserved regardless of which corners/center are specified. (This means if that more than two corners are specified, only two corners may be used to preserve the floor plan's aspect ratio.). No two points can have the same latitude, longitude pair.
-
bottom_left_corner(CreateNetworkFloorPlanBottomLeftCorner | None, default:None) –The longitude and latitude of the bottom left corner of your floor plan.
-
bottom_right_corner(CreateNetworkFloorPlanBottomRightCorner | None, default:None) –The longitude and latitude of the bottom right corner of your floor plan.
-
top_left_corner(CreateNetworkFloorPlanTopLeftCorner | None, default:None) –The longitude and latitude of the top left corner of your floor plan.
-
top_right_corner(CreateNetworkFloorPlanTopRightCorner | None, default:None) –The longitude and latitude of the top right corner of your floor plan.
-
floor_number(float | None, default:None) –The floor number of the floors within the building.
-
image_contents(str) –The file contents (a base 64 encoded string) of your image. Supported formats are PNG, GIF, and JPG. Note that all images are saved as PNG files, regardless of the format they are uploaded in.
Returns:
-
NetworkFloorPlanResponse–Successful operation.
Example API response
{
"floorPlanId": "g_1234567",
"imageUrl": "https://meraki-na.s3.amazonaws.com/assets/...",
"imageUrlExpiresAt": "2019-06-11 16:04:54 +00:00",
"imageExtension": "png",
"imageMd5": "2a9edd3f4ffd80130c647d13eacb59f3",
"name": "HQ Floor Plan",
"devices": [
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}
],
"width": 100.0,
"height": 150.1,
"center": {
"lat": 37.770040510499996,
"lng": -122.38714009525
},
"bottomLeftCorner": {
"lat": 37.7696461495,
"lng": -122.3880815506
},
"bottomRightCorner": {
"lat": 37.771524649766654,
"lng": -122.38795275055205
},
"topLeftCorner": {
"lat": 37.769700101836364,
"lng": -122.3888684251381
},
"topRightCorner": {
"lat": 37.77157860210302,
"lng": -122.38873962509012
},
"floorNumber": 5.0
}
create_network_group_policy
Create a group policy.
API documentation: createNetworkGroupPolicy
Parameters:
-
network_id(str) –Network ID.
-
name(str) –The name for your group policy. Required.
-
scheduling(CreateNetworkGroupPolicyScheduling | None, default:None) –The schedule for the group policy. Schedules are applied to days of the week.
-
bandwidth(CreateNetworkGroupPolicyBandwidth | None, default:None) –The bandwidth settings for clients bound to your group policy.
-
firewall_and_traffic_shaping(CreateNetworkGroupPolicyFirewallAndTrafficShaping | None, default:None) –The firewall and traffic shaping rules and settings for your policy.
-
content_filtering(CreateNetworkGroupPolicyContentFiltering | None, default:None) –The content filtering settings for your group policy.
-
splash_auth_settings(CreateNetworkGroupPolicySplashAuthSettings | None, default:None) –Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
-
vlan_tagging(CreateNetworkGroupPolicyVlanTagging | None, default:None) –The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
-
bonjour_forwarding(CreateNetworkGroupPolicyBonjourForwarding | None, default:None) –The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
Returns:
-
NetworkGroupPolicyResponse–Successful operation.
Example API response
{
"groupPolicyId": "101",
"scheduling": {
"enabled": true,
"monday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"tuesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"wednesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"thursday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"friday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"saturday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"sunday": {
"active": true,
"from": "9:00",
"to": "17:00"
}
},
"bandwidth": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"firewallAndTrafficShaping": {
"settings": "custom",
"trafficShapingRules": [
{
"definitions": [
{
"type": "host",
"value": "google.com"
}
],
"perClientBandwidthLimits": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"dscpTagValue": 0,
"pcpTagValue": 0,
"priority": "normal"
}
],
"l3FirewallRules": [
{
"comment": "Allow TCP traffic to subnet with HTTP servers.",
"policy": "allow",
"protocol": "tcp",
"destPort": "443",
"destCidr": "192.168.1.0/24"
}
],
"l7FirewallRules": [
{
"policy": "deny",
"type": "host",
"value": "google.com"
}
]
},
"contentFiltering": {
"allowedUrlPatterns": {
"settings": "network default",
"patterns": []
},
"blockedUrlPatterns": {
"settings": "append",
"patterns": [
"http://www.example.com",
"http://www.betting.com"
]
},
"blockedUrlCategories": {
"settings": "override",
"categories": [
"meraki:contentFiltering/category/1",
"meraki:contentFiltering/category/7"
]
}
},
"splashAuthSettings": "bypass",
"vlanTagging": {
"settings": "custom",
"vlanId": "1"
},
"bonjourForwarding": {
"settings": "custom",
"rules": [
{
"description": "A simple bonjour rule",
"vlanId": "1",
"services": [
"All Services"
]
}
]
}
}
create_network_meraki_auth_user
Authorize a user configured with Meraki Authentication for a network (currently supports 802.1X, splash guest, and client VPN users, and currently, organizations have a 50,000 user cap).
API documentation: createNetworkMerakiAuthUser
Parameters:
-
network_id(str) –Network ID.
-
email(str) –Email address of the user.
-
name(str | None, default:None) –Name of the user. Only required If the user is not a Dashboard administrator.
-
password(str | None, default:None) –The password for this user account. Only required If the user is not a Dashboard administrator.
-
account_type(CreateNetworkMerakiAuthUserAccountType | None, default:None) –Authorization type for user. Can be 'Guest' or '802.1X' for wireless networks, or 'Client VPN' for MX networks. Defaults to '802.1X'.
-
email_password_to_user(bool | None, default:None) –Whether or not Meraki should email the password to user. Default is false.
-
is_admin(bool | None, default:None) –Whether or not the user is a Dashboard administrator.
-
authorizations(list[CreateNetworkMerakiAuthUserAuthorizationsItem]) –Authorization zones and expiration dates for the user.
Returns:
-
NetworkMerakiAuthUserResponse–Successful operation.
Example API response
{
"id": "aGlAaGkuY29t",
"email": "miles@meraki.com",
"name": "Miles Meraki",
"createdAt": "2018-02-11T00:00:00.090210Z",
"accountType": "802.1X",
"isAdmin": false,
"authorizations": [
{
"ssidNumber": 1,
"authorizedZone": "Store WiFi",
"expiresAt": "2018-03-13T00:00:00.090210Z",
"authorizedByName": "Miles Meraki",
"authorizedByEmail": "miles@meraki.com"
}
]
}
create_network_mqtt_broker
Add an MQTT broker.
API documentation: createNetworkMqttBroker
Parameters:
-
network_id(str) –Network ID.
-
name(str) –Name of the MQTT broker.
-
host(str) –Host name/IP address where the MQTT broker runs.
-
port(int) –Host port though which the MQTT broker can be reached.
-
security(CreateNetworkMqttBrokerSecurity | None, default:None) –Security settings of the MQTT broker.
-
authentication(CreateNetworkMqttBrokerAuthentication | None, default:None) –Authentication settings of the MQTT broker.
Returns:
-
NetworkMqttBrokerResponse–Successful operation.
Example API response
{
"id": "1234",
"name": "MQTT_Broker_1",
"host": "1.2.3.4",
"port": 443,
"security": {
"mode": "tls",
"tls": {
"hasCaCertificate": true,
"verifyHostnames": true
}
},
"authentication": {
"username": "milesmeraki"
}
}
create_network_pii_request
Submit a new delete or restrict processing PII request.
API documentation: createNetworkPiiRequest
Parameters:
-
network_id(str) –Network ID.
-
type_(CreateNetworkPiiRequestType | None, default:None) –One of "delete" or "restrict processing".
-
datasets(list[str] | None, default:None) –The datasets related to the provided key that should be deleted. Only applies to "delete" requests. The value "all" will be expanded to all datasets applicable to this type. The datasets by applicable to each type are: mac (usage, events, traffic), email (users, loginAttempts), username (users, loginAttempts), bluetoothMac (client, connectivity), smDeviceId (device), smUserId (user).
-
username(str | None, default:None) –The username of a network log in. Only applies to "delete" requests.
-
email(str | None, default:None) –The email of a network user account. Only applies to "delete" requests.
-
mac(str | None, default:None) –The MAC of a network client device. Applies to both "restrict processing" and "delete" requests.
-
sm_device_id(str | None, default:None) –The sm_device_id of a Systems Manager device. The only way to "restrict processing" or "delete" a Systems Manager device. Must include "device" in the dataset for a "delete" request to destroy the device.
-
sm_user_id(str | None, default:None) –The sm_user_id of a Systems Manager user. The only way to "restrict processing" or "delete" a Systems Manager user. Must include "user" in the dataset for a "delete" request to destroy the user.
Returns:
-
NetworkPiiRequestResponse–Successful operation.
Example API response
{
"id": "1234",
"organizationWide": false,
"networkId": "N_1234",
"type": "delete",
"mac": "00:77:00:77:00:77",
"datasets": "['usage', 'events']",
"status": "Completed",
"createdAt": 1524692227,
"completedAt": 1524702227
}
create_network_vlan_profile
Create a VLAN profile for a network.
API documentation: createNetworkVlanProfile
Parameters:
-
network_id(str) –Network ID.
-
name(str) –Name of the profile, string length must be from 1 to 255 characters.
-
vlan_names(list[CreateNetworkVlanProfileVlanNamesItem]) –An array of named VLANs.
-
vlan_groups(list[CreateNetworkVlanProfileVlanGroupsItem]) –An array of VLAN groups.
-
iname(str) –IName of the profile.
Returns:
-
NetworkVlanProfileResponse–Successful operation.
Example API response
{
"iname": "Profile1",
"name": "My VLAN profile name",
"isDefault": false,
"vlanNames": [
{
"name": "named-1",
"vlanId": "1",
"adaptivePolicyGroup": {
"id": "791",
"name": "Infrastructure"
}
}
],
"vlanGroups": [
{
"name": "named-group-1",
"vlanIds": "2,5-7"
}
]
}
create_network_webhooks_http_server
Add an HTTP server to a network.
API documentation: createNetworkWebhooksHttpServer
Parameters:
-
network_id(str) –Network ID.
-
name(str) –A name for easy reference to the HTTP server.
-
url(str) –The URL of the HTTP server. Once set, cannot be updated.
-
shared_secret(str | None, default:None) –A shared secret that will be included in POSTs sent to the HTTP server. This secret can be used to verify that the request was sent by Meraki.
-
payload_template(CreateNetworkWebhooksHttpServerPayloadTemplate | None, default:None) –The payload template to use when posting data to the HTTP server.
Returns:
-
NetworkWebhooksHttpServerResponse–Successful operation.
Example API response
{
"id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
"name": "Example Webhook Server",
"url": "https://www.example.com/my_custom_webhook",
"networkId": "N_12345678",
"payloadTemplate": {
"payloadTemplateId": "wpt_00001",
"name": "Meraki (included)"
}
}
create_network_webhooks_payload_template
Create a webhook payload template for a network.
API documentation: createNetworkWebhooksPayloadTemplate
Parameters:
-
network_id(str) –Network ID.
-
name(str) –The name of the new template.
-
body(str | None, default:None) –The liquid template used for the body of the webhook message. Either
bodyorbodyFilemust be specified. -
headers(list[CreateNetworkWebhooksPayloadTemplateHeadersItem] | None, default:None) –The liquid template used with the webhook headers.
-
body_file(str | None, default:None) –A Base64 encoded file containing liquid template used for the body of the webhook message. Either
bodyorbodyFilemust be specified. -
headers_file(str | None, default:None) –A Base64 encoded file containing the liquid template used with the webhook headers.
Returns:
-
NetworkWebhooksPayloadTemplateResponse–Successful operation.
Example API response
{
"payloadTemplateId": "wpt_343",
"type": "custom",
"name": "Custom Template",
"headers": [
{
"name": "Authorization",
"template": "Bearer {{sharedSecret}}"
}
],
"body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
"sharing": {
"byNetwork": {
"adminsCanModify": false
}
}
}
create_network_webhooks_webhook_test
Send a test webhook for a network.
API documentation: createNetworkWebhooksWebhookTest
Parameters:
-
network_id(str) –Network ID.
-
url(str) –The URL where the test webhook will be sent.
-
shared_secret(str | None, default:None) –The shared secret the test webhook will send. Optional. Defaults to HTTP server's shared secret. Otherwise, defaults to an empty string.
-
payload_template_id(str | None, default:None) –The ID of the payload template of the test webhook. Defaults to the HTTP server's template ID if one exists for the given URL, or Generic template ID otherwise.
-
payload_template_name(str | None, default:None) –The name of the payload template.
-
alert_type_id(str | None, default:None) –The type of alert which the test webhook will send. Optional. Defaults to power_supply_down.
Returns:
-
NetworkWebhooksWebhookTestResponse–Successful operation.
Example API response
{
"id": "1234",
"url": "https://www.example.com/path",
"status": "enqueued"
}
defer_network_firmware_upgrades_staged_events
Postpone by 1 week all pending staged upgrade stages for a network.
API documentation: deferNetworkFirmwareUpgradesStagedEvents
Parameters:
-
network_id(str) –Network ID.
Returns:
-
GetNetworkFirmwareUpgradesStagedEventsResponse–Successful operation.
Example API response
{
"products": {
"switch": {
"nextUpgrade": {
"toVersion": {
"id": "1234",
"shortName": "MS 15.2.1"
}
}
}
},
"stages": [
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Group Description"
},
"milestones": {
"scheduledFor": "2018-02-11T00:00:00Z",
"startedAt": "2018-02-11T00:00:00Z",
"completedAt": "2018-02-11T00:00:00Z",
"canceledAt": "2018-02-11T00:00:00Z"
},
"status": "Completed"
}
],
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
]
}
delete_network
Delete a network.
API documentation: deleteNetwork
Parameters:
-
network_id(str) –Network ID.
Returns:
-
None–Successful operation.
delete_network_firmware_upgrades_staged_group
Delete a Staged Upgrade Group.
API documentation: deleteNetworkFirmwareUpgradesStagedGroup
Parameters:
-
network_id(str) –Network ID.
-
group_id(str) –Group ID.
Returns:
-
None–Successful operation.
delete_network_floor_plan
Destroy a floor plan.
API documentation: deleteNetworkFloorPlan
Parameters:
-
network_id(str) –Network ID.
-
floor_plan_id(str) –Floor plan ID.
Returns:
-
None–Successful operation.
Example API response
{
"floorPlanId": "g_1234567",
"imageUrl": "https://meraki-na.s3.amazonaws.com/assets/...",
"imageUrlExpiresAt": "2019-06-11 16:04:54 +00:00",
"imageExtension": "png",
"imageMd5": "2a9edd3f4ffd80130c647d13eacb59f3",
"name": "HQ Floor Plan",
"devices": [
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}
],
"width": 100.0,
"height": 150.1,
"center": {
"lat": 37.770040510499996,
"lng": -122.38714009525
},
"bottomLeftCorner": {
"lat": 37.7696461495,
"lng": -122.3880815506
},
"bottomRightCorner": {
"lat": 37.771524649766654,
"lng": -122.38795275055205
},
"topLeftCorner": {
"lat": 37.769700101836364,
"lng": -122.3888684251381
},
"topRightCorner": {
"lat": 37.77157860210302,
"lng": -122.38873962509012
},
"floorNumber": 5.0
}
delete_network_group_policy
Delete a group policy.
API documentation: deleteNetworkGroupPolicy
Parameters:
-
network_id(str) –Network ID.
-
group_policy_id(str) –Group policy ID.
-
force(bool | None, default:None) –If true, the system deletes the GP even if there are active clients using the GP. After deletion, active clients that were assigned to that Group Policy will be left without any policy applied. Default is false.
Returns:
-
None–Successful operation.
delete_network_meraki_auth_user
Delete an 802.1X RADIUS user, or deauthorize and optionally delete a splash guest or client VPN user.
API documentation: deleteNetworkMerakiAuthUser
Parameters:
-
network_id(str) –Network ID.
-
meraki_auth_user_id(str) –Meraki auth user ID.
-
delete(bool | None, default:None) –If the ID supplied is for a splash guest or client VPN user, and that user is not authorized for any other networks in the organization, then also delete the user. 802.1X RADIUS users are always deleted regardless of this optional attribute.
Returns:
-
None–Successful operation.
delete_network_mqtt_broker
Delete an MQTT broker.
API documentation: deleteNetworkMqttBroker
Parameters:
-
network_id(str) –Network ID.
-
mqtt_broker_id(str) –Mqtt broker ID.
Returns:
-
None–Successful operation.
delete_network_pii_request
Delete a restrict processing PII request.
API documentation: deleteNetworkPiiRequest
Parameters:
-
network_id(str) –Network ID.
-
request_id(str) –Request ID.
Returns:
-
None–Successful operation.
delete_network_vlan_profile
Delete a VLAN profile of a network.
API documentation: deleteNetworkVlanProfile
Parameters:
-
network_id(str) –Network ID.
-
iname(str) –Iname.
Returns:
-
None–Successful operation.
delete_network_webhooks_http_server
Delete an HTTP server from a network.
API documentation: deleteNetworkWebhooksHttpServer
Parameters:
-
network_id(str) –Network ID.
-
http_server_id(str) –Http server ID.
Returns:
-
None–Successful operation.
delete_network_webhooks_payload_template
Destroy a webhook payload template for a network.
API documentation: deleteNetworkWebhooksPayloadTemplate
Parameters:
-
network_id(str) –Network ID.
-
payload_template_id(str) –Payload template ID.
Returns:
-
None–Successful operation.
get_network
Return a network.
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkResponse–Successful operation.
Example API response
{
"id": "N_24329156",
"organizationId": "2930418",
"name": "Main Office",
"productTypes": [
"appliance",
"switch",
"wireless"
],
"timeZone": "America/Los_Angeles",
"tags": [
"tag1",
"tag2"
],
"enrollmentString": "my-enrollment-string",
"url": "https://n1.meraki.com//n//manage/nodes/list",
"notes": "Additional description of the network",
"isBoundToConfigTemplate": false
}
get_network_alerts_history
Return the alert history for this network.
API documentation: getNetworkAlertsHistory
Parameters:
-
network_id(str) –Network ID.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkAlertsHistoryResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"occurredAt": "2022-07-11T22:35:34Z",
"alertTypeId": "settings_changed",
"alertType": "Settings changed",
"device": {
"serial": "Q3CG-G6W8-BEVR"
},
"destinations": {
"email": {
"sentAt": "2022-07-11T22:40:34Z"
},
"push": {
"sentAt": "2022-07-11T22:40:34Z"
},
"sms": {
"sentAt": "2022-07-11T22:40:34Z"
},
"webhook": {
"sentAt": "2022-07-11T22:40:34Z"
}
}
}
]
get_network_alerts_settings
Return the alert configuration for this network.
API documentation: getNetworkAlertsSettings
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkAlertsSettingsResponse–Successful operation.
Example API response
{
"defaultDestinations": {
"emails": [
"miles@meraki.com"
],
"allAdmins": true,
"snmp": true,
"httpServerIds": [
"aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M="
]
},
"alerts": [
{
"type": "gatewayDown",
"enabled": true,
"alertDestinations": {
"emails": [
"miles@meraki.com"
],
"smsNumbers": [
"+15555555555"
],
"allAdmins": false,
"snmp": false,
"httpServerIds": [
"aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M="
]
},
"filters": {
"conditions": [
{
"type": "temperature",
"unit": "celsius",
"duration": 0,
"direction": "+",
"threshold": 72.5
}
],
"failureType": "802.1X auth fail",
"lookbackWindow": 360,
"minDuration": 60,
"name": "Filter",
"period": 1800,
"priority": "",
"regex": "[a-z]",
"selector": "{\"smartSensitivity\":\"medium\",\"smartEnabled\":false,\"eventReminderPeriodSecs\":10800}",
"serials": [
"Q234-ABCD-0001",
"Q234-ABCD-0002",
"Q234-ABCD-0003"
],
"ssidNum": 1,
"tag": "tag1",
"threshold": 30,
"timeout": 60
}
}
],
"muting": {
"byPortSchedules": {
"enabled": true
}
}
}
get_network_bluetooth_client
Return a Bluetooth client.
API documentation: getNetworkBluetoothClient
Parameters:
-
network_id(str) –Network ID.
-
bluetooth_client_id(str) –Bluetooth client ID.
-
include_connectivity_history(bool | None, default:None) –Include the connectivity history for this client.
-
connectivity_history_timespan(int | None, default:None) –The timespan, in seconds, for the connectivityHistory data. By default 1 day, 86400, will be used.
Returns:
-
GetNetworkBluetoothClientResponse–Successful operation.
Example API response
{
"id": "1284392014819",
"mac": "22:33:44:55:66:77",
"networkId": "N_24329156",
"name": "My Device",
"deviceName": "Bose QuietComfort 35",
"manufacturer": "Bose",
"lastSeen": 1526087474,
"seenByDeviceMac": "00:11:22:33:44:55",
"inSightAlert": false,
"outOfSightAlert": false,
"tags": [
"tag1",
"tag2"
]
}
get_network_bluetooth_clients
List the Bluetooth clients seen by APs in this network.
API documentation: getNetworkBluetoothClients
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 7 days from today.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 7 days. The default is 1 day.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 5 - 1000. Default is 10.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
include_connectivity_history(bool | None, default:None) –Include the connectivity history for this client.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkBluetoothClientResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "1284392014819",
"mac": "22:33:44:55:66:77",
"networkId": "N_24329156",
"name": "My Device",
"deviceName": "Bose QuietComfort 35",
"manufacturer": "Bose",
"lastSeen": 1526087474,
"seenByDeviceMac": "00:11:22:33:44:55",
"inSightAlert": false,
"outOfSightAlert": false,
"tags": [
"tag1",
"tag2"
]
}
]
get_network_client
Return the client associated with the given identifier.
API documentation: getNetworkClient
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
Returns:
-
GetNetworkClientResponse–Successful operation.
Example API response
{
"id": "k74272e",
"mac": "22:33:44:55:66:77",
"ip": "1.2.3.4",
"ip6": "2001:db8:3c4d:15::1",
"ip6Local": "fe80:0:0:0:1430:aac1:6826:75ab",
"description": "Miles's phone",
"firstSeen": 1518365681,
"lastSeen": 1526087474,
"manufacturer": "Apple",
"model": "iPhone",
"os": "iOS",
"user": "milesmeraki",
"vlan": "100",
"namedVlan": "100",
"ssid": "My SSID",
"switchport": "My switch port",
"wirelessCapabilities": "802.11b - 2.4 GHz",
"smInstalled": true,
"recentDeviceMac": "22:33:44:55:66:77",
"recentDeviceId": "15551677676480",
"recentDeviceName": "00:11:22:33:44:55",
"recentDeviceSerial": "Q234-ABCD-5678",
"recentDeviceConnection": "Wired",
"clientVpnConnections": [
{
"remoteIp": "1.2.3.4",
"connectedAt": 1522613355,
"disconnectedAt": 1522613360
}
],
"lldp": [
[
"System name",
"Some system name"
],
[
"System description",
"Some system description"
],
[
"Port ID",
"1"
],
[
"Chassis ID",
"00:18:0a:00:00:00"
],
[
"Port description",
"eth0"
],
[
"System capabilities",
"Two-port MAC Relay"
]
],
"cdp": [
[
"System name",
"Some system name"
],
[
"System description",
"Some system description"
],
[
"Port ID",
"1"
],
[
"Chassis ID",
"00:18:0a:00:00:00"
],
[
"Port description",
"eth0"
],
[
"System capabilities",
"Two-port MAC Relay"
]
],
"status": "Online",
"notes": "My client note",
"deviceTypePrediction": "iPhone SE, iOS9.3.5"
}
get_network_client_policy
Return the policy assigned to a client on the network.
API documentation: getNetworkClientPolicy
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
Returns:
-
NetworkClientPolicyResponse–Successful operation.
Example API response
{
"mac": "00:11:22:33:44:55",
"devicePolicy": "Different policies by SSID",
"groupPolicyId": "101",
"policiesBySsid": [
{
"ssidNumber": 2,
"devicePolicy": "Group policy",
"groupPolicyId": "101"
}
]
}
get_network_client_splash_authorization_status
Return the splash authorization for a client, for each SSID they've associated with through splash.
API documentation: getNetworkClientSplashAuthorizationStatus
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
Returns:
-
NetworkClientSplashAuthorizationStatusResponse–Successful operation.
Example API response
{
"ssids": {
"0": {
"isAuthorized": true,
"authorizedAt": "2018-05-12T00:00:00Z",
"expiresAt": "2018-05-12T01:00:00Z"
}
}
}
get_network_client_traffic_history
Return the client's network traffic data over time.
API documentation: getNetworkClientTrafficHistory
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkClientTrafficHistoryResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"ts": "2018-02-11T00:00:00.090210Z",
"application": "Google",
"destination": "www.google.com",
"protocol": "TCP",
"port": 443,
"recv": 61.0,
"sent": 138.0,
"numFlows": 5,
"activeSeconds": 240
}
]
get_network_client_usage_history
Return the client's daily usage history.
API documentation: getNetworkClientUsageHistory
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
Returns:
-
PaginatedResponse[GetNetworkClientUsageHistoryResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"received": 61.0,
"sent": 138.0,
"ts": "2018-02-11T00:00:00.090210Z"
}
]
get_network_clients
List the clients that have used this network in the timespan.
API documentation: getNetworkClients
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 5000. Default is 10.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
statuses(GetNetworkClientsStatuses | None, default:None) –Filters clients based on status. Can be one of 'Online' or 'Offline'.
-
ip(str | None, default:None) –Filters clients based on a partial or full match for the ip address field.
-
ip6(str | None, default:None) –Filters clients based on a partial or full match for the ip6 address field.
-
ip6_local(str | None, default:None) –Filters clients based on a partial or full match for the ip6Local address field.
-
mac(str | None, default:None) –Filters clients based on a partial or full match for the mac address field.
-
os(str | None, default:None) –Filters clients based on a partial or full match for the os (operating system) field.
-
psk_group(str | None, default:None) –Filters clients based on partial or full match for the iPSK name field.
-
description(str | None, default:None) –Filters clients based on a partial or full match for the description field.
-
vlan(str | None, default:None) –Filters clients based on the full match for the VLAN field.
-
named_vlan(str | None, default:None) –Filters clients based on the partial or full match for the named VLAN field.
-
recent_device_connections(GetNetworkClientsRecentDeviceConnections | None, default:None) –Filters clients based on recent connection type. Can be one of 'Wired' or 'Wireless'.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkClientsResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "k74272e",
"mac": "22:33:44:55:66:77",
"ip": "1.2.3.4",
"ip6": "2001:db8:3c4d:15::1",
"description": "Miles's phone",
"firstSeen": 1518365681,
"lastSeen": 1526087474,
"manufacturer": "Apple",
"os": "iOS",
"user": "milesmeraki",
"vlan": "100",
"ssid": "My SSID",
"switchport": "My switch port",
"wirelessCapabilities": "802.11b - 2.4 GHz",
"smInstalled": true,
"recentDeviceMac": "22:33:44:55:66:77",
"status": "Online",
"usage": {
"sent": 138.0,
"recv": 61.0
},
"namedVlan": "My VLAN",
"adaptivePolicyGroup": "2: Infrastructure",
"deviceTypePrediction": "iPhone SE, iOS9.3.5",
"recentDeviceSerial": "Q234-ABCD-5678",
"recentDeviceName": "00:11:22:33:44:55",
"recentDeviceConnection": "Wired",
"notes": "My AP's note",
"ip6Local": "fe80:0:0:0:1430:aac1:6826:75ab",
"groupPolicy8021x": "Student_Access",
"pskGroup": "Group 1"
}
]
get_network_clients_application_usage
Return the application usage data for clients.
API documentation: getNetworkClientsApplicationUsage
Parameters:
-
network_id(str) –Network ID.
-
clients(str) –A list of client keys, MACs or IPs separated by comma.
-
ssid_number(GetNetworkClientsApplicationUsageSsidNumber | None, default:None) –An SSID number to include. If not specified, events for all SSIDs will be returned.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
t1(str | None, default:None) –The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkClientsApplicationUsageResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"clientId": "k74272e",
"clientIp": "1.2.3.4",
"clientMac": "00:11:22:33:44:55",
"applicationUsage": [
{
"application": "Meraki HTTPS",
"received": 61,
"sent": 138
}
]
}
]
get_network_clients_bandwidth_usage_history
Returns a timeseries of total traffic consumption rates for all clients on a network within a given timespan, in megabits per second.
API documentation: getNetworkClientsBandwidthUsageHistory
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 30 days from today.
-
t1(str | None, default:None) –The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkClientsBandwidthUsageHistoryResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"ts": "2018-02-11T00:00:00.090210Z",
"total": 345.0,
"upstream": 200.0,
"downstream": 145.0
}
]
get_network_clients_overview
Return overview statistics for network clients.
API documentation: getNetworkClientsOverview
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
t1(str | None, default:None) –The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
resolution(int | None, default:None) –The time resolution in seconds for returned data. The valid resolutions are: 7200, 86400, 604800, 2629746. The default is 604800.
Returns:
-
GetNetworkClientsOverviewResponse–Successful operation.
Example API response
{
"counts": {
"total": 100,
"withHeavyUsage": 2
},
"usages": {
"average": 2048,
"withHeavyUsageAverage": 5345
}
}
get_network_clients_usage_histories
Return the usage histories for clients.
API documentation: getNetworkClientsUsageHistories
Parameters:
-
network_id(str) –Network ID.
-
clients(str) –A list of client keys, MACs or IPs separated by comma.
-
ssid_number(GetNetworkClientsUsageHistoriesSsidNumber | None, default:None) –An SSID number to include. If not specified, events for all SSIDs will be returned.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
t1(str | None, default:None) –The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkClientsUsageHistoriesResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"clientId": "k74272e",
"clientIp": "1.2.3.4",
"clientMac": "00:11:22:33:44:55",
"usageHistory": [
{
"received": 61.0,
"sent": 138.0,
"ts": "2018-02-11T00:00:00.090210Z"
}
]
}
]
get_network_devices
List the devices in a network.
API documentation: getNetworkDevices
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[GetNetworkDevicesResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
" recently-added "
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"floorPlanId": "g_2176982374",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
],
"beaconIdParams": {
"uuid": "00000000-0000-0000-0000-000000000000",
"major": 5,
"minor": 3
}
}
]
get_network_events
List the events for the network.
API documentation: getNetworkEvents
Parameters:
-
network_id(str) –Network ID.
-
product_type(GetNetworkEventsProductType | None, default:None) –The product type to fetch events for. This parameter is required for networks with multiple device types. Valid types are wireless, appliance, switch, systemsManager, camera, cellularGateway, wirelessController, campusGateway, and secureConnect.
-
included_event_types(list[str] | None, default:None) –A list of event types. The returned events will be filtered to only include events with these types.
-
excluded_event_types(list[str] | None, default:None) –A list of event types. The returned events will be filtered to exclude events with these types.
-
device_mac(str | None, default:None) –The MAC address of the Meraki device which the list of events will be filtered with.
-
device_serial(str | None, default:None) –The serial of the Meraki device which the list of events will be filtered with.
-
device_name(str | None, default:None) –The name of the Meraki device which the list of events will be filtered with.
-
client_ip(str | None, default:None) –The IP of the client which the list of events will be filtered with. Only supported for track-by-IP networks.
-
client_mac(str | None, default:None) –The MAC address of the client which the list of events will be filtered with. Only supported for track-by-MAC networks.
-
client_name(str | None, default:None) –The name, or partial name, of the client which the list of events will be filtered with.
-
sm_device_mac(str | None, default:None) –The MAC address of the Systems Manager device which the list of events will be filtered with.
-
sm_device_name(str | None, default:None) –The name of the Systems Manager device which the list of events will be filtered with.
-
event_details(str | None, default:None) –The details of the event(Catalyst device only) which the list of events will be filtered with.
-
event_severity(str | None, default:None) –The severity of the event(Catalyst device only) which the list of events will be filtered with.
-
is_catalyst(bool | None, default:None) –Boolean indicating that whether it is a Catalyst device. For Catalyst device, eventDetails and eventSeverity can be used to filter events.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000. Default is 10.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'prev') –direction to paginate, either "next" or "prev" (default) page.
-
event_log_end_time(str | None, default:None) –ISO8601 Zulu/UTC time, to use in conjunction with starting_after, to retrieve events within a time window.
Returns:
-
PaginatedResponse[GetNetworkEventsResponseEventsItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
{
"message": "Some error",
"pageStartAt": "2018-02-11T00:00:00.090210Z",
"pageEndAt": "2018-02-11T00:00:00.090210Z",
"events": [
{
"occurredAt": "2018-02-11T00:00:00.090210Z",
"networkId": "N_24329156",
"type": "association",
"description": "802.11 association",
"category": "80211",
"clientId": "k74272e",
"clientDescription": "Miles's phone",
"clientMac": "22:33:44:55:66:77",
"deviceSerial": "Q234-ABCD-5678",
"deviceName": "My AP",
"ssidNumber": 1,
"eventData": {
"radio": "1",
"vap": "1",
"client_mac": "22:33:44:55:66:77",
"client_ip": "1.2.3.4",
"channel": "36",
"rssi": "12",
"aid": "2104009183"
}
}
]
}
get_network_events_event_types
List the event type to human-readable description.
API documentation: getNetworkEventsEventTypes
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[GetNetworkEventsEventTypesResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"category": "802.11",
"type": "association",
"description": "802.11 association"
}
]
get_network_firmware_upgrades
Get firmware upgrade information for a network.
API documentation: getNetworkFirmwareUpgrades
Parameters:
-
network_id(str) –Network ID.
Returns:
-
GetNetworkFirmwareUpgradesResponse–Successful operation.
Example API response
{
"upgradeWindow": {
"dayOfWeek": "sun",
"hourOfDay": "4:00"
},
"timezone": "America/Los_Angeles",
"products": {
"wireless": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"predownload": {
"enabled": false
},
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"appliance": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"switch": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"camera": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"cellularGateway": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"sensor": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"wirelessController": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"secureConnect": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
}
}
}
get_network_firmware_upgrades_staged_events
Get the Staged Upgrade Event from a network.
API documentation: getNetworkFirmwareUpgradesStagedEvents
Parameters:
-
network_id(str) –Network ID.
Returns:
-
GetNetworkFirmwareUpgradesStagedEventsResponse–Successful operation.
Example API response
{
"products": {
"switch": {
"nextUpgrade": {
"toVersion": {
"id": "1234",
"shortName": "MS 15.2.1"
}
}
}
},
"stages": [
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Group Description"
},
"milestones": {
"scheduledFor": "2018-02-11T00:00:00Z",
"startedAt": "2018-02-11T00:00:00Z",
"completedAt": "2018-02-11T00:00:00Z",
"canceledAt": "2018-02-11T00:00:00Z"
},
"status": "Completed"
}
],
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
]
}
get_network_firmware_upgrades_staged_group
Get a Staged Upgrade Group from a network.
API documentation: getNetworkFirmwareUpgradesStagedGroup
Parameters:
-
network_id(str) –Network ID.
-
group_id(str) –Group ID.
Returns:
-
NetworkFirmwareUpgradesStagedGroupResponse–Successful operation.
Example API response
{
"groupId": "1234",
"name": "My Staged Upgrade Group",
"description": "The description of the group",
"isDefault": false,
"assignedDevices": {
"devices": [
{
"serial": "Q234-ABCD-5678",
"name": "Device Name"
}
],
"switchStacks": [
{
"id": "1234",
"name": "Stack Name"
}
]
}
}
get_network_firmware_upgrades_staged_groups
List of Staged Upgrade Groups in a network.
API documentation: getNetworkFirmwareUpgradesStagedGroups
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkFirmwareUpgradesStagedGroupResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"groupId": "1234",
"name": "My Staged Upgrade Group",
"description": "The description of the group",
"isDefault": false,
"assignedDevices": {
"devices": [
{
"serial": "Q234-ABCD-5678",
"name": "Device Name"
}
],
"switchStacks": [
{
"id": "1234",
"name": "Stack Name"
}
]
}
}
]
get_network_firmware_upgrades_staged_stages
Order of Staged Upgrade Groups in a network.
API documentation: getNetworkFirmwareUpgradesStagedStages
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkFirmwareUpgradesStagedStagesResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Description"
}
}
]
get_network_floor_plan
Find a floor plan by ID.
API documentation: getNetworkFloorPlan
Parameters:
-
network_id(str) –Network ID.
-
floor_plan_id(str) –Floor plan ID.
Returns:
-
NetworkFloorPlanResponse–Successful operation.
Example API response
{
"floorPlanId": "g_1234567",
"imageUrl": "https://meraki-na.s3.amazonaws.com/assets/...",
"imageUrlExpiresAt": "2019-06-11 16:04:54 +00:00",
"imageExtension": "png",
"imageMd5": "2a9edd3f4ffd80130c647d13eacb59f3",
"name": "HQ Floor Plan",
"devices": [
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}
],
"width": 100.0,
"height": 150.1,
"center": {
"lat": 37.770040510499996,
"lng": -122.38714009525
},
"bottomLeftCorner": {
"lat": 37.7696461495,
"lng": -122.3880815506
},
"bottomRightCorner": {
"lat": 37.771524649766654,
"lng": -122.38795275055205
},
"topLeftCorner": {
"lat": 37.769700101836364,
"lng": -122.3888684251381
},
"topRightCorner": {
"lat": 37.77157860210302,
"lng": -122.38873962509012
},
"floorNumber": 5.0
}
get_network_floor_plans
List the floor plans that belong to your network.
API documentation: getNetworkFloorPlans
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkFloorPlanResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"floorPlanId": "g_1234567",
"imageUrl": "https://meraki-na.s3.amazonaws.com/assets/...",
"imageUrlExpiresAt": "2019-06-11 16:04:54 +00:00",
"imageExtension": "png",
"imageMd5": "2a9edd3f4ffd80130c647d13eacb59f3",
"name": "HQ Floor Plan",
"devices": [
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}
],
"width": 100.0,
"height": 150.1,
"center": {
"lat": 37.770040510499996,
"lng": -122.38714009525
},
"bottomLeftCorner": {
"lat": 37.7696461495,
"lng": -122.3880815506
},
"bottomRightCorner": {
"lat": 37.771524649766654,
"lng": -122.38795275055205
},
"topLeftCorner": {
"lat": 37.769700101836364,
"lng": -122.3888684251381
},
"topRightCorner": {
"lat": 37.77157860210302,
"lng": -122.38873962509012
},
"floorNumber": 5.0
}
]
get_network_group_policies
List the group policies in a network.
API documentation: getNetworkGroupPolicies
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkGroupPolicyResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"groupPolicyId": "101",
"scheduling": {
"enabled": true,
"monday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"tuesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"wednesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"thursday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"friday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"saturday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"sunday": {
"active": true,
"from": "9:00",
"to": "17:00"
}
},
"bandwidth": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"firewallAndTrafficShaping": {
"settings": "custom",
"trafficShapingRules": [
{
"definitions": [
{
"type": "host",
"value": "google.com"
}
],
"perClientBandwidthLimits": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"dscpTagValue": 0,
"pcpTagValue": 0,
"priority": "normal"
}
],
"l3FirewallRules": [
{
"comment": "Allow TCP traffic to subnet with HTTP servers.",
"policy": "allow",
"protocol": "tcp",
"destPort": "443",
"destCidr": "192.168.1.0/24"
}
],
"l7FirewallRules": [
{
"policy": "deny",
"type": "host",
"value": "google.com"
}
]
},
"contentFiltering": {
"allowedUrlPatterns": {
"settings": "network default",
"patterns": []
},
"blockedUrlPatterns": {
"settings": "append",
"patterns": [
"http://www.example.com",
"http://www.betting.com"
]
},
"blockedUrlCategories": {
"settings": "override",
"categories": [
"meraki:contentFiltering/category/1",
"meraki:contentFiltering/category/7"
]
}
},
"splashAuthSettings": "bypass",
"vlanTagging": {
"settings": "custom",
"vlanId": "1"
},
"bonjourForwarding": {
"settings": "custom",
"rules": [
{
"description": "A simple bonjour rule",
"vlanId": "1",
"services": [
"All Services"
]
}
]
}
}
]
get_network_group_policy
Display a group policy.
API documentation: getNetworkGroupPolicy
Parameters:
-
network_id(str) –Network ID.
-
group_policy_id(str) –Group policy ID.
Returns:
-
NetworkGroupPolicyResponse–Successful operation.
Example API response
{
"groupPolicyId": "101",
"scheduling": {
"enabled": true,
"monday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"tuesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"wednesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"thursday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"friday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"saturday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"sunday": {
"active": true,
"from": "9:00",
"to": "17:00"
}
},
"bandwidth": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"firewallAndTrafficShaping": {
"settings": "custom",
"trafficShapingRules": [
{
"definitions": [
{
"type": "host",
"value": "google.com"
}
],
"perClientBandwidthLimits": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"dscpTagValue": 0,
"pcpTagValue": 0,
"priority": "normal"
}
],
"l3FirewallRules": [
{
"comment": "Allow TCP traffic to subnet with HTTP servers.",
"policy": "allow",
"protocol": "tcp",
"destPort": "443",
"destCidr": "192.168.1.0/24"
}
],
"l7FirewallRules": [
{
"policy": "deny",
"type": "host",
"value": "google.com"
}
]
},
"contentFiltering": {
"allowedUrlPatterns": {
"settings": "network default",
"patterns": []
},
"blockedUrlPatterns": {
"settings": "append",
"patterns": [
"http://www.example.com",
"http://www.betting.com"
]
},
"blockedUrlCategories": {
"settings": "override",
"categories": [
"meraki:contentFiltering/category/1",
"meraki:contentFiltering/category/7"
]
}
},
"splashAuthSettings": "bypass",
"vlanTagging": {
"settings": "custom",
"vlanId": "1"
},
"bonjourForwarding": {
"settings": "custom",
"rules": [
{
"description": "A simple bonjour rule",
"vlanId": "1",
"services": [
"All Services"
]
}
]
}
}
get_network_health_alerts
Return all global alerts on this network.
API documentation: getNetworkHealthAlerts
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[GetNetworkHealthAlertsResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "1234",
"category": "Connectivity",
"type": "Poor connectivity to the Meraki cloud",
"severity": "info",
"scope": {
"devices": [
{
"url": "https://n1.meraki.com//n//manage/nodes/new_list/000000000000",
"name": "My AP",
"productType": "switch",
"serial": "Q234-ABCD-5678",
"mac": "00:11:22:33:44:55",
"lldp": {
"portId": "1"
},
"clients": [
{
"mac": "22:33:44:55:66:77"
}
]
}
],
"applications": [
{
"url": "https://n1.meraki.com//n//manage/nodes/list",
"name": "Application on application server"
}
],
"peers": [
{
"url": "https://n1.meraki.com//n//manage/nodes/list",
"network": {
"name": "Main Office",
"id": "N_24329156"
}
}
]
}
}
]
get_network_meraki_auth_user
Return the Meraki Auth splash guest, RADIUS, or client VPN user.
API documentation: getNetworkMerakiAuthUser
Parameters:
-
network_id(str) –Network ID.
-
meraki_auth_user_id(str) –Meraki auth user ID.
Returns:
-
NetworkMerakiAuthUserResponse–Successful operation.
Example API response
{
"id": "aGlAaGkuY29t",
"email": "miles@meraki.com",
"name": "Miles Meraki",
"createdAt": "2018-02-11T00:00:00.090210Z",
"accountType": "802.1X",
"isAdmin": false,
"authorizations": [
{
"ssidNumber": 1,
"authorizedZone": "Store WiFi",
"expiresAt": "2018-03-13T00:00:00.090210Z",
"authorizedByName": "Miles Meraki",
"authorizedByEmail": "miles@meraki.com"
}
]
}
get_network_meraki_auth_users
List the authorized users configured under Meraki Authentication for a network (splash guest or RADIUS users for a wireless network, or client VPN users for a MX network).
API documentation: getNetworkMerakiAuthUsers
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkMerakiAuthUserResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "aGlAaGkuY29t",
"email": "miles@meraki.com",
"name": "Miles Meraki",
"createdAt": "2018-02-11T00:00:00.090210Z",
"accountType": "802.1X",
"isAdmin": false,
"authorizations": [
{
"ssidNumber": 1,
"authorizedZone": "Store WiFi",
"expiresAt": "2018-03-13T00:00:00.090210Z",
"authorizedByName": "Miles Meraki",
"authorizedByEmail": "miles@meraki.com"
}
]
}
]
get_network_mqtt_broker
Return an MQTT broker.
API documentation: getNetworkMqttBroker
Parameters:
-
network_id(str) –Network ID.
-
mqtt_broker_id(str) –Mqtt broker ID.
Returns:
-
NetworkMqttBrokerResponse–Successful operation.
Example API response
{
"id": "1234",
"name": "MQTT_Broker_1",
"host": "1.2.3.4",
"port": 443,
"security": {
"mode": "tls",
"tls": {
"hasCaCertificate": true,
"verifyHostnames": true
}
},
"authentication": {
"username": "milesmeraki"
}
}
get_network_mqtt_brokers
List the MQTT brokers for this network.
API documentation: getNetworkMqttBrokers
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkMqttBrokerResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "1234",
"name": "MQTT_Broker_1",
"host": "1.2.3.4",
"port": 443,
"security": {
"mode": "tls",
"tls": {
"hasCaCertificate": true,
"verifyHostnames": true
}
},
"authentication": {
"username": "milesmeraki"
}
}
]
get_network_netflow
Return the NetFlow traffic reporting settings for a network.
API documentation: getNetworkNetflow
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkNetflowResponse–Successful operation.
Example API response
{
"reportingEnabled": true,
"collectorIp": "1.2.3.4",
"collectorPort": 443,
"etaEnabled": true,
"etaDstPort": 443
}
get_network_network_health_channel_utilization
Get the channel utilization over each radio for all APs in a network.
API documentation: getNetworkNetworkHealthChannelUtilization
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
t1(str | None, default:None) –The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
resolution(int | None, default:None) –The time resolution in seconds for returned data. The valid resolutions are: 600. The default is 600.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 100. Default is 10.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkNetworkHealthChannelUtilizationResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"serial": "Q234-ABCD-5678",
"model": "MR34",
"tags": " recently-added ",
"wifi0": [
{
"startTime": "2018-10-09T22:18:27Z",
"endTime": "2018-10-09T22:19:27Z",
"utilizationTotal": 33.84,
"utilization80211": 32.0,
"utilizationNon80211": 1.84
}
],
"wifi1": [
{
"startTime": "2018-10-09T22:18:27Z",
"endTime": "2018-10-09T22:19:27Z",
"utilizationTotal": 33.84,
"utilization80211": 32.0,
"utilizationNon80211": 1.84
}
]
}
]
get_network_pii_pii_keys
List the keys required to access Personally Identifiable Information (PII) for a given identifier.
API documentation: getNetworkPiiPiiKeys
Parameters:
-
network_id(str) –Network ID.
-
username(str | None, default:None) –The username of a Systems Manager user.
-
email(str | None, default:None) –The email of a network user account or a Systems Manager device.
-
mac(str | None, default:None) –The MAC of a network client device or a Systems Manager device.
-
serial(str | None, default:None) –The serial of a Systems Manager device.
-
imei(str | None, default:None) –The IMEI of a Systems Manager device.
-
bluetooth_mac(str | None, default:None) –The MAC of a Bluetooth client.
Returns:
-
GetNetworkPiiPiiKeysResponse–Successful operation.
Example API response
{
"N_1234": {
"macs": [
"00:77:00:77:00:77"
],
"emails": [
"fake@example.com"
],
"usernames": [
"fakename"
],
"serials": [
"Q234-ABCD-0001"
],
"imeis": [
"990000862471854"
],
"bluetoothMacs": [
"00:77:00:77:00:77"
]
}
}
get_network_pii_request
Return a PII request.
API documentation: getNetworkPiiRequest
Parameters:
-
network_id(str) –Network ID.
-
request_id(str) –Request ID.
Returns:
-
NetworkPiiRequestResponse–Successful operation.
Example API response
{
"id": "1234",
"organizationWide": false,
"networkId": "N_1234",
"type": "delete",
"mac": "00:77:00:77:00:77",
"datasets": "['usage', 'events']",
"status": "Completed",
"createdAt": 1524692227,
"completedAt": 1524702227
}
get_network_pii_requests
List the PII requests for this network or organization.
API documentation: getNetworkPiiRequests
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkPiiRequestResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "1234",
"organizationWide": false,
"networkId": "N_1234",
"type": "delete",
"mac": "00:77:00:77:00:77",
"datasets": "['usage', 'events']",
"status": "Completed",
"createdAt": 1524692227,
"completedAt": 1524702227
}
]
get_network_pii_sm_devices_for_key
Given a piece of Personally Identifiable Information (PII), return the Systems Manager device ID(s) associated with that identifier.
API documentation: getNetworkPiiSmDevicesForKey
Parameters:
-
network_id(str) –Network ID.
-
username(str | None, default:None) –The username of a Systems Manager user.
-
email(str | None, default:None) –The email of a network user account or a Systems Manager device.
-
mac(str | None, default:None) –The MAC of a network client device or a Systems Manager device.
-
serial(str | None, default:None) –The serial of a Systems Manager device.
-
imei(str | None, default:None) –The IMEI of a Systems Manager device.
-
bluetooth_mac(str | None, default:None) –The MAC of a Bluetooth client.
Returns:
-
GetNetworkPiiSmDevicesForKeyResponse–Successful operation.
Example API response
{
"N_1234": [
"1099541095293"
]
}
get_network_pii_sm_owners_for_key
Given a piece of Personally Identifiable Information (PII), return the Systems Manager owner ID(s) associated with that identifier.
API documentation: getNetworkPiiSmOwnersForKey
Parameters:
-
network_id(str) –Network ID.
-
username(str | None, default:None) –The username of a Systems Manager user.
-
email(str | None, default:None) –The email of a network user account or a Systems Manager device.
-
mac(str | None, default:None) –The MAC of a network client device or a Systems Manager device.
-
serial(str | None, default:None) –The serial of a Systems Manager device.
-
imei(str | None, default:None) –The IMEI of a Systems Manager device.
-
bluetooth_mac(str | None, default:None) –The MAC of a Bluetooth client.
Returns:
-
GetNetworkPiiSmDevicesForKeyResponse–Successful operation.
Example API response
{
"N_1234": [
"1099541095293"
]
}
get_network_policies_by_client
Get policies for all clients with policies.
API documentation: getNetworkPoliciesByClient
Parameters:
-
network_id(str) –Network ID.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000. Default is 50.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkPoliciesByClientResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"name": "my phone",
"clientId": "abc",
"assigned": [
{
"name": "Allowed",
"type": "ssid",
"groupPolicyId": "100",
"ssid": [
{
"ssidNumber": 1
}
]
}
]
}
]
get_network_settings
Return the settings for a network.
API documentation: getNetworkSettings
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkSettingsResponse–Successful operation.
Example API response
{
"localStatusPageEnabled": true,
"remoteStatusPageEnabled": true,
"localStatusPage": {
"authentication": {
"enabled": false,
"username": "admin"
}
},
"securePort": {
"enabled": false
},
"fips": {
"enabled": true
},
"namedVlans": {
"enabled": true
}
}
get_network_snmp
Return the SNMP settings for a network.
API documentation: getNetworkSnmp
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkSnmpResponse–Successful operation.
Example API response
{
"access": "users",
"communityString": "sample",
"users": [
{
"username": "AzureDiamond",
"passphrase": "hunter2"
}
]
}
get_network_splash_login_attempts
List the splash login attempts for a network.
API documentation: getNetworkSplashLoginAttempts
Parameters:
-
network_id(str) –Network ID.
-
ssid_number(GetNetworkSplashLoginAttemptsSsidNumber | None, default:None) –Only return the login attempts for the specified SSID.
-
login_identifier(str | None, default:None) –The username, email, or phone number used during login.
-
timespan(int | None, default:None) –The timespan, in seconds, for the login attempts. The period will be from [timespan] seconds ago until now. The maximum timespan is 3 months.
Returns:
-
PaginatedResponse[GetNetworkSplashLoginAttemptsResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"name": "Miles Meraki",
"login": "miles@meraki.com",
"ssid": "My SSID",
"loginAt": "2018-02-11T00:00:00.090210Z",
"gatewayDeviceMac": "00:11:22:33:44:55",
"clientMac": "22:33:44:55:66:77",
"clientId": "k74272e",
"authorization": "success"
}
]
get_network_syslog_servers
List the syslog servers for a network.
API documentation: getNetworkSyslogServers
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkSyslogServersResponse–Successful operation.
Example API response
{
"servers": [
{
"host": "1.2.3.4",
"port": 443,
"roles": [
"Wireless event log",
"URLs"
]
}
]
}
get_network_topology_link_layer
List the LLDP and CDP information for all discovered devices and connections in a network.
API documentation: getNetworkTopologyLinkLayer
Parameters:
-
network_id(str) –Network ID.
Returns:
-
GetNetworkTopologyLinkLayerResponse–Successful operation.
Example API response
{
"nodes": [
{
"derivedId": "aabbccddeeff",
"mac": "AA:BB:CC:DD:EE:FF",
"type": "device",
"root": true,
"device": {
"serial": "Q2UN-A44e-CU4L",
"name": "Living Room Gateway",
"model": "GX20",
"productType": "appliance",
"status": "online",
"lastReportedAt": "2021-06-24T10:23:12z",
"clients": {
"counts": {
"total": 8
}
},
"uplinks": [
{
"vlanId": 0
}
]
},
"discovered": {
"lldp": {
"chassisId": "12345",
"systemName": "Non-Meraki device",
"systemDescription": "Router and Switch Device",
"systemCapabilities": [
"router",
"switch"
],
"managementAddress": "10.130.105.154"
},
"cdp": {
"platform": "Cisco IOS",
"deviceId": "switch01.example.com",
"address": "192.168.1.1",
"capabilities": [
"router",
"switch"
],
"managementAddress": "192.168.1.1"
}
},
"stack": {
"id": 98765,
"name": "Corp Stack",
"clients": {
"counts": {
"total": 14
}
}
}
}
],
"links": [
{
"ends": [
{
"node": {
"derivedId": "34564",
"type": "stack"
},
"device": {
"serial": "Q2UN-E55e-KO6L",
"name": "Study Switch 2"
},
"discovered": {
"lldp": {
"portId": "Port 20",
"portDescription": "eth0"
},
"cdp": {
"portId": "Port 20",
"nativeVlan": 102
}
}
}
],
"lastReportedAt": "2021-06-25T14:56:27z"
}
],
"errors": []
}
get_network_traffic
Return the traffic analysis data for this network.
API documentation: getNetworkTraffic
Parameters:
-
network_id(str) –Network ID.
-
t0(str | None, default:None) –The beginning of the timespan for the data. The maximum lookback period is 30 days from today.
-
timespan(float | None, default:None) –The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 30 days.
-
device_type(GetNetworkTrafficDeviceType | None, default:None) –Filter the data by device type: 'combined', 'wireless', 'switch' or 'appliance'. Defaults to 'combined'. When using 'combined', for each rule the data will come from the device type with the most usage.
Returns:
-
PaginatedResponse[GetNetworkTrafficResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"application": "Gmail",
"destination": "2.3.4.5",
"protocol": "TCP",
"port": 443,
"sent": 138.0,
"recv": 61.0,
"numClients": 7,
"activeTime": 77000,
"flows": 300
}
]
get_network_traffic_analysis
Return the traffic analysis settings for a network.
API documentation: getNetworkTrafficAnalysis
Parameters:
-
network_id(str) –Network ID.
Returns:
-
NetworkTrafficAnalysisResponse–Successful operation.
Example API response
{
"mode": "disabled",
"customPieChartItems": [
{
"name": "Item from hostname",
"type": "host",
"value": "example.com"
}
]
}
get_network_traffic_shaping_application_categories
Returns the application categories for traffic shaping rules.
API documentation: getNetworkTrafficShapingApplicationCategories
Parameters:
-
network_id(str) –Network ID.
Returns:
-
GetNetworkTrafficShapingApplicationCategoriesResponse–Successful operation.
Example API response
{
"applicationCategories": [
{
"id": "meraki:layer7/category/24",
"name": "Advertising",
"applications": [
{
"id": "meraki:layer7/application/5",
"name": "Advertising.com"
}
]
}
]
}
get_network_traffic_shaping_dscp_tagging_options
Returns the available DSCP tagging options for your traffic shaping rules.
API documentation: getNetworkTrafficShapingDscpTaggingOptions
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[GetNetworkTrafficShapingDscpTaggingOptionsResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"dscpTagValue": 10,
"description": "AF11 - High Throughput, Latency Insensitive, Low Drop"
},
{
"dscpTagValue": 12,
"description": "AF12 - High Throughput, Latency Insensitive, Medium Drop"
},
{
"dscpTagValue": 14,
"description": "AF13 - High Throughput, Latency Insensitive, High Drop"
},
{
"dscpTagValue": 18,
"description": "AF21 - Low Latency Data, Low Drop"
}
]
get_network_vlan_profile
Get an existing VLAN profile of a network.
API documentation: getNetworkVlanProfile
Parameters:
-
network_id(str) –Network ID.
-
iname(str) –Iname.
Returns:
-
NetworkVlanProfileResponse–Successful operation.
Example API response
{
"iname": "Profile1",
"name": "My VLAN profile name",
"isDefault": false,
"vlanNames": [
{
"name": "named-1",
"vlanId": "1",
"adaptivePolicyGroup": {
"id": "791",
"name": "Infrastructure"
}
}
],
"vlanGroups": [
{
"name": "named-group-1",
"vlanIds": "2,5-7"
}
]
}
get_network_vlan_profiles
List VLAN profiles for a network.
API documentation: getNetworkVlanProfiles
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkVlanProfileResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"iname": "Profile1",
"name": "My VLAN profile name",
"isDefault": false,
"vlanNames": [
{
"name": "named-1",
"vlanId": "1",
"adaptivePolicyGroup": {
"id": "791",
"name": "Infrastructure"
}
}
],
"vlanGroups": [
{
"name": "named-group-1",
"vlanIds": "2,5-7"
}
]
}
]
get_network_vlan_profiles_assignments_by_device
Get the assigned VLAN Profiles for devices in a network.
API documentation: getNetworkVlanProfilesAssignmentsByDevice
Parameters:
-
network_id(str) –Network ID.
-
per_page(int | None, default:None) –The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
-
starting_after(str | None, default:None) –A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
ending_before(str | None, default:None) –A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
-
serials(list[str] | None, default:None) –Optional parameter to filter devices by serials. All devices returned belong to serial numbers that are an exact match.
-
product_types(GetNetworkVlanProfilesAssignmentsByDeviceProductTypes | None, default:None) –Optional parameter to filter devices by product types.
-
stack_ids(list[str] | None, default:None) –Optional parameter to filter devices by Switch Stack ids.
-
total_pages(int | Literal['all'], default:'all') –use with per_page to get total results up to total_pages * per_page; -1 or "all" for all pages.
-
direction(Literal['prev', 'next'], default:'next') –direction to paginate, either "next" (default) or "prev" page.
Returns:
-
PaginatedResponse[GetNetworkVlanProfilesAssignmentsByDeviceResponseItem]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"name": "My switch",
"serial": "Q234-ABCD-5678",
"mac": "00:11:22:33:44:55",
"productType": "switch",
"vlanProfile": {
"iname": "Profile1",
"name": "My VLAN Profile",
"isDefault": true
},
"stack": {
"id": "1234"
}
}
]
get_network_webhooks_http_server
Return an HTTP server for a network.
API documentation: getNetworkWebhooksHttpServer
Parameters:
-
network_id(str) –Network ID.
-
http_server_id(str) –Http server ID.
Returns:
-
NetworkWebhooksHttpServerResponse–Successful operation.
Example API response
{
"id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
"name": "Example Webhook Server",
"url": "https://www.example.com/my_custom_webhook",
"networkId": "N_12345678",
"payloadTemplate": {
"payloadTemplateId": "wpt_00001",
"name": "Meraki (included)"
}
}
get_network_webhooks_http_servers
List the HTTP servers for a network.
API documentation: getNetworkWebhooksHttpServers
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkWebhooksHttpServerResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
"name": "Example Webhook Server",
"url": "https://www.example.com/my_custom_webhook",
"networkId": "N_12345678",
"payloadTemplate": {
"payloadTemplateId": "wpt_00001",
"name": "Meraki (included)"
}
}
]
get_network_webhooks_payload_template
Get the webhook payload template for a network.
API documentation: getNetworkWebhooksPayloadTemplate
Parameters:
-
network_id(str) –Network ID.
-
payload_template_id(str) –Payload template ID.
Returns:
-
NetworkWebhooksPayloadTemplateResponse–Successful operation.
Example API response
{
"payloadTemplateId": "wpt_343",
"type": "custom",
"name": "Custom Template",
"headers": [
{
"name": "Authorization",
"template": "Bearer {{sharedSecret}}"
}
],
"body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
"sharing": {
"byNetwork": {
"adminsCanModify": false
}
}
}
get_network_webhooks_payload_templates
List the webhook payload templates for a network.
API documentation: getNetworkWebhooksPayloadTemplates
Parameters:
-
network_id(str) –Network ID.
Returns:
-
PaginatedResponse[NetworkWebhooksPayloadTemplateResponse]–Successful operation.
Note
Returns a lazy PaginatedResponse
that can be iterated or collected with .collect().
Page metadata is available on .meta and .meta_pages.
Example API response
[
{
"payloadTemplateId": "wpt_343",
"type": "custom",
"name": "Custom Template",
"headers": [
{
"name": "Authorization",
"template": "Bearer {{sharedSecret}}"
}
],
"body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
"sharing": {
"byNetwork": {
"adminsCanModify": false
}
}
}
]
get_network_webhooks_webhook_test
Return the status of a webhook test for a network.
API documentation: getNetworkWebhooksWebhookTest
Parameters:
-
network_id(str) –Network ID.
-
webhook_test_id(str) –Webhook test ID.
Returns:
-
NetworkWebhooksWebhookTestResponse–Successful operation.
Example API response
{
"id": "1234",
"url": "https://www.example.com/path",
"status": "enqueued"
}
provision_network_clients
Provisions a client with a name and policy.
API documentation: provisionNetworkClients
Parameters:
-
network_id(str) –Network ID.
-
clients(list[ProvisionNetworkClientsClientsItem]) –The array of clients to provision.
-
device_policy(ProvisionNetworkClientsDevicePolicy) –The policy to apply to the specified client. Can be 'Group policy', 'Allowed', 'Blocked', 'Per connection' or 'Normal'. Required.
-
group_policy_id(str | None, default:None) –The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
-
policies_by_security_appliance(ProvisionNetworkClientsPoliciesBySecurityAppliance | None, default:None) –An object, describing what the policy-connection association is for the security appliance. (Only relevant if the security appliance is actually within the network).
-
policies_by_ssid(ProvisionNetworkClientsPoliciesBySsid | None, default:None) –An object, describing the policy-connection associations for each active SSID within the network. Keys should be the number of enabled SSIDs, mapping to an object describing the client's policy.
Returns:
-
ProvisionNetworkClientsResponse–Successful operation.
Example API response
{
"clients": [
{
"mac": "00:11:22:33:44:55",
"clientId": "k74272e",
"name": "Miles's phone",
"message": "Blocked message for client"
}
],
"devicePolicy": "Group policy",
"groupPolicyId": "101"
}
publish_network_floor_plans_auto_locate_job
Update the status of a finished auto locate job to be published, and update device locations.
API documentation: publishNetworkFloorPlansAutoLocateJob
Parameters:
-
network_id(str) –Network ID.
-
job_id(str) –Job ID.
-
devices(list[PublishNetworkFloorPlansAutoLocateJobDevicesItem] | None, default:None) –The list of devices to publish positions for.
Returns:
-
PublishNetworkFloorPlansAutoLocateJobResponse–Successful operation.
Example API response
{
"success": true
}
reassign_network_vlan_profiles_assignments
Update the assigned VLAN Profile for devices in a network.
API documentation: reassignNetworkVlanProfilesAssignments
Parameters:
-
network_id(str) –Network ID.
-
vlan_profile(ReassignNetworkVlanProfilesAssignmentsVlanProfile | None, default:None) –The VLAN Profile.
-
serials(list[str]) –Array of Device Serials.
-
stack_ids(list[str]) –Array of Switch Stack IDs.
Returns:
-
ReassignNetworkVlanProfilesAssignmentsResponse–Successful operation.
Example API response
{
"vlanProfile": {
"iname": "Profile1",
"name": "My VLAN Profile"
},
"serials": [
"Q234-ABCD-5678"
],
"stackIds": [
"1234"
]
}
recalculate_network_floor_plans_auto_locate_job
Trigger auto locate recalculation for a job, and optionally set anchors.
API documentation: recalculateNetworkFloorPlansAutoLocateJob
Parameters:
-
network_id(str) –Network ID.
-
job_id(str) –Job ID.
-
devices(list[RecalculateNetworkFloorPlansAutoLocateJobDevicesItem] | None, default:None) –The list of devices to update anchor positions for.
Returns:
-
PublishNetworkFloorPlansAutoLocateJobResponse–Successful operation.
Example API response
{
"success": true
}
remove_network_devices
Remove a single device.
API documentation: removeNetworkDevices
Parameters:
-
network_id(str) –Network ID.
-
serial(str) –The serial of a device.
Returns:
-
None–Successful operation.
rollbacks_network_firmware_upgrades_staged_events
Rollback a Staged Upgrade Event for a network.
API documentation: rollbacksNetworkFirmwareUpgradesStagedEvents
Parameters:
-
network_id(str) –Network ID.
-
stages(list[RollbacksNetworkFirmwareUpgradesStagedEventsStagesItem]) –All completed or in-progress stages in the network with their new start times. All pending stages will be canceled.
-
reasons(list[RollbacksNetworkFirmwareUpgradesStagedEventsReasonsItem] | None, default:None) –The reason for rolling back the staged upgrade.
Returns:
-
GetNetworkFirmwareUpgradesStagedEventsResponse–Successful operation.
Example API response
{
"products": {
"switch": {
"nextUpgrade": {
"toVersion": {
"id": "1234",
"shortName": "MS 15.2.1"
}
}
}
},
"stages": [
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Group Description"
},
"milestones": {
"scheduledFor": "2018-02-11T00:00:00Z",
"startedAt": "2018-02-11T00:00:00Z",
"completedAt": "2018-02-11T00:00:00Z",
"canceledAt": "2018-02-11T00:00:00Z"
},
"status": "Completed"
}
],
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
]
}
split_network
Split a combined network into individual networks for each type of device.
API documentation: splitNetwork
Parameters:
-
network_id(str) –Network ID.
Returns:
-
SplitNetworkResponse–Successful operation.
Example API response
{
"resultingNetworks": [
{
"id": "N_24329156",
"organizationId": "2930418",
"name": "Main Office - switch",
"productTypes": [
"switch"
],
"timeZone": "America/Los_Angeles",
"tags": [
"tag1",
"tag2"
],
"enrollmentString": "my-enrollment-string",
"url": "https://n1.meraki.com//n//manage/nodes/list",
"notes": "Additional description of the network",
"isBoundToConfigTemplate": false
}
]
}
unbind_network
Unbind a network from a template.
API documentation: unbindNetwork
Parameters:
-
network_id(str) –Network ID.
-
retain_configs(bool | None, default:None) –Optional boolean to retain all the current configs given by the template.
Returns:
-
NetworkResponse–Successful operation.
Example API response
{
"id": "N_24329156",
"organizationId": "2930418",
"name": "Main Office",
"productTypes": [
"appliance",
"switch",
"wireless"
],
"timeZone": "America/Los_Angeles",
"tags": [
"tag1",
"tag2"
],
"enrollmentString": "my-enrollment-string",
"url": "https://n1.meraki.com//n//manage/nodes/list",
"notes": "Additional description of the network",
"isBoundToConfigTemplate": false
}
update_network
Update a network.
API documentation: updateNetwork
Parameters:
-
network_id(str) –Network ID.
-
name(str | None, default:None) –The name of the network.
-
time_zone(str | None, default:None) –The timezone of the network. For a list of allowed timezones, please see the 'TZ' column in the table in this article..
-
tags(list[str] | None, default:None) –A list of tags to be applied to the network.
-
enrollment_string(str | None, default:None) –A unique identifier which can be used for device enrollment or easy access through the Meraki SM Registration page or the Self Service Portal. Please note that changing this field may cause existing bookmarks to break.
-
notes(str | None, default:None) –Add any notes or additional information about this network here.
Returns:
-
NetworkResponse–Successful operation.
Example API response
{
"id": "N_24329156",
"organizationId": "2930418",
"name": "Main Office",
"productTypes": [
"appliance",
"switch",
"wireless"
],
"timeZone": "America/Los_Angeles",
"tags": [
"tag1",
"tag2"
],
"enrollmentString": "my-enrollment-string",
"url": "https://n1.meraki.com//n//manage/nodes/list",
"notes": "Additional description of the network",
"isBoundToConfigTemplate": false
}
update_network_alerts_settings
Update the alert configuration for this network.
API documentation: updateNetworkAlertsSettings
Parameters:
-
network_id(str) –Network ID.
-
default_destinations(UpdateNetworkAlertsSettingsDefaultDestinations | None, default:None) –The network-wide destinations for all alerts on the network.
-
alerts(list[UpdateNetworkAlertsSettingsAlertsItem] | None, default:None) –Alert-specific configuration for each type. Only alerts that pertain to the network can be updated.
-
muting(UpdateNetworkAlertsSettingsMuting | None, default:None) –Mute alerts under certain conditions.
Returns:
-
NetworkAlertsSettingsResponse–Successful operation.
Example API response
{
"defaultDestinations": {
"emails": [
"miles@meraki.com"
],
"allAdmins": true,
"snmp": true,
"httpServerIds": [
"aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M="
]
},
"alerts": [
{
"type": "gatewayDown",
"enabled": true,
"alertDestinations": {
"emails": [
"miles@meraki.com"
],
"smsNumbers": [
"+15555555555"
],
"allAdmins": false,
"snmp": false,
"httpServerIds": [
"aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M="
]
},
"filters": {
"conditions": [
{
"type": "temperature",
"unit": "celsius",
"duration": 0,
"direction": "+",
"threshold": 72.5
}
],
"failureType": "802.1X auth fail",
"lookbackWindow": 360,
"minDuration": 60,
"name": "Filter",
"period": 1800,
"priority": "",
"regex": "[a-z]",
"selector": "{\"smartSensitivity\":\"medium\",\"smartEnabled\":false,\"eventReminderPeriodSecs\":10800}",
"serials": [
"Q234-ABCD-0001",
"Q234-ABCD-0002",
"Q234-ABCD-0003"
],
"ssidNum": 1,
"tag": "tag1",
"threshold": 30,
"timeout": 60
}
}
],
"muting": {
"byPortSchedules": {
"enabled": true
}
}
}
update_network_client_policy
Update the policy assigned to a client on the network.
API documentation: updateNetworkClientPolicy
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
-
device_policy(str) –The policy to assign. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
-
group_policy_id(str | None, default:None) –[Optional] If 'devicePolicy' is set to 'Group policy' this param is used to specify the group policy ID.
Returns:
-
NetworkClientPolicyResponse–Successful operation.
Example API response
{
"mac": "00:11:22:33:44:55",
"devicePolicy": "Different policies by SSID",
"groupPolicyId": "101",
"policiesBySsid": [
{
"ssidNumber": 2,
"devicePolicy": "Group policy",
"groupPolicyId": "101"
}
]
}
update_network_client_splash_authorization_status
Update a client's splash authorization.
API documentation: updateNetworkClientSplashAuthorizationStatus
Parameters:
-
network_id(str) –Network ID.
-
client_id(str) –Client ID.
-
ssids(UpdateNetworkClientSplashAuthorizationStatusSsids) –The target SSIDs. Each SSID must be enabled and must have Click-through splash enabled. For each SSID where isAuthorized is true, the expiration time will automatically be set according to the SSID's splash frequency. Not all networks support configuring all SSIDs.
Returns:
-
NetworkClientSplashAuthorizationStatusResponse–Successful operation.
Example API response
{
"ssids": {
"0": {
"isAuthorized": true,
"authorizedAt": "2018-05-12T00:00:00Z",
"expiresAt": "2018-05-12T01:00:00Z"
}
}
}
update_network_firmware_upgrades
Update firmware upgrade information for a network.
API documentation: updateNetworkFirmwareUpgrades
Parameters:
-
network_id(str) –Network ID.
-
upgrade_window(UpdateNetworkFirmwareUpgradesUpgradeWindow | None, default:None) –Upgrade window for devices in network.
-
timezone(str | None, default:None) –The timezone for the network.
-
products(UpdateNetworkFirmwareUpgradesProducts | None, default:None) –Contains information about the network to update.
Returns:
-
UpdateNetworkFirmwareUpgradesResponse–Successful operation.
Example API response
{
"upgradeWindow": {
"dayOfWeek": "sun",
"hourOfDay": "4:00"
},
"timezone": "America/Los_Angeles",
"products": {
"wireless": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"predownload": {
"enabled": false
},
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"appliance": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"switch": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"camera": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"cellularGateway": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"sensor": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"wirelessController": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
},
"secureConnect": {
"currentVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2020-03-17T17:22:52Z"
},
"lastUpgrade": {
"time": "2021-05-17T17:22:52Z",
"fromVersion": {
"id": "1234",
"firmware": "camera-10-8-1",
"shortName": "MV 10.8.1",
"releaseType": "stable",
"releaseDate": "2021-03-17T17:22:52Z"
},
"toVersion": {
"id": "4321",
"firmware": "camera-11-2-1",
"shortName": "MV 11.2.1",
"releaseType": "stable",
"releaseDate": "2019-03-17T17:22:52Z"
}
},
"nextUpgrade": {
"time": "2021-05-17T17:22:52Z",
"toVersion": {
"id": "2134",
"firmware": "camera-15-5-2",
"shortName": "MV 25.5.2",
"releaseType": "stable",
"releaseDate": "2021-05-28T17:22:52Z"
}
},
"isUpgradeAvailable": false,
"availableVersions": [
{
"id": "3421",
"firmware": "camera-16-x-y",
"shortName": "MV 16.x.y",
"releaseType": "beta",
"releaseDate": "2020-11-28T17:22:52Z"
}
],
"participateInNextBetaRelease": false
}
}
}
update_network_firmware_upgrades_staged_events
Update the Staged Upgrade Event for a network.
API documentation: updateNetworkFirmwareUpgradesStagedEvents
Parameters:
-
network_id(str) –Network ID.
-
stages(list[UpdateNetworkFirmwareUpgradesStagedEventsStagesItem]) –All firmware upgrade stages in the network with their start time.
Returns:
-
GetNetworkFirmwareUpgradesStagedEventsResponse–Successful operation.
Example API response
{
"products": {
"switch": {
"nextUpgrade": {
"toVersion": {
"id": "1234",
"shortName": "MS 15.2.1"
}
}
}
},
"stages": [
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Group Description"
},
"milestones": {
"scheduledFor": "2018-02-11T00:00:00Z",
"startedAt": "2018-02-11T00:00:00Z",
"completedAt": "2018-02-11T00:00:00Z",
"canceledAt": "2018-02-11T00:00:00Z"
},
"status": "Completed"
}
],
"reasons": [
{
"category": "performance",
"comment": "Network was slower with the upgrade"
}
]
}
update_network_firmware_upgrades_staged_group
Update a Staged Upgrade Group for a network.
API documentation: updateNetworkFirmwareUpgradesStagedGroup
Parameters:
-
network_id(str) –Network ID.
-
group_id(str) –Group ID.
-
name(str) –Name of the Staged Upgrade Group. Length must be 1 to 255 characters.
-
description(str | None, default:None) –Description of the Staged Upgrade Group. Length must be 1 to 255 characters.
-
is_default(bool) –Boolean indicating the default Group. Any device that does not have a group explicitly assigned will upgrade with this group.
-
assigned_devices(UpdateNetworkFirmwareUpgradesStagedGroupAssignedDevices | None, default:None) –The devices and Switch Stacks assigned to the Group.
Returns:
-
NetworkFirmwareUpgradesStagedGroupResponse–Successful operation.
Example API response
{
"groupId": "1234",
"name": "My Staged Upgrade Group",
"description": "The description of the group",
"isDefault": false,
"assignedDevices": {
"devices": [
{
"serial": "Q234-ABCD-5678",
"name": "Device Name"
}
],
"switchStacks": [
{
"id": "1234",
"name": "Stack Name"
}
]
}
}
update_network_firmware_upgrades_staged_stages
Assign Staged Upgrade Group order in the sequence.
API documentation: updateNetworkFirmwareUpgradesStagedStages
Parameters:
-
network_id(str) –Network ID.
-
_json(list[UpdateNetworkFirmwareUpgradesStagedStagesJsonItem] | None, default:None) –Array of Staged Upgrade Groups.
Returns:
-
NetworkFirmwareUpgradesStagedStagesResponse–Successful operation.
Example API response
[
{
"group": {
"id": "1234",
"name": "My Staged Upgrade Group",
"description": "My Staged Upgrade Description"
}
}
]
update_network_floor_plan
Update a floor plan's geolocation and other meta data.
API documentation: updateNetworkFloorPlan
Parameters:
-
network_id(str) –Network ID.
-
floor_plan_id(str) –Floor plan ID.
-
name(str | None, default:None) –The name of your floor plan.
-
center(UpdateNetworkFloorPlanCenter | None, default:None) –The longitude and latitude of the center of your floor plan. If you want to change the geolocation data of your floor plan, either the 'center' or two adjacent corners (e.g. 'topLeftCorner' and 'bottomLeftCorner') must be specified. If 'center' is specified, the floor plan is placed over that point with no rotation. If two adjacent corners are specified, the floor plan is rotated to line up with the two specified points. The aspect ratio of the floor plan's image is preserved regardless of which corners/center are specified. (This means if that more than two corners are specified, only two corners may be used to preserve the floor plan's aspect ratio.). No two points can have the same latitude, longitude pair.
-
bottom_left_corner(UpdateNetworkFloorPlanBottomLeftCorner | None, default:None) –The longitude and latitude of the bottom left corner of your floor plan.
-
bottom_right_corner(UpdateNetworkFloorPlanBottomRightCorner | None, default:None) –The longitude and latitude of the bottom right corner of your floor plan.
-
top_left_corner(UpdateNetworkFloorPlanTopLeftCorner | None, default:None) –The longitude and latitude of the top left corner of your floor plan.
-
top_right_corner(UpdateNetworkFloorPlanTopRightCorner | None, default:None) –The longitude and latitude of the top right corner of your floor plan.
-
floor_number(float | None, default:None) –The floor number of the floors within the building.
-
image_contents(str | None, default:None) –The file contents (a base 64 encoded string) of your new image. Supported formats are PNG, GIF, and JPG. Note that all images are saved as PNG files, regardless of the format they are uploaded in. If you upload a new image, and you do NOT specify any new geolocation fields ('center, 'topLeftCorner', etc), the floor plan will be recentered with no rotation in order to maintain the aspect ratio of your new image.
Returns:
-
NetworkFloorPlanResponse–Successful operation.
Example API response
{
"floorPlanId": "g_1234567",
"imageUrl": "https://meraki-na.s3.amazonaws.com/assets/...",
"imageUrlExpiresAt": "2019-06-11 16:04:54 +00:00",
"imageExtension": "png",
"imageMd5": "2a9edd3f4ffd80130c647d13eacb59f3",
"name": "HQ Floor Plan",
"devices": [
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}
],
"width": 100.0,
"height": 150.1,
"center": {
"lat": 37.770040510499996,
"lng": -122.38714009525
},
"bottomLeftCorner": {
"lat": 37.7696461495,
"lng": -122.3880815506
},
"bottomRightCorner": {
"lat": 37.771524649766654,
"lng": -122.38795275055205
},
"topLeftCorner": {
"lat": 37.769700101836364,
"lng": -122.3888684251381
},
"topRightCorner": {
"lat": 37.77157860210302,
"lng": -122.38873962509012
},
"floorNumber": 5.0
}
update_network_group_policy
Update a group policy.
API documentation: updateNetworkGroupPolicy
Parameters:
-
network_id(str) –Network ID.
-
group_policy_id(str) –Group policy ID.
-
name(str | None, default:None) –The name for your group policy.
-
scheduling(UpdateNetworkGroupPolicyScheduling | None, default:None) –The schedule for the group policy. Schedules are applied to days of the week.
-
bandwidth(UpdateNetworkGroupPolicyBandwidth | None, default:None) –The bandwidth settings for clients bound to your group policy.
-
firewall_and_traffic_shaping(UpdateNetworkGroupPolicyFirewallAndTrafficShaping | None, default:None) –The firewall and traffic shaping rules and settings for your policy.
-
content_filtering(UpdateNetworkGroupPolicyContentFiltering | None, default:None) –The content filtering settings for your group policy.
-
splash_auth_settings(UpdateNetworkGroupPolicySplashAuthSettings | None, default:None) –Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
-
vlan_tagging(UpdateNetworkGroupPolicyVlanTagging | None, default:None) –The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
-
bonjour_forwarding(UpdateNetworkGroupPolicyBonjourForwarding | None, default:None) –The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
Returns:
-
NetworkGroupPolicyResponse–Successful operation.
Example API response
{
"groupPolicyId": "101",
"scheduling": {
"enabled": true,
"monday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"tuesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"wednesday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"thursday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"friday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"saturday": {
"active": true,
"from": "9:00",
"to": "17:00"
},
"sunday": {
"active": true,
"from": "9:00",
"to": "17:00"
}
},
"bandwidth": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"firewallAndTrafficShaping": {
"settings": "custom",
"trafficShapingRules": [
{
"definitions": [
{
"type": "host",
"value": "google.com"
}
],
"perClientBandwidthLimits": {
"settings": "custom",
"bandwidthLimits": {
"limitUp": 1000000,
"limitDown": 1000000
}
},
"dscpTagValue": 0,
"pcpTagValue": 0,
"priority": "normal"
}
],
"l3FirewallRules": [
{
"comment": "Allow TCP traffic to subnet with HTTP servers.",
"policy": "allow",
"protocol": "tcp",
"destPort": "443",
"destCidr": "192.168.1.0/24"
}
],
"l7FirewallRules": [
{
"policy": "deny",
"type": "host",
"value": "google.com"
}
]
},
"contentFiltering": {
"allowedUrlPatterns": {
"settings": "network default",
"patterns": []
},
"blockedUrlPatterns": {
"settings": "append",
"patterns": [
"http://www.example.com",
"http://www.betting.com"
]
},
"blockedUrlCategories": {
"settings": "override",
"categories": [
"meraki:contentFiltering/category/1",
"meraki:contentFiltering/category/7"
]
}
},
"splashAuthSettings": "bypass",
"vlanTagging": {
"settings": "custom",
"vlanId": "1"
},
"bonjourForwarding": {
"settings": "custom",
"rules": [
{
"description": "A simple bonjour rule",
"vlanId": "1",
"services": [
"All Services"
]
}
]
}
}
update_network_meraki_auth_user
Update a user configured with Meraki Authentication (currently, 802.1X RADIUS, splash guest, and client VPN users can be updated).
API documentation: updateNetworkMerakiAuthUser
Parameters:
-
network_id(str) –Network ID.
-
meraki_auth_user_id(str) –Meraki auth user ID.
-
name(str | None, default:None) –Name of the user. Only allowed If the user is not Dashboard administrator.
-
password(str | None, default:None) –The password for this user account. Only allowed If the user is not Dashboard administrator.
-
email_password_to_user(bool | None, default:None) –Whether or not Meraki should email the password to user. Default is false.
-
authorizations(list[UpdateNetworkMerakiAuthUserAuthorizationsItem] | None, default:None) –Authorization zones and expiration dates for the user.
Returns:
-
NetworkMerakiAuthUserResponse–Successful operation.
Example API response
{
"id": "aGlAaGkuY29t",
"email": "miles@meraki.com",
"name": "Miles Meraki",
"createdAt": "2018-02-11T00:00:00.090210Z",
"accountType": "802.1X",
"isAdmin": false,
"authorizations": [
{
"ssidNumber": 1,
"authorizedZone": "Store WiFi",
"expiresAt": "2018-03-13T00:00:00.090210Z",
"authorizedByName": "Miles Meraki",
"authorizedByEmail": "miles@meraki.com"
}
]
}
update_network_mqtt_broker
Update an MQTT broker.
API documentation: updateNetworkMqttBroker
Parameters:
-
network_id(str) –Network ID.
-
mqtt_broker_id(str) –Mqtt broker ID.
-
name(str | None, default:None) –Name of the MQTT broker.
-
host(str | None, default:None) –Host name/IP address where the MQTT broker runs.
-
port(int | None, default:None) –Host port though which the MQTT broker can be reached.
-
security(UpdateNetworkMqttBrokerSecurity | None, default:None) –Security settings of the MQTT broker.
-
authentication(UpdateNetworkMqttBrokerAuthentication | None, default:None) –Authentication settings of the MQTT broker.
Returns:
-
NetworkMqttBrokerResponse–Successful operation.
Example API response
{
"id": "1234",
"name": "MQTT_Broker_1",
"host": "1.2.3.4",
"port": 443,
"security": {
"mode": "tls",
"tls": {
"hasCaCertificate": true,
"verifyHostnames": true
}
},
"authentication": {
"username": "milesmeraki"
}
}
update_network_netflow
Update the NetFlow traffic reporting settings for a network.
API documentation: updateNetworkNetflow
Parameters:
-
network_id(str) –Network ID.
-
reporting_enabled(bool | None, default:None) –Boolean indicating whether NetFlow traffic reporting is enabled (true) or disabled (false).
-
collector_ip(str | None, default:None) –The IPv4 address of the NetFlow collector.
-
collector_port(int | None, default:None) –The port that the NetFlow collector will be listening on.
-
eta_enabled(bool | None, default:None) –Boolean indicating whether Encrypted Traffic Analytics is enabled (true) or disabled (false).
-
eta_dst_port(int | None, default:None) –The port that the Encrypted Traffic Analytics collector will be listening on.
Returns:
-
NetworkNetflowResponse–Successful operation.
Example API response
{
"reportingEnabled": true,
"collectorIp": "1.2.3.4",
"collectorPort": 443,
"etaEnabled": true,
"etaDstPort": 443
}
update_network_settings
Update the settings for a network.
API documentation: updateNetworkSettings
Parameters:
-
network_id(str) –Network ID.
-
local_status_page_enabled(bool | None, default:None) –Enables / disables the local device status pages (my.meraki.com, ap.meraki.com, switch.meraki.com, wired.meraki.com). Optional (defaults to false).
-
remote_status_page_enabled(bool | None, default:None) –Enables / disables access to the device status page (http://[device's LAN IP]). Optional. Can only be set if localStatusPageEnabled is set to true.
-
local_status_page(UpdateNetworkSettingsLocalStatusPage | None, default:None) –A hash of Local Status page(s)' authentication options applied to the Network.
-
secure_port(UpdateNetworkSettingsSecurePort | None, default:None) –A hash of SecureConnect options applied to the Network.
-
named_vlans(UpdateNetworkSettingsNamedVlans | None, default:None) –A hash of Named VLANs options applied to the Network.
Returns:
-
NetworkSettingsResponse–Successful operation.
Example API response
{
"localStatusPageEnabled": true,
"remoteStatusPageEnabled": true,
"localStatusPage": {
"authentication": {
"enabled": false,
"username": "admin"
}
},
"securePort": {
"enabled": false
},
"fips": {
"enabled": true
},
"namedVlans": {
"enabled": true
}
}
update_network_snmp
Update the SNMP settings for a network.
API documentation: updateNetworkSnmp
Parameters:
-
network_id(str) –Network ID.
-
access(UpdateNetworkSnmpAccess | None, default:None) –The type of SNMP access. Can be one of 'none' (disabled), 'community' (V1/V2c), or 'users' (V3).
-
community_string(str | None, default:None) –The SNMP community string. Only relevant if 'access' is set to 'community'.
-
users(list[UpdateNetworkSnmpUsersItem] | None, default:None) –The list of SNMP users. Only relevant if 'access' is set to 'users'.
Returns:
-
NetworkSnmpResponse–Successful operation.
Example API response
{
"access": "users",
"communityString": "sample",
"users": [
{
"username": "AzureDiamond",
"passphrase": "hunter2"
}
]
}
update_network_syslog_servers
Update the syslog servers for a network.
API documentation: updateNetworkSyslogServers
Parameters:
-
network_id(str) –Network ID.
-
servers(list[UpdateNetworkSyslogServersServersItem]) –A list of the syslog servers for this network.
Returns:
-
NetworkSyslogServersResponse–Successful operation.
Example API response
{
"servers": [
{
"host": "1.2.3.4",
"port": 443,
"roles": [
"Wireless event log",
"URLs"
]
}
]
}
update_network_traffic_analysis
Update the traffic analysis settings for a network.
API documentation: updateNetworkTrafficAnalysis
Parameters:
-
network_id(str) –Network ID.
-
mode(UpdateNetworkTrafficAnalysisMode | None, default:None) –The traffic analysis mode for the network. Can be one of 'disabled' (do not collect traffic types), 'basic' (collect generic traffic categories), or 'detailed' (collect destination hostnames).
-
custom_pie_chart_items(list[UpdateNetworkTrafficAnalysisCustomPieChartItemsItem] | None, default:None) –The list of items that make up the custom pie chart for traffic reporting.
Returns:
-
NetworkTrafficAnalysisResponse–Successful operation.
Example API response
{
"mode": "disabled",
"customPieChartItems": [
{
"name": "Item from hostname",
"type": "host",
"value": "example.com"
}
]
}
update_network_vlan_profile
Update an existing VLAN profile of a network.
API documentation: updateNetworkVlanProfile
Parameters:
-
network_id(str) –Network ID.
-
iname(str) –Iname.
-
name(str) –Name of the profile, string length must be from 1 to 255 characters.
-
vlan_names(list[UpdateNetworkVlanProfileVlanNamesItem]) –An array of named VLANs.
-
vlan_groups(list[UpdateNetworkVlanProfileVlanGroupsItem]) –An array of VLAN groups.
Returns:
-
NetworkVlanProfileResponse–Successful operation.
Example API response
{
"iname": "Profile1",
"name": "My VLAN profile name",
"isDefault": false,
"vlanNames": [
{
"name": "named-1",
"vlanId": "1",
"adaptivePolicyGroup": {
"id": "791",
"name": "Infrastructure"
}
}
],
"vlanGroups": [
{
"name": "named-group-1",
"vlanIds": "2,5-7"
}
]
}
update_network_webhooks_http_server
Update an HTTP server.
API documentation: updateNetworkWebhooksHttpServer
Parameters:
-
network_id(str) –Network ID.
-
http_server_id(str) –Http server ID.
-
name(str | None, default:None) –A name for easy reference to the HTTP server.
-
shared_secret(str | None, default:None) –A shared secret that will be included in POSTs sent to the HTTP server. This secret can be used to verify that the request was sent by Meraki.
-
payload_template(UpdateNetworkWebhooksHttpServerPayloadTemplate | None, default:None) –The payload template to use when posting data to the HTTP server.
Returns:
-
NetworkWebhooksHttpServerResponse–Successful operation.
Example API response
{
"id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
"name": "Example Webhook Server",
"url": "https://www.example.com/my_custom_webhook",
"networkId": "N_12345678",
"payloadTemplate": {
"payloadTemplateId": "wpt_00001",
"name": "Meraki (included)"
}
}
update_network_webhooks_payload_template
Update a webhook payload template for a network.
API documentation: updateNetworkWebhooksPayloadTemplate
Parameters:
-
network_id(str) –Network ID.
-
payload_template_id(str) –Payload template ID.
-
name(str | None, default:None) –The name of the template.
-
body(str | None, default:None) –The liquid template used for the body of the webhook message.
-
headers(list[UpdateNetworkWebhooksPayloadTemplateHeadersItem] | None, default:None) –The liquid template used with the webhook headers.
-
body_file(str | None, default:None) –A file containing liquid template used for the body of the webhook message.
-
headers_file(str | None, default:None) –A file containing the liquid template used with the webhook headers.
Returns:
-
NetworkWebhooksPayloadTemplateResponse–Successful operation.
Example API response
{
"payloadTemplateId": "wpt_343",
"type": "custom",
"name": "Custom Template",
"headers": [
{
"name": "Authorization",
"template": "Bearer {{sharedSecret}}"
}
],
"body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
"sharing": {
"byNetwork": {
"adminsCanModify": false
}
}
}
vmx_network_devices_claim
Claim a vMX into a network.
API documentation: vmxNetworkDevicesClaim
Parameters:
-
network_id(str) –Network ID.
-
size(VmxNetworkDevicesClaimSize) –The size of the vMX you claim. It can be one of: small, medium, large, xlarge, 100.
Returns:
-
VmxNetworkDevicesClaimResponse–Successful operation.
Example API response
{
"name": "My AP",
"lat": 37.4180951010362,
"lng": -122.098531723022,
"address": "1600 Pennsylvania Ave",
"notes": "My AP's note",
"tags": [
"recently-added"
],
"networkId": "N_24329156",
"serial": "Q234-ABCD-5678",
"model": "MR34",
"imei": "123456789000000",
"mac": "00:11:22:33:44:55",
"lanIp": "1.2.3.4",
"firmware": "wireless-25-14",
"productType": "wireless",
"details": [
{
"name": "Catalyst serial",
"value": "123ABC"
}
]
}