GET List the networks in an organization
{{baseUrl}}/organizations/{{organizationId}}/networks
Loop over them and get the devices in each network:
GET List the devices in a network
{{baseUrl}}/networks/{{networkId}}/devices
Then loop over the devices and set their locations:
PUT Update the attributes of a device
{{baseUrl}}/networks/{{networkId}}/devices/{{serial}}
Parameters for that update call:
parameters | Description of the parameter |
name | The name of a device |
tags | The tags of a device |
lat | The latitude of a device |
lng | The longitude of a device |
address | The address of a device |
moveMapMarker | Whether or not to set the latitude and longitude of a device based on the new address. Only applies when lat and lng are not specified. |
Put pauzes in your script so you don't go over the rate limit for the calls:
Note: Call volume is limited to 5 calls per second (per organization)
Edited:
https://developer.cisco.com/meraki/api-v1/#!update-device
I am not a Cisco Meraki employee. My suggestions are based on documentation of Meraki best practices and day-to-day experience.
Please, if this post was useful, leave your kudos and mark it as solved.