I am developing application to call Exact Target API with Python. For example, I have launched example from here

It works only if I have direct internet conexion (without any proxy) When I connect to corporative network, proxy autentification is requiered. How/Where can I configure proxy settings?

Thanks in advance Here is error message

Traceback (most recent call last):
  File "C:\Users\Valijon\Desktop\test.py", line 5, in <module>
    myClient = FuelSDK.ET_Client()
  File "C:\Python27\lib\site-packages\fuelsdk-0.9.2-py2.7.egg\FuelSDK\client.py", line 115, in __init__
  File "C:\Python27\lib\site-packages\fuelsdk-0.9.2-py2.7.egg\FuelSDK\client.py", line 201, in refresh_token
    r = requests.post(self.auth_url, data=json.dumps(payload), headers=headers)
  File "C:\Python27\lib\site-packages\requests-2.2.1-py2.7.egg\requests\api.py", line 88, in post
    return request('post', url, data=data, **kwargs)
  File "C:\Python27\lib\site-packages\requests-2.2.1-py2.7.egg\requests\api.py", line 44, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Python27\lib\site-packages\requests-2.2.1-py2.7.egg\requests\sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Python27\lib\site-packages\requests-2.2.1-py2.7.egg\requests\sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "C:\Python27\lib\site-packages\requests-2.2.1-py2.7.egg\requests\adapters.py", line 378, in send
    raise ConnectionError(e)
ConnectionError: HTTPSConnectionPool(host='auth.exacttargetapis.com', port=443): Max retries exceeded with url: /v1/requestToken?legacy=1 (Caused by <class 'socket.gaierror'>: [Errno 11004] getaddrinfo failed)
  • This is technically a Python specific issue, but seeing as how our SDK would rely on this sort of thing it feels appropriate to ask here. – Kelly J Andrews Jun 5 '14 at 13:32

Here is one reference Q/A about proxies in the urllib2 library, which is what the suds library uses. It might be helpful. https://stackoverflow.com/questions/4847649/opening-websites-using-urllib2-from-behind-corporate-firewall-11004-getaddrinf

You'll need to configure your client to authenticate the proxy. Once you have an instance of ET_Client, you can access the suds client at the soap_client property (i.e. client.soap_client). You'll likely need to dig into the suds python library on exactly how to configure the client for your corporate firewall. It appears there is support for basic and ntlm authentication.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.