Application manifest structure

The manifest is a JSON file that describes to IBM® QRadar® the capabilities that the app provides.

The following table describes the fields that you can include in the manifest.json file.

Table 1. Application manifest fields
Field Required Type Description
name Yes String The user-readable name of the app. If the app is globalized This field can optionally point at a resource bundle key.
description Yes String The user-readable description of the app. If the application is globalized, this field can optionally point at a resource bundle.
version Yes String A version string for the app. You can use any format that you want here.
uuid Yes String An RFC 4122-compliant universally unique identifier for the application.

The create command uses the Python UUID package to generate a random 128-bit number for the uuid value.

If you do not use the SDK to create the app manifest file, you must manually enter a unique value in the uuid field.

authentication Yes String Authorization for the app to access QRadar. The only mandatory entry is "requested_capabilities": ["<capability>"].

For example, admin is a commonly used user capability.

Enter at least one supported QRadar user capability. The installation fails if any of the requested_capabilities are not defined in QRadar.

load_flask No Boolean Set to false when you don't want to make Python Flask framework available to your app. Typically, you might disable Flask when you want your app to use a different web application framework.

If not specified, this field defaults to true.

Supported by QRadar Console V7.3.0

and V7.3.1
node_only No Boolean If you want your app to be installed on an app node only and not on the QRadar Console Console, set to true.

Useful when your app is resource-intensive. When you use this field, inform your users that your app runs only on an app node appliance (unmanaged host).

If not specified, this field defaults to false.

Supported by QRadar Console V7.3.0

and later.
debugging No Boolean Set to true to turn on logging for your app. If not specified, this field defaults to false.
areas No Array of Area Type One or more Area objects describe new complete pages of the application. In QRadar, Area objects are represented as tabs.
rest_methods No Array of REST Method Type One or more REST Method objects describe REST methods that the app exposes. REST Method objects are required parameters for Dashboard Items and Metadata Providers, and are optional for Actions.
dashboard_items No Array of Dashboard Item Type One or more Dashboard Item objects describe the contents of new items that you want to expose to the QRadar dashboard.
configuration_pages No Array of Configuration Page Type One or more Configuration Page objects describe new complete pages of the app that represent configuration. In QRadar, configuration pages are opened from the Admin tab.
gui_actions No Array of GUI Action Type One or more GUI Action objects describe new actions that can be performed on items in the user interface by page toolbars or by right-click menus.
page_scripts No Array of Page Script type One or more Page Script objects describe new JavaScript files that you want included within an existing page in QRadar. By default, these scripts run in their own namespace.
metadata_providers No Array of Metadata Provider type One or more Metadata Provider objects describe REST methods that can be called to fetch new metadata information for certain data types in QRadar. Metadata is shown in tooltips when a mouse is hovered-over an item.
resource_bundles No Array of Resource Bundle type One or more Resource Bundle objects. You use these objects for language locales and locale properties file locations.
dev_opts No Array of Developer Options type One or more Developer Option objects. You use these objects to specify values that are used when you develop locally.
resources No Integer One or more Resource objects. You use these objects to configure the amount of memory in megabytes that is available for the app to use.

Supported by QRadar V7.2.7 and later.

fragments No Array of Fragments type Use these objects to determine the injection point in the QRadar UI where content is added and the rest endpoint that is used to retrieve the content.

Supported by QRadar V7.2.8 and later.

custom_columns No Array of Custom Columns type One or more Custom column objects. You use these objects to identify the context (the page and table in the QRadar UI) where a custom column is added, a label for the column header, the type of data to be added, and the rest endpoint that is used to add the column content.

Supported by QRadar V7.2.8 and later.