Skip to content

Microsoft Teams Location Returns Cal Video URL instead of MS Teams Meeting Link #25712

@marcelo-smartup

Description

@marcelo-smartup

Bug Report: Microsoft Teams Location Returns Cal Video URL Instead of Teams Meeting Link

Issue Summary

When creating a booking with location: "integrations:office365_video" (Microsoft Teams) via the Cal.com API or web form, the system accepts the booking successfully and shows "MS Teams" as the meeting location in the confirmation email. However, the meeting URL provided is a Cal.com video redirect (https://app.cal.com/video/...) instead of a direct Microsoft Teams meeting link. This creates confusion for attendees who expect a native Teams meeting link.

The event type is configured with MS Teams as the default location option, and the integration appears to be properly connected (Office365 Calendar integration shows success in the API response), yet the video conferencing defaults to Daily Video (Cal Video) instead of generating an actual MS Teams meeting.

Steps to Reproduce

Method 1: Using Cal.com Public API (v1)

  1. Make a POST request to https://api.cal.com/v1/bookings?apiKey=YOUR_API_KEY
  2. Use the following payload structure:
{
  "eventTypeId": 3173609,
  "start": "2025-12-11T16:00:00.000Z",
  "end": "2025-12-11T16:30:00.000Z",
  "timeZone": "America/Santiago",
  "language": "en",
  "title": "Intro Call with Test User",
  "description": "Introductory call scheduled via API.",
  "status": "ACCEPTED",
  "metadata": {},
  "responses": {
    "name": "Test User",
    "email": "test@example.com",
    "smsReminderNumber": "+1234567890",
    "location": {
      "value": "integrations:office365_video",
      "optionValue": ""
    }
  }
}

cURL Example:

curl --request POST \
  --url 'https://api.cal.com/v1/bookings?apiKey=YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "eventTypeId": 3173609,
    "start": "2025-12-11T16:00:00.000Z",
    "end": "2025-12-11T16:30:00.000Z",
    "timeZone": "America/Santiago",
    "language": "en",
    "title": "Intro Call with Test User",
    "status": "ACCEPTED",
    "metadata": {},
    "responses": {
      "name": "Test User",
      "email": "test@example.com",
      "smsReminderNumber": "+1234567890",
      "location": {
        "value": "integrations:office365_video",
        "optionValue": ""
      }
    }
  }'

Method 2: Using Web Form

  1. Go to the event booking page
  2. Select a time slot
  3. Fill in attendee details (name, email, phone)
  4. Submit the booking form

Observed Behavior

After booking is created (both methods):

  • Booking is successfully created with status "ACCEPTED"
  • API response shows:
    • "location": "integrations:office365_video"
    • References include "type": "daily_video" with a Daily.co meeting URL
    • Office365 calendar integration shows "success": 1
  • Confirmation email received states:
    • Where: MS Teams
    • Meeting URL: https://app.cal.com/video/[UID]

The MS Teams link in the email redirects to https://app.cal.com/video/[UID] (a Cal Video/Daily.co wrapper) instead of providing a native Microsoft Teams meeting link.

Actual Results

  • Booking is created with location: "integrations:office365_video"
  • API response shows both Daily Video and Office365 Calendar references:
"references": [
  {
    "type": "daily_video",
    "meetingUrl": "https://meetco.daily.co/8QKxJkVMozJZIxizToep"
  },
  {
    "type": "office365_calendar",
    "uid": "",
    "externalCalendarId": "user@gmail.com"
  }
]
  • Confirmation email shows "MS Teams" but provides a Cal.com video redirect URL
  • The actual video conferencing defaults to Daily Video instead of Microsoft Teams

Expected Results

When specifying "location": "integrations:office365_video" (Microsoft Teams):

  1. The system should generate a native Microsoft Teams meeting link (e.g., https://teams.microsoft.com/l/meetup-join/...)
  2. The API response should include a reference with:
    • "type": "office365_video"
    • A direct Teams meeting URL in meetingUrl
  3. The confirmation email should provide the direct Microsoft Teams link, not a Cal.com video redirect
  4. Attendees should be able to join the meeting directly through Microsoft Teams without being redirected through Cal.com's video interface

Technical Details

Environment

  • API Version: v1 (Public API)
  • Event Type ID: 3173609
  • Integration Status: Office365 Calendar connected and working
  • Default Location: MS Teams configured in event type settings

API Response Evidence

{
  "id": 13545862,
  "status": "ACCEPTED",
  "location": "integrations:office365_video",
  "videoCallUrl": "https://app.cal.com/video/m2Qz8pUz746DMBx1Ehvd6W",
  "appsStatus": [
    {
      "appName": "daily-video",
      "type": "daily_video",
      "success": 1,
      "failures": 0
    },
    {
      "appName": "office365-calendar",
      "type": "office365_calendar",
      "success": 1,
      "failures": 0
    }
  ],
  "references": [
    {
      "type": "daily_video",
      "meetingId": "8QKxJkVMIzJZIfizToep",
      "meetingUrl": "https://meetco.daily.co/8QKxJkVMIzJZIfizToep"
    },
    {
      "type": "office365_calendar",
      "externalCalendarId": "user@gmail.com",
      "credentialId": 1273964
    }
  ]
}

Questions & Concerns

  1. Why does the system create a Daily Video reference when office365_video is explicitly specified?
  2. Is there a separate Office365 Video/Teams integration that needs to be configured beyond the Office365 Calendar integration?
  3. Should the API prioritize the requested location type over fallback options?
  4. Is the current behavior intended (Cal.com as a Teams meeting wrapper) or is this a bug?

This is confusing for end users who expect to receive a native Microsoft Teams meeting link when "MS Teams" is selected as the location. The current redirect through Cal.com's video interface adds an unnecessary intermediary step.

Evidence

Booking Creation Test:

  • ✅ Booking created successfully via API
  • ✅ Location set to integrations:office365_video
  • ✅ Office365 Calendar integration successful
  • ❌ Video conferencing generated as Daily Video (Cal Video) instead of MS Teams
  • ❌ Meeting URL is Cal.com redirect instead of native Teams link

Email Confirmation:
Image

Expected vs Actual:

Aspect Expected Actual
Location Type MS Teams MS Teams (✓)
Meeting URL Type teams.microsoft.com/... app.cal.com/video/...
Video Provider Microsoft Teams Daily Video
User Experience Direct Teams join Redirect through Cal.com

Could you please review this behavior? It seems like the MS Teams integration might not be generating actual Teams meeting links, or there's a configuration/setup step missing for the Office365 Video integration to work properly.

Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    🐛 bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions