Extension format for vSphere Client plugins

Type: object

Plugin manifest schema used for validation of all vSphere Client plugins.

No Additional Properties

Type: object

Plugin configuration properties

Type: object

Reference to plugin icon used for all plugin categorization items on the UI which support icons: e.g. Navigator entry point, Object menu, etc.

No Additional Properties

Type: string

Name of the plugin icon itself or item within the sprite sheet.

Must be at least 1 characters long

Type: string

Plugin display name used for all plugin categorization items on the UI: e.g. Navigator entry point, Object menu, Monitor category, Configure category, etc.

Must be at least 1 characters long

Additional Properties of any type are allowed.

Type: object

Type: object

Definitions of plugin resources.

No Additional Properties

Type: object

Definition of localization strings for predefined items that vSphere Client displays for the plugin, e.g. categories and menus. Plugin views have the responsibility for localization of the actual view content.

No Additional Properties

Type: object

Localization strings for predefined items, e.g. categories and menus. Each item should contain a single translation for each supported language.

Each additional property must conform to the following schema

Type: object

Localized string item which should contain a definition for each of the locales defined in the locales list.

No Additional Properties

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

Type: string

Must be at least 1 characters long

All properties whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z]{2}-[A-Z]{2}$
Type: string

Must be at least 1 characters long

Type: array

Locales supported by the plugin. Those should match the actual localization items.

Must contain a minimum of 1 items

All items must be unique

No Additional Items

Each item of this array must be:

Type: object

Locales supported by the plugin. All localized strings should contain a definition for each of the locales defined in the current list. The current version of the vSphere Client supports: English US, German, Spanish, French, Japanese, Korean, Chinese Simplified, Chinese Traditional and Italian. English US is used by default if the plugin does not support the current vSphere Client locale.

Type: string
Must match regular expression: ^[a-z]{2}-[A-Z]{2}$
Type: enum (of string)

Must be one of:

  • "en-US"
  • "de-DE"
  • "es-ES"
  • "fr-FR"
  • "ja-JP"
  • "ko-KR"
  • "zh-CN"
  • "zh-TW"
  • "it-IT"

Type: object

Definition of a composite sprite sheet containing one or more icons. Supports the definition of theme specific sprite sheets through the 'themeOverrides' property.

No Additional Properties

Type: object

Defines individual icons within the base theme sprite sheet.

Each additional property must conform to the following schema

Type: object

Specifies the offset coordinates of an icon within the larger sprite-sheet.

No Additional Properties

Type: integer

Horizontal icon offset in pixels within the sprite sheet starting from the left. Can be between 0 and the width of the sprite sheet (exclusive), e.g. 0, 32, 64, etc.

Value must be greater or equal to 0

Type: integer

Vertical icon offset within the sprite sheet starting from the top. Can be between 0 and the height of the sprite sheet (exclusive), e.g. 0, 32, 64, etc.

Value must be greater or equal to 0

Type: object

Defines theme-specific sprite sheets.

No Additional Properties

Type: object

Definition of a theme-specific sprite sheet containing one or more icons. The sprite sheet might contain only part of the icons present in the base sprite sheet, in this case missing icons will be taken from the base sprite sheet.

No Additional Properties

Type: object

Defines individual icons within the theme-specific sprite sheet.

Each additional property must conform to the following schema

Type: object

Specifies the offset coordinates of an icon within the larger sprite-sheet.

Same definition as definitions_iconSpriteSheet_definitions_additionalProperties

Type: string

Location of the sprite sheet.

Must be at least 1 characters long

Type: string

Location of the sprite sheet.

Must be at least 1 characters long

Type: object

Global scope of items that are not specific to a particular inventory object.

No Additional Properties

Type: object

Global view containing any general-purpose plugin solution UI: e.g. dashboards, custom objects, workflows, etc. Only a single global view is supported - multiple global UIs should be aggregated within this view making use of direct internal navigation between the pages.

No Additional Properties

Type: boolean Default: false

Whether this view is a public one i.e. exposed as a navigation target to other plugins. This property is valid only if this view has a 'navigationId'.

Type: string

ID of the global view used for navigation. This is optional and used only when the plugin wants to navigate to this global view from another part of its UI via the JavaScript API app.navigateTo(configObj). The ID should be unique for the plugin manifest in which case uniqueness across the whole vSphere Client is ensured.

Must match regular expression: ^[a-zA-Z0-9_.-]+$

Type: boolean Default: true

Whether to display the Object Navigator or not. Hiding the Object Navigator is commonly used to implement custom plugin navigation.

Type: string

Path to the global view UI content relative to the folder of the plugin manifest.

Must be at least 1 characters long

Type: enum (of string)

Manifest format version: used for versioning of the plugin manifest schema against which the plugin's manifest is validated.

Must be one of:

  • "1.0.0"
  • "1.0.1"
  • "1.1.0"
  • "1.2.0"

Type: object

Scope used to define UI elements bound to a specific vSphere inventory object type.

No Additional Properties

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

No Additional Properties

Type: object

A single category with one or more Configure views on the current object. By default, the Configure category item is labeled with the display name of the plugin.

No Additional Properties

Type: object

Definitions of category details.

Type: object

Type: string

Specify the plugin server URI which is expected to return which of the specified extensions will be visible in the UI.

Must be at least 1 characters long

Type: object

Type: string

Specify the plugin server URI which is expected to return which of the specified extensions will be visible on the UI.

Must be at least 1 characters long

Type: string

Specifies the type of the server to receive the request. By default, this is the plugin manifest server.

Type: array

The ordered list of views within the table of contents category.

All items must be unique

No Additional Items

Each item of this array must be:

Type: object
No Additional Properties

Type: boolean

Specify whether the view will be visible/hidden dynamically based on a remote call to the given plugin server path.

Type: boolean Default: false

Whether this view is a public one i.e. exposed as a navigation target to other plugins. This property is valid only if this view has a 'navigationId'.

Type: string

Label of the view displayed in the table of contents.

Must be at least 1 characters long

Type: string

ID of the view used only for navigation. It should be unique within the scope of the plugin. Required when the view is specified as 'dynamic'.

Same definition as navigationId

Type: enum (of string)

Must be one of:

  • "standard"

Type: string

Location of the view UI content.

Must be at least 1 characters long

Type: object

A single menu with one or more actions on the current object. The menu is labeled with the display name of the plugin.

No Additional Properties

Type: array

Set of actions to display in the menu.

No Additional Items

Each item of this array must be:


Type: object
No Additional Properties

Type: boolean Default: false

Specify whether the action can work on multiple selected objects.

Type: boolean

Specify whether the action will be visible/hidden dynamically based on a remote call to the given plugin server path.

Type: object

Reference to the icon of the menu item.

Same definition as icon

Type: string

The id of the action. Required when the action is specified as 'dynamic'.

Same definition as navigationId

Type: string

Label of the action displayed in menus.

Must be at least 1 characters long


Defines what should happen as a result of executing the action.

Type: object
No Additional Properties

Type: string

Accessibility title of the action modal dialog.

Must be at least 1 characters long

Type: boolean Default: true

Specify whether the modal dialog should have a close button.

Type: object
No Additional Properties

Type: string

Title of the action modal dialog.

Must be at least 1 characters long

Type: enum (of string)

Indicates that a modal dialog should be opened as a result of executing the action.

Must be one of:

  • "modal"

Type: string

Location of the modal dialog UI content.

Must be at least 1 characters long

Type: object
No Additional Properties

Type: string

The navigation ID of the target object view. The target view should be defined by this plugin for the same object type as the action. Note: when determining the action's visibility, the target view's visibility (if dynamic) is not evaluated and taken into consideration.

Same definition as navigationId

Type: enum (of string)

Indicates that a navigation to an object view defined by this plugin should happen as a result of executing the action.

Must be one of:

  • "navigation"

Type: enum (of string)

Must be one of:

  • "action"
Type: object
No Additional Properties

Type: enum (of string)

Show a separator to divide the menu actions.

Must be one of:

  • "separator"

Type: object

A single category with one or more Monitor views on the current object. By default, the Monitor category item is labeled with the display name of the plugin.

Same definition as configure

Type: object

Type: object
No Additional Properties

Type: object

A single card on the inventory object's summary screen. Should contain only summarized plugin data for the current object, usually represented as name-value pairs. Can contain action buttons or links to Monitor/Configure views with more detailed data.

No Additional Properties

Type: boolean

Specify whether the card will be visible/hidden dynamically based on a remote call to the given plugin server path.

Type: object

The icon of the card. The default plugin icon will be used if no icon is provided.

Same definition as icon

Type: string

The id of the card. Required when the card is specified as 'dynamic'.

Same definition as navigationId


Type: object
No Additional Properties

Type: integer

Deprecated. This option was applicable to portlets and is not available for cards.

Value must be greater or equal to 1 and lesser or equal to 2

Type: enum (of string)

Deprecated. This option was applicable to portlets and is not available for cards.

Must be one of:

  • "span"

Type: integer

Deprecated. This option was applicable to portlets and is not available for cards.

Value must be greater or equal to 1 and lesser or equal to 1

Type: object
No Additional Properties

Type: enum (of string)

Size of the card's width. Default is 'medium'. Possible values are 'small', 'medium' and 'large'.

Must be one of:

  • "small"
  • "medium"
  • "large"

Type: string

The title of the card. The default plugin name will be used if no title is provided.

Must be at least 1 characters long

Type: string

Location of the section UI content.

Must be at least 1 characters long

Type: object
No Additional Properties

Type: array

Cards on the inventory object's summary screen. At most 5 cards can be defined. Should contain only summarized plugin data for the current object, usually represented as name-value pairs. Can contain action buttons or links to Monitor/Configure views with more detailed data.

Must contain a minimum of 1 items

Must contain a maximum of 5 items

No Additional Items

Each item of this array must be:

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

No Additional Properties

Type: object

A single category with one or more Configure views on the current object. By default, the Configure category item is labeled with the display name of the plugin.

Same definition as configure

Type: object

A single menu with one or more actions on the current object. The menu is labeled with the display name of the plugin.

Same definition as menu

Type: object

A single category with one or more Monitor views on the current object. By default, the Monitor category item is labeled with the display name of the plugin.

Same definition as monitor

Type: object

A single category with one or more Snapshots views on the current object. By default, the Snapshots category item is labeled with the display name of the plugin.

Same definition as configure

Type: object

Define plugin menus rendered as children of the respective vSphere Client-defined sub-menus in the menu of VirtualMachine objects, e.g. VirtualMachine menu -> Snapshots sub-menu -> Plugin sub-menu.

No Additional Properties

Type: object

Defines a plugin menu rendered as a child of the vSphere Client-defined Snapshots sub-menu in the menu of VirtualMachine objects, e.g. VirtualMachine menu -> Snapshots sub-menu -> Plugin sub-menu. The plugin menu should contain at least one action and is labeled with the display name of the plugin.

Same definition as menu

Type: object

The vSphere inventory object type category containing all plugin extensions on this object type.

Same definition as ClusterComputeResource

Type: object

Requirements specification for the plugin.

No Additional Properties

Type: boolean

Capability flag for actions on multiple targets feature. This feature allows execution of actions on multiple selections.

Type: boolean

Capability flag for accessibility title in an action modal dialog feature.

Type: boolean

Capability flag for closable action modal dialog feature.

Type: enum (of string)

Capability flag for the "navigation" actions feature. This feature allows the definitions of object actions that trigger navigation to object views.

Must be one of:

  • "1.0.0"

Type: boolean

Capability flag for adding action separators.

Type: array of enum (of string)

Collection of browser specific options available to plugins.

No Additional Items

Each item of this array must be:

Type: enum (of string)

Must be one of:

  • "allow.popups"
  • "allow.popups.to.escape.sandbox"
  • "allow.downloads"

Type: object

Allowing navigation to a client view via htmlClientSdk.app.navigateToClientView API. Valid target view ids are: ["administration.ceip", "cluster.configure.settings.drs", "cluster.configure.settings.ha", "cluster.configure.settings.quickstart", "cluster.monitor.allIssues", "cluster.summary", "datastore.summary", "folder.configure.keyProviders", "host.configure.networking.physicalAdapters", "host.summary", "namespace.storage.persistentVolumeClaims", "network.summary", "profilesAndPolicies.vmStoragePolicies", "template.summary", "vm.monitor.performance.overview", "vm.summary", "folder.configure.settings.general", "workload-platform.supervisor.summary", "workload-platform.supervisor.enableWizard", "workload-platform.home.supervisors"].

Type: enum (of string)

The version of the client view navigation capability.

Must be one of:

  • "1.0.0"
  • "2.0.0"
  • "3.0.0"
  • "4.0.0"
  • "5.0.0"

Type: enum (of string)

API to open a confirmation modal dialog.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag for cross remote plugin shared modals. The features linked to this flag are: the "sharedModals" top level field in the plugin manifest; htmlClientSdk.modal.getSharedModalsMap() JavaScript API; htmlClientSdk.modal.openSharedModal() JavaScript API.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag for cross remote plugin view navigation. The features linked to this flag are: the "publicView" field of views in the plugin manifest; htmlClientSdk.app.getRemotePluginNavigationMap() JavaScript API; htmlSdk.app.navigateToRemotePluginView() JavaScript API.

Must be one of:

  • "1.0.0"


Type: object

JS APIs for date and time formatting: 'htmlClientSdk.app.formatDateTime()' and 'htmlClientSdk.event.onDateTimeFormatChanged()'.

Type: enum (of string)

The version of the date and time formatting capability.

Must be one of:

  • "1.0.0"
Type: enum (of string)

JS APIs for date and time formatting: 'htmlClientSdk.app.formatDateTime()' and 'htmlClientSdk.event.onDateTimeFormatChanged()'.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag for theme overrides support in icon sprite sheet.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag to enable the usage of multiple summary cards.

Must be one of:

  • "1.0.0"

Type: enum (of string)

API to open a modal dialog.

Must be one of:

  • "1.1.0"

Type: enum (of string)

Capability flag for the Per WCP Cluster Extensibility feature. The feature allows plugins, registered with the WCP Service, to extend specific WCP clusters only, not the root VC Folder like the regular plugins do.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Support for making API calls to any /api/ui endpoint in a linked vCenter environment.

Must be one of:

  • "1.0.0"

Type: enum (of string)

The version of the set of APIs used to build the plugin.

Must be one of:

  • "1.0.0"
  • "1.0.1"
  • "1.1.0"
  • "1.2.0"

Type: enum (of string)

JS API for retrieving the plugin backend servers: 'htmlClientSdk.getPluginBackendInfo'.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag for plugin dynamic extensions. It allows plugins to specify an endpoint which will be called by the vSphere Client and is expected to return which dynamic plugin extensions should be visible or hidden based on plugin backend checks (e.g. property values, privilege checks, etc.).

Must be one of:

  • "1.0.0"

Type: enum (of string)

JS API for retrieving the proxied plugin server origin: 'htmlClientSdk.getProxiedPluginServerOrigin'.

Must be one of:

  • "1.0.0"

Type: object

Defines the supported vCenter Server environments.

Type: array of enum (of string)
No Additional Items

Each item of this array must be:

Type: enum (of string)

Must be one of:

  • "onprem"
  • "cloud"
  • "gateway"

Type: string

Indicates the valid version or interval of versions.

Must match regular expression: ^\s*(([\(\[]\s*(\d+(\.\d+){0,3})?\s*,\s*(\d+(\.\d+){0,3})?\s*[\)\]])|\d+(\.\d+){0,3})\s*$

Type: enum (of string)

Capability flag for extending the Snapshots sub-menu of VirtualMachine objects.

Must be one of:

  • "1.0.0"

Type: enum (of string)

Capability flag for extending top level Snapshots tab of VirtualMachine objects.

Must be one of:

  • "1.0.0"

Type: object

Defines the supported vSphere Client environments.

Same definition as vcenter.server

Type: array

A list of modal dialogs which can be opened by all instances of the plugin and possibly by other remote plugins. The list of shared modals can be retrieved with the JavaScript API htmlClientSdk.modal.getSharedModalsMap(). A shared modal can be opened with the JavaScript API htmlClientSdk.modal.openSharedModal()

Must contain a minimum of 1 items

All items must be unique

No Additional Items

Each item of this array must be:

Type: object

A modal dialog that can opened by all instances of the plugin and possibly by other remote plugins.

No Additional Properties

Type: string

Accessibility title of the modal dialog.

Must be at least 1 characters long

Type: boolean Default: true

Specify whether the modal dialog should have a close button.

Type: string

ID of the modal dialog, used to identify the modal in the JavaScript APIs htmlClientSdk.modal.getSharedModalsMap() and htmlClientSdk.modal.openSharedModal(). The ID should be unique for the plugin manifest in which case uniqueness across the whole vSphere Client is ensured.

Same definition as navigationId

Type: boolean Default: false

Whether this modal dialog is a public one i.e. it can be opened by other plugins.

Type: string

Title of the modal dialog.

Must be at least 1 characters long

Type: string

Location of the modal dialog UI content.

Must be at least 1 characters long