Overview for using Microsoft Teams, Shifts, and Viva Learning to foster teamwork

Microsoft Teams is the ultimate hub for team collaboration and intelligent communications, fostering a culture where employees can thrive. Built on the strength and scale of Microsoft 365 with over 120 million users, Microsoft Teams delivers chat-based collaboration, meetings, calling, and enterprise voice features. Available as apps on Teams and as part of Microsoft Graph are Microsoft Shifts and Viva Learning. Shifts and its API give employers and frontline workers real-time visibility into schedules based on worker availability, and let them adjust schedules to their team's needs. Viva Learning and its API let employers integrate content from learning management systems, enabling employees to discover, share, and prioritize learning, and incorporating learning into the flow of work.

Why integrate with Microsoft Teams, Shifts, and Viva Learning?

The rich features and APIs for Microsoft Teams, Shifts, and Viva Learning open up many scenarios for app developers. The following sections list a few of them.

Automate workflows

Call or meet virtually

Cultivate workforce

Automate workflows

Use Microsoft Graph in any kind of app

Microsoft Teams apps give work groups a new tool to make collaboration a more productive and compelling experience. These apps let work group users share assets, interact through chat, and schedule events on the team calendar. These apps can also automate creating teams, channels, and conversations, enhancing the value of Microsoft Teams.

You can create websites, services, and native platform applications that run outside the Microsoft Teams user experience, and call the Teams API to automate Teams scenarios.

Types of apps enabled for Microsoft Teams

Call the Microsoft Teams API from tabs, bots, websites, and services

These collaboration tools include Microsoft Graph-enabled tabs or bots running inside Microsoft Teams apps. You can also call Microsoft Graph outside of a Microsoft Teams app, such as from a website or a web service. If you've already enabled your website for Microsoft Graph, you can use that work for Microsoft Teams by using the Microsoft Teams developer platform to create a tab that uses the existing website code.

Microsoft Teams APIs can enhance apps inside and outside of Teams:

App type Scenario description
Tabs Surface your content in Microsoft Teams.
Bots Help users get tasks done in conversations.
Connectors Post updates from external services to channels.
Actionable messaging Add enhanced interaction to your connector cards.
Messaging extensions Allow users to query and share information in conversations.
Websites Surface enhanced content in your webpages.
Services Enhance your client applications with Microsoft Graph data via your web service.
Activity feed Engage users via feed notifications.
Calling and online meetings (preview) Create Microsoft Teams apps with bots that can initiate and participate in audio/video calls, route/transfer calls based on interactive voice response (IVR) flows, and participate in online meetings.

Automate team lifecycles

Use Microsoft Graph to create a new virtual team when a new business issue arises, add the right people to the team, and configure the team with channels, tabs, and apps. If you want to get the new team together to discuss the business issue, add a new event to the team calendar.

Automate team lifecycles by creating a team, adding members and owners, configuring team settings, adding channels, installing apps, adding tabs, and archiving or deleting the team when the time comes.

When the business issue is resolved and you no longer need the team, use the Microsoft Teams API to archive or delete the team. If you know the maximum duration of the team when you create it, set an Microsoft 365 group expiration policy for the team that automatically removes the team according to the policy.

Create and manage multiple teams and channels

Microsoft Graph makes it easy to create large numbers of teams and populate them with users and channels, by automating the creation and management of teams, channels, tabs, and apps. Microsoft Graph also lets you find and archive the teams you are no longer using. This is the same API that the Microsoft Teams Admin Center and Teams PowerShell cmdlets are built on.

Get work done even when no one is around

Use application permissions to work with teams, channels, and tabs without human intervention. Create a new channel when your customer files an order. Automatically create teams for classes at the beginning of the school year, and archive them at the end.

Create teams linked to your app

Let customers create new teams and channels. Install your Teams app in the new teams. Pin your app to a tab in the new channel. Send messages to the channel linking back to your website.

Deploy apps to teams

List the teams in your tenant, and install apps to them. Create tabs in channels to give users easy access to apps.

Call or meet virtually

Handle incoming calls

It can be overwhelming at times when an organization receives a high volume of business calls and it isn't possible, or productive, to answer all of them. A bot can serve as a front-desk assistant, handling calls by rejecting what may seem like spam calls or redirecting (forwarding) specific calls to a different number. You can use the cloud communications API to:

Image of a bot providing options for call transfer

Integrating with a natural language processing service means that the customer's speech can be analyzed for its sentiment. The bot can then respond to the customer's request accordingly.


You may not record or otherwise persist media content from calls or meetings that your application accesses, or data derived from that media content. Make sure you are compliant with the laws and regulations of your area regarding data protection and confidentiality of communications. Please see the Terms of Use and consult with your legal counsel for more information.

Collaborate through group calls

Enable users to engage with coworkers or customers by creating a group call so that everyone can contribute to the conversation. You can use the cloud communications API to:

Send reminders reliably

To enable users to receive reminders for an appointment or a payment deadline that is approaching, you can have a bot call a customer automatically.

Set up online meetings

Whether scheduling a meeting between a doctor and a patient or between a user and their direct reports, it is possible to build solutions that create meetings that users can rely on. For added flexibility, users can call other users and invite them to the meeting while it's ongoing. You can use the cloud communications API to:

Cultivate workforce

Manage shifts and staff schedules

Available on Teams, the Microsoft Shifts app manages shifts, staff scheduling, and time tracking. Being integrated with Teams, Shifts provides users the convenience of dedicated channels and teams, streamlining communications to connect the workforce and fostering community building. Use the Shifts API to pull shift data into your staffing systems, provide frontline workers with shift information they need in one place, and empower them to own their schedules, request shift in a schedule, and swap or offer shifts.

Enable employee learning using the collaborative capabilities in Teams

Viva Learning built for Microsoft Teams and Microsoft 365 brings employee learning into the flow of work. Viva Learning lets employers register learning providers, upload and manage content metadata, learner assignments, and completion records. Employees can share learning content in Teams messages, meeting chats, or emails, encouraging peer learning and mentoring conversations.

Use the employee learning APIs for Viva Learning to:

API reference

Looking for the API reference for Teams, Shift, and Viva Learning?

Next steps