javac#soapciscocisco-axl

Example doAuthenticateUser request message in CUCM 8.5 AXLAPI


The WSDL supplied by Cisco for the their AXLAPI web service is not consumable by WCF Add Service Reference or ASMX Add Web Reference - it produces code that blows up in the Xml Serializer

Apparently the WSDL works fine from Java toolkits

I only need to use one operation on the web service - doAuthenticateUser. Does anyone have an example request message so I can see what I have to build to send a message that gets accepted?


Solution

  • Just got this response from the Cisco forums so to complete this:

    Sample Request:

    POST https://10.88.131.141:8443/axl/ HTTP/1.1
    Accept-Encoding: gzip,deflate
    Content-Type: text/xml;charset=UTF-8
    SOAPAction: "CUCM B ver=8.5 doAuthenticateUser"
    User-Agent: Jakarta Commons-HttpClient/3.1
    Content-Length: 444
    Authorization: Basic QWRtaW5pc3RyYXRvcjpjaXNjbyExMjM=
    Host: 10.88.131.141:8443
    
    
    
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.cisco.com/AXL/API/8.5">
       <soapenv:Header/>
       <soapenv:Body>
          <ns:doAuthenticateUser sequence="1">
             <userid>cupuser1</userid>
             <!--You have a CHOICE of the next 2 items at this level-->
             <password>password</password>
    <!--         <pin>?</pin> -->
          </ns:doAuthenticateUser>
       </soapenv:Body>
    </soapenv:Envelope>
    

    and a response for good measure

    HTTP/1.1 200 OK
    Set-Cookie: JSESSIONIDSSO=583F6C1C226B2F4A601CA578577404B5; Path=/; Secure
    Set-Cookie: JSESSIONID=F4A215575091DB7A443F6179168AC897; Path=/axl; Secure
    Content-Type: text/xml;charset=UTF-8
    Content-Length: 373
    Date: Fri, 20 Jan 2012 23:30:03 GMT
    Server: 
    
    <?xml version='1.0' encoding='UTF-8'?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">   
    <soapenv:Body>
        <ns:doAuthenticateUserResponse xmlns:ns="http://www.cisco.com/AXL/API/8.5">
            <return>
              <userAuthenticated>true</userAuthenticated>
              <code>0</code>
              <daysToExpiry>0</daysToExpiry>
            </return>
        </ns:doAuthenticateUserResponse>
    </soapenv:Body>
    </soapenv:Envelope>