We Have 2500+ networks - API call only sends back 1000 ? Yet its only 1 API call?

Solved
AidanVenn
Here to help

We Have 2500+ networks - API call only sends back 1000 ? Yet its only 1 API call?

Hi,

 

Simple script below.

 

I send a call I assume once. Therefore well within the limit? Yet only get the first 1000 networks yet we have 2500+.

 

Is this correct? Do I need to take a different approach?

 

Help appreciated.

 

thanks

 

Aidan

 

 

import requests
import json
import time
import datetime
# import system

 

now = datetime.datetime.now()

 

# Define variables
API_KEY = 'xxx'
MERAKI_URL = 'https://api.meraki.com/api/v1/'
ORG_KEY = 'xxx'
headers = {'X-Cisco-Meraki-API-Key': API_KEY}


def main(i=0):

 

# ************** GET the current list of networks

 

NETWORKS = '/organizations/' + ORG_KEY + '/networks'

NETWORK_list = requests.get(MERAKI_URL + NETWORKS, headers=headers)

print(NETWORK_list)

1 Accepted Solution
AutomationDude
Building a reputation

Hi Aidan,

 

Don't worry, this is normal expected behaviour from the API as there is a limit of 1000 for entries returned. This has been discussed a few times on the community before so here are some links for you to gain a better understanding and find a solution:

 

https://community.meraki.com/t5/Developers-APIs/Limited-search/m-p/102863

https://community.meraki.com/t5/Developers-APIs/How-can-I-specify-a-time-range-using-GET-networks-ne...

https://community.meraki.com/t5/Developers-APIs/Retrieving-more-than-2-pages-of-1000-clients-from-GE...

 

Essentially, you will need to make a 2nd and 3rd API call and define a new starting point in order to obtain all of the networks. Hope this helps!

 

View solution in original post

1 Reply 1
AutomationDude
Building a reputation

Hi Aidan,

 

Don't worry, this is normal expected behaviour from the API as there is a limit of 1000 for entries returned. This has been discussed a few times on the community before so here are some links for you to gain a better understanding and find a solution:

 

https://community.meraki.com/t5/Developers-APIs/Limited-search/m-p/102863

https://community.meraki.com/t5/Developers-APIs/How-can-I-specify-a-time-range-using-GET-networks-ne...

https://community.meraki.com/t5/Developers-APIs/Retrieving-more-than-2-pages-of-1000-clients-from-GE...

 

Essentially, you will need to make a 2nd and 3rd API call and define a new starting point in order to obtain all of the networks. Hope this helps!

 

Get notified when there are additional replies to this discussion.