Eingebettete JavaScript-Ereignisse

Nachdem Sie ein Einbettungselement erstellt haben – was öffentlich, privat, mit signierter Einbettung oder über die API erfolgen kann –, können Sie mit diesen iFrames über JavaScript interagieren. Sie können Ihre Seite dynamischer gestalten, indem Sie den Status des eingebetteten Elements berücksichtigen. Außerdem können Sie das eingebettete Element über Ihre Webseite ändern.

Beachten Sie, dass Looker die Reihenfolge, in der Browser Ereignisse an Webanwendungen senden, nicht steuert. Das bedeutet, dass die Reihenfolge der Ereignisse nicht browser- oder plattformübergreifend garantiert ist. Achten Sie darauf, Ihr JavaScript so zu schreiben, dass die Ereignisbehandlung verschiedener Browser berücksichtigt wird.

Sie haben folgende Möglichkeiten, JavaScript für eingebettete Looker-Inhalte zu verwenden:

Vorbereitung

Bevor Sie mit dem eingebetteten iFrame interagieren können, müssen Sie die folgenden Schritte ausführen:

Dem iFrame eine ID hinzufügen

Wenn Sie später Daten aus dem iFrame abrufen, müssen Sie prüfen, ob die Informationen, mit denen Sie arbeiten, tatsächlich aus dem iFrame von Looker stammen. Fügen Sie dazu Ihrem iFrame eine ID hinzu, falls noch nicht geschehen. Im folgenden Beispiel wird die ID auf looker festgelegt, indem dem iFrame id="looker" hinzugefügt wird:

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

Die Einbettungsdomain dem src-Attribut des iFrames hinzufügen

Fügen Sie in das Attribut src des iFrames die Domain ein, in der der iFrame verwendet wird. Im folgenden Beispiel können Sie myownpersonaldomain.com als Domain angeben, indem Sie ?embed_domain=https://myownpersonaldomain.com" am Ende der URL im Attribut src hinzufügen:

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

Wenn Sie signiertes Einbetten verwenden, müssen Sie die embed_domain der Einbettungs-URL hinzufügen.

Wenn Sie das Embed SDK verwenden, fügen Sie sdk=3 am Ende der Einbettungs-URL hinzu. Der Parameter sdk=3 gibt an, dass das SDK vorhanden ist und Looker zusätzliche Funktionen nutzen kann, die das SDK bietet, z. B. das Übergeben von JavaScript-Ereignissen zwischen dem Looker-iFrame und Ihrer Domain. Das SDK kann diesen Parameter nicht selbst hinzufügen, da er Teil der signierten URL ist. Beispiel:

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

Einbetten der Domain auf die Zulassungsliste setzen

Schließlich müssen Sie die Domain, in der das iFrame verwendet wird, auf der Seite Einbetten im Admin-Bereich von Looker auf die Zulassungsliste setzen. Gehen Sie dazu so vor:

  1. Geben Sie im Feld Zulassungsliste für eingebettete Domains die Domain ein, in der der iFrame verwendet wird, und drücken Sie dann die Tabulatortaste, damit die Domain in einem Feld im Feld angezeigt wird.

  2. Klicken Sie auf Aktualisieren.

Sie können den Platzhalter * in der Zulassungsliste verwenden, um ein Domainmuster zu erstellen. Mit https://*.myownpersonaldomain.com wären beispielsweise sowohl https://analytics.myownpersonaldomain.com als auch https://data.myownpersonaldomain.com zulässig.

Wenn Sie cookieless embedding mit Looker 23.8 oder höher verwenden, kann die Einbettungsdomain beim Abrufen der cookieless-Sitzung angegeben werden. Das ist eine Alternative dazu, die Einbettungsdomain über das Feld Verwaltung > Einbetten der Zulassungsliste hinzuzufügen. Wenn Sie diese Funktion nutzen möchten, sollten Sie sich die Best Practices für die Sicherheit ansehen.

Daten aus dem iFrame abrufen

Nachdem Sie die Vorbereitung abgeschlossen haben, können Sie auf die Ereignisse zugreifen, die zwischen dem Looker-iFrame und Ihrer Domain übergeben werden. Dazu müssen Sie auf postMessage-Ereignisse warten.

Das eingebettete iFrame kann einige Ereignistypen erstellen, wie im Abschnitt Referenz für Ereignistypen auf dieser Seite beschrieben.

Auf Ereignisse in JavaScript zugreifen

Hier ist ein Beispiel dafür, wie Sie in JavaScript auf diese Ereignisse warten und sie dann in der Konsole protokollieren:

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));
    }
  }
});

Hier ist ein Beispiel dafür, wie Sie in jQuery auf diese Ereignisse warten und sie dann in der Konsole protokollieren:

$(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));
    }
  }
});

Übersichtstabelle nach Ereignistyp

In der folgenden Tabelle sind die Ereignistypen zusammengefasst. Wählen Sie einen Ereignistyp aus, um die Details zu diesem Ereignis aufzurufen.

Ereignistyp Ursache des Ereignisses
dashboard:loaded Bei Dashboards, bei denen die Kacheln nicht auf automatische Ausführung eingestellt sind, wurden das Dashboard und seine Elemente geladen, aber die Abfragen werden noch nicht ausgeführt.
dashboard:run:start Ein Dashboard wird geladen und die zugehörigen Kacheln werden geladen und fragen Daten ab.
dashboard:run:complete Ein Dashboard wurde fertig ausgeführt und alle Tiles wurden geladen und abgefragt.
dashboard:download Der Download eines Dashboards als PDF wurde gestartet.
dashboard:edit:start Hinzugefügt: 22.20 Ein Dashboard wurde in den Bearbeitungsmodus versetzt. Das Ereignis dashboard:save:complete wird ausgelöst, wenn das Dashboard gespeichert wurde.
dashboard:edit:cancel Hinzugefügt: 22.20 Ein Dashboard, das sich im Bearbeitungsmodus befand, wurde ohne Speichern aus dem Bearbeitungsmodus geschlossen.
dashboard:save:complete Ein Dashboard wurde bearbeitet und gespeichert.
dashboard:delete:complete Ein Dashboard wurde gelöscht.
dashboard:tile:start Das Laden einer Kachel oder das Abfragen von Daten für eine Kachel wurde gestartet.
dashboard:tile:complete Für eine Kachel wurde die Abfrage ausgeführt.
dashboard:tile:download Die Daten einer Kachel werden heruntergeladen.
dashboard:tile:explore Ein Nutzer hat in einer Dashboard-Kachel auf die Option Hieraus explorieren geklickt.
dashboard:tile:view Ein Nutzer hat in einer Dashboardkachel auf die Option Original-Look ansehen geklickt.
dashboard:filters:changed Die Filter eines Dashboards wurden angewendet oder geändert.
look:ready Ein Look hat mit dem Laden von Abfragedaten begonnen, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.
look:run:start Für einen Look werden Abfragedaten geladen und die Abfrage wird ausgeführt.
look:run:complete Die Abfrage für einen Look wurde ausgeführt.
look:edit:start Hinzugefügt am 25.10. Ein Look wurde in den Bearbeitungsmodus versetzt. Das Ereignis look:save:complete wird ausgelöst, wenn der Look gespeichert wird.
look:edit:cancel Hinzugefügt am 25.10. Ein Look, der sich im Bearbeitungsmodus befand, wurde beendet, ohne dass die Änderungen gespeichert wurden.
look:save:complete Ein Look wurde bearbeitet und gespeichert.
look:delete:complete Ein Look wurde in den Papierkorb verschoben.
drillmenu:click Ein Nutzer hat in einem Dashboard, das mit dem LookML-Parameter link erstellt wurde, auf ein Aufschlüsselungsmenü geklickt.
drillmodal:download Ein Nutzer hat ein Aufschlüsselungsdialogfeld über eine Dashboardkachel geöffnet und auf die Option Herunterladen geklickt.
drillmodal:explore Ein Nutzer hat in einem Drilldown-Dialogfeld auf die Option Von hier aus untersuchen geklickt.
explore:ready Für eine explorative Datenanalyse werden Abfragedaten geladen, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.
explore:run:start Ein Explore hat mit dem Laden von Abfragedaten begonnen und die Abfrage wird ausgeführt.
explore:run:complete Eine Explore-Instanz hat die Ausführung der Abfrage abgeschlossen.
explore:state:changed Die URL einer Seite im Tab „Entdecken“ hat sich aufgrund der Aktionen des Nutzers geändert.
page:changed Ein Nutzer hat eine neue Seite im iFrame aufgerufen.
page:properties:changed Die Höhe eines Dashboard-iFrames hat sich geändert.
session:tokens Der Looker-Client benötigt Tokens, um fortzufahren.
session:expired Hinzugefügt am 25.10. Die Sitzung des Nutzers ist abgelaufen.
session:status Sendet Informationen zum Status einer Sitzung.
env:client:dialog Ein Dialogfeld wurde geöffnet, das möglicherweise teilweise nicht sichtbar ist, z. B. ein Drilldown-Dialogfeld. Durch dieses Ereignis kann die Hostanwendung das Dialogfeld in den sichtbaren Bereich scrollen.

Referenz zu Ereignistypen

Der eingebettete iFrame kann viele verschiedene Arten von Ereignissen erstellen:

dashboard:loaded

Bei Dashboards, bei denen die Kacheln nicht auf automatische Ausführung eingestellt sind, wird dieses Ereignis erstellt, nachdem ein Dashboard und seine Elemente geladen wurden, aber bevor Abfragen ausgeführt werden.


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"
        }
      }
    }
  }
}
Attribut Format Beschreibung
status String Gibt an, ob das Dashboard und seine Elemente erfolgreich geladen wurden.
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.options Objekt Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options-Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden.

dashboard:run:start

Dieses Ereignis wird erstellt, wenn ein Dashboard geladen wird und die Kacheln mit dem Laden und Abfragen von Daten beginnen.

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"
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:run:complete

Dieses Ereignis wird erstellt, wenn ein Dashboard fertig ausgeführt wurde und alle Kacheln geladen und abgefragt wurden. Dieses Ereignis wird unabhängig davon erstellt, ob alle Kacheln erfolgreich geladen werden.

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"
        }
      }
    }
  }
}
Attribut Format Beschreibung
status String Gibt an, ob das Dashboard und seine Elemente erfolgreich ausgeführt wurden. Wenn das Dashboard und seine Elemente erfolgreich ausgeführt wurden, gibt status den Wert "complete" zurück. Andernfalls gibt status den Wert "error" zurück. Wenn das laufende Dashboard über die Benutzeroberfläche oder mit der Aktion dashboard:stop beendet wurde, gibt status den Wert "stopped" zurück.
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objekt Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle im options-Objekt zurückgegebenen Attribute können mit der Aktion dashboard:options:set aktualisierte Werte angegeben werden.
dashboard.tileStatuses Objekt-Array Ein Array von Objekten, die Kachelstatus enthalten. Objekteigenschaften:

  • tileId: Die ID-Nummer der Kachel.
  • status: Wenn die Kachel-Abfrage erfolgreich ausgeführt wurde, gibt status den Wert "complete" zurück. Andernfalls gibt status den Wert "error" zurück.
  • errors: Wird ausgefüllt, wenn die Property status "error" ist. Ein Array von Objekten mit Details zum Fehler, einschließlich des Fehlermeldungstexts, einer detaillierteren Beschreibung des Fehlers und der SQL-Abfrage des Kachels, die den Fehler verursacht hat.

dashboard:download

Dieses Ereignis wird erstellt, wenn der Download einer PDF-Datei eines Dashboards gestartet wurde.

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"
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
fileFormat String Das Format des heruntergeladenen Dashboards (derzeit nur "pdf").

dashboard:edit:start

Added 22.20 Dieses Ereignis wird erstellt, wenn ein Dashboard in den Bearbeitungsmodus versetzt wird.

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"
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:edit:cancel

Hinzugefügt: 22.20 Dieses Ereignis wird erstellt, wenn ein Dashboard, das sich im Bearbeitungsmodus befindet, ohne Speichern aus dem Bearbeitungsmodus beendet wird.

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"
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:save:complete

Dieses Ereignis wird erstellt, wenn ein Dashboard bearbeitet und dann gespeichert wird.

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"
        }
      }
    }
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.options Objekt Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options-Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden.

dashboard:delete:complete

Dieses Ereignis wird erstellt, wenn ein Dashboard gelöscht wird.

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"
        }
      }
    }
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.options Objekt Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options-Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden.

dashboard:tile:start

Dieses Ereignis wird erstellt, wenn eine Kachel mit dem Laden oder Abfragen von Daten beginnt.

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"
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Ganzzahl Die ID-Nummer des Ereignisses, nicht der Kachel.
tile.title String Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird.
tile.listen Objekt Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...}

dashboard:tile:complete

Dieses Ereignis wird erstellt, wenn für eine Kachel die Abfrage ausgeführt wurde.

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"
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
status String Gibt an, ob die Kachel-Abfrage erfolgreich abgeschlossen wurde. Mögliche Werte sind "complete" und "error".
truncated Boolesch Gibt an, ob die Ergebnisse der Kachel-Abfrage gekürzt wurden, weil die Abfrage mehr Zeilen zurückgegeben hat als das Zeilenlimit für Abfragen. Das Zeilenlimit kann ein vom Nutzer angegebenes Zeilenlimit oder das Looker-Standardzeilenlimit von 5.000 Zeilen sein.
tile.id Ganzzahl Die ID-Nummer des Ereignisses, nicht der Kachel.
tile.title String Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird.
tile.listen Objekt Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...}
tile.errors Objekt-Array Wird ausgefüllt, wenn die Property status "error" ist. Ein Array von Objekten mit Details zum Fehler, einschließlich des Fehlermeldungstexts, einer detaillierteren Beschreibung des Fehlers und der SQL-Abfrage des Kachels, die den Fehler verursacht hat.

dashboard:tile:download

Dieses Ereignis wird erstellt, wenn die Daten einer Kachel heruntergeladen werden.

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"
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Ganzzahl Die ID-Nummer des Ereignisses, nicht der Kachel.
tile.title String Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird.
tile.listen Objekt Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...}
fileFormat String Das Format der heruntergeladenen Kachel (derzeit nur "pdf").

dashboard:tile:explore

Dieses Ereignis wird erstellt, wenn ein Nutzer in einer Dashboardkachel auf die Option Von hier aus untersuchen klickt.

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"
  }
}
Attribut Format Beschreibung
label String Das Label der Schaltfläche.
url String Die relative URL (nur der Pfad) des anzuzeigenden Explores.
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Ganzzahl Die ID-Nummer des Ereignisses, nicht der Kachel.
tile.title String Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird.
tile.listen Objekt Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...}

dashboard:tile:view

Dieses Ereignis wird erstellt, wenn ein Nutzer in einer Dashboardkachel auf die Option Originaldarstellung ansehen klickt.

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"
  }
}
Attribut Format Beschreibung
label String Das Label der Schaltfläche.
url String Die relative URL (nur der Pfad) des anzuzeigenden Looks.
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Ganzzahl Die ID-Nummer des Ereignisses, nicht der Kachel.
tile.title String Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird.
tile.listen Objekt Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...}

dashboard:filters:changed

Dieses Ereignis wird erstellt, wenn die Filter eines Dashboards angewendet oder geändert wurden.

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"
        }
      }
    }
  }
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards.
dashboard.title String Der Titel, wie er oben im Dashboard angezeigt wird.
dashboard.canEdit Boolesch Hinzugefügt: 22.20 Wenn true, kann der Nutzer das Dashboard bearbeiten.
dashboard.url String Die relative Dashboard-URL (nur der Pfad).
dashboard.absoluteUrl String Die vollständige Dashboard-URL.
dashboard.dashboard_filters Objekt Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objekt Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options-Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden.

look:ready

Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für einen Look begonnen wird, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.

type: "look:ready",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
Attribut Format Beschreibung
look.url String Die relative Look-URL (nur der Pfad)
look.absoluteUrl String Die vollständige Look-URL

look:run:start

Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für einen Look begonnen wird und die Abfrage ausgeführt wird.

type: "look:run:start",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
Attribut Format Beschreibung
look.url String Die relative Look-URL (nur der Pfad)
look.absoluteUrl String Die vollständige Look-URL

look:run:complete

Dieses Ereignis wird erstellt, wenn für einen Look die Ausführung der Abfrage abgeschlossen ist.

type: look:run:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
Attribut Format Beschreibung
look.url String Die relative Look-URL (nur der Pfad)
look.absoluteUrl String Die vollständige Look-URL

look:edit:start

Hinzugefügt am 25.10. Dieses Ereignis wird ausgelöst, wenn ein Look in den Bearbeitungsmodus versetzt wird.

type: "look:edit:start",
look: {
  id: 46,
  title: "My Look",
  url: "/embed/looks/46",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Attribut Format Beschreibung
look.id String Die ID des Looks.
look.title String Der Titel des Looks.
url String Die relative Look-URL (nur der Pfad).
absoluteUrl String Die vollständige Look-URL.

look:edit:cancel

Hinzugefügt: 25.10. Dieses Ereignis wird ausgelöst, wenn ein Look, der sich im Bearbeitungsmodus befindet, ohne Speichern beendet wird.

type: "look:edit:cancel",
look: {
  id: 46,
  title: "My Look",
  url: "/embed/looks/46",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Attribut Format Beschreibung
look.id String Die ID des Looks.
look.title String Der Titel des Looks.
url String Die relative Look-URL (nur der Pfad).
absoluteUrl String Die vollständige Look-URL.

look:save:complete

Dieses Ereignis wird erstellt, wenn ein Look bearbeitet und gespeichert wird. Dieses Ereignis wird erstellt, wenn ein Nutzer eine der folgenden Aufgaben ausführt:

Dieses Ereignis wird nicht erstellt, wenn der Look mit der Menüoption Speichern > In vorhandenes Dashboard oder Einstellungen bearbeiten gespeichert wird.

type: look:save:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  folderid: 123
  }
Attribut Format Beschreibung
look.url String Die relative Look-URL (nur der Pfad)
look.absoluteUrl String Die vollständige Look-URL
look.folderid Ganzzahl Die Ordner-ID, in der der Look gespeichert ist

look:delete:complete

Dieses Ereignis wird erstellt, wenn ein Look in den Papierkorb verschoben wird.

type: look:delete:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
Attribut Format Beschreibung
look.url String Die relative Look-URL (nur der Pfad)
look.absoluteUrl String Die vollständige Look-URL

drillmenu:click

Dieses Ereignis wird erstellt, wenn ein Nutzer in einem Dashboard, das mit dem LookML-Parameter link erstellt wurde, auf ein Drilldown-Menü klickt. Mit dem folgenden LookML-Code wird beispielsweise ein Aufschlüsselungsmenü erstellt, in dem ein Nutzer Daten sehen kann, die nach der Dimension state gefiltert sind:


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"
  }
}

Wenn der state-Filter auf Illinois gesetzt ist, gibt das drillmenu:click-Ereignis Folgendes an den Host des iFrames zurück:

type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Attribut Format Beschreibung
label String Das Linklabel, wie es im Drilldown-Menü angezeigt wird
link_type String Der Objekttyp am Linkziel
modal Boolesch Gibt an, ob das Drilldown-Dialogfeld anstelle der Browsernavigation verwendet wird.
target String _self, wenn das Linkziel den aktuellen iFrame ersetzt, _blank, wenn das Linkziel ein neues Fenster öffnet
url String Die URL des Linkziels
context String Internes Attribut, das von einigen Visualisierungstypen verwendet wird

Durch Sandboxing des iFrames wird verhindert, dass Drilldown-Menü-Klicks in einem neuen Fenster geöffnet werden. Verwenden Sie die folgenden Werte für das Sandboxing im iFrame-Tag:

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

drillmodal:download

Dieses Ereignis wird erstellt, wenn ein Nutzer ein Drilldown-Dialogfeld über eine Dashboardkachel öffnet und auf die Option Herunterladen klickt.

{
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"
}
Attribut Format Beschreibung
dashboard.id Zahl/String Die ID des Dashboards, zu dem die Kachel gehört.
dashboard.title String Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört.
dashboard.url String Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört.
dashboard.absoluteUrl String Die vollständige Dashboard-URL, zu der die Kachel gehört.
dashboard.dashboard_filters Objekt Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
drillExploreUrl String Die relative Explore-URL (nur der Pfad), die heruntergeladen werden soll.
fileFormat String Das Dateiformat des Datenexports.

drillmodal:explore

Dieses Ereignis wird erstellt, wenn ein Nutzer in einem Drilldown-Dialogfeld auf die Option Von hier aus untersuchen klickt.

type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Attribut Format Beschreibung
label String Das Schaltflächenlabel, wie es im Drilldown-Menü angezeigt wird
url String Die relative Explore-URL (nur der Pfad), die aufgerufen werden soll

explore:ready

Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für ein Explore begonnen wird, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.

type: "explore:ready",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
Attribut Format Beschreibung
explore.url String Die relative Explore-URL (nur der Pfad)
explore.absoluteUrl String Die vollständige Explore-URL

explore:run:start

Dieses Ereignis wird erstellt, wenn in einem Explore mit dem Laden von Abfragedaten begonnen wird und die Abfrage ausgeführt wird.

type: "explore:run:start",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
Attribut Format Beschreibung
explore.url String Die relative Explore-URL (nur der Pfad)
explore.absoluteUrl String Die vollständige Explore-URL

explore:run:complete

Dieses Ereignis wird erstellt, wenn eine Abfrage in einem Explore ausgeführt wurde.

type: "explore:run:complete",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Beschreibung
explore.url String Die relative Explore-URL (nur der Pfad)
explore.absoluteUrl String Die vollständige Explore-URL

explore:state:changed

Dieses Ereignis wird erstellt, wenn sich die URL einer Explore-Seite aufgrund der Aktionen des Nutzers ändert.

type: "explore:state:changed",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Attribut Format Beschreibung
explore.url String Die relative Explore-URL (nur der Pfad)
explore.absoluteUrl String Die vollständige Explore-URL

page:changed

Dieses Ereignis wird erstellt, wenn ein Nutzer innerhalb des iFrames zu einer neuen Seite wechselt.

type: "page:changed",
page: {
  type: "dashboard",
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Attribut Format Beschreibung
page.type String Der Typ der Seite, die gerade aufgerufen wurde, z. B. "dashboard", "look" oder "explore"
page.url String Die relative URL (nur der Pfad) der Seite, zu der gerade navigiert wurde
page.absoluteUrl String Die vollständige URL der Seite, zu der gerade navigiert wurde

page:properties:changed

Dieses Ereignis wird erstellt, wenn sich die Höhe eines Dashboard-iFrames ändert. Sie ist nicht für Looks oder Explores verfügbar, da diese Elemente ihre Höhe automatisch an die Größe des iFrames anpassen.

type: "page:properties:changed",
height: 1000
Attribut Format Beschreibung
height Ganzzahl Die Höhe des Dashboard-iFrames in Pixeln

session:tokens

Dieses Ereignis gibt an, dass der Looker-Client Tokens benötigt, um fortzufahren. Dieses Ereignis wird sofort beim Erstellen des iFrames und danach regelmäßig für die Dauer der Sitzung erstellt.

{
  "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
}
Attribut Format Beschreibung
authentication_token String Authentifizierungstoken. Wird beim Erstellen des iFrames eingefügt. Nicht in einer Antwort auf eine Anfrage zum Generieren von Tokens enthalten oder wenn die Sitzung abgelaufen ist.
authentication_token_ttl Zahl Gültigkeitsdauer des Authentifizierungstokens in Sekunden. Wird beim Erstellen des iFrames eingefügt. Nicht in einer Antwort auf eine Anfrage zum Generieren von Tokens enthalten oder wenn die Sitzung abgelaufen ist.
api_token String API-Token Nicht enthalten, wenn die Sitzung abgelaufen ist.
api_token_ttl Zahl Gültigkeitsdauer des API-Tokens in Sekunden. Nicht enthalten, wenn die Sitzung abgelaufen ist.
navigation_token String Navigationstoken. Nicht enthalten, wenn die Sitzung abgelaufen ist.
navigation_token_ttl Zahl Gültigkeitsdauer des Navigationstokens in Sekunden. Nicht enthalten, wenn die Sitzung abgelaufen ist.
session_references_token_ttl Zahl Gültigkeitsdauer der Sitzung in Sekunden. Der Wert ist 0, wenn die Sitzung abgelaufen ist. Um die Verbindung wiederherzustellen, muss die Einbettungsanwendung eine neue Sitzung starten.

session:expired

Hinzugefügt am 25.10. Dieses Ereignis wird ausgelöst, wenn die Sitzung des eingebetteten Nutzers abläuft.

type: "session:expired",

Dieses Ereignis hat keine Nutzlast.

session:status

Das Ereignis wird generiert, wenn die eingebettete Looker-Anwendung Anfragen für Sitzungstokens verarbeitet.

{
  "type": "session:status",
  "session_ttl": 0,
  "expired": true,
  "interrupted": false
}
Attribut Format Beschreibung
session_ttl Zahl Gültigkeitsdauer der Sitzung in Sekunden.
expired Boolesch Wenn true, gibt dies an, dass die Sitzung abgelaufen ist.
interrupted Boolesch Wenn true, bedeutet das, dass eine Anfrage für Sitzungstokens nicht beantwortet wurde. Das kann darauf hinweisen, dass ein Server vorübergehend nicht verfügbar ist.
recoverable Boolesch Wird nur ausgefüllt, wenn „interrupted“ true ist. Gibt an, ob die Sitzung wiederhergestellt werden kann. Ein Wert von false deutet wahrscheinlich auf ein Problem mit der Einbettungsanwendung hin.

env:client:dialog

Das Ereignis wird generiert, wenn ein Dialogfeld geöffnet wurde, das möglicherweise teilweise nicht sichtbar ist, z. B. ein Drilldown-Dialogfeld. Mit diesem Ereignis kann die Hostanwendung das Dialogfeld mit der Aktion env:host:scroll in den sichtbaren Bereich scrollen.

{
  type: "env:client:dialog",
  dialogType: 'drilling',
  placement: 'cover',
  open: true
}
Attribut Format Beschreibung
type String env:client:dialog gibt an, dass ein Dialogfeld geöffnet oder geschlossen wurde. Derzeit wird nur der Drilldown-Dialog unterstützt. In Zukunft werden möglicherweise weitere Dialoge hinzugefügt. Es ist möglich, dass der obere Bereich des Drilldown-Dialogfelds nicht zu sehen ist, da das Dialogfeld den iFrame-Darstellungsbereich abdeckt. Mit diesem Ereignis kann die Hostanwendung den oberen Rand des Dialogfelds in den sichtbaren Bereich scrollen.
dialogType String Der Typ des Dialogfelds. Dieses Ereignis wird nur ausgelöst, wenn der Dialogtyp „drilling“ geöffnet oder geschlossen wird.
placement String Die Positionierung des Dialogfelds. Für Dialogfelder vom Typ „drilling“ wird immer ein placement von „cover“ verwendet.
open Boolesch Gibt an, ob das Dialogfeld geöffnet oder gescrollt wird.

Änderungen am iFrame vornehmen

Nachdem Sie das iFrame für den Datenabruf vorbereitet haben, können Sie es so ändern:

  1. Anfrage in JSON schreiben
  2. Senden Sie die Anfrage an die contentWindow des iFrames.

Anfrage in JSON schreiben

Sie können mehrere Änderungen am iFrame vornehmen, die Sie im JSON-Format einreichen. Die verfügbaren Optionen werden auf dieser Seite im Abschnitt Aktionsreferenz beschrieben. Vergessen Sie nicht, JSON.stringify zu verwenden, um Ihre Aktion in JSON umzuwandeln, wie hier:

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

Anfrage an die contentWindow-Property des iFrames senden

Senden Sie Ihre Nachricht schließlich an contentWindow des iFrames:

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

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

Tabelle mit Aktionsübersicht

In der folgenden Tabelle sind die Aktionen zusammengefasst. Wählen Sie eine Aktion aus, um die Details dazu aufzurufen.

Aktion Aktionsbeschreibung
page:load Lädt eine neue Seite in den iFrame und ersetzt die vorhandene Seite.
dashboard:load Lädt ein neues Dashboard in den iFrame und ersetzt damit ein vorhandenes Dashboard.
dashboard:run Führt das Dashboard im iFrame aus.
dashboard:edit Hinzugefügt: 22.20 Das Dashboard wird in den Bearbeitungsmodus versetzt.
dashboard:filters:update Aktualisiert einen vorhandenen Dashboardfilter im iFrame.
dashboard:options:set Schreibt neue Werte in das Dashboard-Layout und in die Eigenschaften von Dashboard-Elementen.
dashboard:schedule_modal:open Öffnet das Planungsprogramm, mit dem Nutzer Looker-Inhalte an verschiedene Ziele senden können.
dashboard:stop Beendet ein Dashboard, das gerade ausgeführt wird oder Daten neu lädt.
look:run Führt den Look im iFrame aus.
look:filters:update Aktualisiert einen vorhandenen Look-Filter im iFrame.
explore:run Führt die explorative Datenanalyse im iFrame aus.
explore:filters:update Aktualisiert oder entfernt einen vorhandenen Explore-Filter im iFrame.
session:tokens:request Sendet Tokens als Reaktion auf ein session:tokens:request-Ereignis.
env:host:scroll Sendet Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung.

Aktionsreferenz

Folgende Aktionen können Sie an den eingebetteten iFrame senden:

page:load

Mit dieser Aktion können Sie zu neuen Inhalten im iFrame wechseln und die vorhandenen Inhalte ersetzen. Diese Aktion ähnelt der Aktion dashboard:load, ist jedoch flexibler, da in der URL zusätzliche Parameter angegeben werden können.

Es gibt Verhaltensunterschiede, die vor der Verwendung von page:load berücksichtigt werden sollten. dashboard:load verhindert die Navigation, wenn das aktuelle Dashboard bearbeitet wird. page:load verhindert die Navigation nicht. Die Hostanwendung kann ermitteln, ob ein Dashboard oder Look bearbeitet wird, indem sie dashboard:edit:start, look:edit:start und die entsprechenden Ereignisse für das Ende der Bearbeitung erfasst. Aus diesem Grund empfehlen wir die Verwendung des Embed SDK. Das Embed SDK erfasst, ob ein Dashboard oder Look bearbeitet wird. Die Verbindung kann also abgefragt werden, um zu prüfen, ob Inhalte bearbeitet werden, bevor die Navigation erfolgt.

{
    type: 'page:load',
    url: '/embed/dashboard/32?state=california,
    pushHistory: false
}
Attribut Format Beschreibung
type String Wenn Sie den Typ page:load verwenden, wird neuer Inhalt in den iFrame geladen.
url String Die URL der zu ladenden Inhalte.
pushHistory Boolesch Wenn true, wird durch die geladenen Inhalte ein neuer Browserverlaufseintrag erstellt und der Nutzer kann mit der Schaltfläche „Zurück“ des Browsers zur vorherigen Seite zurückkehren. Wenn false, wird der aktuelle Inhalt ersetzt und die Browsernavigation kann nicht verwendet werden, um zu ihm zurückzukehren.

dashboard:load

Mit dieser Aktion wird ein neues Dashboard in den iFrame geladen und ein vorhandenes Dashboard ersetzt. Im neuen Dashboard werden Abfragen so ausgeführt, als ob eine neue Dashboardseite geöffnet worden wäre.

{
  type: "dashboard:load",
  id: "101",
  pushHistory: false
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:load verwenden, wird ein neues Dashboard in den iFrame geladen.
id String Die ID des zu ladenden Dashboards.
pushHistory Boolesch Wenn true, wird beim Laden des Dashboards ein neuer Browserverlaufseintrag erstellt und der Nutzer kann mit der Schaltfläche „Zurück“ des Browsers zum vorherigen Dashboard zurückkehren. Wenn false, wird das aktuelle Dashboard ersetzt und Sie können nicht über die Browsernavigation dorthin zurückkehren.

dashboard:run

Mit dieser Aktion wird das Dashboard im iFrame ausgeführt. Das ist dasselbe wie das Klicken auf die Schaltfläche Ausführen oder Daten neu laden im Dashboard.

{
  type: "dashboard:run"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:run verwenden, geben Sie an, dass Sie das Dashboard ausführen möchten.

dashboard:edit

Hinzugefügt: 22.20 Mit dieser Aktion können Sie ein vorhandenes Dashboard im iFrame in den Bearbeitungsmodus versetzen. Das ist dieselbe Aktion wie das Auswählen von Dashboard bearbeiten im Dashboard-Menü.

{
  type: "dashboard:edit"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:edit verwenden, wird das Dashboard in den Bearbeitungsmodus versetzt.

dashboard:filters:update

Mit dieser Aktion können Sie einen vorhandenen Dashboardfilter im iFrame aktualisieren. Mit dieser Methode können Sie dem Dashboard keinen neuen Filter hinzufügen.

{
  type: "dashboard:filters:update",
  filters: {
    "Sale date": "Last 28 days",
    "Sale amount": "Greater than 100"
  }
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:filters:update verwenden, geben Sie an, dass Sie die vom Dashboard verwendeten Filter aktualisieren möchten.
filters Objekt Die neuen Filter, die Sie auf das Dashboard anwenden möchten. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:options:set

Diese Aktion ist verfügbar, nachdem das Ereignis dashboard:run:complete eingetreten ist.

Der Einbettungsdienst erstellt die Nachricht und sendet sie an das iFrame. Das Dashboard reagiert jedoch erst nach dashboard:run:complete. Mit der Aktion dashboard:options:set werden neue Werte in die Eigenschaften des Dashboardlayouts und der Dashboardelemente geschrieben. Mit dashboard:options:set können nur Properties aktualisiert werden, die im Attribut options des Ereignisses dashboard:run:complete zurückgegeben wurden. Alle Properties, die festgelegt wurden und nicht zuvor vom Attribut options des Ereignisses dashboard:run:complete zurückgegeben wurden, werden ignoriert.

{
  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"
      }
    }
  }
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:options:set verwenden, geben Sie an, dass Sie neue Werte in das Dashboard-Layout und die Eigenschaften von Dashboard-Elementen schreiben möchten.
layouts Objekt Die Eigenschaften des Dashboard-Layouts, die vom Attribut options im Ereignis dashboard:run:complete zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:

  • id: "string",
  • dashboard_id: "string",
  • type: "newspaper",
  • active: boolean,
  • column_width: number,
  • width: number
layouts.dashboard_layout_components Objekt Ein oder mehrere Dashboard-Layoutkomponenten, die vom Attribut options im dashboard:run:complete-Ereignis zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:

  • id: "string",
  • dashboard_layout_id: "string",
  • dashboard_element_id: "string",
  • row: number,
  • column: number,
  • width: number,
  • height: number,
  • deleted: boolean,
elements Objekt Ein oder mehrere Dashboard-Element-Objekte, die vom Attribut options im Ereignis dashboard:run:complete zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:

id: {

  title: "string",

  title_hidden: boolean,

  vis_config: {

    type: "string", title: "string"

  }

}

dashboard:schedule_modal:open

Mit dieser Aktion wird das Planungsprogramm geöffnet, mit dem Nutzer Looker-Inhalte an verschiedene Ziele senden können.

{
  type: "dashboard:schedule_modal:open"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:schedule_modal:open verwenden, wird das Dialogfeld Zeitplan geöffnet.

dashboard:stop

Mit dieser Aktion können Sie ein Dashboard beenden, das gerade ausgeführt wird oder Daten neu lädt. Dies entspricht dem Klicken auf die Schaltfläche Abbrechen im Dashboard. Wenn ein Dashboard mit dashboard:stop beendet wird, wird ein dashboard:run:complete-Ereignis mit status: auf "stopped" festgelegt gesendet.

{
  type: "dashboard:stop"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ dashboard:stop verwenden, wird das laufende Dashboard beendet.

look:run

Mit dieser Aktion wird die Abfrage, auf der der Look basiert, im iFrame ausgeführt. Diese Aktion ähnelt dem Klicken auf die Schaltfläche Ausführen im Look. Der Unterschied besteht darin, dass mit look:run immer direkt die Datenbank abgefragt wird und keine Daten aus dem Looker-Cache abgerufen werden.

{
  type: "look:run"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ look:run verwenden, wird der Look ausgeführt.

look:filters:update

Mit dieser Aktion können Sie einen vorhandenen Look-Filter im iFrame aktualisieren. Mit dieser Methode können Sie dem Look keinen neuen Filter hinzufügen.

{
  type: "look:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "products.department": "sweaters"
  }
}
Attribut Format Beschreibung
type String Wenn Sie den Typ look:filters:update verwenden, geben Sie an, dass Sie die vom Look verwendeten Filter aktualisieren möchten.
filters Objekt Die neuen Filter, die Sie auf den Look anwenden möchten. Dieses Objekt hat das folgende Format: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}

explore:run

Mit dieser Aktion wird die explorative Datenanalyse im iFrame ausgeführt. Diese Aktion ähnelt dem Klicken auf die Schaltfläche Ausführen in der Übersicht, mit der Ausnahme, dass explore:run immer die Datenbank direkt abfragt und keine Daten aus dem Looker-Cache abruft.

{
  type: "explore:run"
}
Attribut Format Beschreibung
type String Wenn Sie den Typ explore:run verwenden, geben Sie an, dass Sie die Analyse ausführen möchten.

explore:filters:update

Mit dieser Aktion können Sie einen vorhandenen Explore-Filter im iFrame aktualisieren oder entfernen. Wenn Sie einen neuen Filter einfügen, der auf ein gültiges Feld verweist, wird der neue Filter dem Explore hinzugefügt.

{
  type: "explore:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "orders.status": "complete"
  }
  deleteFilters:  ["products.department"]
}
Attribut Format Beschreibung
type String Wenn Sie den Typ explore:filters:update verwenden, geben Sie an, dass Sie die von der Funktion „Erkunden“ verwendeten Filter aktualisieren möchten.
filters Objekt Die neuen Filter, die Sie auf das Explore anwenden möchten. Wenn filters einen Filter enthält, der im Explore nicht vorhanden ist, aber auf ein gültiges Feld verweist, wird dieser Filter dem Explore hinzugefügt. Dieses Objekt hat das Format {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}.
deleteFilters Array Die vorhandenen Filter, die Sie aus dem Explore-Bereich entfernen möchten. Das Array hat das Format: ["view_name.field_name_1", "view_name.field_name_2", ...]

session:tokens:request

Mit dieser Aktion können Sie als Reaktion auf eine session:tokens:request-Anfrage Tokens senden.

{
  type: "session:tokens:request",
}
Attribut Format Beschreibung
type String Wenn Sie den Typ session:tokens:request verwenden, bedeutet das, dass Sie als Reaktion auf ein session:tokens:request-Ereignis Tokens senden möchten.

env:host:scroll

Mit dieser Aktion können Sie Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung senden.

{
  type: "env:host:scroll",
  offsetTop: 10,
  offsetLeft: 10,
  scrollX: 5,
  scrollY: 5
}
Attribut Format Beschreibung
type String Wenn Sie den Typ env:host:scroll verwenden, geben Sie an, dass Sie Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung senden möchten.
offsetTop Zahl Der obere Versatz des iFrame.
offsetLeft Zahl Der Offset links vom iFrame.
scrollX Zahl Die scrollX-Position des Anwendungshosts.
scrollY Zahl Die scrollY-Position des Anwendungshosts.