home User Guide Getting Started Help Center Documentation Community Training Certification
Looker keyboard_arrow_down
language keyboard_arrow_down
Getting started with the Looker API

The Looker API is a secure, “RESTful” application programming interface for managing your Looker instance and fetching data through the Looker data platform. With the Looker API, you can write applications or automation scripts to provision new Looker user accounts, run queries, schedule reports, etc. Just about anything you can do in the Looker application you can do via the Looker API.

Looker API path and port

Access your Looker instance’s API through its API URL.

Your Looker admin can specify an API path by entering it in the API Host URL field on the Admin > API page in one of the following formats:






Your Looker admin may also use the API Host URL field to assign an API path that is different from your Looker server machine name. This is common when your Looker installation is behind a load balancer, for example. In this case, contact your Looker admin for your API path.

If your Looker admin has not specified the API Host URL field, Looker uses the default API path. For Looker instances hosted on Google Cloud Platform (GCP), Microsoft Azure, and instances hosted on Amazon Web Service (AWS) that were created on or after 07/07/2020, the default Looker API path uses port 443. For Looker instances hosted on AWS that were created before 07/07/2020, the default Looker API path uses port 19999. The default API URL is in the following format:


The API URLs above connect to the default API version 3.1. You can also connect to the deprecated API version 3.0 by specifying it in the URL with the format https://<instance_name>.looker.com:<port>/api/3.0/user or https://<instance_name>.api.looker.com/api/3.0/user.

Client SDKs

You can use the Looker API with any programming language or application environment that can make HTTPS requests and process JSON responses. You can construct Looker API HTTPS requests manually by using curl (or equivalent), by using the Looker Ruby SDK, or by generating a client SDK library for your language of choice. We recommend using an SDK because it takes care of the details of authentication and HTTPS requests for you, so that you can call the Looker API using simple function calls.

You’ll find SDK details on our Looker API SDKs documentation page.


Looker authenticates API requests using an OAuth 2.0 bearer access token in the HTTP authorization header of the request. All Looker API endpoints require a secure HTTPS connection so that the access token will be secure in transit.

The steps for achieving this depend upon whether or not you are using an SDK. Detailed instructions can be found on our Looker API authentication documentation page.

Interactive API documentation


A new API Explorer extension is available from the Looker Marketplace. For more information, see the Using the API Explorer documentation page.

In addition to the API reference in our online documentation, Looker has interactive API documentation on the Looker instance. This local page is generated from the code that is running in your Looker instance and thus always reflects the exact state of the Looker API on your Looker instance.

The default port for Looker instances hosted on AWS is 19999. The default port for Looker instances hosted on GCP or Azure is 443. The default URL used to reach your Looker instance’s API docs is https://<instance_name>:<port>/api-docs/index.html. If the default URL doesn’t respond, check with your Looker admin to get the correct URL for your Looker instance.

If you are a Looker admin, you can also access the interactive API documentation by clicking the View API Docs link on Looker’s API Admin page, described on the Admin settings - API documentation page.

Here’s how to use the interactive API documentation:

  1. At the top of the page, fill in the Client ID and Client Secret fields. The client ID and client secret are part of an API3 key that is specific to each Looker user. Looker admins can generate an API3 key on the Edit User page, as described in this section of the Users documentation page. If your Looker instance requires API login to view API documents, you must enter your client ID and client secret, then click Log In to see the API documentation. For all Looker instances, you must enter your client ID and client secret to issue commands using the interactive API documentation pages.
  2. Use the drop-down menu in the upper right of the page to choose a version of the API:

    • 3.1 - current
    • 3.0 - legacy
    • 4.0 - beta

    Click Reload to update the page with the selected version. Once you click on an endpoint, you will see the selected API version included in the browser URL for easy bookmarking and linking.

  3. In the upper right of the page, select how commands are displayed on the page:

    • HTTP: Show API commands by path, such as /queries/{query_id}/run/{result_format}. The HTTP version is used to call the API with direct HTTP (or more likely HTTPS) calls.
    • SDK: Show API commands by function name, such as run_query(query_id, result_format. The SDK version is used to call the API from a library in your client code.

The interactive API documentation combines a reference with browser-based, interactive API documentation. This is a way to become familiar with the Looker API without having to create a programming project and write supporting code. For each Looker API endpoint you can fill in parameters, click the Try it out button, and immediately see the request URL for the values you enter and the results of the API call. You have to be logged in to the API with your API3 credentials in order to run API commands against the Looker instance.

Be careful with the commands you issue on this page. The Try it out button actually invokes Looker API endpoints and applies operations to your Looker instance. If you delete an object or a user via the API, the object or user will be deleted from your Looker instance.


API stability is an important consideration when building applications. In order to help you understand which endpoints may be changed in the future, and which should remain stable, we mark certain endpoints as being in beta. For more details, see the Looker API versioning documentation page.