> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rootly.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Looker

> Capture and share Looker dashboard snapshots directly in Rootly incident workflows and Slack channels to give responders fast access to business context.

## Overview

Rootly's Looker integration lets you capture snapshots of Looker dashboards during an incident and share them directly to the incident timeline or Slack channels. This keeps your team grounded in data during the response without leaving their incident workflow.

<CardGroup cols={2}>
  <Card title="Dashboard Snapshots" icon="camera">
    Capture a point-in-time snapshot of any Looker dashboard and attach it to the incident.
  </Card>

  <Card title="Post to Slack" icon="hashtag">
    Automatically share dashboard snapshots to incident Slack channels so responders have the data they need instantly.
  </Card>

  <Card title="Timeline Integration" icon="clock">
    Post snapshots directly to the incident timeline to create a visual record of system state during the incident.
  </Card>

  <Card title="Workflow Automation" icon="diagram-project">
    Trigger snapshot capture automatically via workflows — on incident creation, severity change, or any other event.
  </Card>
</CardGroup>

## Before You Begin

* You must be a Rootly admin to set up the integration
* You need a Looker instance URL and API credentials (Client ID and Client Secret)
* Use a **service account** in Looker rather than a personal account to prevent the integration from breaking if a user leaves

## Installation

<Steps>
  <Step title="Open the integration in Rootly">
    In Rootly, go to **Configuration → Integrations** and find **Looker**. Click **Connect**.

    <Frame>
      <img alt="Looker integration in Rootly integrations page" src="https://mintcdn.com/rootly/EZBU89ISF00990Wy/images/integrations/looker/images-1.webp?fit=max&auto=format&n=EZBU89ISF00990Wy&q=85&s=aa1d447debe61be910f9f1139d510e05" width="864" height="391" data-path="images/integrations/looker/images-1.webp" />
    </Frame>
  </Step>

  <Step title="Generate API credentials in Looker">
    In your Looker instance, navigate to **Admin → Users** and select the user (or service account) you want to use for the integration.

    <Frame>
      <img alt="Looker Users admin page" src="https://mintcdn.com/rootly/EZBU89ISF00990Wy/images/integrations/looker/images-2.webp?fit=max&auto=format&n=EZBU89ISF00990Wy&q=85&s=601e65c28558a3e5b3738de9ca2d222c" width="897" height="920" data-path="images/integrations/looker/images-2.webp" />
    </Frame>

    Scroll down to **API Keys** and click **New API Key** to generate a Client ID and Client Secret.

    <Frame>
      <img alt="Generating a new API key in Looker" src="https://mintcdn.com/rootly/EZBU89ISF00990Wy/images/integrations/looker/images-3.webp?fit=max&auto=format&n=EZBU89ISF00990Wy&q=85&s=0723eb636fbbe7182c9060fe2c7061fa" width="861" height="243" data-path="images/integrations/looker/images-3.webp" />
    </Frame>

    <Note>
      We recommend using a **service account** rather than a personal user account to ensure the integration stays active if someone leaves your team.
    </Note>
  </Step>

  <Step title="Enter credentials in Rootly">
    Back in Rootly, enter your **Instance URL**, **Client ID**, and **Client Secret**, then click **Connect**.

    <Frame>
      <img alt="Entering Looker credentials in Rootly" src="https://mintcdn.com/rootly/EZBU89ISF00990Wy/images/integrations/looker/images-4.webp?fit=max&auto=format&n=EZBU89ISF00990Wy&q=85&s=64f8cc00e0eb86a849844ab1458c105d" width="867" height="867" data-path="images/integrations/looker/images-4.webp" />
    </Frame>

    Rootly will validate the credentials against your Looker instance before saving.
  </Step>
</Steps>

## Workflow Action

### Snapshot Looker Dashboard

Captures a snapshot of one or more Looker dashboards and optionally posts them to Slack or the incident timeline.

<Frame>
  <img alt="Snapshot Looker Dashboard workflow action" src="https://mintcdn.com/rootly/EZBU89ISF00990Wy/images/integrations/looker/images-5.webp?fit=max&auto=format&n=EZBU89ISF00990Wy&q=85&s=1b00b8fd6de5210d37a6e1583f40c9de" width="881" height="749" data-path="images/integrations/looker/images-5.webp" />
</Frame>

<ParamField body="Dashboards" type="array" required>
  Select one or more Looker dashboards to snapshot. Populated from your connected Looker instance.
</ParamField>

<ParamField body="Post to Incident Timeline" type="boolean">
  When enabled, attaches the snapshot to the incident timeline for a visual record of system state at the time of the snapshot.
</ParamField>

<ParamField body="Post to Slack Channels" type="array">
  Select one or more Slack channels to share the snapshot to. Use `{{ incident.slack_channel_id }}` to target the incident's dedicated channel.
</ParamField>

## Uninstall

To remove the Looker integration:

1. Go to **Configuration → Integrations** and find **Looker**
2. Click **Connected** to reveal the disconnect option
3. Click **Disconnect**

<Frame>
  <img src="https://mintcdn.com/rootly/QMD-dNqeYW4BA9dg/images/integrations/common/uninstall-connected.png?fit=max&auto=format&n=QMD-dNqeYW4BA9dg&q=85&s=dbb790e2576c8969bba96bc26c95265f" alt="Click Connected to reveal the Disconnect option" width="319" height="188" data-path="images/integrations/common/uninstall-connected.png" />
</Frame>

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title="Where do I find my Looker Instance URL?" icon="circle-question">
    Your instance URL is the base URL you use to access Looker, for example `https://yourcompany.looker.com`. Remove any trailing slashes before entering it in Rootly.
  </Accordion>

  <Accordion title="What permissions does the Looker API user need?" icon="circle-question">
    The API user needs at minimum **see\_looks\_and\_dashboards** and **access\_data** permissions to allow Rootly to list and snapshot dashboards. For user-defined dashboards, **see\_user\_dashboards** is also required.
  </Accordion>

  <Accordion title="Can I snapshot multiple dashboards in one workflow action?" icon="circle-question">
    Yes. The **Dashboards** field supports selecting multiple dashboards. Each selected dashboard will be snapshotted and shared.
  </Accordion>

  <Accordion title="Why is my dashboard not appearing in the dropdown?" icon="circle-question">
    The dropdown is populated from your Looker instance at the time the workflow is configured. If a dashboard was recently created, try reconnecting the integration or refreshing the page. Also confirm the API user has access to view the dashboard.
  </Accordion>
</AccordionGroup>
