Meraki APIs are set to 10 API calls every second but that equates to 864,000 API calls in a day per organization.
https://developer.cisco.com/meraki/api/rate-limit/
Other vendors stop short of one tenth of that e.g. 5000 per hour. Just confirming if the above are true & someone has experienced crossing the above limits!
Solved! Go to solution.
That is true, the current API rate limit is 10 calls per second, resulting in 864,000 call per day.
It is possible to reach the rate limit, when several apps/scripts run at once.
I'm hiting the rate limit every single day. It just depends on the size of your Org , number of admins doing API calls and if you are using asyncio or not.
That is true, the current API rate limit is 10 calls per second, resulting in 864,000 call per day.
It is possible to reach the rate limit, when several apps/scripts run at once.
I frequently hit the rate limit. Especially in orgs with multiple integrations.
I use the Python SDK, and it's retry logic often works. I frequently have to reduce the number of concurrent outstanding API requests with:
async with meraki.aio.AsyncDashboardAPI(
output_log=False,
print_console=False,
# maximum_retries=100,
maximum_concurrent_requests=5
) as dashboard:
In busier orgs this is not enough, and I have to also use a throttler.
import throttler
async with meraki.aio.AsyncDashboardAPI(
output_log=False,
print_console=False,
maximum_retries=100,
wait_on_rate_limit=True
) as dashboard:
dashboard._session._concurrent_requests_semaphore = throttler.Throttler(rate_limit=4, period=1.0)
await ...
Is there a specific error code that Meraki will give back? e.g. error 429 once rate limit is exceeded?
Yes , Meraki will return HTTP 429 codes.
https://developer.cisco.com/meraki/api-v1/rate-limit/#per-source-ip-address