Getting Data In

How to make a POST request to Splunk API in a SimpleXML javascript dashboard?

herbatology
New Member

How can I use the splunkjs "Service" class to make POST changes to .conf files via the REST API in a Splunk SimpleXML JavaScript Dashboard (embedded via <dashboard script="myscript.js">)?

I've tried to use the documentation, however it is unclear to me, if I can use this class in javascript in a SimpleXML dashboard and how.
https://docs.splunk.com/DocumentationStatic/JavaScriptSDK/1.0/splunkjs.Service.Endpoint.html#splunkj...

Previously I've used SearchManager objects to query the rest API via the "| rest" command, but apparently this command only allows GET requests and not POST. This is not suitable for me as I want to CHANGE a config file directly via a javascript call to the REST API, without a workaround with a custom python search command or elsewhat.

require([
    'jquery', 
    'underscore',
    'splunkjs/http',
    'splunkjs/service',
    'splunkjs/mvc',
    'splunkjs/mvc/searchmanager', 
    'splunkjs/mvc/simplexml/ready!'
], function($, _, Http, Service, mvc, SearchManager, TableView) {
      var endpoint = new splunkjs.Service.Endpoint(service, "search/jobs/12345");
     endpoint.post("control", {action: "cancel"}, function() { console.log("CANCELLED"))});
});
0 Karma

divya1388
Explorer

@herbatology  Did you find any solution to this? I am trying to find an answer for the same question. My use case is to post a Maintenance Window when a submit button on the dashboard is clicked.

0 Karma
Get Updates on the Splunk Community!

Splunk Observability for AI

Don’t miss out on an exciting Tech Talk on Splunk Observability for AI!Discover how Splunk’s agentic AI ...

Splunk Enterprise Security 8.x: The Essential Upgrade for Threat Detection, ...

Watch On Demand the Tech Talk, and empower your SOC to reach new heights! Duration: 1 hour  Prepare to ...

Splunk Observability as Code: From Zero to Dashboard

For the details on what Self-Service Observability and Observability as Code is, we have some awesome content ...