Événements JavaScript intégrés

Une fois que vous avez créé un élément intégré (que vous pouvez faire de manière publique, privée, avec un élément intégré signé ou via l'API), vous pouvez interagir avec ces éléments intégrés à l'aide de JavaScript. Vous pouvez rendre votre page plus dynamique en fonction de l'état de l'élément intégré, et même modifier l'élément intégré depuis votre page Web.

Notez que Looker ne contrôle pas l'ordre dans lequel les navigateurs distribuent les événements aux applications Web. Par conséquent, l'ordre des événements n'est pas garanti entre les navigateurs et les plates-formes. Veillez à écrire votre code JavaScript de manière appropriée pour tenir compte de la gestion des événements dans les différents navigateurs.

Vous pouvez utiliser JavaScript de l'une des manières suivantes pour le contenu intégré Looker:

Préparation

Avant de pouvoir interagir avec l'iframe intégrée, procédez comme suit:

Ajouter un ID à l'iframe

Plus tard, lorsque vous récupérez des données à partir de l'iframe, vous devrez vérifier que les informations que vous utilisez proviennent bien de l'iframe de Looker. Pour faciliter cette opération, veillez à ajouter un ID à votre iframe, si ce n'est pas déjà fait. Dans l'exemple suivant, vous définissez l'ID sur looker en ajoutant id="looker" à l'iFrame:

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

Ajouter le domaine d'intégration à l'attribut src de l'iframe

Dans l'attribut src de l'iFrame, incluez le domaine dans lequel l'iFrame est utilisée. Dans l'exemple suivant, vous pouvez spécifier myownpersonaldomain.com comme domaine en ajoutant ?embed_domain=https://myownpersonaldomain.com" à la fin de l'URL dans l'attribut src:

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

Si vous utilisez l'intégration signée, veillez à ajouter embed_domain à l'URL d'intégration.

Si vous utilisez le SDK d'intégration, ajoutez sdk=2 à la fin de l'URL d'intégration. Le paramètre sdk=2 indique que le SDK est présent et que Looker peut exploiter les fonctionnalités supplémentaires qu'il fournit, telles que la transmission d'événements JavaScript entre l'iFrame Looker et votre domaine. Le SDK ne peut pas ajouter ce paramètre lui-même, car il fait partie de l'URL signée. Exemple :

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

Ajouter le domaine d'intégration à la liste d'autorisation

Enfin, vous devez ajouter le domaine dans lequel l'iFrame est utilisé à la liste d'autorisation sur la page Intégration du panneau Administration de Looker en procédant comme suit:

  1. Dans le champ Embedded Domain Allowlist (Liste d'autorisation des domaines intégrés), saisissez le domaine dans lequel l'iFrame est utilisée, puis appuyez sur la touche Tabulation pour que le domaine s'affiche dans un cadre dans le champ.

  2. Cliquez sur Mettre à jour.

Vous pouvez utiliser le caractère générique * dans la liste d'autorisation pour créer un modèle de domaine. Par exemple, https://*.myownpersonaldomain.com autorise à la fois https://analytics.myownpersonaldomain.com et https://data.myownpersonaldomain.com.

Si vous utilisez l'intégration sans cookie avec Looker 23.8 ou version ultérieure, vous pouvez spécifier le domaine d'intégration lorsque la session sans cookie est acquise. Cette méthode vous permet d'ajouter le domaine d'intégration à la liste d'autorisation à l'aide du panneau Administration > Intégration. Consultez les bonnes pratiques de sécurité si vous décidez de profiter de cette fonctionnalité.

Récupérer des données à partir de l'iframe

Une fois les étapes de préparation effectuées, vous pouvez accéder aux événements transmis entre l'iFrame Looker et votre domaine en écoutant les événements postMessage.

L'iFrame intégrée peut créer plusieurs types d'événements, comme décrit dans la section Référence des types d'événements de cette page.

Accéder aux événements en JavaScript

Voici un exemple d'écoute de ces événements en JavaScript natif, puis de leur journalisation dans la 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));
    }
  }
});

Voici un exemple d'écoute de ces événements dans jQuery, puis de leur journalisation dans la 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));
    }
  }
});

Tableau récapitulatif des types d'événements

Le tableau suivant récapitule les types d'événements. Sélectionnez un type d'événement pour afficher les détails le concernant.

Type d'événement Cause de l'événement
dashboard:loaded Dans les tableaux de bord dont les cartes ne sont pas définies pour l'exécution automatique, le tableau de bord et ses éléments sont chargés, mais les requêtes ne sont pas encore exécutées.
dashboard:run:start Un tableau de bord a commencé à se charger, et ses cartes ont commencé à se charger et à interroger les données.
dashboard:run:complete L'exécution d'un tableau de bord est terminée, et le chargement et l'interrogation de toutes les cartes sont terminés.
dashboard:download Le téléchargement d'un PDF d'un tableau de bord a commencé.
dashboard:edit:start AJOUTÉ LE 22.20 Un tableau de bord a été mis en mode Édition. L'événement dashboard:save:complete se déclenchera lorsque le tableau de bord sera correctement enregistré.
dashboard:edit:cancel AJOUTÉ LE 22.20 Vous avez quitté le mode Édition d'un tableau de bord sans enregistrer les modifications.
dashboard:save:complete Un tableau de bord a été modifié et enregistré.
dashboard:delete:complete Un tableau de bord a été supprimé.
dashboard:tile:start Une carte a commencé à se charger ou à interroger des données.
dashboard:tile:complete Une carte a terminé l'exécution de la requête.
dashboard:tile:download Le téléchargement des données d'une carte a commencé.
dashboard:tile:explore Un utilisateur a cliqué sur l'option Explorer à partir d'ici dans une vignette de tableau de bord.
dashboard:tile:view Un utilisateur a cliqué sur l'option Afficher la présentation d'origine dans une carte de tableau de bord.
dashboard:filters:changed Les filtres d'un tableau de bord ont été appliqués ou modifiés.
look:ready Un look a commencé à charger les données de requête, que la requête soit exécutée ou non.
look:run:start Un aperçu a commencé à charger les données de requête et la requête a commencé à s'exécuter.
look:run:complete L'exécution de la requête d'un look est terminée.
look:save:complete Un look a été modifié et enregistré.
look:delete:complete Un look a été déplacé dans le dossier Corbeille.
drillmenu:click Un utilisateur a cliqué sur un menu de drill-down dans un tableau de bord créé avec le paramètre LookML link.
drillmodal:download Un utilisateur a ouvert une boîte de dialogue d'analyse à partir d'une carte de tableau de bord et a cliqué sur l'option Télécharger.
drillmodal:explore Un utilisateur a cliqué sur l'option Explorer à partir d'ici dans une boîte de dialogue d'analyse.
explore:ready Une exploration a commencé à charger les données de requête, que la requête s'exécute ou non.
explore:run:start Une exploration a commencé à charger les données de requête et la requête a commencé à s'exécuter.
explore:run:complete L'exécution de la requête d'une exploration est terminée.
explore:state:changed L'URL d'une page "Explorer" a changé en raison des actions de l'utilisateur.
page:changed Un utilisateur a accédé à une nouvelle page dans l'iframe.
page:properties:changed La hauteur d'un iframe de tableau de bord a changé.
session:tokens Le client Looker nécessite des jetons pour continuer.
session:status Envoie des informations sur l'état d'une session.
env:client:dialog Une boîte de dialogue a été ouverte et peut être partiellement masquée, par exemple une boîte de dialogue de forage. Cet événement permet à l'application hôte de faire défiler la boîte de dialogue pour l'afficher.

Référence sur les types d'événements

L'iframe intégrée peut créer de nombreux types d'événements:

dashboard:loaded

Dans les tableaux de bord dont les cartes ne sont pas configurées pour s'exécuter automatiquement, cet événement est créé après le chargement du tableau de bord et de ses éléments, mais avant l'exécution des requêtes.


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 Description
status Chaîne Indique si le tableau de bord et ses éléments ont bien été chargés.
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Les propriétés et valeurs de la mise en page du tableau de bord, du composant de mise en page du tableau de bord et de l'élément du tableau de bord. Vous pouvez modifier les valeurs de toutes les propriétés renvoyées dans l'objet options à l'aide de l'événement dashboard:options:set.

dashboard:run:start

Cet événement est créé lorsqu'un tableau de bord commence à se charger, lorsque ses cartes commencent à se charger et à interroger des données.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.

dashboard:run:complete

Cet événement est créé lorsqu'un tableau de bord a terminé son exécution et que toutes les cartes ont terminé le chargement et les requêtes. Cet événement est créé que toutes les cartes soient chargées avec succès ou non.

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 Description
status Chaîne Indique si le tableau de bord et ses éléments ont bien été exécutés. Si le tableau de bord et ses éléments ont bien été exécutés, status renvoie "complete". Sinon, status renvoie "error". Si le tableau de bord en cours d'exécution a été arrêté, soit à partir de l'interface utilisateur, soit à l'aide de l'action dashboard:stop, status renvoie "stopped".
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
dashboard.options Objet Les propriétés et valeurs de la mise en page du tableau de bord, du composant de mise en page du tableau de bord et de l'élément du tableau de bord. Vous pouvez modifier les valeurs de toutes les propriétés renvoyées dans l'objet options à l'aide de l'action dashboard:options:set.
dashboard.tileStatuses Tableau d'objets Tableau d'objets indiquant les états des cartes. Les propriétés d'objet sont les suivantes:

  • tileId : numéro d'ID de la carte.
  • status : si la requête de carte a bien été exécutée, status renvoie "complete". Sinon, status renvoie "error".
  • errors : renseigné lorsque la propriété status est définie sur "error". Tableau d'objets fournissant des informations sur l'erreur, y compris le texte du message d'erreur, une description plus détaillée de l'erreur et la requête SQL de la carte qui a généré l'erreur.

dashboard:download

Cet événement est créé lorsque le téléchargement d'un PDF d'un tableau de bord a commencé.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
fileFormat Chaîne Format du tableau de bord téléchargé ("pdf" uniquement pour le moment).

dashboard:edit:start

AJOUTÉ LE 22.20 Cet événement est créé lorsqu'un tableau de bord est mis en mode Édition.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.

dashboard:edit:cancel

AJOUTÉ LE 22.20 Cet événement est créé lorsqu'un tableau de bord en mode Édition est quitté sans être enregistré.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.

dashboard:save:complete

Cet événement est créé lorsqu'un tableau de bord est modifié, puis enregistré.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Les propriétés et valeurs de la mise en page du tableau de bord, du composant de mise en page du tableau de bord et de l'élément du tableau de bord. Vous pouvez modifier les valeurs de toutes les propriétés renvoyées dans l'objet options à l'aide de l'événement dashboard:options:set.

dashboard:delete:complete

Cet événement est créé lorsqu'un tableau de bord est supprimé.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Les propriétés et valeurs de la mise en page du tableau de bord, du composant de mise en page du tableau de bord et de l'élément du tableau de bord. Vous pouvez modifier les valeurs de toutes les propriétés renvoyées dans l'objet options à l'aide de l'événement dashboard:options:set.

dashboard:tile:start

Cet événement est créé lorsqu'une carte commence à se charger ou à interroger des données.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
tile.id Integer Numéro d'ID de l'événement, et non de la carte.
tile.title Chaîne Titre de la carte, comme indiqué en haut de la carte.
tile.listen Objet Filtres du tableau de bord global auxquels cette carte est associée. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}.

dashboard:tile:complete

Cet événement est créé lorsqu'une carte a terminé l'exécution de la requête.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
status Chaîne Indique si la requête de carte a bien été exécutée. Les valeurs possibles sont "complete" ou "error".
truncated Booléen Indique si les résultats de la requête de carte ont été tronqués, car la requête renvoyait plus de lignes que la limite de lignes de la requête. La limite maximale de lignes peut être spécifiée par l'utilisateur ou correspondre à la limite par défaut de Looker (5 000 lignes).
tile.id Integer Numéro d'ID de l'événement, et non de la carte.
tile.title Chaîne Titre de la carte, comme indiqué en haut de la carte.
tile.listen Objet Filtres du tableau de bord global auxquels cette carte est attentive. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}.
tile.errors Tableau d'objets Renseigné lorsque la propriété status est définie sur "error". Tableau d'objets fournissant des informations sur l'erreur, y compris le texte du message d'erreur, une description plus détaillée de l'erreur et la requête SQL de la carte qui a généré l'erreur.

dashboard:tile:download

Cet événement est créé lorsque le téléchargement des données d'une carte a commencé.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
tile.id Integer Numéro d'ID de l'événement, et non de la carte.
tile.title Chaîne Titre de la carte, comme indiqué en haut de la carte.
tile.listen Objet Filtres du tableau de bord global auxquels cette carte est associée. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}.
fileFormat Chaîne Format de la carte téléchargée ("pdf" uniquement pour le moment).

dashboard:tile:explore

Cet événement est créé lorsqu'un utilisateur clique sur l'option Explorer à partir d'ici dans une carte de tableau de bord.

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 Description
label Chaîne Libellé du bouton.
url Chaîne URL relative (chemin d'accès uniquement) de l'exploration à afficher.
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
tile.id Integer Numéro d'ID de l'événement, et non de la carte.
tile.title Chaîne Titre de la carte, comme indiqué en haut de la carte.
tile.listen Objet Filtres du tableau de bord global auxquels cette carte est associée. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}.

dashboard:tile:view

Cet événement est créé lorsqu'un utilisateur clique sur l'option Afficher l'apparence d'origine dans une carte de tableau de bord.

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 Description
label Chaîne Libellé du bouton.
url Chaîne URL relative (chemin d'accès uniquement) du look à afficher.
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
tile.id Integer Numéro d'ID de l'événement, et non de la carte.
tile.title Chaîne Titre de la carte, comme indiqué en haut de la carte.
tile.listen Objet Filtres du tableau de bord global auxquels cette carte est associée. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}.

dashboard:filters:changed

Cet événement est créé lorsque les filtres d'un tableau de bord ont été appliqués ou modifiés.

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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, comme indiqué en haut du tableau de bord.
dashboard.canEdit Booléen AJOUTÉ 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
dashboard.options Objet Les propriétés et valeurs de la mise en page du tableau de bord, du composant de mise en page du tableau de bord et de l'élément du tableau de bord. Vous pouvez modifier les valeurs de toutes les propriétés renvoyées dans l'objet options à l'aide de l'événement dashboard:options:set.

look:ready

Cet événement est créé lorsqu'un look commence à charger des données de requête, que la requête s'exécute ou non.

type: "look:ready",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne URL relative de la présentation (uniquement le chemin d'accès)
look.absoluteUrl Chaîne URL complète du look

look:run:start

Cet événement est créé lorsqu'un look commence à charger les données de requête et que la requête commence à s'exécuter.

type: "look:run:start",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne URL relative de la présentation (uniquement le chemin d'accès)
look.absoluteUrl Chaîne URL complète du look

look:run:complete

Cet événement est créé lorsqu'une analyse a terminé l'exécution de la requête.

type: look:run:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne URL relative de la présentation (uniquement le chemin d'accès)
look.absoluteUrl Chaîne URL complète du look

look:save:complete

Cet événement est créé lorsqu'un look est modifié et enregistré. Cet événement est créé lorsqu'un utilisateur effectue l'une des tâches suivantes:

Cet événement n'est pas créé si la présentation est enregistrée avec l'option de menu Enregistrer > Dans un tableau de bord existant ou Modifier les paramètres.

type: look:save:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  folderid: 123
  }
}
Attribut Format Description
look.url Chaîne URL relative de la présentation (uniquement le chemin d'accès)
look.absoluteUrl Chaîne URL complète du look
look.folderid Integer ID du dossier dans lequel la présentation est stockée

look:delete:complete

Cet événement est créé lorsqu'un look est déplacé dans le dossier Corbeille.

type: look:delete:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne URL relative de la présentation (uniquement le chemin d'accès)
look.absoluteUrl Chaîne URL complète du look

drillmenu:click

Cet événement est créé lorsqu'un utilisateur clique sur un menu de navigation dans un tableau de bord créé avec le paramètre LookML link. Par exemple, le code LookML suivant crée un menu de navigation permettant à un utilisateur d'afficher des données filtrées par la dimension 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"
  }
}

Lorsque le filtre state est défini sur Illinois, l'événement drillmenu:click renvoie les éléments suivants à l'hôte de l'iFrame:

type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Attribut Format Description
label Chaîne Libellé du lien tel qu'il apparaît dans le menu d'analyse
link_type Chaîne Type d'objet à la destination du lien
modal Booléen Indique si la boîte de dialogue d'analyse sera utilisée au lieu de la navigation dans le navigateur
target Chaîne Valeur _self si la destination du lien remplace l'iframe actuelle, _blank si la destination du lien ouvre une nouvelle fenêtre
url Chaîne URL de la destination du lien
context Chaîne Attribut interne utilisé par certains types de visualisations

Le bac à sable de l'iframe empêche les clics sur le menu de navigation de s'ouvrir dans une nouvelle fenêtre. Utilisez ces valeurs de bac à sable dans la balise iframe:

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

drillmodal:download

Cet événement est créé lorsqu'un utilisateur ouvre une boîte de dialogue de drill-down à partir d'une carte de tableau de bord et clique sur l'option Télécharger.

{
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 Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel appartient la carte.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il apparaît en haut du tableau de bord auquel la carte appartient.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la carte appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la carte appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.
drillExploreUrl Chaîne URL relative de l'exploration (uniquement le chemin d'accès) à télécharger.
fileFormat Chaîne Format de fichier du téléchargement de données.

drillmodal:explore

Cet événement est créé lorsqu'un utilisateur clique sur l'option Explorer à partir d'ici dans une boîte de dialogue d'analyse.

type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Attribut Format Description
label Chaîne Libellé du bouton tel qu'il apparaît dans le menu "Analyse"
url Chaîne URL d'exploration relative (uniquement le chemin) à afficher

explore:ready

Cet événement est créé lorsqu'une exploration commence à charger les données de requête, que la requête s'exécute ou non.

type: "explore:ready",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL Explorer relative (uniquement le chemin d'accès)
explore.absoluteUrl Chaîne URL complète d'Explorer

explore:run:start

Cet événement est créé lorsqu'une exploration commence à charger les données de requête et que la requête commence à s'exécuter.

type: "explore:run:start",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL Explorer relative (uniquement le chemin d'accès)
explore.absoluteUrl Chaîne URL complète d'Explorer

explore:run:complete

Cet événement est créé lorsqu'une exploration a terminé l'exécution de la requête.

type: "explore:run:complete",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL Explorer relative (uniquement le chemin d'accès)
explore.absoluteUrl Chaîne URL complète d'Explorer

explore:state:changed

Cet événement est créé lorsqu'une URL de page "Explorer" change en raison des actions de l'utilisateur.

type: "explore:state:changed",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Attribut Format Description
explore.url Chaîne URL Explorer relative (uniquement le chemin d'accès)
explore.absoluteUrl Chaîne URL complète d'Explorer

page:changed

Cet événement est créé lorsqu'un utilisateur accède à une nouvelle page dans l'iFrame.

type: "page:changed",
page: {
  type: "dashboard",
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Attribut Format Description
page.type Chaîne Type de page vers laquelle l'utilisateur vient d'accéder, par exemple "dashboard", "look" ou "explore"
page.url Chaîne URL relative (uniquement le chemin d'accès) de la page vers laquelle l'utilisateur vient d'accéder
page.absoluteUrl Chaîne URL complète de la page vers laquelle l'utilisateur vient d'accéder

page:properties:changed

Cet événement est créé lorsque la hauteur d'un iframe de tableau de bord change. Elle n'est pas disponible pour les looks ni les explorations, car ces éléments ajustent automatiquement leur hauteur à la taille de l'iFrame.

type: "page:properties:changed",
height: 1000
Attribut Format Description
height Integer Hauteur de l'iframe du tableau de bord en pixels

session:tokens

Cet événement indique que le client Looker a besoin de jetons pour continuer. Cet événement est créé immédiatement lors de la création de l'iFrame et périodiquement par la suite pendant toute la durée de la session.

{
  "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 Description
authentication_token Chaîne Jeton d'authentification. Inclus lors de la création de l'iFrame. Non inclus dans la réponse à une requête de génération de jetons ou si la session a expiré.
authentication_token_ttl Nombre Durée de vie du jeton d'authentification en secondes. Inclus lors de la création de l'iFrame. Non inclus dans la réponse à une requête de génération de jetons ou si la session a expiré.
api_token Chaîne Jeton d'API. Non inclus si la session a expiré.
api_token_ttl Nombre Durée de vie du jeton d'API en secondes. Non inclus si la session a expiré.
navigation_token Chaîne Jeton de navigation. Non inclus si la session a expiré.
navigation_token_ttl Nombre Durée de vie du jeton de navigation en secondes. Non inclus si la session a expiré.
session_references_token_ttl Nombre Durée de vie de la session en secondes. La valeur est de 0 lorsque la session a expiré. Pour récupérer, l'application d'intégration doit acquérir une nouvelle session.

session:status

L'événement est généré lorsque l'application Looker intégrée traite les requêtes de jetons de session.

{
  "type": "session:status",
  "session_ttl": 0,
  "expired": true,
  "interrupted": false
}
Attribut Format Description
session_ttl Nombre Durée de vie de la session en secondes.
expired Booléen Lorsque la valeur est true, cela indique que la session a expiré.
interrupted Booléen Lorsque la valeur est true, indique qu'une requête de jetons de session n'a pas reçu de réponse. Cela peut indiquer qu'un serveur est temporairement indisponible.
recoverable Booléen N'est renseigné que lorsque l'interruption est true. Indique si la session peut être récupérée ou non. Une valeur de false indique probablement un problème avec l'application d'intégration.

env:client:dialog

L'événement est généré lorsqu'une boîte de dialogue est ouverte et qu'elle est partiellement masquée, par exemple une boîte de dialogue de drill. Cet événement permet à l'application hôte de faire défiler la boîte de dialogue à l'aide de l'action env:host:scroll.

{
  type: "env:client:dialog",
  dialogType: 'drilling',
  placement: 'cover',
  open: true
}
Attribut Format Description
type Chaîne env:client:dialog indique qu'une boîte de dialogue a été ouverte ou fermée. Actuellement, seule la boîte de dialogue de la vue détaillée est prise en charge, mais d'autres boîtes de dialogue pourront être ajoutées à l'avenir. Il est possible que le haut de la boîte de dialogue de l'analyse ne soit pas visible, car elle recouvre la fenêtre d'affichage de l'iFrame. Cet événement permet à l'application hôte de faire défiler la partie supérieure de la boîte de dialogue.
dialogType Chaîne Type de boîte de dialogue. Actuellement, seul l'ouverture ou la fermeture du type de boîte de dialogue "Forage" déclenche cet événement.
placement Chaîne Emplacement de la boîte de dialogue. Les boîtes de dialogue de type "forage" utilisent toujours un placement de type "couverture".
open Booléen Indique si la boîte de dialogue est ouverte ou si elle est défilée.

Modifier l'iframe

Une fois que vous avez préparé votre iframe pour la récupération de données, vous pouvez la modifier en procédant comme suit:

  1. Rédigez votre requête au format JSON.
  2. Publiez la requête dans le contentWindow de l'iframe.

Écrire votre requête au format JSON

Vous pouvez apporter plusieurs modifications à l'iframe, que vous enverrez au format JSON. Les options disponibles sont décrites dans la section Référence des actions de cette page. N'oubliez pas d'utiliser JSON.stringify pour convertir votre action en JSON, comme suit:

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

Publier la requête dans la propriété contentWindow de l'iFrame

Enfin, publiez votre message dans contentWindow de l'iFrame, comme suit:

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

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

Tableau récapitulatif des actions

Le tableau suivant récapitule les actions. Sélectionnez une action pour en afficher les détails.

Action Description de l'action
dashboard:load Charge un nouveau tableau de bord dans l'iFrame, en remplaçant un tableau de bord existant.
dashboard:run Exécute le tableau de bord dans l'iFrame.
dashboard:edit AJOUTÉ LE 22.20 Active le mode Édition du tableau de bord.
dashboard:filters:update Met à jour un filtre de tableau de bord existant dans l'iFrame.
dashboard:options:set Écrit de nouvelles valeurs dans la mise en page du tableau de bord et les propriétés des éléments du tableau de bord.
dashboard:schedule_modal:open Ouvre le planificateur, qui permet aux utilisateurs de diffuser du contenu Looker vers différentes destinations.
dashboard:stop Arrête un tableau de bord en cours d'exécution ou de rechargement de données.
look:run Exécute la recherche dans l'iFrame.
look:filters:update Met à jour un filtre de présentation existant dans l'iFrame.
explore:run Exécute l'exploration dans l'iFrame.
explore:filters:update Met à jour ou supprime un filtre d'exploration existant dans l'iFrame.
session:tokens:request Envoie des jetons en réponse à un événement session:tokens:request.
env:host:scroll Envoie des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.

Référence de l'action

Voici les actions que vous pouvez publier dans l'iframe intégrée:

dashboard:load

Utilisez cette action pour charger un nouveau tableau de bord dans l'iFrame, en remplaçant un tableau de bord existant. Le nouveau tableau de bord commencera à exécuter des requêtes comme si une nouvelle page de tableau de bord avait été ouverte.

{
  type: "dashboard:load",
  id: "101",
  pushHistory: false
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:load indique que vous souhaitez charger un nouveau tableau de bord dans l'iFrame.
id Chaîne ID du tableau de bord à charger.
pushHistory Booléen Si la valeur est true, le tableau de bord chargé crée une entrée dans l'historique du navigateur, et l'utilisateur peut utiliser le bouton "Retour" du navigateur pour revenir au tableau de bord précédent. Si la valeur est false, le tableau de bord actuel est remplacé et vous ne pouvez pas y accéder à l'aide de la navigation dans le navigateur.

dashboard:run

Utilisez cette action pour exécuter le tableau de bord dans l'iFrame. Cette action est identique à celle effectuée lorsque vous cliquez sur le bouton Run (Exécuter) ou Reload Data (Actualiser les données) du tableau de bord.

{
  type: "dashboard:run"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:run indique que vous souhaitez exécuter le tableau de bord.

dashboard:edit

AJOUTÉ LE 22.20 Utilisez cette action pour passer un tableau de bord existant dans l'iframe en mode Édition. Cette action est identique à celle effectuée lorsque vous sélectionnez Modifier le tableau de bord dans le menu du tableau de bord.

{
  type: "dashboard:edit"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:edit indique que vous souhaitez passer le tableau de bord en mode Édition.

dashboard:filters:update

Utilisez cette action pour mettre à jour un filtre de tableau de bord existant dans l'iFrame. Vous ne pouvez pas ajouter de filtre au tableau de bord à l'aide de cette méthode.

{
  type: "dashboard:filters:update",
  filters: {
    "Sale date": "Last 28 days",
    "Sale amount": "Greater than 100"
  }
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par le tableau de bord.
filters Objet Les nouveaux filtres que vous souhaitez appliquer au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}.

dashboard:options:set

Cette action est disponible après l'événement dashboard:run:complete.

L'intégrateur crée le message et l'envoie à l'iframe, mais le tableau de bord ne répond qu'après l'événement dashboard:run:complete. L'action dashboard:options:set écrit de nouvelles valeurs dans la mise en page du tableau de bord et les propriétés des éléments du tableau de bord. Seules les propriétés renvoyées dans l'attribut options de l'événement dashboard:run:complete peuvent être mises à jour à l'aide de dashboard:options:set. Toutes les propriétés définies qui n'ont pas été renvoyées précédemment par l'attribut options de l'événement dashboard:run:complete sont ignorées.

{
  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 Description
type Chaîne L'utilisation du type dashboard:options:set indique que vous souhaitez écrire de nouvelles valeurs dans la mise en page du tableau de bord et les propriétés de ses éléments.
layouts Objet Propriétés de la mise en page du tableau de bord renvoyées par l'attribut options dans l'événement dashboard:run:complete. Elles se présentent sous un format semblable à celui-ci:

  • id: "string",
  • dashboard_id: "string",
  • type: "newspaper",
  • active: boolean,
  • column_width: number,
  • width: number
layouts.dashboard_layout_components Objet Un ou plusieurs objets composant de mise en page du tableau de bord renvoyés par l'attribut options dans l'événement dashboard:run:complete. Elles se présentent sous un format semblable à celui-ci:

  • id: "string",
  • dashboard_layout_id: "string",
  • dashboard_element_id: "string",
  • row: number,
  • column: number,
  • width: number,
  • height: number,
  • deleted: boolean,
elements Objet Un ou plusieurs objets élément de tableau de bord renvoyés par l'attribut options dans l'événement dashboard:run:complete. Elles se présentent sous un format semblable à celui-ci:

id: {

  title: "string",

  title_hidden: boolean,

  vis_config: {

    type: "string", title: "string"

  }

}

dashboard:schedule_modal:open

Cette action permet d'ouvrir le planificateur, qui permet aux utilisateurs de distribuer du contenu Looker vers différentes destinations.

{
  type: "dashboard:schedule_modal:open"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:schedule_modal:open indique que vous souhaitez ouvrir la boîte de dialogue Planifier.

dashboard:stop

Utilisez cette action pour arrêter un tableau de bord en cours d'exécution ou de rechargement de données. Cette action est identique à celle effectuée lorsque vous cliquez sur le bouton Annuler du tableau de bord. Un tableau de bord arrêté à l'aide de dashboard:stop envoie un événement dashboard:run:complete avec status: défini sur "stopped".

{
  type: "dashboard:stop"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:stop indique que vous souhaitez arrêter le tableau de bord en cours d'exécution.

look:run

Utilisez cette action pour exécuter la requête sur laquelle se base le look dans l'iframe. Cette action est semblable à l'appui sur le bouton Run (Exécuter) de la vue, à l'exception que look:run interroge toujours directement la base de données et ne récupère pas les données du cache Looker.

{
  type: "look:run"
}
Attribut Format Description
type Chaîne L'utilisation du type look:run indique que vous souhaitez exécuter la recherche.

look:filters:update

Utilisez cette action pour mettre à jour un filtre de look existant dans l'iFrame. Vous ne pouvez pas ajouter de filtre à la vue à l'aide de cette méthode.

{
  type: "look:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "products.department": "sweaters"
  }
}
Attribut Format Description
type Chaîne L'utilisation du type look:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par le look.
filters Objet Les nouveaux filtres que vous souhaitez appliquer au look. Cet objet a le format suivant: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}.

explore:run

Utilisez cette action pour exécuter l'exploration dans l'iFrame. Cette action est semblable à l'appui sur le bouton Run (Exécuter) de l'exploration, à l'exception que explore:run interroge toujours directement la base de données et ne récupère pas les données du cache Looker.

{
  type: "explore:run"
}
Attribut Format Description
type Chaîne L'utilisation du type explore:run indique que vous souhaitez exécuter l'exploration.

explore:filters:update

Utilisez cette action pour mettre à jour ou supprimer un filtre d'exploration existant dans l'iFrame. Si vous incluez un nouveau filtre qui fait référence à un champ valide, il sera ajouté à l'exploration.

{
  type: "explore:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "orders.status": "complete"
  }
  deleteFilters:  ["products.department"]
}
Attribut Format Description
type Chaîne L'utilisation du type explore:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par l'exploration.
filters Objet Les nouveaux filtres que vous souhaitez appliquer à l'exploration. Si filters inclut un filtre qui n'existe pas actuellement dans l'exploration, mais qui fait référence à un champ valide, ce filtre sera ajouté à l'exploration. Cet objet a le format suivant: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}.
deleteFilters Tableau Les filtres existants que vous souhaitez supprimer de l'exploration. Le tableau a le format suivant: ["view_name.field_name_1", "view_name.field_name_2", ...].

session:tokens:request

Utilisez cette action pour envoyer des jetons en réponse à une requête session:tokens:request.

{
  type: "session:tokens:request",
}
Attribut Format Description
type Chaîne L'utilisation du type session:tokens:request indique que vous souhaitez envoyer des jetons en réponse à un événement session:tokens:request.

env:host:scroll

Utilisez cette action pour envoyer des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.

{
  type: "env:host:scroll",
  offsetTop: 10,
  offsetLeft: 10,
  scrollX: 5,
  scrollY: 5
}
Attribut Format Description
type Chaîne L'utilisation du type env:host:scroll indique que vous souhaitez envoyer des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.
offsetTop Nombre Décalage vers le haut de l'iFrame.
offsetLeft Nombre Décalage à gauche de l'iFrame.
scrollX Nombre Position de défilement de l'hôte de l'application.
scrollY Nombre Position de défilement de l'hôte de l'application.