Newer Version Available
FlexiPage
Represents the metadata associated with a Lightning Page. A Lightning Page represents a customizable screen containing Lightning components.
- In Salesforce1, a Lightning Page is the home page for an app that appears in the navigation menu.
- In Lightning Experience, Lightning Pages can be used as the home page for an app, and to customize the layout of record pages and the Home page.
For more information on Lightning Pages, see the Salesforce Help.
File Suffix and Directory Location
FlexiPage components have the suffix .flexipage and are stored in the flexipages folder.
Version
FlexiPage components are available in API version 29.0 and later.
Fields
| Field Name | Field Type | Description |
|---|---|---|
| description | string | The optional description text of the Lightning Page. |
| flexiPageRegions | FlexiPageRegion[] | Required. The list of regions of a page. |
| masterLabel | string | Required. The label for this FlexiPage, which displays in Setup. |
| pageTemplate | string | Required. The template
associated with the FlexiPage. This field is available in API version 33.0 or later. |
| parentFlexiPage | string | The name of the FlexiPage that this
page inherits behavior from. This field is available in API version 37.0 or later. |
| platformActionList | PlatformActionList | The list of all actions, and their order, that display on the Lightning Page. In Salesforce1, the
actions appear in the action bar. This field is available in API version 34.0 and later. |
| quickActionList | QuickActionList | The list of quick actions associated with the Lightning Page. |
| sobjectType | string | The object the FlexiPage is associated
with. For Lightning Pages
of type AppPage or HomePage, this field is null. After the value of this field is set, it can’t be changed. This field is available in API version 37.0 or later. |
| type | FlexiPageType (enumeration of type string) |
Required. The type of a page. In API versions
32.0 through 36.0, this field can only have a value of AppPage. Valid values are:
This field is available in API version 32.0 and later. |
FlexiPageRegion
FlexiPage Region represents the properties of a region of a page. A region can contain a record list component or a recent items component that can be scoped to a set of entities.
| Field Name | Field Type | Description |
|---|---|---|
| appendable | RegionFlagStatus (enumeration of type string) | This field is reserved for future use. Valid values are:
This field is available in API version 35.0 or later. |
| componentInstances | ComponentInstance[] | Properties and name of the component instance. |
| mode | FlexiPageRegionMode (enumeration of type string) | This field is reserved for future use. Valid values are:
This field is available in API version 35.0 or later. |
| name | string | Required. Unique name of the FlexiPage region. |
| prependable | RegionFlagStatus (enumeration of type string) | This field is reserved for future use. Valid values are:
This field is available in API version 35.0 or later. |
| replaceable | RegionFlagStatus (enumeration of type string) | This field is reserved for future use. Valid values are:
This field is available in API version 35.0 or later. |
| type | FlexiPageRegionType (enumeration of type string) | Required. The type of FlexiPage
region. Valid values are:
This field is available in API version 35.0 or later. |
ComponentInstance
Instance of a component in a page, such as a filter list.
| Field Name | Field Type | Description |
|---|---|---|
| componentInstanceProperties | ComponentInstanceProperty[] | The value of a single property in a component instance. A component instance can have no properties. |
| componentName | string | Required. The name of a single instance of a component. |
ComponentInstanceProperty
Value of a single property in a component instance.
| Field Name | Field Type | Description |
|---|---|---|
| name | string | Name of the property, unique within the component instance. |
| value | string | Reference or value of the property. |
- Standard.Tab.activity
- Standard.Tab.collaborate
- Standard.Tab.detail
- Standard.Tab.feed
- Standard.Tab.preview
- Standard.Tab.relatedLists
1<componentInstances>
2 <componentInstanceProperties>
3 <name>title</name>
4 <value>Standard.Tab.activity</value>
5 </componentInstanceProperties>
6 <componentName>flexipage:tab</componentName>
7</componentInstances>PlatformActionList
PlatformActionList represents the list of actions, and their order, that display on the Lightning Page. Available in API version 34.0 and later.
| Field Name | Field Type | Description |
|---|---|---|
| actionListContext | PlatformActionListContext (enumeration of type string) | Required. The context of the action list. Valid values are:
|
| platformActionListItems | PlatformActionListItem[] | The actions in the PlatformActionList. |
| relatedSourceEntity | string | When the ActionListContext is RelatedList or RelatedListRecord, this field represents the API name of the related list to which the action belongs. |
PlatformActionListItem
PlatformActionListItem represents an action in the PlatformActionList. Available in API version 34.0 and later.
| Field Name | Field Type | Description |
|---|---|---|
| actionName | string | The API name for the action in the list. |
| actionType | PlatformActionType (enumeration of type string) | The type of action. Valid values are:
|
| sortOrder | int | The placement of the action in the list. |
| subtype | string | The subtype of the action. For quick actions, the subtype is QuickActionType. For custom buttons, the subtype is WebLinkTypeEnum. For action links, subtypes are Api, ApiAsync, Download, and Ui. Standard buttons and productivity actions have no subtype. |
Declarative Metadata Sample Definition
Here’s a sample XML FlexiPage component definition for a travel app that tracks the user’s trips, expense reports, and other relevant data:
1<?xml version="1.0" encoding="UTF-8"?>
2<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
3 <description>Page to view recent trips</description>
4 <flexiPageRegions>
5 <componentInstances>
6 <componentInstanceProperties>
7 <name>entityName</name>
8 <value>Trips__c</value>
9 </componentInstanceProperties>
10 <componentInstanceProperties>
11 <name>filterName</name>
12 <value>My_Trips</value>
13 </componentInstanceProperties>
14 <componentName>flexipage:filterListCard</componentName>
15 </componentInstances>
16 <componentInstances>
17 <componentInstanceProperties>
18 <name>entityName</name>
19 <value>Expense_Report__c</value>
20 </componentInstanceProperties>
21 <componentInstanceProperties>
22 <name>filterName</name>
23 <value>My_Reports</value>
24 </componentInstanceProperties>
25 <componentName>flexipage:filterListCard</componentName>
26 </componentInstances>
27 <componentInstances>
28 <componentInstanceProperties>
29 <name>entityNames</name>
30 <value>["User","Trips__c","Expense__c","Receipt__c"]</value>
31 </componentInstanceProperties>
32 <componentName>flexipage:recentItems</componentName>
33 </componentInstances>
34 <name>main</name>
35 </flexiPageRegions>
36 <masterLabel>My Travel, Inc.</masterLabel>
37 <quickActionList>
38 <quickActionListItems>
39 <quickActionName>customAction1</quickActionName>
40 </quickActionListItems>
41 <quickActionListItems>
42 <quickActionName>customAction2</quickActionName>
43 </quickActionListItems>
44 </quickActionList>
45 <type>AppPage</type>
46</FlexiPage>And, here’s the sample package.xml file that references the FlexiPage component definition:
1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3 <fullName>Travel, Inc.</fullName>
4 <types>
5 <members>TravelIncFlexiPage</members>
6 <name>CustomTab</name>
7 </types>
8 <types>
9 <members>TravelIncFlexiPage</members>
10 <name>FlexiPage</name>
11 </types>
12 <types>
13 <members>TravelIncQuickActions</members>
14 <name>QuickAction</name>
15 </types>
16 <version>29.0</version>
17</Package>