Build 2023: Building apps that bring together AI and collaboration

Ben Summers

Welcome to Build 2023!

There is no doubt that the big news at Build 2023 is about AI and its enormous potential to reshape the future of productivity by extending Microsoft 365 Copilot with plugins. To read more about how you can participate in this opportunity, read Rajesh Jha’s blog.

This blog highlights all the other new features we’ve delivered – features that, when combined with our AI and Copilot capabilities, promise to make the Microsoft 365 platform an even more powerful place to build a new generation of collaborative apps. So here it is, everything else that we’re delivering for Teams apps and the Microsoft 365 platform at Build 2023!

Developer experience

We have worked hard to make Teams Toolkit the “golden path” for developers building collaborative apps and soon, plugins for the Microsoft 365 Copilot. We’re excited that Teams Toolkit v5 is now Generally Available for Visual Studio Code. Updates include built-in tunneling for debugging your bots, support for building Outlook add-ins, SharePoint Framework, and samples that run in GitHub Codespaces. To learn more, read the full blog here.

In addition to the Teams Toolkit, we’ve updated the Microsoft Graph Toolkit and made updates to our .NET and Go SDKs. We’re happy to announce that Microsoft Kiota, our code generator for REST HTTP APIs described by OpenAPI, is now available as an extension for Visual Studio Code. Finally, we’re introducing the Microsoft Graph developer proxy designed to help developers build resilient and performant apps. Keep an eye out for even more updates coming soon.

In the dev portal, we are expanding the set of actionable app insights available to developers including app usage and performance analytics to help you fine-tune users’ engagement with your app. We have also made a number of enhancements to the app management process so that it’s easier to import, update and enhance apps, as well as test and validate them prior to publication.

For developers interested in helping us shape the future of new products, we’re announcing the launch of the Microsoft 365 Developer Technology Adoption Program (TAP).  The Microsoft 365 Developer TAP is an evolution of the Microsoft Graph TAP, which has existed for the past five years as an invite-only program. Participants get an early view into our roadmap and help us assess and validate upcoming features and enhancements before they’re generally available. It’s also great way to engage directly with Microsoft 365 product groups. To learn more about how you can participate, follow this link.

Finally, if you find yourself intrigued by the announcements at Build- including the ones further down in this blog – we’re running a global Teams hackathon from June 1-15. Now let’s get to the rest of the news.

Teams platform capabilities

Message extensions and more

We’re also continuing to extend specific Teams capabilities to other familiar Microsoft services like Outlook and the Microsoft 365 app. 

Message extensions are the starting point for plugin development and Copilot extensibility.  And message extensions built with or upgraded to the Teams 2.0 JS SDK and 1.13 (or higher) manifest are now generally available in Outlook on web, Windows, and Android.   

In addition, personal tabs built with these same tools are also generally available in Outlook and the Microsoft 365 app on web, Windows, and Android.  

The result is that in addition to appearing in the Teams app store, new message extension and personal tab apps will start appearing contextually across the Outlook and Microsoft 365 app stores, significantly increasing their visibility and availability to hundreds of millions of Microsoft end-users.

Developers can now use the previously mentioned 1.13 manifest for Teams apps with Outlook add-ins. Instead of using the traditional XML manifest for Outlook add-ins, developers can now use or convert to the same JSON manifest that Teams apps use, or to consolidate your app’s experiences into a single project. The new manifest streamlines manifest maintenance, app validation and publication. In time we’ll add support for Word, Excel, and PowerPoint apps, so stay tuned for more updates.

We’ve also got news about Adaptive Cards, which serve as the simple, powerful UX for Message Extensions and plugins for Copilot. For starters, we’re pleased to announce the June 2023 public preview of Adaptive Card-based Loop components – portable pieces of content that stay in sync across Microsoft 365 apps such as Teams and Outlook. When schema.org based link unfurling is enabled for your Adaptive Cards moves into general availability, even users who do not have your Message extension app installed can see a preview of its UX. It’s a great way to increase awareness and adoption of your app. As a final note – Message extensions for DoD environments are now generally available.

Meetings and collaboration

We’re excited to announce that the Live Share SDK is now generally available. With the Live Share SDK, developers can now transform Teams apps into collaborative multi-user experiences without writing any dedicated back-end code. With Live Share, your users can co-watch, co-create, and co-edit during meetings.

With Live Share, your users can co-watch, co-create, and co-edit during meetings during Teams meetings

Avid is using Live Share to bring real-time collaboration for video editing in Teams meetings

We’re offering other refinements to the meeting experience, too.  For example, there’s a new event pipeline that allows developers to subscribe to real-time meeting events like users joining or leaving a meeting. We’ve also exposed an app icon indicator so that developers can badge their app icon to nudge users when there’s relevant activity during a meeting. The ability to show your meeting tab experience to anonymous users is also now generally available. Users can also add Teams apps to meetings organized in Outlook, making them available for attendees when joining on Teams. 

Collaborative stage view, now generally available, allows users to interact with rich shared content and chat with other collaborators in a new Teams window.  And with the addition of Share to Meeting, you can bring your web app content directly to users through Adaptive Cards in chats or channels.

Bots

In addition to Message Extensions, bots are front-and-center in our emerging AI story. We are pleased to announce the public preview of a new Teams AI library, available in Teams Toolkit. We built this library from the ground up with GPT-based common language models and user intent engines. As a result, building AI-powered Teams apps is now easier, more compliant, and consistently usable than ever before. There’s other bot news too. Developers can now edit/delete messages in user:bot chats, bots can now send in-meeting notifications to specific users, and response to community feedback, we’re offering resource-specific consent for bots – which will allow apps to forward all messages to a bot. And as is the case with Message Extensions, bots for DoD environments are now generally available. 

App distribution and management

Making it easy for partners and customers to distribute and manage apps is core to ecosystem success. So, our app management and distribution capabilities continue to evolve and expand. We’re pleased to announce that App Geo-Filtering is now generally available, enabling developers to target their apps at specific countries or regions through Partner Center.

We’re also announcing the general availability of our SaaS License Tracking and Management capabilities in Teams Admin Center (TAC). We build these capabilities to help customers assign, use and track SaaS licenses for apps purchased through the Teams store, and to help ISVs offset the cost of developing their own license management and enforcement systems. We’ve also enabled app auto-upgrade so that users only need to approve an update once to update an app in all their chats, channels, and meetings.

Finally, contextual app discovery is now generally available, meaning that users working in a Tab, Bot, and Message extension context find other available, similar apps. There’s no additional work here for developers’ apps to participate in this experience.

Teams partner app highlights

As we’ve highlighted, building a Teams message extension or a Microsoft Graph Connector is the first step towards participation in our Copilot extensibility story. We’ve got a number of examples of partners who’ve started taking that that step, and whose apps will integrate with Copilot as the service becomes available to their customers. Here are some highlights:

Aisera is making task management in Teams easier by adding the ability to decipher and act on multiple tasks through natural language.

Box and DocuSign will use the power of Microsoft Graph connectors to help Teams users discover and learn about external content through AI and Copilot.

Decisions will empower meeting organizers and attendees in Teams to create topics and meeting content using natural language.

Moveworks is using message extensions to help users streamline workflows. Examples include the ability to search their Teams chats and insert them into emails or start a bot from within an email.

ServiceNow will help employees find answers in Teams and act on them quickly by leveraging message extension integration into ServiceNow’s AI search.

Zoho: Zoho Desk leverages its message extension to integrate with Copilot, enabling desk agents to quickly triage customer issues, accelerate query resolution & enhance customer experience without leaving the flow of their work.

Image Zoho Desk for Copilot

Zoho Desk’s message extension working with the Microsoft 365 Copilot

In addition to the great work, we’re seeing from the partners listed above, we’re also looking forward to seeing how new partnerships with companies like Adept will foster ecosystem innovation in new areas like action-generation AI models.

Syntex

Repository services

Today, we’re happy to announce the private preview of Microsoft Syntex repository services, a faster way to build file and document focused apps.  Syntex repository services make it easy for every developer, ISV, and enterprise, to include Microsoft 365 file and document capabilities in every app they build.  The result is that your app can do critical things like audit file-level activity or run global e-discovery queries, while your customers can apply retention policies, use sensitivity labels, and more.

Syntex repository services are fully headless. There is no user experience layer, it is fully API driven using Microsoft Graph APIs. To learn more about Syntex repository services and find out how to join the private preview, read the full details on the Microsoft Tech Community Blog.

Datasets for Analytics

We understand that Syntex users will often require custom at-scale analytics – to answer questions about topics like information oversharing or content capacity. So, we’re pleased to announce that OneDrive and SharePoint datasets are now available in Microsoft Graph Data Connect for exactly this purpose. We even have new templates to help you get started. Public preview for these new datasets starts in July 2023.

Microsoft Graph

Microsoft Graph Data Connect

We’re pleased to announce that you can now bring all your Microsoft 365 data into Microsoft Fabric using Microsoft Graph Data Connect (MGDC). With this new feature, you can manage your Microsoft 365 data alongside your other data sources with a suite of analytical experiences that work together seamlessly to transform your data. We’re also continuing to add new datasets to MGDC, including the OneDrive and SharePoint datasets mentioned in the Syntex section, above. The full list is here: Datasets, regions, and sinks supported by Microsoft Graph Data Connect. We are also removing cross-geography data access limitations for tenants with multi-geo capabilities, and adding support for Azure-managed VNet integration Runtime through Mapping Data Flows in Azure Data Factory and Azure Synapse Analytics. And to enable additional security for data flow between Azure and Microsoft 365 services to the customer’s designated storage account.

APIs for connecting Teams users with external users

Teams Embedded Chat APIs are now generally available on Microsoft Graph. They’re ideal for organizations building custom applications to connect with external users who don’t use Teams. They offer chat controls, reduced latency, and scalability enhancements that ensure a smooth collaboration experience for all users.

Virtual Appointments APIs are also generally available on Microsoft Graph. These APIs help you programmatically create and manage Teams virtual appointments and enable external clients to join virtual appointments from desktop and mobile browsers without the need to download or install the Microsoft Teams application. Teams Premium customers can configure custom lobby experiences and access usage reports for organizational analytics.

We are also excited to share that developers will soon be able to use Azure Communication Services for programmable and ad hoc access between a custom application and Microsoft Teams users. For example, Azure Communication Services call automation APIs will enable user extensibility into Microsoft Teams in preview next month, allowing users, like a customer service agent on a customer call to invite subject matter experts using Teams into their workflow for faster service resolution. In addition, Azure Communication Services interoperability into Microsoft Teams will not just include customer and business connectivity for scheduled Teams meetings, but support for ad hoc calling. Meaning customers that request help or connection through a business’ application or website can be routed directly in real-time to a Teams-based user, Teams call queue or a Teams auto attendant.

Outlook, Word, and Excel 

As we work to unify the Outlook experience into a single web codebase, we are offering a public preview of the Outlook for Windows client. Because it’s web-based, the new client will not support VSTO and COM add-ins. To help you manage app migration we have a list of critical scenarios we support and are working to identify other legacy features we need to consider supporting as the code base consolidation continues. 

We’re releasing a new Outlook Mailbox 1.13 JavaScript API requirement set. We’ve got a host of rich capabilities that allow you to attach sensitivity labels to further align your app’s compliance with your users’ information management and governance requirements Prepend-on-send allows you to prepend content on send – for example disclaimers – and delay email delivery times to help your users keep communications within working hours and across time zones. 

We’re also introducing new Word 1.5 JavaScript API requirement set that streamlines several important, highly-requested scenarios and offers performance improvements when compared to features available using OOXML (Office Open XML) APIs. This includes the ability to manage citations, import and apply styles from other documents, and save and close documents – just to name a few. 

There are over 2,000 APIs available for Excel today, and we’re not done. The new Excel JavaScript API 1.17 requirement set includes multiple new methods for adjusting conditional formatting rules and worksheet events that allow you to monitor changes to the name, visibility, and position of a worksheet. 

In the week following Build, we’ll have more detailed blogs covering all these announcements so keep an eye out here on the Microsoft 365 Developer blog for a closer look at these announcements – and many more – as we go deeper into the Build news plate. 

What’s New: Mesh

Microsoft Mesh is a platform that powers shared immersive experiences, offering remote and hybrid workers a more natural way to connect. We are pleased to announce that we’re expanding access to developers and creators seeking to build custom Microsoft Mesh environments and experiences tailored to their organizations’ unique needs.

We’re introducing a number of ways for developers to start creating new, customized Mesh experiences.  For example, we’re making it possible to create or port 3D environments into Mesh that are built with UnityYou can also integrate interactive content like videos from the web or use cloud scripting to add interactivity by inserting logic, integrating with live backend data, connecting triggers to actions, infusing AI, and more – all with the full power of C# and .NET Core. To register interest in our developer private preview and learn more about Mesh news, we’ve got an in-depth Tech Community blog. 

A picture containing flower, indoor, person, clothing Description automatically generated

Microsoft customer Takeda is building its own custom Mesh experiences

Teams Developers

This year at Build we’re not just focus we have on the developer’s experience building apps for Teams, we’re also focused on the developer’s experience building apps with Teams. That means building new features into our product that are designed specifically with developers as end-users in mind. Starting this month we’re rolling out the first of several feature sets that do just that.

A new keyboard shortcut

We are introducing a keyboard shortcut that enables users to toggle between the latest message and the last read message. This removes the need to scroll up to find their last read chat message and creates efficiency in retaining context quickly. Use (Ctrl +J) on the Windows desktop, (Cmd+ J) on Mac, and (Alt + J) on Web. General availability begins in June 2023.

A screenshot of a computer Description automatically generated

Markdown improvements and code blocking formatting

You can now send blocks of code in Teams chat without any indentation and formatting disruptions. In addition to formatting, we’ve enabled language specification for syntax highlighting – and indentation and tabbing support. Learn more here. Generally availability is in June 2023.

A screenshot of a computer Description automatically generated with medium confidence

Compact chat list

We’re adding a new chat density setting that enables users to condense their chat list and have more chats displayed on the screen. This feature helps users quickly scan and prioritize chats to make it easier to quickly determine where to focus first. General availability is in June 2023.

A screenshot of a computer Description automatically generated

Create and share code in the Loop app

We’re also updating Loop to allow developers to write or share code, including syntax highlighting and line numbers for reference, directly within the Loop app. Loop components containing code are easily shared in Teams, Outlook, Word for the web and Whiteboard so that developers can collaborate in real time regardless of which app they are in. Public preview begins at the end of June 2023.

Image Code block full 20sec min

Closing thoughts

If you made it all the way to the end of the blog, thank you for taking the time to read through our announcements. Keep an eye on this blog space, because in the week following Build we’ll feature deep dives into many of the topics summarized here. We hope you’ve had a chance to enjoy some of the content presented by Microsoft engineers at this year’s event, and of course, we’re always excited to see what you build and to hear what you think about what we’ve built, too.

Happy coding.

The Microsoft 365 Platform team