Dashboards & Visualizations

[Noob Question] Why do API calls from Javascript require a special library?

neiljpeterson
Communicator

I am looking at this example. I just want to make a search in Splunk using the the API inside some Javascript.

This indicates I need to have splunk.js on the server making the API call. Am I reading this correctly?

However I can run simple API calls using curl by passing some basic info, like the search and log in creds, and get back the data I want. No extras needed.

Can I not do this same thing using Javascript without needing the Splunk specific js files?

0 Karma

airsplunk
Explorer

As strive says, you don't "need" these per se, but why reinvent the wheel? What these libraries do is wrap up a lot of the low level stuff, providing convenience functions. A line of curl is fine, but what about things like exception handling? Once you start making your code robust, you'll probably find yourself writing something very similar to what their libraries already do.

strive
Influencer

I think it is possible but you may spend lots and lots of time in writing the core scripts. That could be something like writing your own base code similar to what Service class provides.
If you look at the documentation of Service Class at http://docs.splunk.com/DocumentationStatic/JavaScriptSDK/1.4/splunkjs.Service.html they have exposed so many methods to access splunk's resources. It is worth to use the existing libraries and build our features on top of that rather than developing something from scratch.

Get Updates on the Splunk Community!

Observe and Secure All Apps with Splunk

  Join Us for Our Next Tech Talk: Observe and Secure All Apps with SplunkAs organizations continue to innovate ...

Splunk Decoded: Business Transactions vs Business IQ

It’s the morning of Black Friday, and your e-commerce site is handling 10x normal traffic. Orders are flowing, ...

Fastest way to demo Observability

I’ve been having a lot of fun learning about Kubernetes and Observability. I set myself an interesting ...