Les webhooks permettent à votre application de recevoir des notifications en temps réel sur les événements qui se produisent dans notre système. Lorsqu'un événement souscrit est déclenché, comme la création d'un rapport ou l'exécution d'une requête, nous enverrons une requête HTTP POST à une URL que vous spécifiez. Cela vous permet de créer des intégrations puissantes, d'automatiser les flux de travail et de maintenir vos propres systèmes synchronisés avec vos données.
Vous pouvez créer et gérer vos webhooks directement depuis l'interface utilisateur de l'application.
Cet événement est déclenché lorsqu'un rapport entier est exécuté, que ce soit de manière planifiée ou manuelle.
De manière cruciale, les données de l'événement report.run
contiendront une URL query_result
pour chaque requête individuelle qui faisait partie du rapport.
{
"event": "report.created",
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs",
"report_description": "Une analyse détaillée des nouvelles inscriptions d'utilisateurs et de l'engagement pour le T2.",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T18:30:00+00:00"
}
{
"event": "report.updated",
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs Mise à Jour",
"report_description": "Une analyse mise à jour des nouvelles inscriptions d'utilisateurs et de l'engagement pour le T2.",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T18:35:10+00:00"
}
{
"event": "report.deleted",
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs Mise à Jour",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T18:40:25+00:00"
}
{
"event": "report.run",
"report_id": 1,
"report_name": "Nam minus placeat nisi sint.",
"collection_id": 1,
"collection_name": "Collection Principale",
"report_notebook_outputs": "http://laravel.test/api/reports/1/run/1",
"queries": [
{
"query_id": 1,
"query_name": "velit",
"query_result": "http://laravel.test/api/reports/1/queries/1/reportRun/1"
},
{
"query_id": 2,
"query_name": "non",
"query_result": "http://laravel.test/api/reports/1/queries/2/reportRun/1"
},
{
"query_id": 3,
"query_name": "alias",
"query_result": "http://laravel.test/api/reports/1/queries/3/reportRun/1"
}
],
"timestamp": "2025-06-09T17:11:23+00:00"
}
Cet événement est plus spécifique et n'est déclenché que lorsque des actions sont effectuées sur une requête individuelle de manière isolée.
query.run
ne sera pas déclenché si la requête est exécutée dans le cadre d'une exécution de rapport plus large. Dans ce scénario, vous devriez vous référer à l'événement principal report.run pour trouver les résultats de la requête.{
"event": "query.created",
"query_id": 45,
"query_name": "Nouvelles Inscriptions d'Utilisateurs par Région",
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T19:05:15+00:00"
}
{
"event": "query.updated",
"query_id": 45,
"query_name": "Utilisateurs Actifs par Région (Quotidien)",
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T19:10:00+00:00"
}
{
"event": "query.deleted",
"query_id": 45,
"report_id": 123,
"report_name": "Croissance Trimestrielle des Utilisateurs",
"collection_id": 1,
"collection_name": "Collection Principale",
"timestamp": "2025-06-09T19:15:40+00:00"
}
{
"event": "query.run",
"query_id": 3,
"query_name": "alias",
"report_id": 1,
"report_name": "Nam minus placeat nisi sint.",
"collection_id": 1,
"collection_name": "Collection Principale",
"query_result": "http://laravel.test/api/reports/1/queries/3/run/2",
"timestamp": "2025-06-09T17:03:33+00:00"
}
Les charges utiles des événements report.run
et query.run
fournissent des URL (report_notebook_outputs
et query_result
) au lieu des données d'exécution réelles. Pour télécharger les résultats, vous devez effectuer une requête GET à l'URL fournie en utilisant votre jeton d'API Personnel pour l'authentification.
Voici un exemple de la manière de récupérer les résultats d'un événement query.run en utilisant curl.
curl -X POST "http://laravel.test/api/reports/1/queries/3/run/2" \
-H "Authorization: Bearer VOTRE_JETON_API_PERSONNEL" \
-H "Accept: application/json"