Files
calendar/packages/features/webhooks/lib/constants.ts
T
Benny JooGitHubbenny@cal.com <sldisek783@gmail.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
ab21c7f805 refactor: Cal.diy (#28903)
* feat: Cal.diy — community-driven MIT-licensed fork of Cal.com

This squashed commit contains all Cal.diy changes applied on top of calcom/cal.com main:

- Rebrand Cal.com to Cal.diy across the entire codebase
- Remove Enterprise Edition (EE) features, license checks, and AGPL restrictions
- Switch license from AGPL-3.0 to MIT
- Remove docs/ directory (migrated to Nextra at cal.diy)
- Remove dead code: org tests, EE tips, platform nav, premium username, SAML/SSO, etc.
- Clean up .env.example for self-hosted Cal.diy
- Update Docker image references to calcom/cal.diy
- Update README, CONTRIBUTING.md, and issue templates for Cal.diy community fork
- Add PR welcome bot for Cal.diy contributors
- Fix API v2 breaking changes oasdiff ignore entries
- Replace Blacksmith CI runners with default GitHub Actions

3893 files changed, 20789 insertions(+), 411020 deletions(-)

Co-Authored-By: benny@cal.com <sldisek783@gmail.com>

* refactor: remove org-specific /organizations/:orgId endpoints from API v2 atoms controllers (#1701)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* fix: revert Cal.diy Inc to Cal.com, Inc. in license files, copyright notices, and package metadata (#1702)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* rip out org related comments in api v2

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-04-15 09:52:36 -03:00

71 lines
2.7 KiB
TypeScript

import { WebhookTriggerEvents } from "@calcom/prisma/enums";
import { WebhookVersion } from "./interface/IWebhookRepository";
// this is exported as we can't use `WebhookTriggerEvents` in the frontend straight-off
/**
* Version label map - transforms version enum values to display labels.
* Since our version values ARE date strings (e.g., "2021-10-20"), labels match values.
* This map allows for custom labels if needed in the future.
*/
export const WEBHOOK_VERSION_LABELS: Record<WebhookVersion, string> = {
[WebhookVersion.V_2021_10_20]: "2021-10-20",
// Add new versions here: [WebhookVersion.V_YYYY_MM_DD]: "YYYY-MM-DD",
};
/**
* Pre-built options for Select components - automatically generated from all versions
*/
export const WEBHOOK_VERSION_OPTIONS = Object.values(WebhookVersion).map((version) => ({
value: version,
label: WEBHOOK_VERSION_LABELS[version] ?? version,
}));
/**
* Get display label for a version
*/
export const getWebhookVersionLabel = (version: WebhookVersion): string =>
WEBHOOK_VERSION_LABELS[version] ?? version;
/**
* Documentation URLs for each webhook version.
* Links to the specific version's payload documentation.
*/
export const WEBHOOK_VERSION_DOCS: Record<WebhookVersion, string> = {
[WebhookVersion.V_2021_10_20]: "https://cal.com/docs/developing/guides/automation/webhooks#2021-10-20",
// Add new versions here: [WebhookVersion.V_YYYY_MM_DD]: "https://cal.com/docs/webhooks/v-yyyy-mm-dd",
};
/**
* Get documentation URL for a specific webhook version
*/
export const getWebhookVersionDocsUrl = (version: WebhookVersion): string =>
WEBHOOK_VERSION_DOCS[version] ?? "https://cal.com/docs/developing/guides/automation/webhooks";
export const WEBHOOK_TRIGGER_EVENTS_GROUPED_BY_APP = {
core: [
WebhookTriggerEvents.BOOKING_CANCELLED,
WebhookTriggerEvents.BOOKING_CREATED,
WebhookTriggerEvents.BOOKING_RESCHEDULED,
WebhookTriggerEvents.BOOKING_PAID,
WebhookTriggerEvents.BOOKING_PAYMENT_INITIATED,
WebhookTriggerEvents.MEETING_ENDED,
WebhookTriggerEvents.MEETING_STARTED,
WebhookTriggerEvents.BOOKING_REQUESTED,
WebhookTriggerEvents.BOOKING_REJECTED,
WebhookTriggerEvents.RECORDING_READY,
WebhookTriggerEvents.INSTANT_MEETING,
WebhookTriggerEvents.RECORDING_TRANSCRIPTION_GENERATED,
WebhookTriggerEvents.BOOKING_NO_SHOW_UPDATED,
WebhookTriggerEvents.OOO_CREATED,
WebhookTriggerEvents.AFTER_HOSTS_CAL_VIDEO_NO_SHOW,
WebhookTriggerEvents.AFTER_GUESTS_CAL_VIDEO_NO_SHOW,
WebhookTriggerEvents.DELEGATION_CREDENTIAL_ERROR,
WebhookTriggerEvents.WRONG_ASSIGNMENT_REPORT,
] as const,
};
export const WEBHOOK_TRIGGER_EVENTS = [
...WEBHOOK_TRIGGER_EVENTS_GROUPED_BY_APP.core,
] as const;