Plugins are typically called by Luzmo for setting up accounts, retrieving metadata or data. In some cases, it can be useful to directly notify Luzmo of events related to your Plugin. Therefore, we support the following webhooks:
In case your Plugin caches data of a 3rd party provider (eg. Facebook, Pipedrive, ..) for a user instead of query'ing an API directly, synchronizing a user's data can take a while after the first call to /authorize . Calling this webhook will inform the user when this process is finished and they can start dashboarding.
POST https://api.luzmo.com/0.1.0/webhook/plugin/data_available
Content-Type: application/json
X-Secret: m2c0vilcn9q1qkeph06oycynp{
"slug": "<your_plugin_slug>",
"user_id": "<luzmo_user_UUID>",
"key": "<connection_UUID>"
}The following headers should be sent:
| Property | Description |
|---|---|
|
X-Secret string |
Plugin secret assigned by Luzmo. Luzmo will verify this on each request to check the request originates from your Plugin. |
The following payload should be sent with Content-Type application/json :
| Property | Description |
|---|---|
|
slug string |
Slug of your Plugin. |
|
user_id string |
User identifier for which the data is available. |
|
key string |
Connection ID for which the data is available (to disambiguate between multiple Connections a user might have for your Plugin). |
This webhook can be called whenever a dataset for a particular account has new data available (eg. because your Plugin re-synchronized data or because it received a webhook from an upstream data source). Calling this webhook will immediately update all open dashboards using this data.
POST https://api.luzmo.com/0.1.0/webhook/plugin/data_updated
Content-Type: application/json
X-Secret: m2c0vilcn9q1qkeph06oycynptype: command
fileName: Request payload
---
{
"slug": "<your_plugin_slug>",
"user_id": "<luzmo_user_UUID>",
"key": "<connection_UUID>",
"dataset_id": "<dataset_canonical_identifier>"
}The following headers should be sent:
| Property | Description |
|---|---|
|
X-Secret string |
Plugin secret assigned by Luzmo. Luzmo will verify this on each request to check the request originates from your Plugin. |
The following payload should be sent with Content-Type application/json :
| Property | Description |
|---|---|
|
slug string |
Slug of your Plugin. |
|
user_id string |
User identifier for which new data is available. |
|
key string |
Connection ID for which new data is available (to disambiguate between multiple Connections a user might have for your Plugin). |
|
dataset_id string |
The canonical dataset identifier of the updated dataset, as exposed in your plugin. |
This webhook can be called whenever the end-user deleted the Luzmo app from the 3rd parties side. Luzmo will then also remove the account, so a full reconnection can be made if desired.
POST https://api.luzmo.com/0.1.0/webhook/plugin/account_deleted
Content-Type: application/json
X-Secret: m2c0vilcn9q1qkeph06oycynp{
"slug": "your_plugin_slug",
"user_id": "<luzmo_user_UUID>",
"key": "<connection_UUID>",
}The following headers should be sent:
| Property | Description |
|---|---|
|
X-Secret string |
Plugin secret assigned by Luzmo. Luzmo will verify this on each request to check the request originates from your Plugin. |
The following payload should be sent with Content-Type application/json :
| Property | Description |
|---|---|
|
slug string |
Slug of your Plugin. |
|
user_id string |
User identifier that wishes to disconnect their Connection. |
|
key string |
Connection ID that should be disconnected. |