<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: python client for AXL in Management</title>
    <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565062#M2169</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the example will have a look at see what I can get together, it seems like I may end up using suds and requests to get what I want done.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Glen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 03 Feb 2017 21:05:52 GMT</pubDate>
    <dc:creator>glen.cobby</dc:creator>
    <dc:date>2017-02-03T21:05:52Z</dc:date>
    <item>
      <title>python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565015#M2122</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a nice working toolset that is interacting very well with AXL interface using PHP.&lt;/P&gt;&lt;P&gt;However, we are looking to switch to python (it does look like this would be a lot easier to process data coming in). Unfortunately, i can't find any working example to connect to the AXL interface.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;suds seems to be the way to go, but that's not working on python3. I'm happy doing this in python2, but still, i don't get suds to get the works done ... any working example is welcome! (i'll give you a working PHP example in return &lt;span class="lia-unicode-emoji" title=":winking_face_with_tongue:"&gt;😜&lt;/span&gt; )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Nov 2014 15:19:52 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565015#M2122</guid>
      <dc:creator>jseynaev</dc:creator>
      <dc:date>2014-11-28T15:19:52Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565016#M2123</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jan,&lt;/P&gt;&lt;P&gt;Below I have provided some sample code to use with AXL.&amp;nbsp; I use the &lt;A href="http://docs.python-requests.org/en/latest/"&gt;"Requests"&lt;/A&gt; libraries to process HTTP so if you use the below code exactly you will need to download the Requests library for python.&amp;nbsp; Also, and I am sure you know this, but please change your keep your AXL version consistent with the CUCM you are using.&amp;nbsp; The below code is using AXL 8.5.&amp;nbsp; Let me know if you have any questions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank You,&lt;/P&gt;&lt;P&gt;Jock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;import requests&lt;/P&gt;&lt;P&gt;import xml.etree.ElementTree as ET&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;soaprequest = '&amp;lt;soapenv:Envelope xmlns:soapenv="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://schemas.xmlsoap.org/soap/envelope/" rel="nofollow" target="_blank"&gt;http://schemas.xmlsoap.org/soap/envelope/&lt;/A&gt;&lt;SPAN&gt;" xmlns:ns="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.cisco.com/AXL/API/8.5" rel="nofollow" target="_blank"&gt;http://www.cisco.com/AXL/API/8.5&lt;/A&gt;&lt;SPAN&gt;"&amp;gt;&amp;lt;soapenv:Header /&amp;gt;&amp;lt;soapenv:Body&amp;gt;&amp;lt;ns:listPhone&amp;gt;&amp;lt;searchCriteria&amp;gt;&amp;lt;name&amp;gt;SEP%&amp;lt;/name&amp;gt;&amp;lt;/searchCriteria&amp;gt;&amp;lt;returnedTags&amp;gt;&amp;lt;name&amp;gt;&amp;lt;/name&amp;gt;&amp;lt;/returnedTags&amp;gt;&amp;lt;/ns:listPhone&amp;gt;&amp;lt;/soapenv:Body&amp;gt;&amp;lt;/soapenv:Envelope&amp;gt;'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;soapheaders = {'Content-type':'text/xml', 'SOAPAction':'CUCM:DB ver=8.5 listPhone'}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;AXLRequest = requests.post('&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://CMServer:8443/axl/" rel="nofollow" target="_blank"&gt;https://CMServer:8443/axl/&lt;/A&gt;&lt;SPAN&gt;', data = soaprequest, headers = soapheaders, verify = False, auth=('username','password'))&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;root = ET.fromstring(AXLRequest.text)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DeviceNames = []&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for phone in root.iter('phone'):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DeviceNames.append(phone.find('name').text)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #print phone.find('name').text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;print DeviceNames&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Dec 2014 15:34:42 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565016#M2123</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2014-12-01T15:34:42Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565017#M2124</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thx Kristopher, that's indeed working and a good first step &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Kind of complicated, though. I do use quite a few methods and with the php SoapClient, i can just load the connection with the&amp;nbsp; xdml file and give the parameters in a nice array / list ... and get the stuff back in sort of a nice way.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So if anyone can give a working example using SUDS, that would be perfect.&lt;/P&gt;&lt;P&gt;I did find something that's working in Python2 for the RIS interface:&lt;/P&gt;&lt;P&gt;&lt;A href="http://dparkinson.blogspot.com/2013/01/using-python-to-call-cisco.html" title="http://dparkinson.blogspot.com/2013/01/using-python-to-call-cisco.html"&gt;Parky's Place: Using Python to call Cisco Communications Manager Serviceability SOAP API&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Havent' been able to port that to work with AXL though ...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Dec 2014 16:43:51 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565017#M2124</guid>
      <dc:creator>jseynaev</dc:creator>
      <dc:date>2014-12-01T16:43:51Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565018#M2125</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For what it's worth, I've tried AXL with Python Suds and pysimplesoap.&amp;nbsp; Suds seems to create XML that AXL doesn't like, and I get this error when I try to use an API:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AttributeError: 'NoneType' object has no attribute 'promotePrefixes'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I get a little farther with Pysimplesoap, but in the end I haven't figured out how to call an API.&amp;nbsp; Here's code to get you started, though, if you're interested (substitute your own username, password, and server, and point to the place where you have the WSDL and XSDs):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from pysimplesoap.client import SoapClient&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;import base64&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;wsdl="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://localhost/AXLAPI.wsdl" rel="nofollow" target="_blank"&gt;http://localhost/AXLAPI.wsdl&lt;/A&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;location="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://server:8443/axl" rel="nofollow" target="_blank"&gt;https://server:8443/axl&lt;/A&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;action="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://server:8443/axl" rel="nofollow" target="_blank"&gt;https://server:8443/axl&lt;/A&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;ns='&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://schemas.cisco.com/ast/soap/" rel="nofollow" target="_blank"&gt;http://schemas.cisco.com/ast/soap/&lt;/A&gt;&lt;SPAN&gt;'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;username="username"&lt;/P&gt;&lt;P&gt;password="password"&lt;/P&gt;&lt;P&gt;toencode=username + ':' + password&lt;/P&gt;&lt;P&gt;encoded=base64.b64encode(bytes(toencode,"utf-8"))&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;client = SoapClient(wsdl=wsdl, location=location, action=action, ns=ns, http_headers={'Authorization': 'Basic %s' % encoded})&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;print(client.help('listPhone'))&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Dec 2014 20:43:11 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565018#M2125</guid>
      <dc:creator>npetrele</dc:creator>
      <dc:date>2014-12-01T20:43:11Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565019#M2126</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try this Python SUDS code.&amp;nbsp; I am running this on Python 2.7.8 on Windows 7&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cmserver = '10.10.10.10'&lt;/P&gt;&lt;P&gt;cmport = '8443'&lt;/P&gt;&lt;P&gt;wsdl = 'file:///your/system/path/schema/current/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;location = '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://" rel="nofollow" target="_blank"&gt;https://&lt;/A&gt;&lt;SPAN&gt;' + cmserver + ':' + cmport + '/axl/'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;username = 'username'&lt;/P&gt;&lt;P&gt;password = 'password'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;client = Client(wsdl,location=location, username=username, password=password)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;result = client.service.listPhone({'name':'SEP%'},{'name':'','model':''})&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for node in result['return']['phone']:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print str(node['name']), str(node['model'])&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Dec 2014 23:07:28 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565019#M2126</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2014-12-01T23:07:28Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565020#M2127</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Waw, i think i have figured it out ... but it's a&amp;nbsp; bit a painful one. Got it working for get* methods too now, list is working also (as it always did), still have to try add* stuff.&lt;/P&gt;&lt;P&gt;So, here's how it goes:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Windows7 (shouldn't matter that much) and Python3.4.2&lt;/LI&gt;&lt;LI&gt;install suds-jurko with pip&lt;/LI&gt;&lt;LI&gt;PATCH the file (not kidding) C:\Python34\Lib\site-packages\suds\bindings\document.py&lt;BR /&gt;you just need to comment out line 141:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if not child.isattr():&lt;BR /&gt;(there's only one line like this, so you can't miss)&lt;/LI&gt;&lt;LI&gt;TADAA, all is working. if i understand it correct, suds does not pull in 'optional' stuff from wsdl and with the above patch it should do that now&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As I don't know suds at all, here's a very rudimentary example for a get* request (pretty much based on the answers above ;p)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wsdl = 'file:///C:/path/to/your/matching/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;client = Client(wsdl,location='&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://yourserverhere:8443/axl/',username='yourusername',password='yourpassword" rel="nofollow" target="_blank"&gt;https://yourserverhere:8443/axl/',username='yourusername',password='yourpassword&lt;/A&gt;&lt;SPAN&gt;')&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;phone = client.service.getPhone(name='test')&lt;/P&gt;&lt;P&gt;print(phone)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(reply){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; return = &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (return){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; phone = &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RPhone){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _uuid = "{50BCA715-C781-C8B0-CC90-E0B95CB2F1AD}"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _ctiid = 9&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name = "jseynaev-test"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; description = "jseynaev-test"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product = "Cisco IP Communicator"&lt;/P&gt;&lt;P&gt;&amp;lt; ... very long list of params ... &amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if this works for you too!&lt;/P&gt;&lt;P&gt;Jan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Dec 2014 23:04:14 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565020#M2127</guid>
      <dc:creator>jseynaev</dc:creator>
      <dc:date>2014-12-03T23:04:14Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565021#M2128</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I did a pip install suds-jurko with Python34, and it didn't install &lt;SPAN style="color: #3d3d3d; font-family: arial; font-size: 12px;"&gt;C:\Python34\Lib\site-packages\suds\bindings\document.py.&amp;nbsp; I believe everything necessary is packed in the egg file, and I didn't extract it or edit document.py there.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, the following code still worked fine for me:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;from suds.transport.https import HttpAuthenticated&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cmserver = 'server'&lt;/P&gt;&lt;P&gt;cmport = '8443'&lt;/P&gt;&lt;P&gt;wsdl = 'PATH/TO/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;location = '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://" rel="nofollow" target="_blank"&gt;https://&lt;/A&gt;&lt;SPAN&gt;' + cmserver + ':' + cmport + '/axl/'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;username = 'username'&lt;/P&gt;&lt;P&gt;password = 'password'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;client = Client(wsdl,location=location, transport = HttpAuthenticated(username=username, password=password))&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;result = client.service.listPhone({'name':'SEP%'},{'name':'','model':''})&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for node in result['return']['phone']:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print (str(node['name']), str(node['model']))&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Dec 2014 23:28:24 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565021#M2128</guid>
      <dc:creator>npetrele</dc:creator>
      <dc:date>2014-12-03T23:28:24Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565022#M2129</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, the list* calls seem to work fine 'out of the box', however, things like getPhone or getRegion (try e.g. &lt;SPAN style="color: #3d3d3d; font-family: arial; font-size: 12px;"&gt;region = client.service.getRegion(name='Default')) throw an error of some non-defined property ...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Not sure how the whole pip install works, but for me that's where the file was, maybe it installed it somewhere in your home directory? (i choose to install 'for everyone on this pc')&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Dec 2014 08:41:02 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565022#M2129</guid>
      <dc:creator>jseynaev</dc:creator>
      <dc:date>2014-12-04T08:41:02Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565023#M2130</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I suspect the &amp;lt;returnedTags&amp;gt; element is required for those requests:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;SPAN&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://schemas.xmlsoap.org/soap/envelope/" rel="nofollow" target="_blank"&gt;http://schemas.xmlsoap.org/soap/envelope/&lt;/A&gt;&lt;SPAN&gt;" xmlns:ns="&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.cisco.com/AXL/API/10.5" rel="nofollow" target="_blank"&gt;http://www.cisco.com/AXL/API/10.5&lt;/A&gt;&lt;SPAN&gt;"&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;soapenv:Header/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;soapenv:Body&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ns:getPhone sequence="1"&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name&amp;gt;IPCMRAEU5UCM5X7&amp;lt;/name&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;returnedTags&amp;gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;name/&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/returnedTags&amp;gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ns:getPhone&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/soapenv:Body&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;lt;/soapenv:Envelope&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Dec 2014 15:38:29 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565023#M2130</guid>
      <dc:creator>dstaudt</dc:creator>
      <dc:date>2014-12-04T15:38:29Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565024#M2131</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This works for me in the above example in place of listPhone:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;result = client.service.getPhone(name='SEP010101010101')&lt;/P&gt;&lt;P&gt;print(result)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried various ways of specifying returnedTags, but nothing I tried worked.&amp;nbsp; Suds is not extremely well documented when it comes to using a WSDL like AXLAPI.&amp;nbsp; &lt;IMG src="https://community.cisco.com/legacyfs/online/emoticons/wink.png" /&gt;&amp;nbsp; By the way, I'm using the 10.5 WSDL against a 10.5 CUCM.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Dec 2014 16:15:03 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565024#M2131</guid>
      <dc:creator>npetrele</dc:creator>
      <dc:date>2014-12-04T16:15:03Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565025#M2132</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I agree with Nick.&amp;nbsp; There is not a lot of documentation for using AXL with suds or any other python soap handlerfor that matter, even pysimplesoap.&amp;nbsp; His assessment is also correct with usage of tags.&amp;nbsp; Trying to find out exactly what works with suds was a little difficult.&amp;nbsp; when I posted my code in my last post the only way I was able to figure it out for the listPhone was through a little trial and error with the tags.&amp;nbsp; Also, I was able to get it to work without patching the file you mentioned&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think depending on the call you are using you might have to adjust how you write the tags, so you might have a little trial and error on that one.&amp;nbsp; which would be a benefit in the future maintaining your code.&amp;nbsp; That being said you could always use the old fashioned way like my very first post on this thread, depends on your preference and how simple or complex you want to make it considering your trade offs of time and how mush maintenance you are willing to do to your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below is the final code sample I have combining Nick's testing and my own.&amp;nbsp; Let us know if that works for you or if you are having trouble with any other calls in AXL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cmserver = '10.10.10.10'&lt;/P&gt;&lt;P&gt;cmport = '8443'&lt;/P&gt;&lt;P&gt;wsdl = 'file:///your/file/location/schema/current/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;location = '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://" rel="nofollow" target="_blank"&gt;https://&lt;/A&gt;&lt;SPAN&gt;' + cmserver + ':' + cmport + '/axl/'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;username = 'user'&lt;/P&gt;&lt;P&gt;password = 'pass'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;client = Client(wsdl,location=location, username=username, password=password)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;result = client.service.getPhone(name = 'IPCMRAEU5UCM5X7')&lt;/P&gt;&lt;P&gt;print result&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Dec 2014 16:37:59 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565025#M2132</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2014-12-04T16:37:59Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565026#M2133</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I forgot to mention that in my last post the code is utilizing the 9.1 version of AXL.&amp;nbsp; &lt;IMG src="https://community.cisco.com/legacyfs/online/emoticons/laugh.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Dec 2014 17:07:31 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565026#M2133</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2014-12-04T17:07:31Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565027#M2134</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jan,&lt;/P&gt;&lt;P&gt;did you ever get the answer you were looking for?.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope you are having a good day.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank You,&lt;/P&gt;&lt;P&gt;Jock&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Dec 2014 19:15:27 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565027#M2134</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2014-12-11T19:15:27Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565028#M2135</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, as I stated in my earlier post, if I do that patch, all is working fine...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pretty much agree on all of the above, it's a bit of trial and error, indeed.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Dec 2014 08:35:21 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565028#M2135</guid>
      <dc:creator>jseynaev</dc:creator>
      <dc:date>2014-12-12T08:35:21Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565029#M2136</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pretty good info here, looks like your still the man Jan &lt;IMG src="https://community.cisco.com/legacyfs/online/emoticons/happy.png" /&gt;. Thanks ALL for the use full tips! I managed to get python talking to AXL. I had some errors around SSL, so i used urllib for the authentication. Should be able to use the SSL cert for authentication with minimal modifications. Hopefully this can save someone else from bashing their head against a wall&lt;/P&gt;&lt;P&gt;#Environment&lt;/P&gt;&lt;P&gt;#Centos7/UCM8.5/Python3/suds-jurko&lt;/P&gt;&lt;P&gt;#Note no patching of the file was required, I used the suds-jurko(0.6) from pip install.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;#&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://smirnov-am.blogspot.com.au/2015/04/monitoring-device-registration-with.html" rel="nofollow" target="_blank"&gt;http://smirnov-am.blogspot.com.au/2015/04/monitoring-device-registration-with.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;#got the SSL workaround from above blog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;import ssl&lt;/P&gt;&lt;P&gt;import urllib&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from suds.transport.https import HttpAuthenticated&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t = HttpAuthenticated(username='AXL_USER', password='axlPass')&lt;/P&gt;&lt;P&gt;t.handler=urllib.request.HTTPBasicAuthHandler(t.pm)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ssl_def_context = ssl.create_default_context()&lt;/P&gt;&lt;P&gt;ssl_def_context.check_hostname = False&lt;/P&gt;&lt;P&gt;ssl_def_context.verify_mode = ssl.CERT_NONE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t1=urllib.request.HTTPSHandler(context=ssl_def_context)&lt;/P&gt;&lt;P&gt;t.urlopener = urllib.request.build_opener(t.handler,t1)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wsdl = 'file:///path/to/your/axl/file/axlsqltoolkit/schema/8.5/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;client=Client(wsdl, location='&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://10.1.1.1:8443/axl/" rel="nofollow" target="_blank"&gt;https://10.1.1.1:8443/axl/&lt;/A&gt;&lt;SPAN&gt;', transport=t)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#Usage&lt;/P&gt;&lt;P&gt;phone = client.service.getPhone(name='SMITH-TEST')&lt;/P&gt;&lt;P&gt;print(phone['return']['phone']['lines']['line'][0]['dirn']['pattern'])&lt;/P&gt;&lt;P&gt;86116094&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;phones = client.service.listPhone({'devicePoolName':'CNT_DP'},{'name':'','model':''})&lt;/P&gt;&lt;P&gt;for i in phone['return']['phone']:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(i['name'], i['model'])&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dp = client.service.listDevicePool({'name':'%'},{'name':''})&lt;/P&gt;&lt;P&gt;for i in dp['return']['devicePool']:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(i['name'])&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Will try out some add methods now and see how that goes.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 May 2015 12:18:36 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565029#M2136</guid>
      <dc:creator>bradleysearle</dc:creator>
      <dc:date>2015-05-05T12:18:36Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565030#M2137</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you Bradley for your contributions &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 May 2015 17:08:35 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565030#M2137</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2015-05-06T17:08:35Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565031#M2138</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jock and all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you had any luck adding phones or phone profiles with Python/Suds. If so is it possible to share the code please ?&lt;/P&gt;&lt;P&gt;For example to add a phone I have tried a number of combinations here is one;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ap = client.service.addPhone({&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "name" : "AAAABBBBCCCCDDDD",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "product": "Cisco 7975",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "class": "Phone",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "protocol": "SCCP",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "protocolSide": "User",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "devicePoolName": "test_dp",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "commonPhoneConfigName": "Standard Common Phone Profile",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "locationName": "Hub_None",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "securityProfileName": "Cisco 7975 - Standard SCCP Non-Secure Profile",&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; })&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Everything I have tried has failed. Any help would be appreciated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Brad&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 May 2015 22:50:44 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565031#M2138</guid>
      <dc:creator>bradleysearle</dc:creator>
      <dc:date>2015-05-06T22:50:44Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565032#M2139</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am attaching the code below that worked for me.&amp;nbsp; I needed to add a few elements to make it work.&amp;nbsp; A little trial and error, but you could always try to do a little pruning if you see any elements I have included that you think are not necessary.&amp;nbsp; I also included some debugging function which I have always found useful.&amp;nbsp; Just be careful what you turn on to be at the DEBUG level, you may get more than you bargain with if you set everything to DEBUG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know what you think.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from suds.xsd.doctor import Import&lt;/P&gt;&lt;P&gt;from suds.xsd.doctor import ImportDoctor&lt;/P&gt;&lt;P&gt;from suds.client import Client&lt;/P&gt;&lt;P&gt;from suds.transport.https import HttpAuthenticated&lt;/P&gt;&lt;P&gt;import logging&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cmserver = 'your.cucm.com'&lt;/P&gt;&lt;P&gt;cmport = '8443'&lt;/P&gt;&lt;P&gt;wsdl = 'file:///Your/location/ofWSDL/axlsqltoolkit10(5)/schema/current/AXLAPI.wsdl'&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;location = '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://" rel="nofollow" target="_blank"&gt;https://&lt;/A&gt;&lt;SPAN&gt;' + cmserver + ':' + cmport + '/axl/'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;username = &amp;lt;USERNAME&amp;gt;&lt;/P&gt;&lt;P&gt;password = &lt;SPAN style="font-size: 13.3333330154419px;"&gt;&amp;lt;PASSWORD&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;logging.basicConfig(level=logging.CRITICAL)&lt;/P&gt;&lt;P&gt;logging.getLogger('suds.client').setLevel(logging.DEBUG)&lt;/P&gt;&lt;P&gt;logging.getLogger('suds.transport').setLevel(logging.DEBUG)&lt;/P&gt;&lt;P&gt;logging.getLogger('suds.xsd.schema').setLevel(logging.CRITICAL)&lt;/P&gt;&lt;P&gt;logging.getLogger('suds.wsdl').setLevel(logging.CRITICAL)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;client = Client(wsdl,location=location, username=username, password=password)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#print client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;result = client.service.addPhone({'name':'SEP018888675309','class':'Phone','product':'Cisco 7975','protocol':'SCCP',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'protocolSide':'User','devicePoolName':'Default',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'commonPhoneConfigName':'Standard Common Phone Profile',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'locationName':'Hub_None','securityProfileName':'Cisco 7975 - Standard SCCP Non-Secure Profile',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'useTrustedRelayPoint':'Default','presenceGroupName':'Standard Presence Group','phoneTemplateName':'Standard 7975 SCCP',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; })&lt;/P&gt;&lt;P&gt;print result&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 May 2015 22:26:01 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565032#M2139</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2015-05-07T22:26:01Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565033#M2140</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you Jock ! that worked &lt;IMG src="https://community.cisco.com/legacyfs/online/emoticons/happy.png" /&gt; Looks like I wasn't using a valid mac add (slaps face)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I did a bit of experimenting and found this to be the least number of elements that can be used for 7975&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#add Phone&lt;/P&gt;&lt;P&gt;ap = client.service.addPhone({&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'name': 'SEPAAAABBBB2222',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'product': 'Cisco 7975',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'class': 'Phone',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'protocol': 'SCCP',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'devicePoolName': 'test_dp',&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; })&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;note that I am using ucm10.5 for my test server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you again, much appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 May 2015 23:14:14 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565033#M2140</guid>
      <dc:creator>bradleysearle</dc:creator>
      <dc:date>2015-05-07T23:14:14Z</dc:date>
    </item>
    <item>
      <title>Re: python client for AXL</title>
      <link>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565034#M2141</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Bradley, Awesome, I am glad that worked for you.&amp;nbsp; Thanks for finding out the least number elements required for adding a 7975 phone.&amp;nbsp; that will come in handy.&amp;nbsp; I am also running this against 10.5&amp;nbsp; I might give it a shot against the 9.1 and 10.0 servers in our lab just to make sure that works as well.&amp;nbsp; Probably will, but you never know.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 May 2015 21:13:26 GMT</pubDate>
      <guid>https://community.cisco.com/t5/management/python-client-for-axl/m-p/3565034#M2141</guid>
      <dc:creator>jocreed</dc:creator>
      <dc:date>2015-05-08T21:13:26Z</dc:date>
    </item>
  </channel>
</rss>

