Configuring Microsoft Teams

Creating an App Registration

MyTimetable’s Teams integration leverages the Microsoft Graph API to communicate with Teams. For this to work, an app registration needs to be created in Microsoft Entra ID.

  1. Visit the Azure management portal

  2. Go to the Microsoft Entra ID configuration and go to App Registrations

  3. Click ‘New Registration’

  4. Give the new registration a useful name

  5. At 'Supported account types', pick 'Accounts in this organizational directory only (xxxxx only - Single
    tenant)'

  6. At 'Redirect URI', pick 'Web' and enter the URL https://<customer>.meeting.mytimetable.net/login/oauth2/code/microsoft and replace the <customer> placeholder. Please reach out to Semestry Support if you do not have the placeholder details yet.

image-20240517-120238.png
  1. Click ‘Register’.

  2. Write down the ‘Directory (tenant) ID’ and ‘Application (client) ID’.

  3. At 'Branding', upload a logo and link to the relevant privacy statement.

  4. At 'Certificates and secrets', create a new 'Client secret'. Make sure to copy the value of the secret, it is
    required in a later step. Please be aware that expiring secrets need to be redeployed by Semestry Support.

  5. At 'API permissions', remove the default Microsoft Graph permission User.Read

  6. At 'API permissions', click 'Add a permission'

    1. Select 'Microsoft Graph API'

    2. Select 'Delegated permissions'

    3. Search for OnlineMeetings.ReadWrite

    4. Click ‘Add Permissions’

    5. Click 'Grant admin consent for <customer name>'

image-20240517-120822.png
  1. Provide Semestry with the following information via a secure channel:

    1. Application (client) ID

    2. Client secret

    3. Directory (tenant) ID

Rolling over the client secret

  1. Visit the Azure management portal

  2. Go to the Microsoft Entra ID configuration and go to App Registrations

  3. Open the existing app registration

  4. Go to ‘Certificates and secrets' and create a new 'Client secret’.

  5. Copy the value of the secret, provide it to Semestry via a secure channel, and ask them to deploy the change.

  6. Once deployed, you can remove the old (expired) secret.