Hi All, Does anyone have a working example script or other method of getting Splunk to interact with a SOAP API?
There are plenty of REST examples, but not SOAP.
Thanks in advance.
Posting here on what worked for me. In looking at https://wiki.python.org/moin/WebServices
1. ran pip2 install --user suds as the splunk user.
2. afterwards, copy ~/.local/lib/python2.7/site-packages/suds/ to $splunk_home/etc/apps/<my_app>/bin
3. if I now run a python script under $splunk_home/etc/apps/<my_app>/bin using the built in splunk python (ie /opt/splunk/bin/splunk cmd python), I can run these commands
>>> from suds.client import Client
>>> client=Client("http://www.dneonline.com/calculator.asmx?WSDL")
>>> print client
Suds ( https://fedorahosted.org/suds/ ) version: 0.4 GA build: R699-20100913
Service ( Calculator ) tns="http://tempuri.org/"
Prefixes (0)
Ports (2):
(CalculatorSoap)
Methods (4):
Add(xs:int intA, xs:int intB, )
Divide(xs:int intA, xs:int intB, )
Multiply(xs:int intA, xs:int intB, )
Subtract(xs:int intA, xs:int intB, )
Types (0):
(CalculatorSoap12)
Methods (4):
Add(xs:int intA, xs:int intB, )
Divide(xs:int intA, xs:int intB, )
Multiply(xs:int intA, xs:int intB, )
Subtract(xs:int intA, xs:int intB, )
Types (0):
>>> client.service.Add(5,6)
11
I could not get this to work with zeep though.
I've written several python scripts that function as a SOAP client. I'm not allowed to share the code, but I can offer a few tips.
REST and SOAP clients are very similar. The key difference is SOAP always uses POST requests. The body of the request is the XML specified in the API. I use the httplib library, but some prefer urllib.
Hi Rich, I know you might not be able to share the exact code, but can you share an anonomised version of it?
Im still having issues with this. Thanks
Hi guys, I am now also facing this problem too. do you have any ideas now?
These links could be help you.
http://www.splunk.com/themes/splunk_com/img/assets/pdfs/education/SplunkDeploymentGuide2_1.pdf
http://dev.splunk.com/restapi