Newer Version Available

This content describes an older version of this product. View Latest

CustomApplication

CustomApplication represents a custom or standard application. In API version 29.0 and earlier, CustomApplication represents only a custom application. An application is a list of tab references, with a description and a logo. This type extends the Metadata metadata type and inherits its fullName field.

File Suffix and Directory Location

Custom and standard applications have the suffix .app and are stored in the applications folder.

Retrieving a component of this metadata type in a project makes the component appear in any Profile and PermissionSet components that are retrieved in the same package.

Note

Version

Custom applications are available in API version 10.0 and later. Standard applications are available in API version 30.0 and later.

Fields

Field Name Field Type Description
actionOverrides AppActionOverride[] Represents an action override for an application. Use it to create, update, edit, or delete action overrides.

This field is available for Lightning Experience in API version 38.0 and later.

brand AppBrand The color scheme and logo used for the app.

This field is available for Lightning Experience in API version 38.0 and later.

consoleConfig ServiceCloudConsoleConfig Represents configuration settings for a Salesforce console app.

This field is available in API version 42.0 and later.

defaultLandingTab string The fullName of a standard tab or custom tab that opens when this application is selected.
description string The optional description text of the application.
formFactors FormFactor (enumeration of type string) Indicates the form factors for which the app is visible for Lightning Experience. Valid values are:
  • Null (no value)—For a desktop using Salesforce Classic
  • Small—For a mobile device using the Salesforce mobile app
  • Medium—Reserved for future use
  • Large—For a desktop using Lightning Experience

This field is available in API version 38.0 and later.

As of version 38.0, formFactors is set to Large for existing Salesforce Classic apps, except for Salesforce Classic consoles. Salesforce Classic apps installed from packages created before version 38.0 also have formFactors set to Large. For Salesforce Classic apps in packages created with 38.0 or later, you must set formFactors to Large for Salesforce Classic apps to appear in the Lightning Experience desktop.

As of API version 47.0, the Small value is supported for Lightning apps. The formFactors field can be set to Small or Large for Lightning apps, and it can be set to Null or Large for Salesforce Classic apps.

Note

isNavAutoTempTabsDisabled boolean Indicates whether the navigation automatically creates temporary tabs settings. Applies only to Lightning apps with standard navigation. Available in API version 43.0 and later.
isNavPersonalizationDisabled boolean Indicates whether navigation personalization is disabled. Applies only to Lightning apps. Available in API version 43.0 and later.
isServiceCloudConsole boolean Indicates if the application is a Salesforce Classic console app. For Lightning Experience console apps, this field is null and the navType field is set to Console.
label string The name of the application.
logo string The optional reference to the image document for a Salesforce app or Salesforce console app.
navType NavType (enumeration of type string) Not updateable. Indicates the type of navigation the app uses. The value Standard is for a Lightning app with standard navigation. The value Console is for a Lightning app with console navigation.

This field is available in API version 38.0 and later.

preferences AppPreferences Represents the preferences for a Salesforce Classic console app. All of the AppPreferences fields are required.

This field is available in API version 42.0 and later.

profileActionOverrides AppProfileActionOverride[] A list of the Lightning Experience record page ProfileActionOverrides that are assigned to this custom app. When a user invokes the custom app, a matching ProfileActionOverride assignment takes precedence over existing overrides for the record page specified in ActionOverride. This lets you override a record page for the custom app by record type and profile.

In API version 45.0 and later, you can override a home page for the custom app by profile.

setupExperience string The type of Setup experience associated with the app. Valid values are:
  • all—Represents the full Setup tree.
  • essentials—Represents the Essentials Setup tree, which contains a subset of Setup items configured for Essentials edition.
  • service—Represents the Service Setup tree, which contains a subset of Setup items configured for Service Console.

A null value is equivalent to all.

Previous valid values AllSetup, ServiceSetup, and EssentialsSetup have been deprecated.

This field is available in API version 39.0 and later.

subscriberTabs string[] Represents the list of tabs appended by a subscriber to a Lightning app installed from a managed package. Records in a subscriber tab always open as primary tabs.

This field is available in API version 41.0 and later.

tabs string[] The list of tabs included in this application. In API version 12.0, the fullName for built-in tabs like Home, Account, and Reports, is the name of the tab (Home, for example). In API version 13.0 and later, built-in tabs are prefixed with standard-. For example, to reference the Account tab you would use standard-Account.

In API version 42.0, this field was renamed from tab to tabs.

uiType UiType (enumeration of type string) Not updateable. Identifies the type of custom app. The value is:
  • Aloha for Salesforce Classic
  • Lightning for Lightning Experience

This field is available in API version 38.0 and later.

utilityBar string The developer name of the utility bar associated with this app.

We recommend assigning a utility bar to only one Lightning App, because utility bars are shared. Sharing means that if you change the utility bar in one app, it automatically changes in all apps that it’s part of.

Note

This field is available in API version 38.0 and later.

workspaceConfig AppWorkspaceConfig Represents how records open in a Salesforce console app. Required if isServiceCloudConsole is true. In API version 42.0, this field was renamed to workspaceConfig from workspaceMappings.

AppActionOverride

Represents an action override for an application. Use it to create, update, edit, or delete action overrides. AppActionOverride inherits from ActionOverride and extends it by one field, pageOrSobjectType. Available for Lightning Experience in API version 38.0 and later.

Field Name Field Type Description
actionName string The only valid value is view for API version 43.0 and earlier. The value tab is supported for API version 44.0 and later.
comment string Any comments you want associated with the override.
content string Set this field if type is set to flexipage. It refers to the name of the page to use as the override. To reference installed components, use the format of Component_namespace__Component_name.
formFactor FormFactor (enumeration of type string) The size of the page being overridden.

If the type field is set to flexipage, set this field to Large to override the View action with a Lightning page in Lightning Experience.

The Large value represents the Lightning Experience desktop environment and is valid only for the flexipage and lightningcomponent types. The Small value represents the Salesforce mobile app on a phone or tablet. The Medium value is reserved for future use. The null value (which is the same as specifying no value) represents Salesforce Classic.

This field is available in API version 37.0 and later and is part of the feature for creating and editing record pages in Lightning Experience.

Lightning component overrides return different FormFactor values depending on the API version used.

  • In API version 41.0 and earlier, Lightning component overrides return only the null value (no value), representing the Salesforce Classic environment.
  • In API version 42.0, if you specify different Lightning component overrides for Lightning Experience and mobile, one component is selected randomly for both overrides and its FormFactor value is returned. If there’s a conflict between Lightning components, and a Visualforce page override is also specified for Salesforce Classic, the Visualforce page takes precedence.
  • In API version 43.0 and later, a Lightning component override for Lightning Experience returns the Large value and a Lightning component override for mobile returns the Small value, as expected.

Note

pageOrSobjectType string The name of the sObject type being overridden. Valid values are standard and custom.

This value must be standard-home when actionName is tab.

skipRecordTypeSelect boolean Set this field to true if you prefer that any new records created by this action override aren’t forwarded to the record type selection page. This field is only valid if the actionName is a “create” type (like new), and type is set to visualforce.
type ActionOverrideType (enumeration of type string) Required. Represents the type of action override. The valid values are Flexipage and Default.

A Flexipage AppActionOverride set to App Default can’t be deleted via Metadata API. Instead, remove the override using the page assignment wizard in the Lightning App Builder UI.

AppBrand

The color scheme and logo used for the app. Available for Lightning apps in API version 38.0 and later.

Field Name Field Type Description
footerColor string Optional. Determines the footer color in the app. Specify the color with a hexadecimal code, such as #0000FF for blue.
headerColor string Optional. Determines the header color in the app. Specify the color with a hexadecimal code, such as #0000FF for blue.
logo string The optional reference to the image document for the application.
logoVersion int An optional version number for the logo.
shouldOverrideOrgTheme boolean Indicates whether to override the global theme for the org. When true, the color scheme and logo that the user has set are used. When false, the global theme for the org is used, even if the user has set a color scheme and logo.

AppComponentList

Represents custom console components (Visualforce pages) assigned to a Salesforce console app. In API version 42.0, this type was renamed from CustomApplicationComponents to AppComponentList.

Field Name Field Type Description
alignment string Required. Determines how custom console components are aligned in the footer of a Salesforce console app.
components string[] The name of a custom console component assigned to a Salesforce console app. In API version 42.0, this field was renamed from customApplicationComponent to components.

AppPreferences

Represents the preferences for a Salesforce Classic console app. All of the AppPreferences fields are required. Available in API version 42.0 and later.

Field Name Field Type Description
enableCustomizeMyTabs boolean Indicates if a Salesforce Classic console app has Customize My Tabs enabled. If enabled, users can hide, display, and organize items in the navigation tab.
enableKeyboardShortcuts boolean Indicates if a Salesforce Classic console app has keyboard shortcuts enabled. Shortcuts let users perform actions by pressing a combination of keys instead of having to use a mouse. After keyboard shortcuts are enabled, several default shortcuts are available for customization. Before you can create custom shortcuts, a developer must define the shortcut’s action with the addEventListener() method in the Salesforce Console Integration Toolkit. You can’t create keyboard shortcuts for actions performed outside of the console. This field is required if isServiceCloudConsole is true.
enableListViewHover boolean Indicates if a Salesforce Classic console app has list view hovers enabled. If set to true, summary information is displayed about a record in a responsive list when the user hovers over a record name. For cases, hover over the subject field.
enableListViewReskin boolean Indicates if Salesforce Classic console apps use responsive list views instead of Salesforce Classic lists views.
enableMultiMonitorComponents boolean Indicates if a Salesforce Classic console app has multi-monitor components enabled, which lets users move portions of a console from their browsers to locations on their screens. This field is required if isServiceCloudConsole is true.
enablePinTabs boolean Indicates if a Salesforce Classic console app has pinned tabs enabled, which lets users pin primary tabs to the tab bar for quick access.
enableTabHover boolean Indicates if a Salesforce Classic console app has tab hover enabled. If enabled, summary information is displayed about a record in an overlay when the user hovers over a tab.
enableTabLimits boolean Indicates whether limits are enabled on the number of primary tabs and subtabs that can be opened in a Salesforce Classic console session. When true, values for tabLimitConfig are required
saveUserSessions boolean Indicates if a Salesforce Classic console app saves user sessions automatically. If enabled, when console users close their browsers or log out of Salesforce, any previously open tabs display when users log in again. Required if isServiceCloudConsole is true.

AppProfileActionOverride

Represents a ProfileActionOverride for a custom app. This type inherits from ProfileActionOverride and extends it by one field, profile. Available for Lightning Experience in API version 39.0 and later. In API version 45.0 and later, you can override a home page for the custom app by profile.

Field Name Field Type Description
actionName string Required. The name of the action. The only valid values are Tab and View.

If pageOrSobjectType is record-home, this field must be View. The View action is supported only when ProfileActionOverride is being specified as part of a CustomApplication.

In API version 45.0 and later, this action is supported only when ProfileActionOverride is being specified as part of a CustomApplication, pageOrSobjectType is standard-home, and this field is Tab.

content string Read-only. Represents the name of the Lightning page being used as the override.
formFactor FormFactor (enumeration of type string) Required. The size of the page being overridden. The Large value represents the Lightning Experience desktop environment.
pageOrSobjectType string Required. The name of the page being overridden. The only valid values are record-home and standard-home. If the actionName is Tab, this field must be standard-home
profile string The profile associated with the ProfileActionOverride.
recordType string The record type associated with the override. If pageOrSobjectType is standard-home, this field must be null. This field is required when actionName is set to View.
type ActionOverrideType (enumeration of type string) Required. Read-only. The type of action override. The only valid value is flexipage.

AppWorkspaceConfig

Represents how records open in a Salesforce console app. Required if isServiceCloudConsole is true. Available for Salesforce Classic console apps in API version 25.0 and later. Available for Lightning console apps in API version 41.0 and later. In API version 42.0, this type was renamed from WorkspaceMappings to AppWorkspaceConfig.

Field Name Field Type Description
mappings WorkspaceMapping[] Represents how records for a specific tab open in a Salesforce console app. Required for each tab specified in the CustomApplication. In API version 42.0, this field was renamed from workspaceMapping to mappings.

WorkspaceMapping

Represents how records for a specific tab open in a Salesforce console app. Required for each tab specified in the CustomApplication. Available in API version 25.0 and later for Salesforce Classic console apps. Available in API version 41.0 and later for Lightning console apps.

Field Name Field Type Description
fieldName string The name of the field that specifies the primary tab in which to display tab as a subtab. If not specified, tab opens as a primary tab.
tab string Required. Name of the tab.

CustomShortcut

Represents custom keyboard shortcuts assigned to a Salesforce console app in Salesforce Classic. Before you can create custom shortcuts, a developer must define the shortcut’s action with the addEventListener() method in the Salesforce Console Integration Toolkit. You can’t create keyboard shortcuts for actions performed outside of the console. Available in API version 28.0 and later.

Field Name Field Type Description
action string Required. The action performed in the console when a user presses the keyboard shortcut.
active boolean Required. Indicates whether the keyboard shortcut is active (true) or not (false).
keyCommand string Required. The combination of keys a user presses to trigger the keyboard shortcut. Keyboard shortcuts aren’t case-sensitive, but they display as uppercase on setup pages in the Salesforce user interface so that they’re easier to read.

Each key command can include up to four modifier keys followed by one non-modifier key. Modifier and non-modifier keys are separated by the + key. Modifier keys can occur in any order, but you must place non-modifier keys at the end of the key command sequence. For example, SHIFT+CTRL+ALT+META +A.

Valid modifier keys are:
  • SHIFT
  • CTRL
  • ALT
  • META (represents the COMMAND key on Macs)
Valid non-modifier keys are letters A through Z and numbers 0 through 9. Other valid keys are:
  • TAB
  • ENTER
  • PAUSE/BREAK
  • CAPS LOCK
  • ESC
  • SPACE
  • PAGE UP
  • PAGE DOWN
  • END
  • HOME
  • LEFT ARROW
  • UP ARROW
  • RIGHT ARROW
  • DOWN ARROW
  • PRINT SCREEN
  • INSERT
  • DELETE
  • RIGHT WINDOW
  • NUMPAD 0
  • NUMPAD 1
  • NUMPAD 2
  • NUMPAD 3
  • NUMPAD 4
  • NUMPAD 5
  • NUMPAD 6
  • NUMPAD 7
  • NUMPAD 8
  • NUMPAD 9
  • MULTIPLY
  • ADD
  • SUBTRACT
  • DECIMAL POINT
  • DIVIDE
  • F1
  • F2
  • F3
  • F4
  • F5
  • F6
  • F7
  • F8
  • F9
  • F10
  • F11
  • F12
  • NUM LOCK
  • SCROLL LOCK
  • ;
  • =
  • ,
  • .
  • /
  • [
  • ]
  • \
  • '
description string The optional description text for the keyboard shortcut.
eventName string Required. Code available to developers who want to add custom shortcut functions to the console via the Salesforce Console Integration Toolkit.

DefaultShortcut

Represents default keyboard shortcuts assigned to a Salesforce console app. Once you enable keyboard shortcuts for a console, several default shortcuts are available for customization. These include opening and closing tabs, moving between tabs, and saving records. Available in API version 28.0 and later.

Field Name Field Type Description
action string Required. The action performed in the console when a user presses the keyboard shortcut. Valid values are:
  • FOCUS_CONSOLE
  • FOCUS_NAVIGATOR_TAB
  • FOCUS_DETAIL_VIEW
  • FOCUS_PRIMARY_TAB_PANEL
  • FOCUS_SUBTAB_PANEL
  • FOCUS_LIST_VIEW
  • FOCUS_FIRST_LIST_VIEW
  • FOCUS_SEARCH_INPUT
  • MOVE_LEFT
  • MOVE_RIGHT
  • UP_ARROW
  • DOWN_ARROW
  • OPEN_TAB_SCROLLER_MENU
  • OPEN_TAB
  • CLOSE_TAB
  • ENTER
  • EDIT
  • SAVE

For a list and description of the default keyboard shortcuts, see “Default Keyboard Shortcuts for a Salesforce Console in Salesforce Classic” in Salesforce Help.

active boolean Required. Indicates whether the keyboard shortcut is active (true) or not (false).
keyCommand string Required. The combination of keys a user presses to trigger the keyboard shortcut. Keyboard shortcuts aren’t case-sensitive, but they display as uppercase on setup pages in the Salesforce user interface so that they’re easier to read.

Each key command can include up to four modifier keys followed by one non-modifier key. Modifier and non-modifier keys are separated by the + key. Modifier keys can occur in any order, but you must place non-modifier keys at the end of the key command sequence. For example, SHIFT+CTRL+ALT+META +A.

Valid modifier keys are:
  • SHIFT
  • CTRL
  • ALT
  • META (represents the COMMAND key on Macs)
Valid non-modifier keys are letters A through Z and numbers 0 through 9. Other valid keys are:
  • TAB
  • ENTER
  • PAUSE/BREAK
  • CAPS LOCK
  • ESC
  • SPACE
  • PAGE UP
  • PAGE DOWN
  • END
  • HOME
  • LEFT ARROW
  • UP ARROW
  • RIGHT ARROW
  • DOWN ARROW
  • PRINT SCREEN
  • INSERT
  • DELETE
  • RIGHT WINDOW
  • NUMPAD 0
  • NUMPAD 1
  • NUMPAD 2
  • NUMPAD 3
  • NUMPAD 4
  • NUMPAD 5
  • NUMPAD 6
  • NUMPAD 7
  • NUMPAD 8
  • NUMPAD 9
  • MULTIPLY
  • ADD
  • SUBTRACT
  • DECIMAL POINT
  • DIVIDE
  • F1
  • F2
  • F3
  • F4
  • F5
  • F6
  • F7
  • F8
  • F9
  • F10
  • F11
  • F12
  • NUM LOCK
  • SCROLL LOCK
  • ;
  • =
  • ,
  • .
  • /
  • [
  • ]
  • \
  • '

KeyboardShortcuts

Represents keyboard shortcuts assigned to a Salesforce console app. Required if isServiceCloudConsole is true. Available in API version 28.0 and later.

Field Name Field Type Description
customShortcuts CustomShortcut[] Represents custom keyboard shortcuts assigned to a Salesforce console app in Salesforce Classic. Before you can create custom shortcuts, a developer must define the shortcut’s action with the addEventListener() method in the Salesforce Console Integration Toolkit. You can’t create keyboard shortcuts for actions performed outside of the console.

In API version 42.0, this field was renamed from customShortcut to customShortcuts.

defaultShortcuts DefaultShortcut[] Represents default keyboard shortcuts assigned to a Salesforce console app. Once you enable keyboard shortcuts for a console, several default shortcuts are available for customization. These include opening and closing tabs, moving between tabs, and saving records.

For a list and description of the default keyboard shortcuts, see “Default Keyboard Shortcuts for a Salesforce Console in Salesforce Classic” in Salesforce Help.

In API version 42.0, this field was renamed from defaultShortcut to defaultShortcuts.

ListPlacement

Represents how lists display in a Salesforce console app. Required if isServiceCloudConsole is true. Available in API version 25.0 and later.

Field Name Field Type Description
height int Height of the list in pixels or percentage. Required if location is top.
location string Required. Location of the list on the screen. Valid values are:
  • full
  • top
  • left
units string Required. Represents if height or width is in pixels or percentage.
width int Width of the list in pixels or percentage. Required if location is left.

LiveAgentConfig

Represents your organization’s settings for using Chat in the Salesforce Console.

Field Name Field Type Description
enableLiveChat boolean Specifies whether Chat is enabled in your organization (true) or not (false).
openNewAccountSubtab boolean Specifies whether to open a new Account subtab in a Salesforce console app automatically (true) or not (false) when an agent accepts a chat.
openNewCaseSubtab boolean Specifies whether to open a new Case subtab in a Salesforce console app automatically (true) or not (false) when an agent accepts a chat.
openNewContactSubtab boolean Specifies whether to open a new Contact subtab in a Salesforce console app automatically (true) or not (false) when an agent accepts a chat.
openNewLeadSubtab boolean Specifies whether to open a new Lead subtab in a Salesforce console app automatically (true) or not (false) when an agent accepts a chat.
openNewVFPageSubtab boolean Specifies whether to open a new Visualforce page as a subtab in a Salesforce console app automatically (true) or not (false) when an agent accepts a chat.
pageNamesToOpen string [array of strings] Specifies the Visualforce pages to open in subtabs when an agent accepts a chat in a Salesforce console app.

This field is available in API version 42.0 and later.

showKnowledgeArticles boolean Specifies whether to display the Knowledge component while using Chat in a Salesforce console app (true) or not (false).

PushNotification

Represents a set of push notifications, which are visual indicators on lists and detail pages that show when a record or field has changed during a user’s session. Available for use if isServiceCloudConsole is true. Available in API version 28.0 and later.

Field Name Field Type Description
fieldNames string] The name of the field, or fields, that trigger push notifications for the selected object.
objectName string Required. Name of the object that triggers push notifications.

ServiceCloudConsoleConfig

Represents configuration settings for a Salesforce console app. Available in API version 42.0 and later.

Field Name Field Type Description
componentList AppComponentList Represents custom console components (Visualforce pages) assigned to a Salesforce console app.
detailPageRefreshMethod string Determines how detail pages refresh in a Salesforce console app. Required if isServiceCloudConsole is true. The valid values are:
  • none
  • autoRefresh
  • flag
footerColor string Determines the footer color in a Salesforce console app. Specify the color with a hexadecimal code, such as #0000FF for blue.
headerColor string Determines the header color in a Salesforce console app. Specify the color with a hexadecimal code, such as #0000FF for blue.
keyboardShortcuts KeyboardShortcuts Represents the keyboard shortcuts for a Salesforce console app. Keyboard shortcuts let users perform actions by pressing a combination of keys instead of having to use a mouse.
listPlacement ListPlacement Represents how lists display in a Salesforce console app. Required if isServiceCloudConsole is true.
listRefreshMethod string Determines how lists refresh in a Salesforce console app. Required if isServiceCloudConsole is true. The valid values are:
  • none
  • refreshList
  • refreshListRows
liveAgentConfig LiveAgentConfig Represents the configurations for using Chat in the Salesforce Console.
primaryTabColor string Determines the primary tab color in a Salesforce console app. Specify the color with a hexadecimal code, such as #0000FF for blue.
pushNotifications PushNotification[] Represents push notifications for a Salesforce console app. Push notifications are visual indicators on lists and detail pages that show when a record or field has changed during a user’s session. For example, assume that two support agents are working on the same case. If one agent changes the Priority, a push notification displays to the other agent so the agent notices the change and doesn’t duplicate the effort.
tabLimitConfig TabLimitConfig Represents the maximum number of primary tabs and subtabs allowed in one Salesforce console session. Required if enableTabLimits is true.
whiteListedDomains string[] Any external domains that users can access from within a Salesforce console app. For example, www.yourdomain.com.

TabLimitConfig

Represents the maximum number of primary tabs and subtabs allowed in one Salesforce console session. Required if enableTabLimits is true. Available in API version 36.0 and later.

Field Name Field Type Description
maxNumberOfPrimaryTabs string The maximum number of primary tabs allowed in one console session. Valid values are:
  • 5
  • 10
  • 20
  • 30
maxNumberOfSubTabs string The maximum number of subtabs allowed in one console session. Valid values are:
  • 5
  • 10
  • 15

Retrieving Apps

To retrieve apps in your organization, use the CustomApplication type name in the package.xml manifest file. You can either retrieve all apps or specify which apps to retrieve in the types section of package.xml.

To retrieve all apps in your organization—custom and standard apps, specify the wildcard character (*), as follows.

1<types>
2    <members>*</members>
3    <name>CustomApplication</name>
4</types>

In API version 29.0 and earlier, use of the wildcard returns only all custom applications but not standard applications.

Note

To retrieve a custom app, specify the app name.

1<types>
2    <members>MyCustomApp</members>
3    <name>CustomApplication</name>
4</types>

To retrieve a standard app, add the standard__ prefix to the app name. For example, to retrieve the Chatter standard app, specify standard__Chatter.

1<types>
2    <members>standard__Chatter</members>
3    <name>CustomApplication</name>
4</types>

To retrieve an app that is part of an installed package, add the package namespace prefix followed by two underscores and the app name. For example, if the package namespace is myInstalledPackageNS and the app name is PackageApp, specify myInstalledPackageNS__PackageApp, as follows.

1<types>
2    <members>myInstalledPackageNS__PackageApp</members>
3    <name>CustomApplication</name>
4</types>

Declarative Metadata Sample Definition

Here’s the definition of a custom Lightning Experience app:

1<?xml version="1.0" encoding="UTF-8"?>
2<CustomApplication xmlns="http://soap.sforce.com/2006/04/metadata">
3    <actionOverrides>
4        <actionName>View</actionName>
5        <comment>Action override created by Lightning App Builder during activation.</comment>
6        <content>Custom_Mobile_Oppty_Page</content>
7        <formFactor>Small</formFactor>
8        <skipRecordTypeSelect>false</skipRecordTypeSelect>
9        <type>Flexipage</type>
10        <pageOrSobjectType>Opportunity</pageOrSobjectType>
11    </actionOverrides>
12    <actionOverrides>
13        <actionName>View</actionName>
14        <comment>Action override created by Lightning App Builder during activation.</comment>
15        <content>Custom_Mobile_Oppty_Page</content>
16        <formFactor>Large</formFactor>
17        <skipRecordTypeSelect>false</skipRecordTypeSelect>
18        <type>Flexipage</type>
19        <pageOrSobjectType>Opportunity</pageOrSobjectType>
20    </actionOverrides>
21    <brand>
22        <headerColor>#EE1518</headerColor>
23        <shouldOverrideOrgTheme>true</shouldOverrideOrgTheme>
24    </brand>
25    <description>Manage inventory and deliveries for our warehouses.</description>
26    <formFactors>Small</formFactors>
27    <formFactors>Large</formFactors>
28    <isNavAutoTempTabsDisabled>false</isNavAutoTempTabsDisabled>
29    <isNavPersonalizationDisabled>false</isNavPersonalizationDisabled>
30    <label>Warehouse Lightning</label>
31    <navType>Standard</navType>
32    <profileActionOverrides>
33        <actionName>View</actionName>
34        <content>Warehouse_test_page</content>
35        <formFactor>Large</formFactor>
36        <pageOrSobjectType>Warehouse__c</pageOrSobjectType>
37        <type>Flexipage</type>
38        <profile>Admin</profile>
39    </profileActionOverrides>
40    <profileActionOverrides>
41        <actionName>View</actionName>
42        <content>Warehouse_test_page</content>
43        <formFactor>Small</formFactor>
44        <pageOrSobjectType>Warehouse__c</pageOrSobjectType>
45        <type>Flexipage</type>
46        <profile>Admin</profile>
47    </profileActionOverrides>
48    <setupExperience>all</setupExperience>
49    <tabs>standard-Feed</tabs>
50    <tabs>standard-File</tabs>
51    <tabs>standard-Account</tabs>
52    <tabs>standard-Case</tabs>
53    <tabs>Merchandise__c</tabs>
54    <tabs>Invoice__c</tabs>
55    <tabs>Warehouse__c</tabs>
56    <tabs>Delivery__c</tabs>
57    <tabs>standard-report</tabs>
58    <tabs>standard-Dashboard</tabs>
59    <uiType>Lightning</uiType>
60</CustomApplication>

The following is a definition of a standard app (Chatter):

1<?xml version="1.0" encoding="UTF-8"?>
2<CustomApplication xmlns="http://soap.sforce.com/2006/04/metadata">
3    <defaultLandingTab>standard-home</defaultLandingTab>
4    <label>Collaboration</label>
5    <tabs>standard-Chatter</tabs>
6    <tabs>standard-UserProfile</tabs>
7    <tabs>standard-OtherUserProfile</tabs>
8    <tabs>standard-CollaborationGroup</tabs>
9    <tabs>standard-File</tabs>
10</CustomApplication>

Declarative Metadata Sample Definition—Salesforce Console

The following is the definition of a custom app where isServiceCloudConsole is true:

1<?xml version="1.0" encoding="UTF-8"?>
2<CustomApplication xmlns="http://soap.sforce.com/2006/04/metadata">
3    <consoleConfig>
4        <componentList>
5            <alignment>left</alignment>
6            <components>MyComponent</components>
7        </componentList>
8        <detailPageRefreshMethod>autoRefresh</detailPageRefreshMethod>
9        <keyboardShortcuts>
10            <customShortcuts>
11                <action>MyCustomShortcutAction</action>
12                <active>true</active>
13                <keyCommand>X</keyCommand>
14                <description>Custom Shortcut example</description>
15                <eventName>myCustomShortcutExample</eventName>
16            </customShortcuts>
17            <defaultShortcuts>
18                <action>FOCUS_CONSOLE</action>
19                <active>true</active>
20                <keyCommand>ESC</keyCommand>
21            </defaultShortcuts>
22            <defaultShortcuts>
23                <action>FOCUS_NAVIGATOR_TAB</action>
24                <active>true</active>
25                <keyCommand>V</keyCommand>
26            </defaultShortcuts>
27            <defaultShortcuts>
28                <action>FOCUS_DETAIL_VIEW</action>
29                <active>true</active>
30                <keyCommand>SHIFT+S</keyCommand>
31            </defaultShortcuts>
32            <defaultShortcuts>
33                <action>FOCUS_PRIMARY_TAB_PANEL</action>
34                <active>true</active>
35                <keyCommand>P</keyCommand>
36            </defaultShortcuts>
37            <defaultShortcuts>
38                <action>FOCUS_SUBTAB_PANEL</action>
39                <active>true</active>
40                <keyCommand>S</keyCommand>
41            </defaultShortcuts>
42            <defaultShortcuts>
43                <action>FOCUS_LIST_VIEW</action>
44                <active>true</active>
45                <keyCommand>N</keyCommand>
46            </defaultShortcuts>
47            <defaultShortcuts>
48                <action>FOCUS_FIRST_LIST_VIEW</action>
49                <active>true</active>
50                <keyCommand>SHIFT+F</keyCommand>
51            </defaultShortcuts>
52            <defaultShortcuts>
53                <action>FOCUS_SEARCH_INPUT</action>
54                <active>true</active>
55                <keyCommand>R</keyCommand>
56            </defaultShortcuts>
57            <defaultShortcuts>
58                <action>MOVE_LEFT</action>
59                <active>true</active>
60                <keyCommand>LEFT ARROW</keyCommand>
61            </defaultShortcuts>
62            <defaultShortcuts>
63                <action>MOVE_RIGHT</action>
64                <active>true</active>
65                <keyCommand>RIGHT ARROW</keyCommand>
66            </defaultShortcuts>
67            <defaultShortcuts>
68                <action>UP_ARROW</action>
69                <active>true</active>
70                <keyCommand>UP ARROW</keyCommand>
71            </defaultShortcuts>
72            <defaultShortcuts>
73                <action>DOWN_ARROW</action>
74                <active>true</active>
75                <keyCommand>DOWN ARROW</keyCommand>
76            </defaultShortcuts>
77            <defaultShortcuts>
78                <action>OPEN_TAB_SCROLLER_MENU</action>
79                <active>true</active>
80                <keyCommand>D</keyCommand>
81            </defaultShortcuts>
82            <defaultShortcuts>
83                <action>OPEN_TAB</action>
84                <active>true</active>
85                <keyCommand>T</keyCommand>
86            </defaultShortcuts>
87            <defaultShortcuts>
88                <action>CLOSE_TAB</action>
89                <active>true</active>
90                <keyCommand>C</keyCommand>
91            </defaultShortcuts>
92            <defaultShortcuts>
93                <action>ENTER</action>
94                <active>true</active>
95                <keyCommand>ENTER</keyCommand>
96            </defaultShortcuts>
97            <defaultShortcuts>
98                <action>EDIT</action>
99                <active>true</active>
100                <keyCommand>E</keyCommand>
101            </defaultShortcuts>
102            <defaultShortcuts>
103                <action>SAVE</action>
104                <active>true</active>
105                <keyCommand>CTRL+S</keyCommand>
106            </defaultShortcuts>
107        </keyboardShortcuts>
108        <listPlacement>
109            <location>left</location>
110            <units>percent</units>
111            <width>20</width>
112        </listPlacement>
113        <listRefreshMethod>refreshList</listRefreshMethod>
114        <pushNotifications>
115            <fieldNames>CreatedBy</fieldNames>
116            <objectName>Campaign</objectName>
117        </pushNotifications>
118        <pushNotifications>
119            <fieldNames>CustomField1__c</fieldNames>
120            <objectName>CustomObject1__c</objectName>
121        </pushNotifications>
122    </consoleConfig>
123    <defaultLandingTab>standard-home</defaultLandingTab>
124    <isServiceCloudConsole>true</isServiceCloudConsole>
125    <label>MyConsole</label>
126    <preferences>
127        <enableCustomizeMyTabs>false</enableCustomizeMyTabs>
128        <enableKeyboardShortcuts>true</enableKeyboardShortcuts>
129        <enableListViewHover>true</enableListViewHover>
130        <enableListViewReskin>true</enableListViewReskin>
131        <enableMultiMonitorComponents>true</enableMultiMonitorComponents>
132        <enablePinTabs>true</enablePinTabs>
133        <enableTabHover>false</enableTabHover>
134        <enableTabLimits>false</enableTabLimits>
135        <saveUserSessions>false</saveUserSessions>
136    </preferences>
137    <tabs>standard-Case</tabs>
138    <tabs>standard-Account</tabs>
139    <tabs>standard-Contact</tabs>
140    <tabs>standard-Contract</tabs>
141    <workspaceConfig>
142        <mappings>
143            <tab>standard-Case</tab>
144        </mappings>
145        <mappings>
146            <fieldName>ParentId</fieldName>
147            <tab>standard-Account</tab>
148        </mappings>
149        <mappings>
150            <fieldName>AccountId</fieldName>
151            <tab>standard-Contact</tab>
152        </mappings>
153        <mappings>
154            <tab>standard-Contract</tab>
155        </mappings>
156    </workspaceConfig>
157</CustomApplication>

Wildcard Support in the Manifest File

This metadata type supports the wildcard character * (asterisk) in the package.xml manifest file. For information about using the manifest file, see Deploying and Retrieving Metadata with the Zip File.