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!

Splunk Decoded: Service Maps vs Service Analyzer Tree View vs Flow Maps

It’s Monday morning, and your phone is buzzing with alert escalations – your customer-facing portal is running ...

What’s New in Splunk Observability – September 2025

What's NewWe are excited to announce the latest enhancements to Splunk Observability, designed to help ITOps ...

Fun with Regular Expression - multiples of nine

Fun with Regular Expression - multiples of nineThis challenge was first posted on Slack #regex channel ...