Wireless Access

Reply
Occasional Contributor II
Posts: 13
Registered: ‎10-04-2016

Aruba 3200 (US) Mob Cntrlr w 8 AP Bndl - inquiry for XML module on Aruba WLAN controllers

My Aruba controller has been configured to be accessed via XML API.  I am using a PHP script to get data from the controller via XML API.

 

I am referring this document to create my xml api request. 

http://www.arubanetworks.com/techdocs/ArubaOS_63_Web_Help/Content/ArubaFrameStyles/XML_API/Using_the_XML_API_Server.htm

 

As per the document, I have created my request as follows: ---- But I am getting “504 Gateway timed out” error. Can you please validate my API request and please help me to troubleshoot the issue.

 

https://<controller-ip/auth/command.xml

 

$xml='<aruba command="user_query"> <macaddr>xx:xx:xx:xx:xx:xx</macaddr> <key>Key generated while setting up the controller

for XML API</key>

<version>1.0</version> </aruba>';

 

    // Initialize cURL

                       $curl = curl_init();

                       $url = "https://<controller-ip/auth/command.xml";

                      // set URL and other appropriate options

                       curl_setopt($curl, CURLOPT_URL, $url);

                       curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/xml','Authorization: Bearer XML API key generated while setting up XML API));

                       curl_setopt($curl, CURLOPT_HEADER, 1);

                       curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY);

                       curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);

                       curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE);

                       // This sets the number of fields to post

                       curl_setopt($curl,CURLOPT_POST, sizeof($xml));

                       // This is the fields to post in the form of an array.

                       curl_setopt($curl,CURLOPT_POSTFIELDS, $xml);

 

                       //execute the post

                       $result = curl_exec($curl);

                       $info = curl_getinfo($curl);

                       echo curl_getinfo($ch) . '<br/>';

echo curl_errno($curl) . '<br/>';

echo curl_error($curl) . '<br/>';

                       curl_close($curl);

Guru Elite
Posts: 21,491
Registered: ‎03-29-2007

Re: Aruba 3200 (US) Mob Cntrlr w 8 AP Bndl - inquiry for XML module on Aruba WLAN controllers

Did you already configure the controller with the XML-API server and then assign it to a AAA profile?



Colin Joseph
Aruba Customer Engineering

Looking for an Answer? Search the Community Knowledge Base Here: Community Knowledge Base

Occasional Contributor II
Posts: 13
Registered: ‎10-04-2016

Re: Aruba 3200 (US) Mob Cntrlr w 8 AP Bndl - inquiry for XML module on Aruba WLAN controllers

[ Edited ]

Thank you for your reply.

 

Yes, I have already configured the xml api and assigned to aaa profile.

Occasional Contributor II
Posts: 13
Registered: ‎10-04-2016

Re: Aruba 3200 (US) Mob Cntrlr w 8 AP Bndl - inquiry for XML module on Aruba WLAN controllers

Have figured out issue and now the curl request is executing. but now, I am getting 

"invalid message digest" error. 

When I refer to the doc, it says - 

This is due to a mismatch in secret between the XML server and the controller XML API profile. If using non cleartext, this could be an error in the calculation of the hashed secret.

 

Yes my Key is not clear text. how should I fix it? should I use only cleartext key?

 

Thank you!

<aruba>\n
  <status>Error</status>\n
  <code>7</code>\n
  <reason>invalid message digest</reason>\n
</aruba>

 

Occasional Contributor II
Posts: 13
Registered: ‎10-04-2016

Re: Aruba 3200 (US) Mob Cntrlr w 8 AP Bndl - inquiry for XML module on Aruba WLAN controllers

I am able to figure out the issue with the key. When I replace the authentication method to “Cleartext”, I was able to get rid of the key error. And the API request works fine.

 

But when I query the API from our application for random user, I don’t know the user’s IP address, So I  should be able to query the API just only with MAC address.  As per the document, I  understand that the IP address is mandatory for all API request. 

 

When I  run the API request without IP address, I am  receiving the following error message.:

<aruba>\n

  <status>Error</status>\n

  <code>1</code>\n

  <reason>unknown user</reason>\n

</aruba>

Can you please help me to figure out some solution to this? Getting API working by just passing MAC address, key, authentication, and version.

Search Airheads
Showing results for 
Search instead for 
Did you mean: