IP Library › Granted Patent US 11,695,803
Granted Patent B2
US 11,695,803 · App. 17/163,318 · Granted Jul 4, 2023

Extension framework for an information technology and security operations application

Inventors: Sourabh Satish (Fremont, CA); Min Xu (San Jose, CA); Yang Li (San Jose, CA); Yan Li (Mountain View, CA)
Assignee: Splunk Inc.
H04L63/20H04L41/22H04L63/0281H04L63/1433
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,695,803
App. No.
17/163,318
Filed
Jan 29, 2021
Granted
Jul 4, 2023
Kind
B2
Art Unit
2493
USPC
726/4
Abstract

Techniques are described for providing an extension framework for an IT and security operations application. The described extension framework allows various types of users to extend the user interfaces, data content, and functionality of an IT and security operations application to enhance and enrich users' workflow and investigative experiences. Example types of extensions enabled by the extension framework include modifying or supplementing GUI elements and other components, where users can implement these extensions at pre-defined extension points of the IT and security operations application. The extension framework further includes a data integration system that provides users with mechanisms to integrate data from external applications, services, or other data sources into their plugins.

Claims (54)

1. A computer-implemented method, comprising:

causing display of a plugin subscription graphical user interface (GUI), wherein the plugin subscription GUI includes a searchable list of plugins available in an information technology (IT) and security operations application;

receiving, via the plugin subscription GUI, a request to subscribe to a plugin, wherein the plugin includes a plugin specification defining at least one supplemental interface element to be displayed in a GUI of the IT and security operations application;

receiving a request to display the GUI of the IT and security operations application; and

causing display of the GUI of the IT and security operations application, wherein the GUI includes display of at least one default interface element of the IT and security operations application and display of the at least one supplemental interface element defined by the plugin specification.

2. The method of claim 1 , wherein the supplemental interface element includes at least one of: a dashboard interface, a dashboard panel, a menu item, a tab item, or data displayed in association with an incident stored by the IT and security operations application.

3. The method of claim 1 , further comprising:

receiving, via a plugin development GUI provided by the IT and security operations application, input specifying at least one of: a spatial positioning of the at least one supplemental interface element relative to other interface components of the GUI, a type of visualization to be displayed in the at least one supplemental interface element, or a data source to use to generate a visualization to be displayed in the at least one supplemental interface element; and

updating the plugin specification based on the input.

4. The method of claim 1 , wherein the plugin specification identifies a data source to be used by the plugin to generate the supplemental interface element, and wherein the method further comprises:

obtaining data from the data source; and

causing display of the data in the at least one supplemental interface element.

5. The method of claim 1 , wherein the plugin specification identifies an external application programming interface (API) from which data associated with the at least one supplemental interface element is to be obtained, and wherein the method further comprises:

sending a request to the API identified by the plugin specification to obtain data results; and

causing display of the data results in the at least one supplemental interface element.

6. The method of claim 1 , wherein the plugin specification identifies an external application programming interface (API) from which data associated with the at least one supplemental interface element is to be obtained, and wherein the method further comprises:

sending, to an API proxy of the IT and security operations application, a request to obtain data results from the API, where the request causes the API proxy to:

obtain an API token associated with the API, and

use the API token to obtain data results from the API; and

causing display of the data results in the at least one supplemental interface element.

7. The method of claim 1 , wherein the plugin specification identifies an external application programming interface (API) from which data associated with the at least one supplemental interface element is to be obtained, and wherein the method further comprises:

sending, to an API proxy of the IT and security operations application, a request to obtain data results from the API, where the request causes the API proxy to:

obtain data results from the API, and

store the data results in a data cache; and

causing display of the data results in the at least one supplemental interface element.

8. The method of claim 1 , wherein the plugin specification includes a search query used to search a data store managed by the IT and security operations application, and wherein the method further comprises:

executing the search query against the data store to obtain results data; and

causing display of the results data.

9. The method of claim 1 , wherein the plugin specification includes a search query used to search a plugin-specific data store, and wherein the method further comprises:

executing the search query against the plugin-specific data store to obtain results data; and

causing display of the results data.

10. The method of claim 1 , wherein the IT and security operations application implements a webhook used to ingest data from one or more data sources external to the IT and security operations application.

11. The method of claim 1 , wherein the plugin specification defining the at least one supplemental interface element includes data conforming to a schema of a dashboard framework used to render the at least one supplemental interface element in the GUI.

12. The method of claim 1 , further comprising creating one or more computing resources based on the request to subscribe to the plugin, wherein the one or more computing resources include at least one of: a data stream processing pipeline, a webhook, a security token, or a plugin-specific index.

13. The method of claim 1 , further comprising:

receiving a request to unsubscribe to the plugin;

receiving a request to display the GUI of the IT and security operations application; and

causing display of the GUI of the IT and security operations application, wherein the GUI includes display of at least one default interface element of the IT and security operations application and does not include the at least one supplemental interface element.

14. The method of claim 1 , wherein the plugin specification defines a plurality of supplemental interface elements to be displayed in the GUI of the IT and security operations application, and wherein the GUI includes display of the plurality of supplemental interface elements.

15. The method of claim 1 , wherein the plugin specification further defines a content extension to the IT and security operations application including at least one of: a response template, a playbook, or a connector.

16. A computing device, comprising:

a processor; and

a non-transitory computer-readable medium having stored thereon instructions that, when executed by the processor, cause the processor to perform operations including:

causing display of a plugin subscription graphical user interface (GUI), wherein the plugin subscription GUI includes a searchable list of plugins available in an information technology (IT) and security operations application;

receiving, via the plugin subscription GUI, a request to subscribe to a plugin, wherein the plugin includes a plugin specification defining at least one supplemental interface element to be displayed in a GUI of the IT and security operations application;

receiving a request to display the GUI of the IT and security operations application; and

causing display of the GUI of the IT and security operations application, wherein the GUI includes display of at least one default interface element of the IT and security operations application and display of the at least one supplemental interface element defined by the plugin specification.

17. The computing device of claim 16 , wherein the supplemental interface element includes at least one of: a dashboard interface, a dashboard panel, a menu item, a tab item, or data displayed in association with an incident stored by the IT and security operations application.

18. A non-transitory computer-readable medium having stored thereon instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:

causing display of a plugin subscription graphical user interface (GUI), wherein the plugin subscription GUI includes a searchable list of plugins available in an information technology (IT) and security operations application;

receiving, via the plugin subscription GUI, a request to subscribe to a plugin, wherein the plugin includes a plugin specification defining at least one supplemental interface element to be displayed in a GUI of the IT and security operations application;

receiving a request to display the GUI of the IT and security operations application; and

causing display of the GUI of the IT and security operations application, wherein the GUI includes display of at least one default interface element of the IT and security operations application and display of the at least one supplemental interface element defined by the plugin specification.

19. The non-transitory computer-readable medium of claim 18 , wherein the supplemental interface element includes at least one of: a dashboard interface, a dashboard panel, a menu item, a tab item, or data displayed in association with an incident stored by the IT and security operations application.

Assignments (3)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2021
From: SATISH, SOURABH; XU, MIN; LI, YANG; LI, YAN
To: SPLUNK INC.
Reel/Frame 056051/0616 →
Continuity (1)
Related Publication 20220247784A1 · Aug 4, 2022