Newer Version Available
Interface Reference
Implement these platform interfaces to allow a component to be used in different
contexts, or to enable your component to receive extra context data. A component can implement
multiple interfaces. Some interfaces are intended to be implemented together, while others are
mutually exclusive. Some interfaces have an effect only in Lightning Experience and Salesforce1.
- clients:hasEventContext
- Enables a component to be assigned to an event’s date or location attributes in Lightning for Outlook and Lightning for Gmail. For more information, see Create Components for Lightning for Outlook and Lightning for Gmail (Beta).
- clients:hasItemContext
- Enables a component to be assigned to an email’s or a calendar event’s item attributes in Lightning for Outlook and Lightning for Gmail. For more information, see Create Components for Lightning for Outlook and Lightning for Gmail (Beta).
- flexipage:availableForAllPageTypes
- To appear in the Lightning App Builder or a Lightning Page, a component must implement the flexipage:availableForAllPageTypes interface. For more information, see Configure Components for Lightning Pages and the Lightning App Builder.
- flexipage:availableForRecordHome
- If your component is designed just for record pages, implement the flexipage:availableForRecordHome interface instead of flexipage:availableForAllPageTypes. For more information, see Configure Components for Lightning Experience Record Pages.
- forceCommunity:availableForAllPageTypes
- To appear in Community Builder, a component must implement the forceCommunity:availableForAllPageTypes interface. For more information, see Configure Components for Communities.
- force:appHostable
- Allows a component to be used as a custom tab in Lightning Experience or Salesforce1. For more information, see Add Lightning Components as Custom Tabs in Lightning Experience.
- force:hasRecordId
- Enables a component to be assigned the ID of the currently displaying record. Useful for components invoked in a context associated with a specific record, such as record page components or custom object actions. This interface has no effect except when used within Lightning Experience, Salesforce1, and template-based communities. For more information, see Configure Components for Lightning Experience Record Pages.
- force:hasSObjectName
- Enables a component to access the API name of the object of the currently displaying record. Useful for record page components. This interface has no effect except when used within Lightning Experience, Salesforce1, and template-based communities. For more information, see Configure Components for Lightning Experience Record Pages.
- force:lightningQuickAction
- Allows a component to display in a panel with standard action controls, such as a Cancel button. These components can also display and implement their own controls, but should handle events from the standard controls. If you implement force:lightningQuickAction, you can’t implement force:lightningQuickActionWithoutHeader within the same component. For more information, see Configure Components for Custom Actions.
- force:lightningQuickActionWithoutHeader
- Allows a component to display in a panel without additional controls. The component should provide a complete user interface for the action. If you implement force:lightningQuickActionWithoutHeader, you can’t implement force:lightningQuickAction within the same component. For more information, see Configure Components for Custom Actions.
- ltng:allowGuestAccess
- Add the ltng:allowGuestAccess interface to your Lightning Out dependency app to make it available to users without requiring them to authenticate with Salesforce. This interface lets you build your app with Lightning components, and deploy it anywhere and to anyone. For more information, see Share Lightning Out Apps with Non-Authenticated Users.