This service forwards Cal.com webhook notifications to Telegram. It validates incoming webhooks using HMAC-SHA256 signatures and formats the appointment details for easy reading.
POST /api/webhook
POST /api/test-webhook
Make sure you have the following environment variables configured:
CAL_SECRET
Required
TELEGRAM_TOKEN
Required
CHAT_ID
Required
In your Cal.com dashboard:
https://your-vercel-app.vercel.app/api/webhook)CAL_SECRET in your environment variablesYou can use the test endpoint to verify your setup:
curl -X POST https://your-vercel-app.vercel.app/api/test-webhook \
-H "Content-Type: application/json" \
-d '{
"triggerEvent": "PING",
"createdAt": "2025-05-01T14:26:00.000Z",
"payload": {
"type": "Test",
"title": "Test Meeting",
"startTime": "2025-05-01T15:00:00.000Z",
"endTime": "2025-05-01T15:30:00.000Z",
"attendees": [
{
"email": "client@example.com",
"name": "Client Name",
"timeZone": "America/Sao_Paulo"
}
]
}
}'