Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

For using digital bookings with MsTeams, we are using calendar api (GraphApi) in a way that we create a new calendar event and retrieve ms teams call link from there. For making it works we need to have organizations looking to streamline appointment scheduling by enabling Virtual Appointment feature, integrating with the Microsoft Graph API is a key step. This process involves setting up proper access to Active Directory (AD) on client side. So steps:Add a default userPlease add and configuring Azure app registrations to interact seamlessly with Microsoft's calendar and user management systems. Here’s a detailed guide on how to set up your system for digital bookings through Microsoft Teams:

Step 1: Add a Default User in Active Directory

  1. Create a Default User: Add a default user in your AD.

...

Go to Azure, Active directory, App registrations (this is an item in the left column)

...

New registration

...

Put name and select Accounts in this organisational directory only. Omit redirect url

...

After the new app is created, please find and send to us Tenant ID and Client ID

...

After please go to Certificates and secrets, add a new secret. Please keep value for this new secret and send value to us.

Go to API permissions section. Please add for this application permission (Add a permission, Microsoft Graph, Delegated or Application type, find the specified permission): “Calendars.ReadWrite”, “Calendars.ReadWrite.Shared”, “User.Read.All” and “User.ReadBasic.All” (the same points as for Calendars, but check for User section) for proper communication.

...

  1. This email will be utilized for generating appointments, ensuring it has the necessary permissions.

Step 2: Register a New Application in Azure

  1. Navigate to Azure Portal: Log into your Azure portal and select Active Directory.

  2. App Registrations: Go to the App Registrations section found in the left column.

  3. Create New Registration: Click on New Registration.

    • Name the Application: Choose a relevant name that easily identifies the application’s purpose.

    • Account Type: Select Accounts in this organizational directory only.

    • Redirect URL: This field can be omitted as it's not required for this setup.

  4. Record Important IDs: Post-creation, locate and record the Tenant ID and Client ID for future configurations and communication.

Step 3: Configure Secrets and Permissions

  1. Certificates and Secrets:

    • Navigate to the Certificates and Secrets section.

    • Add a New Secret: Create a new secret and note down its value securely. This secret will authenticate interactions between your application and Microsoft Graph.

  2. API Permissions:

    • Go to the API Permissions section.

    • Add Permissions: Click on Add a permission, then select Microsoft Graph.

    • Choose Permission Types: Add both Delegated and Application permissions as needed.

    • Specific Permissions:

      • Calendars.ReadWrite

      • Calendars.ReadWrite.Shared

      • User.Read.All

      • User.ReadBasic.All

      • Ensure that these permissions are added for both calendar operations and user information retrieval.

Why These Steps Are Necessary

The configuration steps outlined above are crucial for:

  • Event Creation: To create events in a manager’s calendar, the system requires access to the manager's ID, which is retrieved using the user permissions (User.*).

  • Appointment Scheduling: Permissions such as Calendars.* allow the application to create, modify, and manage appointments directly in the linked calendar, facilitating real-time scheduling and updates in Microsoft Teams.

By following these steps, your organization can enhance its scheduling system, integrating it with Microsoft Teams to provide a seamless booking experience that leverages the robust capabilities of Microsoft Graph API. This integration not only improves operational efficiency but also enhances the user experience by centralizing communication and scheduling in a familiar platform.

...