cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
866
Views
0
Helpful
2
Replies

Can't run API calls against DNA-C sandbox hardware reservation

dwrice000
Level 1
Level 1

I know that the always an DNA-C sandbox is read-only but I thought the reservation DNA-C sandboxes are full read-write.  However, I've tried on two occassions to run the following basic API call and it always times out however I can hit the web GUI via https and telnet to port 443 from the command-line where I'm running the script below:

 

#!/usr/bin/env python

import requests
import urllib3
import json
from dnacentersdk import api

def main():

urllib3.disable_warnings()
dnac = api.DNACenterAPI(
base_url="https://10.10.20.85",
username="admin",
password="Cisco1234!",
verify=False,
)

devices = dnac.devices.get_device_list()

for device in devices["response"]:
print(device["managementIpAddress"] + " " + device["id"] + " " + device["type"])

if __name__ == "__main__":
main()

Is this just a temporary issue or am I doing something wrong?

 

Thanks!

2 Replies 2

omz
VIP Alumni
VIP Alumni

Hi 

What error message do you get if any?

I don't have a screenshot of the exact message but the Python exception was a network timeout message as if it could never complete the connection.  Does my simple code above work for you against a HW sandbox reservation?

 

EDIT:  Actually found the text of my error:

 

C:\devnet\devnetassociate>.\list_devices.py
Traceback (most recent call last):
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 421, in _make_request
six.raise_from(e, None)
File "<string>", line 3, in raise_from
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 416, in _make_request
httplib_response = conn.getresponse()
File "C:\Python37\lib\http\client.py", line 1344, in getresponse
response.begin()
File "C:\Python37\lib\http\client.py", line 306, in begin
version, status, reason = self._read_status()
File "C:\Python37\lib\http\client.py", line 267, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "C:\Python37\lib\socket.py", line 589, in readinto
return self._sock.recv_into(b)
File "C:\Python37\lib\ssl.py", line 1071, in recv_into
return self.read(nbytes, buffer)
File "C:\Python37\lib\ssl.py", line 929, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Python37\lib\site-packages\requests\adapters.py", line 449, in send
timeout=timeout
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 720, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "C:\Python37\lib\site-packages\urllib3\util\retry.py", line 400, in increment
raise six.reraise(type(error), error, _stacktrace)
File "C:\Python37\lib\site-packages\urllib3\packages\six.py", line 735, in reraise
raise value
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 672, in urlopen
chunked=chunked,
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 423, in _make_request
self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
File "C:\Python37\lib\site-packages\urllib3\connectionpool.py", line 331, in _raise_timeout
self, url, "Read timed out. (read timeout=%s)" % timeout_value
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='10.10.20.85', port=443): Read timed out. (read timeout=60)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Python37\lib\site-packages\dnacentersdk\restsession.py", line 301, in request
**kwargs)
File "C:\Python37\lib\site-packages\requests\sessions.py", line 530, in request
resp = self.send(prep, **send_kwargs)
File "C:\Python37\lib\site-packages\requests\sessions.py", line 643, in send
r = adapter.send(request, **kwargs)
File "C:\Python37\lib\site-packages\requests\adapters.py", line 529, in send
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='10.10.20.85', port=443): Read timed out. (read timeout=60)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\devnet\devnetassociate\list_devices.py", line 27, in <module>
main()
File "C:\devnet\devnetassociate\list_devices.py", line 18, in main
devices = dnac.devices.get_device_list()
File "C:\Python37\lib\site-packages\dnacentersdk\api\v1_3_0\devices.py", line 548, in get_device_list
json=_payload)
File "C:\Python37\lib\site-packages\dnacentersdk\restsession.py", line 390, in get
with self.request('GET', url, erc, 0, params=params, **kwargs) as resp:
File "C:\Python37\lib\site-packages\dnacentersdk\restsession.py", line 303, in request
raise dnacentersdkException('Socket error {}'.format(e))
dnacentersdk.exceptions.dnacentersdkException: Socket error HTTPSConnectionPool(host='10.10.20.85', port=443): Read timed out. (read timeout=60)