What Are Webhooks Used For?
Webhooks enable you to:
Receive event notifications in real-time from Kickscale.
Automate processes, such as updating external systems when events occur.
Reduce the need for constant API polling, saving time and resources.
For example, when a meeting is analyzed in Kickscale, you can configure a webhook to send the event details to your system.
Configuring Webhooks
You can set up and manage webhooks directly in your workspace settings. Follow these steps:
Navigate to Webhooks Configuration
Set Up Your Webhook
Save Your Webhook
Refresh Your Secret (if needed)
To generate a new secret, open the Manage Webhooks dialog and use the refresh option.
Verifying Webhook Requests
For security, each webhook request sent by Kickscale includes a signature header to verify its authenticity. Below is an example of how you can verify the signature in your application:
const signature = request.headers['kickscale-signature-hash'];
const timestamp = request.headers['kickscale-signature-timestamp'];
const data = `${timestamp}${rawBody}`;
const hmac = crypto.createHmac('sha256', Buffer.from(webhookSecret, 'hex'));
const calculatedSignature = hmac.update(Buffer.from(data, 'utf-8')).digest('hex');
const valid = crypto.timingSafeEqual(Buffer.from(signature, 'hex'), Buffer.from(calculatedSignature, 'hex'));
Additional Resources
Response Types and Definitions
Meeting Analyzed:
{
eventType: "meeting_analyzed";
meeting: MeetingDTO;
}
For detailed information on response types, visit our Swagger documentation.
Tips and Best Practices
Always validate the webhook signature to ensure the request is genuine.
Use a secure HTTPS endpoint for your webhook URL.
Store your webhook secret securely, as it cannot be retrieved once the dialog is closed.
Regularly review your webhook configurations to ensure they are up-to-date.
Troubleshooting
I didn't save my webhook secret. What can I do?
You can refresh your webhook secret in the Manage Webhooks dialog to generate a new one.
My system is not receiving webhooks.
Verify that your webhook URL is correct and publicly accessible.
Check that the event you want is enabled.
Ensure your system handles requests with the correct headers and payload format.
How can I test my webhook integration?
Use a testing tool like Postman or a custom script to send sample payloads to your endpoint. Refer to the Swagger documentation for payload formats.
If you have any questions or need assistance, feel free to contact our support team at support@kickscale.com.