Skip to main content

Looker

Looker is a comprehensive business intelligence and data analytics platform that enables organizations to explore, analyze, and visualize data through powerful modeling capabilities, interactive dashboards, and embedded analytics, helping businesses make data-driven decisions and democratize access to insights.

Looker icon

Power end-to-end data operations for your Looker API with Nexla. Our bi-directional Looker connector is purpose-built for Looker, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Looker or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Looker workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Looker credential, you need to obtain your Looker API Host URL, Client ID, and Client Secret. These credentials are required to authenticate with the Looker API using token-based authentication.

To obtain your Looker API credentials, follow these steps:

  1. Contact your Looker administrator or sign in to your Looker instance with administrator privileges. API credentials are typically managed by Looker administrators.

  2. Navigate to Admin > Platform > API in your Looker instance, or ask your Looker administrator to access the API settings section.

  3. If you need to create new API credentials:

    • Click New API Key or Create Client to create a new API client.
    • Provide a name for the API client (e.g., "Nexla Integration") to help identify it later.
    • Configure the API client settings as needed. The default settings are typically sufficient for most integrations.
  4. After creating or accessing an existing API client, you will receive:

    • API Host URL: Your Looker API Host URL, usually of the form https://{instance-name}.api.looker.com where {instance-name} is your Looker instance name. The API Host URL is specific to your Looker instance and is used to construct API endpoint URLs. You can also find this in your Looker instance URL or by checking with your Looker administrator.
    • Client ID: Your Looker API Client ID, which is a unique identifier for your application or API client. This is displayed in the API client settings.
    • Client Secret: Your Looker API Client Secret, which is a secret key that must be kept confidential. The Client Secret is typically displayed only once when the API client is created. If you've lost your Client Secret, you may need to regenerate it or create a new API client.
  5. Copy the API Host URL, Client ID, and Client Secret immediately and store them securely, as you will need them to configure your Nexla credential.

The Client ID and Client Secret are used to obtain an access token from the Looker API. The token authentication flow sends a POST request to {api_host_url}/api/login?client_id={client_id}&client_secret={client_secret} to obtain an access token. The access token is then sent in the Authorization header with the Bearer prefix for all API requests to the Looker API. The Looker API provides access to various business intelligence resources including users, looks, queries, and dashboards. Access tokens are valid for a limited time and are automatically refreshed by Nexla when they expire. For detailed information about API credential setup, authentication, and available API endpoints, refer to the Looker API documentation and Looker API authentication guide.

Authenticate

Credentials required

FieldRequiredSecretDescription
API Host URLYesYesYour Looker API Host URL. Usually of the form https://<instance-name>.api.looker.com. Check with your Looker administrator for your API host URLs.
Client IDYesNoYour Looker API Client ID. Check with your Looker administrator for your API Client ID.
Client SecretYesYesYour Looker API Client Secret. Check with your Looker administrator for your API Client Secret.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – Looker

LookerCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. Enter your Looker API Host URL in the API Host URL field. This is the API Host URL you obtained from your Looker administrator. The API Host URL is usually of the form https://{instance-name}.api.looker.com where {instance-name} is your Looker instance name. The API Host URL is used to construct API endpoint URLs for your specific Looker instance. Check with your Looker administrator for your API host URLs if you're unsure of the correct format.

  3. Enter your Looker Client ID in the Client ID field. This is the Client ID you obtained from your Looker administrator. The Client ID is a unique identifier for your application or API client and is used along with the Client Secret to obtain an access token for API authentication. The Client ID is not sensitive and can be shared, but it should be kept secure to prevent unauthorized use.

  4. Enter your Looker Client Secret in the Client Secret field. This is the Client Secret you obtained from your Looker administrator. The Client Secret is used along with the Client ID to obtain an access token for API authentication. The Client Secret is sensitive information and must be kept confidential.

    Keep your Client Secret secure and do not share it publicly. The Client Secret provides access to your Looker account data and should be treated as sensitive information. If your Client Secret is compromised, you should immediately contact your Looker administrator to regenerate it. Your Looker API credentials (API Host URL, Client ID, and Client Secret) can be obtained from your Looker administrator. The Client ID and Client Secret are used to obtain an access token by sending a POST request to {api_host_url}/api/login?client_id={client_id}&client_secret={client_secret}. Nexla automatically obtains and refreshes the access token as needed. The access token is sent in the Authorization: Bearer {access_token} header for all API requests to the Looker API. The access token is valid for a limited time and is automatically refreshed when it expires. For detailed information about finding your API credentials, setting up authentication, and available API endpoints, see the Looker API documentation.

  5. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation and can be selected for use with a new data source or destination.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Looker connector tile, then select the credential that will be used to connect to the Looker account, and click Next; or, create a new Looker credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Looker endpoints. Each template is designed specifically for the corresponding Looker endpoint, making data source setup easy and efficient. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.

Get Users

Get Users

  • This endpoint automatically retrieves a list of all users from your Looker account. No additional configuration is required beyond selecting this endpoint template. Check the API documentation URL for more details about the endpoint and response format.
  • The endpoint uses GET requests to {api_host_url}/api/3.1/users where {api_host_url} is your Looker API Host URL. The endpoint URL is automatically constructed based on your credential configuration.
  • The endpoint uses pagination (iteration.type: paging.incrementing) to retrieve all users. Pagination starts from page 1 and uses the page query parameter to navigate through pages. The endpoint will automatically fetch all pages until all users are retrieved.
  • The response data path is $[*], which extracts all user objects from the response array in the API response.

This endpoint retrieves a list of all users from your Looker account. The endpoint requires token-based authentication with an access token, which is handled automatically by your credential configuration. The access token is sent in the Authorization: Bearer {access_token} header for all API requests. The endpoint supports pagination through the page parameter, which allows you to retrieve large lists of users efficiently. For detailed information about fetching users, pagination, and API response formats, see the Looker API documentation.

Get Looks

Get Looks

  • This endpoint automatically retrieves a list of all Looks from your Looker account. No additional configuration is required beyond selecting this endpoint template. Check the API documentation URL for more details about the endpoint and response format.
  • The endpoint uses GET requests to {api_host_url}/api/3.1/looks where {api_host_url} is your Looker API Host URL. The endpoint URL is automatically constructed based on your credential configuration.
  • The endpoint does not use pagination (iteration.type: static.url), so it will fetch all Looks in a single request. The response data path is $[*], which extracts all Look objects from the response array in the API response.

This endpoint retrieves a list of all Looks from your Looker account. The endpoint requires token-based authentication with an access token, which is handled automatically by your credential configuration. The access token is sent in the Authorization: Bearer {access_token} header for all API requests. Looks are saved queries in Looker that can be used to retrieve data. For detailed information about fetching Looks, see the Looker API documentation.

Run Saved Query

Run Saved Query

  • Enter the Query ID in the Query ID field. This is the unique identifier for a saved query in your Looker account. You can use a query that was generated in the Looker UI or one that you have explicitly created using the API. You can also use a query_id from a Look. You can obtain Query IDs from the "Get Looks" endpoint or from your Looker account dashboard.
  • Enter the row limit in the Row Limit field. This is the maximum number of rows to return from the query. The default value is "1000". This may override the limit in the saved query if the saved query has a different limit.
  • The endpoint uses GET requests to {api_host_url}/api/3.1/queries/{query_id}/run/json?limit={row_limit} where {api_host_url} is your Looker API Host URL, {query_id} is the Query ID you specified, and {row_limit} is the Row Limit you configured. The endpoint URL is automatically constructed based on your configuration.
  • The endpoint does not use pagination (iteration.type: static.url), so it will fetch all query results up to the specified row limit in a single request. The response data path is $, which extracts the entire response object containing the query results.

This endpoint runs a previously saved query from your Looker account. The endpoint requires token-based authentication with an access token, which is handled automatically by your credential configuration. The access token is sent in the Authorization: Bearer {access_token} header for all API requests. The Query ID identifies which saved query to run, and the Row Limit determines the maximum number of rows to return. You can use a query that was generated in the Looker UI, one that you have explicitly created using the API, or a query_id from a Look. The endpoint returns query results in JSON format. For detailed information about running saved queries, see the Looker API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Looker data sources can also be manually configured to ingest data from any valid Looker API endpoint, including endpoints not covered by the pre-built templates or when custom API configurations are needed. Looker API endpoints typically follow the pattern {api_host_url}/api/3.1/{endpoint_path} where {api_host_url} is your Looker API Host URL (e.g., https://{instance-name}.api.looker.com), and the Looker API typically returns data in JSON format. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Ensure the API endpoint URL is correct and accessible with your current credentials. You can test the endpoint using the Test button after configuring the URL. The endpoint requires token-based authentication with an access token, which is handled automatically by your credential configuration. The access token is sent in the Authorization: Bearer {access_token} header for all API requests. The API Host URL is automatically retrieved from your credential configuration. For detailed information about Looker API endpoints, authentication, and available APIs, see the Looker API documentation.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Looker data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.