I'm hoping to build a product that allows users to easily select a report from their Splunk instance and embed it in a page. Is it possible to either retrieve or generate the iframe embed URL for a report from the REST API? Optionally, can I enable embedding for a report through the REST API?
Turns out the answer is yes to both.
For a report that's already set up for embedding, the URL scheme is http://<host>:8000/embed?s=/servicesNS/<owner>/<app>/saved/searches/<search name>&oid=<token>
. The "token" is retrievable via the "embed.token" attribute of the scheduled search, visible in the REST API.
To enable embedding of a report, assuming it's already been scheduled, simply POST to https://<host>:8089/servicesNS/<owner>/<app>/saved/searches/<search name>/embed
.
I don't believe this is correct anymore for current releases of Splunk. The embed URL has changed drastically.
Turns out the answer is yes to both.
For a report that's already set up for embedding, the URL scheme is http://<host>:8000/embed?s=/servicesNS/<owner>/<app>/saved/searches/<search name>&oid=<token>
. The "token" is retrievable via the "embed.token" attribute of the scheduled search, visible in the REST API.
To enable embedding of a report, assuming it's already been scheduled, simply POST to https://<host>:8089/servicesNS/<owner>/<app>/saved/searches/<search name>/embed
.