New in Looker 7.12 is the Looker extension framework.
- Internal platform applications for your company
- External platforms for your customers, such as customer portals for Powered By Looker (PBL) applications built off Looker data
- Targeted internal tools
- Applications to embed in external applications
Custom applications and tools created with the extension framework can be accessed from within Looker, allowing Looker to handle functions such as authentication, access control and permission management, and API access. This also lets you leverage other common developer resources, such as third-party API endpoints, within Looker.
Extension framework features
The Looker extension framework includes the following features:
- Looker components, a library of pre-built TypeScript UI components you can use in your extensions.
- The embed SDK, a library of functions you can use to embed dashboards, Looks, and Explores in your extension. See the kitchen sink extension for example code. You can also use the embed SDK to embed your extension into third-party applications by adding the prefix
/embedto your extension URL.
The ability to access third-party API endpoints and add third-party data to your extension, or to use external development services:
See the kitchen sink extension for an example of a Looker extension.
The ability to create full screen extensions within Looker:
Full screen extensions can be used for internal or external platform applications. You can use Looker’s existing authentication options for sign-in (such as password login, LDAP, SAML, and Open ID Connect). In a full screen extension, you can prevent a set of users from navigating to other parts of Looker from your extension by adding users to an Extensions Only user group. You can also remove the Looker navigation bar by replacing
/spartanin the extension URL.
Extension framework requirements
To develop using the Looker extension framework:
- You will need LookML developer permissions to your instance.
- Your Looker admin must enable the Extension Framework Labs feature.
- If you will be building components, we recommend familiarity with React.
Resources for getting started with the Looker extension framework
The following links provide instructions and examples for using the Looker extension framework:
- Getting started — Examples of the extension framework using the Looker APIs
- Getting started — Examples of using the extension framework features
- Getting started — Examples of the extension framework using the Looker APIs with React and Redux
- Overview of APIs available in the extension SDK
- Extension framework React components
- Using the embed SDK
Adding an extension to Looker
To make your extension available from your Looker instance, include the
application LookML parameter in your project’s manifest file. Using the kitchen sink extension example:
For details, see the
application parameter documentation page.
Permissions assigned to users when using an extension
For most extension use cases, the extension always runs with the permissions granted to the user when they log in.
Any Looker users who have access to at least one of the extension’s underlying models can see the extension listed in the Looker Browse menu:
Users must have access to all of the models that the extension uses for the extension to function fully.
For full screen extensions that use the
/spartanoption in the extension URL, you can add users to the Extensions Only user group. Users in this group are prevented from viewing Looker pages outside of the extension. Looker admins can customize the Extensions Only group like any other group and assign it a role that has certain permissions and model set access. Users are not required to belong to the Extensions Only group to view a full screen extension; and if a user is not in that user group, the extension will run with the permissions of that logged-in user.