Eventos incorporados do JavaScript

Depois de criar uma incorporação, o que pode ser feito publicamente, de forma privada, com incorporação assinada ou pela API, você pode interagir com esses iframes usando JavaScript. Você pode tornar sua página mais dinâmica com base no status do item incorporado e até mesmo fazer alterações nesse item a partir da sua página da Web.

O Looker não controla a ordem em que os navegadores expedem eventos para aplicativos da Web. Isso significa que a ordem dos eventos não é garantida em todos os navegadores ou plataformas. Escreva seu JavaScript de forma adequada para considerar o gerenciamento de eventos em diferentes navegadores.

É possível usar o JavaScript de uma das seguintes maneiras para conteúdo incorporado do Looker:

Preparação

Antes de interagir com o iframe incorporado, siga estas etapas:

Adicionar um ID ao iframe

Depois, ao extrair dados do iframe, será necessário validar se as informações com que você está trabalhando vieram realmente do iframe do Looker. Para facilitar, adicione um ID ao iframe, caso ainda não tenha feito isso. No exemplo a seguir, você define o ID como looker adicionando id="looker" ao iframe:

<iframe id="looker" src="https://instance_name.looker.com/embed/dashboards/1"></iframe>

Adicionando o domínio de incorporação ao atributo src do iframe

No atributo src do iframe, inclua o domínio em que o iframe está sendo usado. No exemplo a seguir, é possível especificar myownpersonaldomain.com como o domínio adicionando ?embed_domain=https://myownpersonaldomain.com" ao final do URL no atributo src:

<iframe
  id="looker"
  src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com">
</iframe>

Se você estiver usando incorporação assinada, certifique-se de adicionar embed_domain ao URL de incorporação.

Se você estiver usando o SDK de incorporação, adicione sdk=2 ao final do URL de incorporação. O parâmetro sdk=2 indica que o SDK está presente e que o Looker pode aproveitar outros recursos oferecidos pelo SDK, como a transmissão de eventos JavaScript entre o iframe do Looker e seu domínio. O SDK não pode adicionar esse parâmetro porque ele faz parte do URL assinado. Exemplo:

<iframe
  id="looker"
  src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com&sdk=2">
</iframe>

Como adicionar o domínio de incorporação à lista de permissões

Por fim, adicione à lista de permissões o domínio onde o iframe está sendo usado na página Incorporar do painel Administrador do Looker seguindo estas etapas:

  1. No campo Lista de permissões do domínio incorporado, digite o domínio em que o iframe está sendo usado e pressione a tecla Tab para que o domínio apareça em uma caixa dentro do campo.

  2. Clique em Atualizar.

É possível usar o caractere curinga * na lista de permissões para criar um padrão de domínio. Por exemplo, https://*.myownpersonaldomain.com permitiria https://analytics.myownpersonaldomain.com e https://data.myownpersonaldomain.com.

Se você usar a incorporação sem cookies com o Looker 23.8 ou versões mais recentes, o domínio de incorporação poderá ser especificado quando a sessão sem cookies for adquirida. Essa é uma alternativa de adicionar o domínio de incorporação à lista de permissões usando a guia Administrador > Incorporar. Leia as práticas recomendadas de segurança para aproveitar esse recurso.

Recuperar dados do iframe

Depois de concluir as etapas de preparação, você poderá acessar os eventos transmitidos entre o iframe do Looker e seu domínio detectando eventos postMessage.

O iframe incorporado pode criar alguns tipos de eventos, conforme descrito na seção Referência de tipos de eventos desta página.

Como acessar eventos no JavaScript

Veja um exemplo de como detectar esses eventos em JavaScript nativo e registrá-los no console:

window.addEventListener("message", function(event) {
  if (event.source === document.getElementById("looker").contentWindow) {
    if (event.origin === "https://instance_name.looker.com") {
      console.log(JSON.parse(event.data));
    }
  }
});

Aqui está um exemplo de como detectar esses eventos no jQuery e registrá-los no console:

$(window).on("message", function(event) {
  if (event.originalEvent.source === $("#looker")[0].contentWindow) {
    if (event.origin === "https://instance_name.looker.com") {
      console.log(JSON.parse(event.data));
    }
  }
});

Tabela de resumo do tipo de evento

A tabela a seguir resume os tipos de evento. Selecione um tipo de evento para conferir os detalhes.

Tipo de evento Causa do evento
dashboard:loaded Nos painéis em que os blocos não estão configurados para execução automática, um dashboard e seus elementos foram carregados, mas as consultas ainda não estão em execução.
dashboard:run:start Um dashboard começou a ser carregado e seus blocos começaram a carregar e consultar dados.
dashboard:run:complete A execução de um dashboard terminou e todos os blocos terminaram de carregar e consultar.
dashboard:download O download do PDF de um painel foi iniciado.
dashboard:edit:start ADICIONADO 22,20 Um painel foi alterado para o modo de edição. O evento dashboard:save:complete será disparado quando o painel for salvo.
dashboard:edit:cancel ADICIONADO 22,20 Um painel que está no modo de edição saiu do modo de edição sem salvar.
dashboard:save:complete Um painel foi editado e salvo.
dashboard:delete:complete Um painel foi excluído.
dashboard:tile:start Um bloco começou a carregar ou consultar dados.
dashboard:tile:complete Um bloco terminou de executar a consulta.
dashboard:tile:download O download dos dados de um bloco foi iniciado.
dashboard:tile:explore Um usuário clicou na opção Explorar daqui em um bloco do dashboard.
dashboard:tile:view Um usuário clicou na opção Ver Look original em um bloco do dashboard.
dashboard:filters:changed Os filtros de um painel foram aplicados ou alterados.
look:ready Um Look começou a carregar dados de consulta, seja ela executada ou não.
look:run:start Um Look começou a carregar dados de consulta e a consulta começou a ser executada.
look:run:complete Um Look terminou de executar a consulta.
look:save:complete Um Look foi editado e salvo.
look:delete:complete Um Look foi movido para a pasta Lixeira.
drillmenu:click Um usuário clicou em um menu de detalhamento em um dashboard criado com o parâmetro do LookML link.
drillmodal:download Um usuário abriu uma caixa de diálogo de detalhamento em um bloco do painel e clicou na opção Download.
drillmodal:explore Um usuário clicou na opção Explorar daqui em uma caixa de diálogo de detalhamento.
explore:ready Uma Análise começou a carregar dados de consulta, independentemente de ela ser executada ou não.
explore:run:start Uma Análise começou a carregar os dados da consulta e ela começou a ser executada.
explore:run:complete Uma Análise terminou de executar a consulta.
explore:state:changed O URL da página "Explorar" mudou como resultado das ações do usuário.
page:changed Um usuário navegou para uma nova página dentro do iframe.
page:properties:changed A altura de um iframe de painel mudou.
session:tokens O cliente Looker exige tokens para continuar.
session:status Envia informações sobre o status de uma sessão.
env:client:dialog Foi aberta uma caixa de diálogo que pode estar parcialmente fora da visualização, como uma caixa de diálogo de furadeira. Esse evento permite que o aplicativo de hospedagem role a caixa de diálogo até ela aparecer.

Referência do tipo de evento

O iframe incorporado pode criar vários tipos diferentes de eventos:

dashboard:loaded

Em painéis em que os blocos não estão definidos para execução automática, esse evento é criado depois que um dashboard e seus elementos são carregados, mas antes da execução de consultas.


type: "dashboard:loaded",
status: "complete",
dashboard: {
  id: 1,
  title: "Business Pulse",
  canEdit: true,
  dashboard_filters: {
    "date": "Last 6 Years",
    "state": ""
  },
  absoluteUrl: "https://self-signed.looker.com:9999/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
  url: "/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Atributo Formato Descrição
status String Indica se o painel e seus elementos foram carregados corretamente.
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String O URL completo do painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.options Objeto As propriedades e os valores do layout do painel, do componente de layout do painel e do elemento do painel. Todas as propriedades retornadas no objeto options podem receber valores atualizados usando o evento dashboard:options:set.

dashboard:run:start

Esse evento é criado quando um dashboard começa a carregar, quando seus blocos começam a carregar e consultar dados.

type: "dashboard:run:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:run:complete

Esse evento é criado quando a execução de um dashboard termina e todos os blocos terminam de carregar e consultar. Este evento é criado independentemente de todos os blocos serem carregados ou não.

type: "dashboard:run:complete",
status: "complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://my.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Atributo Formato Descrição
status String Indica se o painel e seus elementos foram executados com êxito. Se o painel e os elementos dele tiverem sido executados corretamente, status retornará "complete". Caso contrário, status retornará "error". Se o painel em execução tiver sido interrompido na interface do usuário ou com a ação dashboard:stop, status vai retornar "stopped".
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objeto As propriedades e os valores do layout do painel, do componente de layout do painel e do elemento do painel. Todas as propriedades retornadas no objeto options podem receber valores atualizados usando a ação dashboard:options:set.
dashboard.tileStatuses Matriz de objetos Uma matriz de objetos que fornecem status de bloco. As propriedades do objeto são:

  • tileId: o número de ID do bloco.
  • status: se a consulta de bloco tiver sido executada com sucesso, status retornará "complete"; Caso contrário, status retornará "error".
  • errors: preenchido quando a propriedade status é "error". Uma matriz de objetos que fornecem detalhes do erro, incluindo o texto da mensagem, uma descrição mais detalhada do erro e a consulta SQL do bloco que gerou o erro.

dashboard:download

Esse evento é criado quando o download do PDF de um painel é iniciado.

type: "dashboard:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
fileFormat: "pdf"
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
fileFormat String O formato do painel salvo (apenas "pdf" no momento).

dashboard:edit:start

ADICIONADO 22,20 Este evento é criado quando um painel é alternado para o modo de edição.

type: "dashboard:edit:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:edit:cancel

ADICIONADO 22,20 Este evento é criado quando um painel que está no modo de edição sai do modo de edição sem salvar.

type: "dashboard:edit:cancel",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:save:complete

Este evento é criado quando um painel é editado e depois salvo.

type: "dashboard:save:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  url: "/embed/dashboards/...",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String O URL completo do painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.options Objeto As propriedades e os valores do layout do painel, do componente de layout do painel e do elemento do painel. Todas as propriedades retornadas no objeto options podem receber valores atualizados usando o evento dashboard:options:set.

dashboard:delete:complete

Este evento é criado quando um painel é excluído.

type: "dashboard:delete:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  url: "/embed/dashboards/...",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String O URL completo do painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.options Objeto As propriedades e os valores do layout do painel, do componente de layout do painel e do elemento do painel. Todas as propriedades retornadas no objeto options podem receber valores atualizados usando o evento dashboard:options:set.

dashboard:tile:start

Esse evento é criado quando um bloco começa a carregar ou consultar dados.

type: "dashboard:tile:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Número inteiro O número de ID do evento, não o bloco.
tile.title String O título do bloco, como mostrado na parte de cima do bloco.
tile.listen Objeto O dashboard global filtra o bloco que está detectando. Este objeto tem o formato: {"Filter Label": "Filter Field", ...}

dashboard:tile:complete

Esse evento é criado quando um bloco termina de executar a consulta.

type: "dashboard:tile:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
status: "complete",
truncated: false,
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
status String Se a consulta de blocos foi concluída com êxito. Os valores possíveis são "complete" ou "error".
truncated Booleano Se os resultados da consulta de bloco foram truncados como resultado da consulta que retornou mais linhas do que o limite de linhas da consulta. O limite de linhas pode ser especificado pelo usuário ou o padrão do Looker de 5.000.
tile.id Número inteiro O número de ID do evento, não o bloco.
tile.title String O título do bloco, como mostrado na parte de cima do bloco.
tile.listen Objeto O dashboard global filtra o bloco que está detectando. Este objeto tem o formato: {"Filter Label": "Filter Field", ...}
tile.errors Matriz de objetos Preenchido quando a propriedade status é "error". Uma matriz de objetos que fornecem detalhes do erro, incluindo o texto da mensagem, uma descrição mais detalhada do erro e a consulta SQL do bloco que gerou o erro.

dashboard:tile:download

Este evento é criado quando o download dos dados de um bloco é iniciado.

type: "dashboard:tile:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales"
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
fileFormat: "pdf"
Atributo Formato Descrição
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Número inteiro O número de ID do evento, não o bloco.
tile.title String O título do bloco, como mostrado na parte de cima do bloco.
tile.listen Objeto O dashboard global filtra o bloco que está detectando. Este objeto tem o formato: {"Filter Label": "Filter Field", ...}
fileFormat String O formato do bloco transferido por download (somente "pdf" no momento).

dashboard:tile:explore

Este evento é criado quando o usuário clica na opção Explorar daqui em um bloco do dashboard.

type: "dashboard:tile:explore",
label: 'Explore From Here',
url: '/embed/explore/model/view...',
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Atributo Formato Descrição
label String O rótulo do botão.
url String O URL relativo (apenas o caminho) da Análise a ser visualizada.
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Número inteiro O número de ID do evento, não o bloco.
tile.title String O título do bloco, como mostrado na parte de cima do bloco.
tile.listen Objeto O dashboard global filtra o bloco que está detectando. Este objeto tem o formato: {"Filter Label": "Filter Field", ...}

dashboard:tile:view

Esse evento é criado quando um usuário clica na opção Ver Look original em um bloco do dashboard.

type: "dashboard:tile:view",
label: 'View Original Look',
url: '/embed/look/...',
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Atributo Formato Descrição
label String O rótulo do botão.
url String O URL relativo (apenas o caminho) do Look a ser visualizado.
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Número inteiro O número de ID do evento, não o bloco.
tile.title String O título do bloco, como mostrado na parte de cima do bloco.
tile.listen Objeto O dashboard global filtra o bloco que está detectando. Este objeto tem o formato: {"Filter Label": "Filter Field", ...}

dashboard:filters:changed

Esse evento é criado quando os filtros de um dashboard são aplicados ou alterados.

type: "dashboard:filters:changed",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Atributo Formato Descrição
dashboard.id Número/string O ID do painel.
dashboard.title String O título, como mostrado na parte superior do painel.
dashboard.canEdit Booleano ADICIONADO 22,20 Quando true, o usuário pode editar o painel.
dashboard.url String O URL relativo do painel (apenas o caminho).
dashboard.absoluteUrl String O URL completo do painel.
dashboard.dashboard_filters Objeto Filtros aplicados ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objeto As propriedades e os valores do layout do painel, do componente de layout do painel e do elemento do painel. Todas as propriedades retornadas no objeto options podem receber valores atualizados usando o evento dashboard:options:set.

look:ready

Esse evento é criado quando um Look começa a carregar dados de consulta, seja ela executada ou não.

type: "look:ready",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Atributo Formato Descrição
look.url String O URL do Look relativo (somente o caminho)
look.absoluteUrl String O URL completo do Look

look:run:start

Esse evento é criado quando um Look começa a carregar dados de consulta e a consulta começa a ser executada.

type: "look:run:start",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Atributo Formato Descrição
look.url String O URL do Look relativo (somente o caminho)
look.absoluteUrl String O URL completo do Look

look:run:complete

Esse evento é criado quando um Look termina de executar a consulta.

type: look:run:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Atributo Formato Descrição
look.url String O URL do Look relativo (somente o caminho)
look.absoluteUrl String O URL completo do Look

look:save:complete

Este evento é criado quando um Look é editado e salvo. Esse evento é criado quando um usuário realiza uma das seguintes tarefas:

Esse evento não será criado se o Look for salvo clicando no botão Salvar > Para um painel existente ou na opção de menu Editar configurações.

type: look:save:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  folderid: 123
  }
}
Atributo Formato Descrição
look.url String O URL do Look relativo (somente o caminho)
look.absoluteUrl String O URL completo do Look
look.folderid Número inteiro O ID da pasta em que o Look está armazenado

look:delete:complete

Este evento é criado quando um Look é movido para a pasta Lixeira.

type: look:delete:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Atributo Formato Descrição
look.url String O URL do Look relativo (somente o caminho)
look.absoluteUrl String O URL completo do Look

drillmenu:click

Esse evento é criado quando um usuário clica no menu de detalhamento em um dashboard criado com o parâmetro LookML link. Por exemplo, o LookML a seguir cria um menu de detalhamento em que um usuário pode conferir dados filtrados pela dimensão state:


dimension: state {
  type: string
  sql: ${TABLE}.state ;;
  link: {
    label: "Filter by {{ state | encode_uri }}"
    url: "filter::q={{ state | encode_uri }}"
    icon_url: "https://google.com/favicon.ico"
  }
}

Quando o filtro state é definido como Illinois, o evento drillmenu:click retorna o seguinte para o host do iframe:

type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Atributo Formato Descrição
label String O rótulo do link como mostrado no menu de detalhamento
link_type String Tipo de objeto no destino do link
modal Booleano Indica se a caixa de diálogo de detalhamento será usada em vez da navegação do navegador.
target String Será _self se o destino do link substituir o iframe atual e _blank se o destino do link abrir uma nova janela.
url String O URL do destino do link
context String Atributo interno usado por alguns tipos de visualizações

Colocar o iframe no sandbox vai impedir que os cliques do menu de detalhamento abram em uma nova janela. Use estes valores de sandbox na tag iframe:

sandbox = "allow-same-origin allow-scripts"

drillmodal:download

Esse evento é criado quando um usuário abre uma caixa de diálogo de detalhamento em um bloco do painel e clica na opção Download.

{
type: "drillmodal:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  url: "/embed/dashboards/…",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/…",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
drillExploreUrl: "/embed...",
fileFormat: "pdf"
}
Atributo Formato Descrição
dashboard.id Número/string O ID do dashboard ao qual o bloco pertence.
dashboard.title String O título do dashboard, conforme mostrado na parte de cima do painel ao qual o bloco pertence.
dashboard.url String O URL do painel relativo (apenas o caminho) ao qual o bloco pertence.
dashboard.absoluteUrl String O URL completo do dashboard ao qual o bloco pertence.
dashboard.dashboard_filters Objeto Os filtros aplicados ao dashboard ao qual o bloco pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
drillExploreUrl String O URL de Explorar relativo (apenas o caminho) a ser baixado.
fileFormat String O formato de arquivo do download dos dados.

drillmodal:explore

Esse evento é criado quando um usuário clica na opção Explorar daqui em uma caixa de diálogo de detalhamento.

type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Atributo Formato Descrição
label String Rótulo do botão como mostrado no menu de detalhamento
url String O URL de Explorar relativo (apenas o caminho) a ser visualizado

explore:ready

Esse evento é criado quando uma Análise começa a carregar dados de consulta, seja ela executada ou não.

type: "explore:ready",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Atributo Formato Descrição
explore.url String O URL relativo da Análise (apenas o caminho)
explore.absoluteUrl String O URL completo da guia Explorar

explore:run:start

Esse evento é criado quando uma Análise começa a carregar dados de consulta e a consulta começa a ser executada.

type: "explore:run:start",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Atributo Formato Descrição
explore.url String O URL relativo da Análise (apenas o caminho)
explore.absoluteUrl String O URL completo da guia Explorar

explore:run:complete

Esse evento é criado quando uma Análise termina a execução da consulta.

type: "explore:run:complete",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Atributo Formato Descrição
explore.url String O URL relativo da Análise (apenas o caminho)
explore.absoluteUrl String O URL completo da guia Explorar

explore:state:changed

Este evento é criado quando o URL da página "Explorar" é alterado como resultado das ações do usuário.

type: "explore:state:changed",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Atributo Formato Descrição
explore.url String O URL relativo da Análise (apenas o caminho)
explore.absoluteUrl String O URL completo da guia Explorar

page:changed

Esse evento é criado quando um usuário navega para uma nova página dentro do iframe.

type: "page:changed",
page: {
  type: "dashboard",
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Atributo Formato Descrição
page.type String O tipo de página que você acabou de acessar, como "dashboard", "look" ou "explore"
page.url String O URL relativo (apenas o caminho) da página que acabou de ser acessada
page.absoluteUrl String O URL completo da página que você acabou de acessar

page:properties:changed

Esse evento é criado quando a altura do iframe de um painel é alterada. Eles não estão disponíveis para Looks ou Explores, porque esses itens ajustam automaticamente a altura para o tamanho do iframe.

type: "page:properties:changed",
height: 1000
Atributo Formato Descrição
height Número inteiro A altura do iframe do painel em pixels

session:tokens

Esse evento indica que o cliente do Looker precisa de tokens para continuar. Esse evento é criado imediatamente após a criação do iframe e periodicamente depois, durante a sessão.

{
  "type": "session:tokens",
  "api_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoiYXBpX3Rva2VuIiwicmFuZG9taXplciI6IkxjYnpOeDNTVjNOb3o3UVlqTVJjNmhlMkdodjh1a2UwWUhiZWNRMHVCYm1KIn0.CBv1__QGc_H7bKNe31SHMMQCsc5ya1xOiEv1UDWAyxM",
  "api_token_ttl": 463,
  "navigation_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoibmF2aWdhdGlvbl90b2tlbiIsInJhbmRvbWl6ZXIiOiJHVVNlc00tdTRPRDlNdktodFJDU2pEcVFhUkJNeTh5dm42Q1FDUXhuLTNxMiJ9.sWo7LUEI5LeragVmeDamUR7u2myXpFJ0aqK_IIALUqI",
  "navigation_token_ttl": 463,
  "session_reference_token_ttl": 2924
}
Atributo Formato Descrição
authentication_token String Token de autenticação. Incluído quando o iframe é criado. Não incluído em uma resposta a uma solicitação para gerar tokens ou se a sessão expirou.
authentication_token_ttl Número Tempo de vida do token de autenticação em segundos. Incluído quando o iframe é criado. Não incluído em uma resposta a uma solicitação para gerar tokens ou se a sessão expirou.
api_token String Token da API. Não será incluído se a sessão tiver expirado.
api_token_ttl Número Tempo de vida do token de API em segundos. Não será incluído se a sessão tiver expirado.
navigation_token String Token de navegação. Não será incluído se a sessão tiver expirado.
navigation_token_ttl Número Tempo de vida do token de navegação em segundos. Não será incluído se a sessão tiver expirado.
session_references_token_ttl Número Tempo de vida da sessão em segundos. O valor será 0 quando a sessão tiver expirado. Para recuperar, o aplicativo de incorporação precisa adquirir uma nova sessão.

session:status

O evento é gerado quando o aplicativo do Looker incorporado lida com solicitações de tokens de sessão.

{
  "type": "session:status",
  "session_ttl": 0,
  "expired": true,
  "interrupted": false
}
Atributo Formato Descrição
session_ttl Número Tempo de vida da sessão em segundos.
expired Booleano Quando true, indica que a sessão expirou.
interrupted Booleano Quando true, indica que uma solicitação de tokens de sessão não foi respondida. Isso pode indicar que um servidor está temporariamente indisponível.
recoverable Booleano Preenchido apenas quando interrompido é true. Indica se a sessão pode ser recuperada ou não. Um valor de false provavelmente significa que há um problema com o aplicativo de incorporação.

env:client:dialog

O evento é gerado quando uma caixa de diálogo que pode estar parcialmente fora da visualização é aberta, como uma caixa de diálogo de detalhamento. Esse evento permite que o aplicativo de hospedagem role a caixa de diálogo até a visualização com a ação env:host:scroll.

{
  type: "env:client:dialog",
  dialogType: 'drilling',
  placement: 'cover',
  open: true
}
Atributo Formato Descrição
type String env:client:dialog indica que uma caixa de diálogo foi aberta ou fechada. Atualmente, apenas a caixa de diálogo de detalhamento é compatível, mas outras podem ser adicionadas no futuro. É possível que a parte superior da caixa de diálogo de detalhamento não esteja visível, pois a caixa de diálogo cobre a janela de visualização do iframe. Esse evento permite que o aplicativo host role a parte de cima da caixa de diálogo até a visualização.
dialogType String O tipo de caixa de diálogo. No momento, apenas a abertura ou o fechamento do "detalhamento" tipo de caixa de diálogo aciona este evento.
placement String O posicionamento da caixa de diálogo. Caixas de diálogo do tipo "drilling" sempre use um placement de "cover".
open Booleano Indica se a caixa de diálogo está aberta ou rolada.

Fazer alterações no iframe

Depois de preparar seu iframe para a recuperação de dados, é possível fazer alterações no iframe com as seguintes etapas:

  1. Escreva sua solicitação em JSON.
  2. Publique a solicitação no contentWindow do iframe.

Como gravar sua solicitação em JSON

É possível fazer diversas alterações no iframe, que você enviará no formato JSON. As opções disponíveis estão descritas na seção Referência de ações nesta página. Não se esqueça de usar JSON.stringify para transformar sua ação em JSON, desta forma:

var my_request = JSON.stringify(
  {
    type: "dashboard:run"
  }
);

Postar a solicitação na propriedade contentWindow do iframe

Por fim, publique sua mensagem no contentWindow do iframe, desta forma:

var my_iframe = document.getElementById("my_iframe_id");

my_iframe.contentWindow.postMessage(my_request, 'https://instance_name.looker.com');

Tabela de resumo das ações

A tabela a seguir resume as ações. Selecione uma ação para conferir os detalhes.

Ação Descrição da ação
dashboard:load Carrega um novo painel no iframe, substituindo um painel existente.
dashboard:run Executa o painel no iframe.
dashboard:edit ADICIONADO 22,20 Alterna o painel para o modo de edição.
dashboard:filters:update Atualiza um filtro de painel existente no iframe.
dashboard:options:set Grava novos valores no layout do painel e nas propriedades do elemento do painel.
dashboard:schedule_modal:open Abre o Programador, que permite aos usuários enviar conteúdo do Looker para vários destinos.
dashboard:stop Interrompe um painel que está em execução ou recarregando dados.
look:run Executa o Look no iframe.
look:filters:update Atualiza um filtro Look existente no iframe.
explore:run Executa a Análise no iframe.
explore:filters:update Atualiza ou remove um filtro "Análise" atual no iframe.
session:tokens:request Envia tokens em resposta a um evento session:tokens:request.
env:host:scroll Envia informações sobre a posição de rolagem atual do iframe do host para o aplicativo Looker incorporado.

Referência da ação

Estas são as ações disponíveis que você pode postar no iframe incorporado:

dashboard:load

Use esta ação para carregar um novo dashboard no iframe, substituindo um dashboard atual. O novo painel começará a executar consultas como se uma nova página do painel tivesse sido aberta.

{
  type: "dashboard:load",
  id: "101",
  pushHistory: false
}
Atributo Formato Descrição
type String Usar o tipo dashboard:load indica que você quer carregar um novo painel no iframe.
id String O ID do painel a ser carregado.
pushHistory Booleano Se true, o painel carregado criará uma nova entrada do histórico de navegação, e o usuário poderá usar o botão "botão "Voltar"" do navegador para retornar ao painel anterior. Se for false, o painel atual será substituído e a navegação do navegador não poderá ser usada para retornar a ele.

dashboard:run

Use essa ação para executar o painel no iframe. Essa é a mesma ação que pressionar o botão Executar ou Atualizar dados no painel.

{
  type: "dashboard:run"
}
Atributo Formato Descrição
type String Usar o tipo dashboard:run indica que você quer executar o painel.

dashboard:edit

ADICIONADO 22,20 Use esta ação para mudar um painel no iframe para o modo de edição. Essa é a mesma ação que selecionar Editar painel no menu do painel.

{
  type: "dashboard:edit"
}
Atributo Formato Descrição
type String Usar o tipo dashboard:edit indica que você quer mudar o painel para o modo de edição.

dashboard:filters:update

Use esta ação para atualizar um filtro de painel existente no iframe. Não é possível adicionar um novo filtro ao painel usando esse método.

{
  type: "dashboard:filters:update",
  filters: {
    "Sale date": "Last 28 days",
    "Sale amount": "Greater than 100"
  }
}
Atributo Formato Descrição
type String Usar o tipo dashboard:filters:update indica que você quer atualizar os filtros usados pelo dashboard.
filters Objeto Os novos filtros que você quer aplicar ao painel. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:options:set

Esta ação está disponível após o evento dashboard:run:complete.

O incorporador cria a mensagem e a envia para o iframe, mas o painel não responde até que dashboard:run:complete ocorra. A ação dashboard:options:set grava novos valores no layout e nas propriedades do elemento do painel. Somente as propriedades retornadas no atributo options do evento dashboard:run:complete podem ser atualizadas usando dashboard:options:set. Todas as propriedades definidas que não foram retornadas anteriormente pelo atributo options do evento dashboard:run:complete são ignoradas.

{
  type: "dashboard:options:set",
  layouts: [
    {
      id: 1,
      dashboard_id: 1,
      type: "newspaper",
      active: true,
      column_width: null,
      width: null,
      deleted: false,
      dashboard_layout_components: [
        {
          id: 1,
          dashboard_layout_id: 1,
          dashboard_element_id: 1,
          row: 0,
          column: 0,
          width: 8,
          height: 4,
          deleted: false
        },
        {
          id: 2,
          dashboard_layout_id: 1,
          dashboard_element_id: 2,
          row: 0,
          column: 8,
          width: 8,
          height: 4,
          deleted: false
        }
      ]
    }
  ],
  elements: {
    1: {
      title: "Total Orders",
      title_hidden: false,
      vis_config: {
        type: "single_value",
        font_size: "medium",
        title: "Total Orders"
      }
    },
    2: {
      title: "Average Order Profit",
      title_hidden: false,
      vis_config: {
        type: "single_value",
        title: "Average Order Profit"
      }
    }
  }
}
Atributo Formato Descrição
type String O tipo dashboard:options:set indica que você quer gravar novos valores no layout e nas propriedades do elemento do painel.
layouts Objeto As propriedades de layout do painel retornadas pelo atributo options no evento dashboard:run:complete. Eles estarão em um formato semelhante a:

  • id: "string",
  • dashboard_id: "string",
  • type: "newspaper",
  • active: boolean,
  • column_width: number,
  • width: number
layouts.dashboard_layout_components Objeto Um ou mais objetos do componente de layout do painel retornados pelo atributo options no evento dashboard:run:complete. Eles estarão em um formato semelhante a:

  • id: "string",
  • dashboard_layout_id: "string",
  • dashboard_element_id: "string",
  • row: number,
  • column: number,
  • width: number,
  • height: number,
  • deleted: boolean,
elements Objeto Um ou mais objetos de elemento do painel retornados pelo atributo options no evento dashboard:run:complete. Eles estarão em um formato semelhante a:

id: {

  title: "string",

  title_hidden: boolean,

  vis_config: {

    type: "string", title: "string"

  }

}

dashboard:schedule_modal:open

Use essa ação para abrir o Programador, que permite aos usuários enviar conteúdo do Looker para vários destinos.

{
  type: "dashboard:schedule_modal:open"
}
Atributo Formato Descrição
type String Usar o tipo dashboard:schedule_modal:open indica que você quer abrir a caixa de diálogo Programar.

dashboard:stop

Use esta ação para interromper um dashboard em execução ou recarregando dados. Essa é a mesma ação que clicar no botão Cancelar no painel. Um painel parou de usar dashboard:stop e envia um evento dashboard:run:complete com status: definido como "stopped".

{
  type: "dashboard:stop"
}
Atributo Formato Descrição
type String Usar o tipo dashboard:stop indica que você quer interromper o painel em execução.

look:run

Use esta ação para executar a consulta em que o Look é baseado no iframe. Essa ação é semelhante a pressionar o botão Executar no Look, com a exceção de que look:run sempre consulta o banco de dados diretamente e não recupera dados do cache do Looker.

{
  type: "look:run"
}
Atributo Formato Descrição
type String Usar o tipo look:run indica que você quer executar o Look.

look:filters:update

Use essa ação para atualizar um filtro Look existente no iframe. Não é possível adicionar um novo filtro ao Look usando esse método.

{
  type: "look:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "products.department": "sweaters"
  }
}
Atributo Formato Descrição
type String O uso do tipo look:filters:update indica que você quer atualizar os filtros usados pelo Look.
filters Objeto Os novos filtros que você quer aplicar ao Look. Este objeto tem o formato: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}

explore:run

Use esta ação para executar a Análise no iframe. Essa ação é semelhante a pressionar o botão Executar em Explorar, com a exceção de que explore:run sempre consulta o banco de dados diretamente e não recupera dados do cache do Looker.

{
  type: "explore:run"
}
Atributo Formato Descrição
type String O tipo explore:run indica que você quer executar a Análise.

explore:filters:update

Use esta ação para atualizar ou remover um filtro de Análise no iframe. Se você incluir um novo filtro que faz referência a um campo válido, o novo filtro será adicionado à Análise.

{
  type: "explore:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "orders.status": "complete"
  }
  deleteFilters:  ["products.department"]
}
Atributo Formato Descrição
type String O uso do tipo explore:filters:update indica que você quer atualizar os filtros usados pela Análise.
filters Objeto Os novos filtros que você quer aplicar à Análise. Se filters incluir um filtro que não existe atualmente em "Análise", mas que faz referência a um campo válido, esse filtro será adicionado a ela. Este objeto tem o formato: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}
deleteFilters Matriz Os filtros que você quer remover da Análise. A matriz tem o formato: ["view_name.field_name_1", "view_name.field_name_2", ...]

session:tokens:request

Use esta ação para enviar tokens em resposta a uma solicitação session:tokens:request.

{
  type: "session:tokens:request",
}
Atributo Formato Descrição
type String Usar o tipo session:tokens:request indica que você quer enviar tokens em resposta a um evento session:tokens:request.

env:host:scroll

Use essa ação para enviar informações sobre a posição de rolagem atual do iframe do host ao aplicativo Looker incorporado.

{
  type: "env:host:scroll",
  offsetTop: 10,
  offsetLeft: 10,
  scrollX: 5,
  scrollY: 5
}
Atributo Formato Descrição
type String O tipo env:host:scroll indica que você quer enviar informações sobre a posição de rolagem atual do iframe do host ao aplicativo Looker incorporado.
offsetTop Número O deslocamento da parte superior do iframe.
offsetLeft Número O deslocamento à esquerda do iframe.
scrollX Número A posição de rolagemX do host do aplicativo.
scrollY Número A posição de rolagem do host do aplicativo.