Callbacks
Developers can optionally define callbacks for events happening related to installation of their app. When a lifecycle event is fired, a POST request is made to the appropriate URL registered for the event.
Five particulars events (Install, Uninstall, Enable, Disable, Upgrade) can be registered to a callback under the callback section in App Registration. Each URL must use HTTPS to ensure data is sent securely.
AuthenticationApps can verify that the request came from Seismic using the
x-seismic-signaturerequest header, which is set with all life-cycle requests.
Validation
Additional details on signing secrets can be found here .
AcknowledgementIf callbacks are utilized, a response is required within 3 seconds with a 202. Failure to respond for any reason will block the action/event from occurring.
The five events that are available include:
| Event | Description |
|---|---|
| Install | Occurs when an app is installed from the app catalog by a Seismic adming. |
| Uninstall | Occurs when a Seismic admin removes an app from their tenant. |
| Enable | Occurs when a Seismic admin enables an app. Until an app is enabled its features will be inactive - API client Event subscription * Extensions |
| Disable | Occurs when a Seismic admin disables an app. Disabling an app will deactivate all app functionality for a given tenant. |
| Upgrade | Occurs when a Seismic admin upgrades an app. |
Sample payloads
{
"appId": "04bd6eda-4b04-4572-a744-7233ccc077cd",
"appName": "my test app",
"tenantId": "bd6eda-4b04-4572-a744-7233ccc077cd04",
"tenant": "seismicapps",
"userId": "e6f77acb-6f11-482c-822b-5dbdcc002a20",
"userEmail": "[email protected]",
"requestId": "de680a3a-2b96-45d8-a0f7-f6c11659e4f5",
"version": "0.1.4",
"type": "install",
"timestamp": "2020-09-01T08:45:42Z"
}{
"appId": "04bd6eda-4b04-4572-a744-7233ccc077cd",
"appName": "my test app",
"tenantId": "bd6eda-4b04-4572-a744-7233ccc077cd04",
"tenant": "seismicapps",
"userId": "e6f77acb-6f11-482c-822b-5dbdcc002a20",
"userEmail": "[email protected]",
"requestId": "de680a3a-2b96-45d8-a0f7-f6c11659e4f5",
"version": "0.1.4",
"type": "uninstall",
"timestamp": "2020-09-01T08:45:42Z"
}{
"appId": "04bd6eda-4b04-4572-a744-7233ccc077cd",
"appName": "my test app",
"tenantId": "bd6eda-4b04-4572-a744-7233ccc077cd04",
"tenant": "seismicapps",
"userId": "e6f77acb-6f11-482c-822b-5dbdcc002a20",
"userEmail": "[email protected]",
"requestId": "de680a3a-2b96-45d8-a0f7-f6c11659e4f5",
"version": "0.1.4",
"type": "enable",
"timestamp": "2020-09-01T08:45:42Z"
}{
"appId": "04bd6eda-4b04-4572-a744-7233ccc077cd",
"appName": "my test app",
"tenantId": "bd6eda-4b04-4572-a744-7233ccc077cd04",
"tenant": "seismicapps",
"userId": "e6f77acb-6f11-482c-822b-5dbdcc002a20",
"userEmail": "[email protected]",
"requestId": "de680a3a-2b96-45d8-a0f7-f6c11659e4f5",
"version": "0.1.4",
"type": "disable",
"timestamp": "2020-09-01T08:45:42Z"
}{
"appId": "04bd6eda-4b04-4572-a744-7233ccc077cd",
"appName": "my test app",
"tenantId": "bd6eda-4b04-4572-a744-7233ccc077cd04",
"tenant": "seismicapps",
"userId": "e6f77acb-6f11-482c-822b-5dbdcc002a20",
"userEmail": "[email protected]",
"requestId": "de680a3a-2b96-45d8-a0f7-f6c11659e4f5",
"version": "0.1.4",
"priorVersion": "0.1.2",
"type": "upgrade",
"timestamp": "2020-09-01T08:45:42Z"
}