Event subscriptions
Event subscription
The information in the event_subscription section of the manifest JSON represents the values on the Access > Event Subscriptions page of the app build flow.
This feature allows you to subscribe to interested events and receive Webhook notifications.
For more information, refer to the webhooks documentation for the specific product.
Challenge-response
Zoom App Marketplace uses Challenge-response check to confirm the ownership and the security of the event notification endpoint URLs. For more information, see Validating your webhook endpoint about building response to the challenge to validate your URLs.
Manifest JSON
{
"features": {
……
"event_subscription": {
"enable": true,
"events": [
{
"subscription_name": "subscription_name",
"event_types": [
"meeting.started",
"meeting.ended"
],
"development_webhook_url": "",
"production_webhook_url": "",
"development_event_custom_header": {
"custom_header_type": 0, // 0-DEFAULT, 1-BASE_AUTH, 2-OAUTH, 3-CUSTOM_kEY_VALUE
"username": "",
"password": "",
"client_id": "",
"client_secret": "",
"token_url": "",
"custom_header_key": "",
"custom_header_value": ""
},
"production_event_custom_header": {
"custom_header_type": 0, // 0-DEFAULT, 1-BASE_AUTH, 2-OAUTH, 3-CUSTOM_kEY_VALUE
"username": "",
"password": "",
"client_id": "",
"client_secret": "",
"token_url": "",
"custom_header_key": "",
"custom_header_value": ""
}
}
]
}
,
……
}
}
Field Description
| Field | Description | Required |
|---|---|---|
enable | This feature allows you to subscribe to interested events and receive Webhook notifications. | No |
events[].subscription_id | The primary key of subscription | Yes (when updating subscription) |
events[].subscription_name | Name this particular event subscription. | Yes (if enable = true) |
events[].development_webhook_url | Provide a URL to receive subscribed event notifications. This is for testing in your local environment. | Yes (if enable = true) |
events[].production_webhook_url | Provide a URL to receive subscribed event notifications. This is for testing in your local environment. | No |
events[].event_types | Add events for your app to subscribe. Any corresponding scopes related to specific events will be automatically selected. | Yes (if enable = true) |
events[].event_usage | Event notification receiver This feature is only available for account level apps. | No |
events[].communicate_type | Event communicate type: WEB_HOOK, WEB_SOCKET | NoWEB_HOOK by default |
events[].developmentEventCustomHeader.custom_header_type | Use the custom authentication header method to validate Zoom webhook notifications. 0-DEFAULT, 1-BASE_AUTH, 2-OAUTH, 3-CUSTOM_KEY_VALUE | No |
events[].developmentEventCustomHeader.username | Basic Authentication It can be used when customHeaderType is 1-BASE_AUTH | No Required when customHeaderType = 1 |
events[].developmentEventCustomHeader.password | Basic Authentication It can be used when customHeaderType is 1-BASE_AUTH | No Required when customHeaderType = 1 |
events[].developmentEventCustomHeader.client_id | Token Authentication It can be used when customHeaderType is 2-OAUTH | No Required when customHeaderType = 2 |
events[].developmentEventCustomHeader.client_secret | Token Authentication It can be used when customHeaderType is 1-BASE_AUTH | No Required when customHeaderType = 2 |
events[].developmentEventCustomHeader.custom_header_key | Custom Header It can be used when customHeaderType is 3-CUSTOM_KEY_VALUE | No Required when customHeaderType = 3 |
|