Integrate your Web Courses with Microsoft Teams

Integrate your Web Courses with Microsoft Teams

Learn how you can integrate your Web Courses between accessplanit and Teams to automate your webinar scheduling!

Looking to streamline how you run Web Courses? The Microsoft Teams integration connects your accessplanit platform with Teams, making it quicker and easier to schedule and manage your web-based Courses!

With this integration, you can automatically create Teams Meetings when scheduling, and the joining links will be pulled straight back into your platform, stored directly on the Course. You can even track webinar attendance, automatically marking attendees as ‘Completed’ if they turn up.

It’s a great way to save time, reduce errors, and deliver a smoother experience for both your team and your Delegates.

image-20250721-095724.png

This guide will walk you through how accessplanit’s integration with Microsoft Teams works, and how to set up the integration step by step.

Don’t have this Microsoft Teams module yet?

Just get in touch with your Customer Success Manager to learn more!


About

This integration syncs Course data from accessplanit to create Meetings in Microsoft Teams, so your course scheduling is much quicker, easier, and has a lower chance of going wrong!

Once the integration is ready to go, syncing your Courses to Teams is as easy as changing a drop down box. All you need to do, is select that your Course will be running with Teams, click 'Save', the integration will then kick in to set the Meeting up and bring back the joining links automatically!

Watch this short video to see how easy it is to connect a webinar in your accessplanit platform, to Microsoft Teams:

Shorts - Sync a Course with Microsoft Teams.mp4

This integration can also be set up to recognise Delegates attending your webinars, if they turn up, you can set your integration up to mark them as ‘Completed’ automatically. This feature can be a big time-saver and helps trigger useful post-course actions, such as sending out surveys or certificates.

Please note

accessplanit’s Microsoft Teams integration is an additional, chargeable module. Please speak to your Customer Success Manager to see if this is already included within your accessplanit package or to find out more information!


Benefits of using the Teams integration

Automation of meeting setup

  • When you schedule a course in accessplanit, the integration can automatically create a Microsoft Teams meeting behind the scenes

  • Join links (for both delegates and trainers) are pulled back and stored in your platform automatically

  • Eliminates the need for manual copying/pasting of meeting links, reducing human error and admin effort!

Time savings & reduced manual overhead

  • Because the synchronising of joining details and course updates is handled by the integration seamlessly, your team spends less time doing repetitive setup tasks

  • The automatic attendance sync and ‘mark-as-completed’ feature can cut down post-course admin tasks

Improved accuracy & consistency

  • Fewer mistakes in meeting link distribution, mismatches, or missing joining details.

  • Updates to course data (like dates, alias, time zone) automatically send to Teams

Better attendee tracking & engagement

  • The integration can automatically mark delegates as ‘Completed’ when they attend

  • This automated marking makes follow-ups (surveys, certifications, next steps) more reliable, since completion status is up to date

  • It uses ‘fuzzy matching’ logic (e.g. nickname, minor variation) to map Teams attendee names to registered Delegates, increasing match rates

Scalability & standardisation

  • Once set up, the process is repeatable across many Courses without needing to reconfigure each time, it is only one drop-down box to link a Course to Teams!

Reduced duplication

  • Avoids having separate workflows (one in accessplanit, another in Teams) which are not synchronised.

  • Helps avoid the worst case of ‘someone updates the date in one place but forgets the other.’

Future-proofing & flexibility

  • Even though Teams currently uses the same join link for trainers and delegates, the platform retains separate link fields (Trainer / Delegate), helping prepare for future changes or platforms that differentiate them

  • The integration supports updates (i.e. if you change course details, it will sync those to Teams)

 


1. Prerequisites & planning

Before you start configuring your integration, we recommend that you have a check over the following prerequisite and planning items first!

The following steps should be followed:

  • Register accessplanit as an app in Azure

  • Choose your meeting organiser

  • Decide your configurations

  • Purchase the module with accessplanit

1.1. Register accessplanit as an app in Azure

Before you can set up your integration, you will need your internal systems administrator to register accessplanit as an App via Microsoft Azure and provide the App with the permissions needed for the integration.

It is important that all these steps are completed before you set up the integration, when you set up the integration it will take a snapshot of the permissions - so if you haven’t set this up correctly beforehand you integration will not work and you’ll need to repeat the set up process later

You must first create an App through Active Directory in the Microsoft Entra Admin Center or Microsoft Azure Portal

  1. Navigate to ‘App Registrations' and use the option '+ New registration’

    image-20250721-122742.png
  2. When creating the application you will be prompted to select ‘Supported account types’

  3. Select ‘Accounts in any organizational directory (Any Azure AD directory - Multitenant)’

  4. Open the ‘Authentication’ settings

    image-20250721-123714.png
  5. Navigate to ‘Redirect URI’ and add the Web platform. Now enter the redirect URI as 
    https://oauth2.eu-west-2.prismatic.io/callback 

  6. Select ‘Register’ to complete. 

    image-20250721-123823.png

     

  7. Open the ‘Certificates & Secrets’ settings

    image-20250721-123456.png
  8. Select ‘+ New client secret’

  9. Copy/save the Value for use in the connection configuration of your integration (please note, the value will not be shown again), you will need this later when connecting your systems.

    image-20250721-123434.png

     

  10. Next, navigate to the ‘Overview’ section

    image-20250721-123939.png
  11. Copy the ‘Application (client) ID' and theDirectory (tenant) ID’

    image-20250721-124244.png

    Store these somewhere safe, you will need these later when connecting your systems.

     

  12. Navigate to the ‘API Permissions’ section to assign the proper permissions for the integration.

    image-20250721-122900.png
  13. Select ‘+ Add a Permissionand add in the following three:
    Required Scopes:
    Microsoft Graph > Application permissions: 

    1. OnlineMeetings.ReadWrite.All - Create/Update/Delete Meeting

    2. OnlineMeetingArtifact.Read.All - Get Attendance Reports

    3. User.Read.All - Lookup User by Email 

  14. Once all permissions have been added; you must ‘Grant admin consent for your organisation’ to confirm these permission changes.

    image-20250721-112106.png

     

Please note

These steps may vary if Microsoft updates their user interface. If you’re unable to follow the instructions, please contact Microsoft support directly. Feel free to let us know too, so we can review and update these steps!

 

For more information regarding authenticating against the Microsoft Graph API please refer to the Microsoft documentation. .

1.2. Choose your meeting organiser

You will need to identify a user within your organisation that will be the organiser/host for your meetings in Microsoft Teams.

As part of the integration setup, you’ll need to select a user from your organisation to act as the organiser (host) for the Microsoft Teams meetings created by accessplanit.

Here’s what to know when choosing your organiser:

  • The user must have a Microsoft Teams licence assigned to them

  • The user must have Global Administrator or Teams Administrator roles (otherwise please see the additional steps below)

  • The user must be assigned a unique email address that is not used by any other account

  • They will be set as the official owner of the meetings created by the integration

  • These meetings won’t appear in their Outlook or Teams calendar, they are created on their behalf, but do not interfere with their own schedule

  • They will be able to access the Teams attendance reports for each meeting/Course

 

Please note

If you update the organiser at a later date, all your existing Teams links for future Courses will need to be regenerated.

Once you have defined your meeting organiser, if they are not an administrator then the following additional steps will need to be taken by your systems administrator:

This guide provides step-by-step instructions for configuring a Microsoft Teams Application Access Policy, which is essential for allowing the accessplanit Microsoft Teams integration to manage Online Meetings on behalf of users other than the account used to initially set up the integration.

Why is this necessary?

When an application like accessplanit interacts with Microsoft Teams on behalf of your users, it often requires specific permissions beyond what a typical user account provides. The error "No application access policy found for this app" indicates that while accessplanit has the ability to connect, it lacks the explicit authorisation to create or manage meetings for other users in your organisation. This policy acts as a crucial security layer, granting this specific permission.


Prerequisites

Before you begin, ensure you have the following:

  • Administrator Account: A Microsoft 365 account with Global Administrator or Teams Administrator roles. This is required to install PowerShell modules, connect to Microsoft Teams, and create/manage application access policies.

  • accessplanit Application (Service Principal) Object ID: This is a unique identifier for the accessplanit application within your Azure Active Directory (now Microsoft Entra ID).

  • Target Users/Groups (Optional but Recommended): If you plan to restrict access to specific users or a security group rather than all users, identify:

    • The User Principal Name (UPN) (e.g., user@yourdomain.com) for individual users.

    • The Object ID of the Security Group if you're using a group. (Note: This must be a Security Group, not a Microsoft 365 Group or Distribution List, for this specific policy type.)


Step-by-Step Guide

Follow these steps using PowerShell to configure the Application Access Policy.

  1. Open PowerShell as an Administrator

    1. Click the Windows Start button.

    2. Type "PowerShell".

    3. Right-click on Windows PowerShell (or "PowerShell") and select Run as administrator.

      1. Confirm the User Account Control (UAC) prompt if it appears.

  2. Install the Microsoft Teams PowerShell Module
    If you haven't done so already, you need to install the Microsoft Teams PowerShell module. This module allows you to interact with Teams configurations.
    PowerShell
    Install-Module -Name MicrosoftTeams -AllowClobber -Force

    1. -AllowClobber: This parameter allows the module to overwrite existing commands with the same name if they are part of other installed modules.

    2. -Force: This parameter suppresses confirmation prompts.

  3. Connect to Microsoft Teams
    Now, connect to your Microsoft Teams tenant using your administrator credentials.
    PowerShell
    Connect-MicrosoftTeams

    1. A login window will appear. Enter the credentials for your Microsoft 365 administrator account.

  4. Create a New Application Access Policy
    This step defines the policy that grants accessplanit the permission to manage online meetings.
    Code snippet
    New-CsApplicationAccessPolicy -Identity "accessplanitOnlineMeetingsPolicy" -AppIds "2d925e99-5702-4815-a892-fdb18c1c45fc" -Description "Policy for Accessplanit to manage online meetings for users"

Important Notes:

  • -Identity "accessplanitOnlineMeetingsPolicy": This is the unique name for your policy. You can choose a different name, but ensure it's descriptive and unique within your tenant. It's recommended to use a name that clearly indicates its purpose, e.g., accessplanitOnlineMeetingsPolicy.

  • -AppIds "2d925e99-5702-4815-a892-fdb18c1c45fc": Crucially, replace "2d925e99-5702-4815-a892-fdb18c1c45fc" with the actual Object ID of your accessplanit Enterprise Application (Service Principal) that you found in the prerequisites section. Verify this ID carefully!

  • -Description "Policy for accessplanit to manage online meetings for users": Provide a clear description so you can easily identify the policy's purpose later.

  1. Grant the Policy (Choose ONE of the following options)

You must now apply the policy you just created to the relevant users or groups. Choose ONLY ONE of the following three methods based on your organization's requirements for access control.

Option A: Grant to All Users in the Tenant (Least Restrictive)

This option applies the policy to every user in your Microsoft 365 tenant. Use this if accessplanit needs to manage online meetings for any user without specific restrictions.

PowerShell

Grant-CsApplicationAccessPolicy -PolicyName "accessplanitOnlineMeetingsPolicy" -Global

  • Pros: Simplest to implement.

  • Cons: Broadest permissions; generally not recommended for security unless absolutely necessary.

Option B: Grant to a Specific Security Group (Recommended for Multiple Users)

This option applies the policy to all members of a designated Azure AD Security Group. This is the most scalable and manageable option for controlling access for a defined set of users.

PowerShell

Grant-CsApplicationAccessPolicy -PolicyName "accessplanitOnlineMeetingsPolicy" -Group "YOUR_SECURITY_GROUP_OBJECT_ID"

  • "YOUR_SECURITY_GROUP_OBJECT_ID": Replace this placeholder with the Object ID of the Azure AD Security Group that contains the users for whom accessplanit should manage online meetings.

  • Important: This must be a Security Group. Microsoft 365 Groups or Distribution Lists are not supported for this specific policy assignment.

Option C: Grant to a Specific User (Most Restrictive)

This option applies the policy to an individual user. You will need to run this command for each user you wish to grant access to.

PowerShell

Grant-CsApplicationAccessPolicy -PolicyName "accessplanitOnlineMeetingsPolicy" -Identity "user@yourdomain.com"

  • "user@yourdomain.com": Replace this placeholder with the User Principal Name (UPN) (typically the primary email address) of the specific user. You will need to execute this command for each individual user you want to enable.

  • Pros: Granular control over who can have their meetings managed by accessplanit.

  • Cons: Can be cumbersome to manage for many users, as you'd need to run the command for each one.

1.3. Decide your configurations

Review the below options to decide how you would your integration between accessplanit and Microsoft Teams to work

Default Time Zone

You will need to define a Default Time Zone, as the integration with Microsoft Teams requires a Time Zone in order to work properly.

When a Course is synced to Teams, the integration will first check whether a specific Time Zone has been set for that Course or it’s Training Provider.

image-20250721-131149.png

If no Time Zone is found, the integration will fall back on your configured Default Time Zone. We recommend selecting the Time Zone that is most central to your training operations, or the Time Zone that your Courses most commonly run in.

 

Mark attendees as ‘Completed’

You can choose to have the integration automatically update your Delegates’ status from ‘Booked’ to ‘Completed’ if they attend your Course via Teams.

image-20250721-131722.png

This feature can be a big time-saver and helps trigger useful post-course actions, such as sending out surveys or certificates.
However, if you prefer to have full control over marking attendance manually, you may wish to keep this setting turned off.

How does it work?

If a user joins the Teams meeting while logged in, the integration will have access to their full name and email address, making it easier to match them to a Delegate in your accessplanit platform.

If a user joins without logging in, Teams only provides the name they enter when joining. To help with this, the integration uses fuzzy matching. For example:

  • A Delegate named “Daniel Parker” will still be matched if the attendee joins as “Dan Parker.”

  • However, “Stuart Longhorn” would not be matched with an attendee who joins as “SL.”

Only Delegates with the status of ‘Booked’ will be updated automatically.
Anyone with the status ‘Cancelled,’ ‘Provisional,’ or ‘Waiting List’ will be excluded from automatic updates.

Please note

Attendance updates are not instant, Microsoft Teams can take up to an hour to generate the attendance report after the meeting has ended. The integration checks for updates every 15 minutes, and your accessplanit platform will update as soon as the report becomes available.

1.4. Purchase the module with accessplanit

If you haven’t already purchased the Teams integration, get in touch with your accessplanit CSM to add this to your package!

Once you are happy with your Azure set up, and your preferences, please get in touch with your Customer Success Manager at accessplanit to add the Teams module to your package!

Contact: customersuccess@accessplanit.com

Form: https://www.accessplanit.com/additional-modules


2. Set up the integration

In this step you will set up your integration between accessplanit and Teams.

There are three steps to get your integration built:

  • Collate your Microsoft Teams Connection details

  • Generate an API Key for accessplanit

  • Set up the integration

2.1. Collate your Microsoft Teams Connection

Before you start connecting your systems, make sure you have all the information you need for the connection to Microsoft Teams.

For this connection you need the following:

  • Token URL

  • Client ID

  • Client secret value

 

Token URL

The Token URL will use the 'Directory (tenant) ID’ that you copied in step 11 of 1.1. Register accessplanit as an app in Azure

Copy the following URL: https://login.microsoftonline.com/XXXXXXXXX/oauth2/v2.0/token

Replace the XXXXXXXXX with your Directory (tenant) ID to create your Token URL
e.g. https://login.microsoftonline.com/12345-12345-12345/oauth2/v2.0/token

 

Client ID

The Client ID is the ‘Application (client) ID’ that you copied in step 11 of 1.1. Register accessplanit as an app in Azure

 

Client secret value

The client secret value is the secret ‘Value’ that you copied in step 9 of 1.1. Register accessplanit as an app in Azure

 

2.2. Generate your accessplanit API key

  1. Open your accessplanit platform

  2. Open the ‘Administration’ menu from the Profile options at the top-right of your platform

    image-20250604-134627.png

     

  3. Open the ‘API Keys’ menu option to access the page where you can create a new API Key for this integration

Please note

The option to generate API keys is not available to all Admins, please get in touch with a member of the Support Team if you are unable to access this option

 

  1. Click the green ‘Add API Key’ button

    image-20250604-134835.png

     

  2. Provide your API Key with a name, e.g. ‘MS Teams Integration’

    image-20250723-135400.png

     

  3. Copy the provided API Key and save it somewhere secure

    image-20250604-135103.png

 

  1. Set your API key to be ‘Enabled’

    image-20250604-135426.png

     

Read more about API Keys

If you would like to know more about API Keys, and the other options available (such as the Expiration Date) please see our dedicated guide: API v2 - Developer Resources | Authorisation using API Keys

 

  1. Click the ‘Save’ button at the top of the page to create your API Key

 

2.3. Set up the integration (completed by accessplanit)

The set up of integrations is currently only available to the accessplanit team. Please contact us by either raising a ‘Professional Service’ request via our Support Portal, or emailing customersuccess@accessplanit.com where we will be able to assist with setting up the integration in your platform.

Within the Professional Service, provide the following information:

  • Token URL

  • Client ID

  • Client secret value

  • accessplanit API Key

  1. Open your accessplanit platform

  2. Open the ‘Administration’ menu from the Profile options at the top-right of your platform

    image-20250604-134627.png

     

  3. Open the ‘Integrations’ menu option to access the page where you can set up integrations

Please note

The 'Integrations' Administration option is not available to all Admins, please get in touch with a member of the Support Team if you are unable to access this option

 

  1. Find the Microsoft Teams integration option and click on it

    image-20250723-135446.png

 

  1. Click to configure your integration
    If the integration has already been established, instead ‘View’ the integration and then click the ‘Reconfigure’ option

  2. Within the ‘Initial Configuration’ step you can change the name of the integration (optional)

    image-20250723-135526.png

     

  3. Proceed to the next step ‘Connections’

  4. In the 'Connections' step, complete the following actions for the Microsoft Teams Connection using the information you collated in 2.1:

    1. Paste in your Token URL

    2. Client ID

    3. Client secret value

image-20250723-135652.png
  1. Scroll down to the accessplanit Connection options:

    1. Add in your accessplanit URL

    2. Paste in your accessplanit generated API Key (generated in 2.2)

image-20250723-135938.png
  1. Proceed to the next step ‘Settings’

  2. In the ‘Settings’ step, complete the following actions:

    1. Define your default time zone (decided in 1.3.)

    2. Enter the email address of your meeting organiser (decided in 1.2.)

    3. Decide if you would like attendees to be marked as completed (decided in 1.3.)

image-20250723-140252.png

 

  1. Click ‘Finish’ to complete the set up of this integration

    image-20250604-143922.png

 


3. Testing your integration

In this step, you will test the integration

Sync a Course from accessplanit to Microsoft Teams

Please follow the below steps to test the integration successfully syncs a Web Course from to Teams, and stores the joining information against the Course.

Create a Test Web Course

  1. Open the Web Courses DataGrid

    image-20250723-141116.png

     

  2. Click the ‘Add Web Course’ button

    image-20250723-141526.png

     

  3. Schedule a new Course, make sure you make it clear that this is not a real Course

    1. Enter an alias that indicates the Course is for testing

      image-20250723-142514.png
    2. Make sure the Course isn’t advertised

      image-20250723-142542.png

       

  4. Select 'Microsoft Teams' as the ‘Online Platform’

    image-20250723-142722.png

     

  5. Click ‘Save’ at the top of the page

    image-20250723-142837.png

     

  6. Reload the ‘Details’ page by reopening it from the Web Course management menu on the left

    eb114a78a14dddaf0613070e8c803746.gif

     

  7. Scroll back down to the Online Platform options, you should now see the joining links have been added for Trainers & Delegates

    image-20250723-143525.png

Please repeat step 6 if they haven’t appeared yet! If the joining links haven’t appeared within a couple of minutes there is an issue with the integration.


Join the meeting

  1. Copy the Join URL and paste it into a new browser tab

    image-20250723-144112.png

     

  2. Check that you are able to connect to and join the meeting!

    image-20250723-144145.png

     

Delete your test Course (optional)

If you will not be testing the sync of completed Delegates from Teams to accessplanit, you can now delete this Course.

image-20250723-144606.png

Sync Delegates from Teams to accessplanit

Please follow the below steps to test the integration successfully syncs completed Delegates from Teams to accessplanit.

Add Delegates to the Course

  1. Open the ‘Delegates’ page for this Course

    image-20250723-153516.png

     

  2. Add two Delegates to the Course

    1. Yourself (we assume that you will have a Microsoft account)

    2. Another User (we recommend choosing a test User or another internal team member to avoid any confusing automated emails sending to your customers)

Join the Course as a Microsoft Teams User


Contact Our Team

If you can't find what you're looking for, access our Support Portal, and our team of experts will be happy to help!

Is it your first time contacting the team? Learn how to raise a support ticket.

Follow Us

Facebook|height=20 LinkedIn|height=20 Instagram|height=20 Twitter|height=20

Copyright © 2025 accessplanit.

Social media icons by icons8.com