Newer Version Available
CustomApplication
File Suffix and Directory Location
Custom and standard applications have the suffix .app and are stored in the applications folder.
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:
This field is available in API version 38.0 and later. |
| isNavAutoTempTabsDisabled | boolean | Indicates whether the navigation automatically creates temporary tabs settings. Available in API version 43.0 and later. |
| isNavPersonalizationDisabled | boolean | Indicates whether navigation personalization is disabled. 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. |
| navType | NavType (enumeration of type string) |
The value Standard is for Lightning Experience. The value
Console is forSalesforce console. A null value
means Salesforce Classic. This field is available in API version 38.0 and later. |
| preferences | AppPreferences | Represents the preferences for a Salesforce console app. 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. |
| 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:
This field is available in API version 38.0 and later. |
| utilityBar | string |
The developer name of the UtilityBar associated
with this app.
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. |
| 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. 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. |
| pageOrSobjectType | string | The name of the sObject type being overridden. Valid values are standard and custom. |
| 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. |
AppBrand
The color scheme and logo used for the app. Available for Lightning apps in API version 38.0 and later.
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 console app. Available in API version 42.0 and later.
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.
| Field Name | Field Type | Description |
|---|---|---|
| actionName | string | 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. |
| content | string | Read-only. Represents the name of the Lightning page being used as the override. |
| formFactor | FormFactor (enumeration of type string) | The size of the page being overridden. The Large value represents the Lightning Experience desktop environment. |
| pageOrSobjectType | string | The name of the page being overridden. The only valid values are record-home and 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) | 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. |
CustomShortcut
Represents custom keyboard shortcuts assigned to a Salesforce console app. 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.
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.
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. 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 the 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:
|
| 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. |
Represents your organization’s settings for using Live Agent in the Salesforce Console.
| Field Name | Field Type | Description |
|---|---|---|
| enableLiveChat | boolean | Specifies whether Live Agent 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] | 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 Live Agent 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] | Required. 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:
|
| string | 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:
|
| liveAgentConfig | LiveAgentConfig | Represents the configurations for using Live Agent 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:
|
| maxNumberOfSubTabs | string | The maximum number of subtabs allowed in one console session. Valid values are:
|
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. |
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>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
The following is the definition of a custom app:
1<?xml version="1.0" encoding="UTF-8"?>
2<CustomApplication xmlns="http://soap.sforce.com/2006/04/metadata">
3 <defaultLandingTab>Myriad_Publishing__c</defaultLandingTab>
4 <description>App to manage Myriad Publishing</description>
5 <label>Myriad</label>
6 <logo>MyriadFolder/Myriad_Logo.jpg</logo>
7 <tab>standard-Chatter</tab>
8 <tab>standard-File</tab>
9 <tab>Myriad_Publishing__c</tab>
10 <tab>standard-report</tab>
11 <tab>standard-Dashboard</tab>
12</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 <tab>standard-Chatter</tab>
6 <tab>standard-UserProfile</tab>
7 <tab>standard-OtherUserProfile</tab>
8 <tab>standard-CollaborationGroup</tab>
9 <tab>standard-File</tab>
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>