Over the last year, Office has gained incredible momentum, with people around the world using our apps and services in the cloud and on all devices to be more productive wherever they go. Along with this period of incredible usage growth, Office has also grown tremendously as a platform. The share of users connecting 3rd party apps and services to Office 365, for instance, has quadrupled over the last 12 months. This is a testament to the fact that – as useful as Office is on its own – we can help people be even more productive by partnering with developers to build solutions tailored to our customers’ business needs.
At Ignite this week, we are announcing the next set of Office platform functionality, giving developers the tools they need to build even more compelling productivity applications with the Office platform. Among them you’ll find new capabilities in a variety of scenarios – from traditional ones like extending Office with custom user experiences, to making your standalone apps and services smarter with the help of the Microsoft Graph, and even brand new productivity experiences powered by bots and connectors. We’ve compiled it all in one place for you here in this post.
As always, get started at http://dev.office.com, and watch for further updates on Twitter via @OfficeDev. Read on for lots of Office developer goodness.
Web and Device Apps: Build smarter apps by connecting to Office services through the Microsoft Graph
The Microsoft Graph is our unified API for accessing data and intelligence in the Microsoft cloud. Developers can connect to the context and insights in the Graph to make their standalone web and device applications smarter and more productive. We launched the Microsoft Graph almost a year ago, and it’s grown dramatically since then – both in terms of usage and capabilities. The Microsoft Graph is now used in tens of thousands of 1st and 3rd-party applications, and is used by millions of people every day. At Ignite this year, we’ve expanded the environments you can access through the Graph, added a collection of new APIs, and made it even more accessible to call from a variety of platforms through a broader set of SDKs.
One of the most important new capabilities of the Graph is support for hybrid environments. At Ignite this year, we’re launching a preview of support for Exchange 2016 hybrid environments through the Microsoft Graph. This means that developers can reach an even broader user-base with applications built on the Graph, because they can connect to mailboxes in on-premises Exchange 2016 environments connected to the cloud. It also means that customers with hybrid deployments can take advantage apps, services, and tools that target the Graph.
As well, one of the top requests for the Microsoft Graph has been access to SharePoint sites and lists. At Ignite this year we’re launching a preview enabling just that. Through the “beta” version of the Microsoft Graph, developers can now access SharePoint sites and lists, and perform create/read/update/delete operations on list items, all through a simple, purpose-designed REST interface. You won’t yet be able to perform all list-related operations through the Graph, but we’ll iterate quickly on this preview, refining the design based on your feedback and adding more and more functionality.
We recently announced the GA of the Excel REST APIs, which allow developers to interact with Excel Workbooks stored in Office 365 Groups, SharePoint or OneDrive for Business through a simple REST interface. With this capability, Excel users can create and maintain complex models using a tool they already know and love. Developers can then treat these Workbooks as purpose-built web services, that can drive the business logic or data visualization of a web or device application.
We also added a variety of other new APIs to the Microsoft Graph recently, including the GA of Outlook OpenType extensions. There are new previews of Outlook MailTips and Online meeting URL APIs as well as Azure Active Directory Dynamic Groups, Identity Protection, and Administrative Unit APIs. Check out the Microsoft Graph documentation for full details.
In addition to pulling data from the Microsoft Graph, apps can use webhooks to subscribe to notifications when data in the Microsoft Graph changes. We already support webhooks on mail, calendar, and contact entities through the Graph. This week we’re launching webhooks for files stored in OneDrive and SharePoint document libraries. Applications can use these webhooks to stay in sync with data in the Graph and respond to changes in real-time. This sort of functionality is especially important for applications that update automatically based on changes from other sources or that drive a business process in response to changes in core Office 365 data types.
We’re also showing a preview of file handlers v2 in SharePoint and OneDrive for Business. This update offers new capabilities and improved performance by connecting handlers through the Microsoft Graph. Now handlers can interact with file properties and handle actions on any file type, a collection of files, or a folder. Developers interested in getting early access to file handlers v2 and providing feedback can sign up for early access today. Keep watching dev.office.com for more details on file handlers v2 and beta availability.
Finally, we’re making it even easier to connect to the Microsoft Graph from many platforms through updates and additions to our set of Microsoft Graph SDKs. In particular, we’ve added Excel support in our generally available SDKs for .Net and Android, and we’re releasing new preview SDKs for Node.js and client JavaScript. Get the full run-down on our SDKs here.
Add-ins and Web Parts: Make your solution a native part of the modern Office
Extending Office apps with custom experiences is still one of the most popular Office extensibility scenarios. We want to make sure that you can build the same rich extensions to Office experiences in Word, Excel, PowerPoint, Outlook, and SharePoint that you could with technologies like VSTO, COM, and Full-Trust Code, but we want to do it with the best and latest web technologies, and we want it to work everywhere modern Office runs. Many of our Ignite announcements are steps toward that goal.
As part of expanding the SharePoint ecosystem, we launched a developer preview of the SharePoint Framework on 8/17. Since the launch, we’ve received dozens of community suggestions and issues, as well as documentation and sample contributions. Based on these, we’ve already released three updates to address developer feedback. We’re continuing to use community feedback to shape and drive the direction of these new platform components moving forward. For more information, check out the SharePoint hub on dev.office.com.
Office Web Add-ins enable developers of all kinds to build a wide variety of cross-platform extensions to Word, Excel, PowerPoint, and Outlook using standard web technologies. We’re now bringing the Office Web Add-in platform to OneNote as well, with the GA of add-in support for OneNote Online. We’re even using this platform ourselves to bring the popular “Meeting Details” feature of OneNote desktop to OneNote Online. Check out our getting started guide to start building your own add-ins for OneNote today.
In addition to new apps, we’re expanding the cross-platform support of Office add-ins in existing apps. Outlook for Mac now fully supports add-ins, including ribbon commands and mail compose. Add-ins taking advantage of these features on Outlook for Windows will now work on Mac with no code changes required. We’re excited to bring all that Outlook add-in goodness to Outlook for the Mac, providing a significantly expanded platform and user base for developers building Outlook add-ins.
We’re also making more Office functionality available to developers in the form of deeper Office.js API support. Word Online now fully supports the 1.1 and 1.2 requirement sets, bringing Word Online API support into parity with Word for the Windows desktop. Excel now supports 1.3 across Windows, Online, Mac, and iPad. You can read more about the new APIs we’ve added in our Office.js API reference, and you can take a look at the next set we’re working on through our open-source specs.
Finally, we want to make sure that Office Web Add-ins support seamless and flexible deployment options that match the way you want to distribute them. To that end, we’re providing an updated preview of Add-in admin deployment, which allows Office 365 tenant administrators to push add-ins to their users by username or group membership. In addition, we’re providing a preview of Add-in “deep linking”, which provides Add-in publishers with a URL that they can use in promotional materials to deep link a user into the appropriate Office application, with the given add-in installed and running. And with all these new deployment capabilities, we want to make sure that end-users understand where and how to use the add-ins they have, so we’ve added support for first-run callouts, which can teach users about newly acquired add-ins, directly within the product.
Voice, Video, Connectors, and Bots: Create the next generation of productivity experiences
At //build this year, Qi talked about an emerging new platform based on natural language and conversations augmented with custom services. At Ignite, we are making several announcements about the new types of productivity experiences you can build with Office. No user interface is as natural as natural language, and magically productive things happen when you can connect someone to another person or a service through smart conversations, bots, and agents.
Last April, we announced Connectors, which allow developers to push relevant information from their own services directly into O365 group conversations. We’ll soon launch a preview of Connectors for the inbox, bringing these same capabilities to users’ personal inboxes. This preview will be available for the following Connectors with more services to be added soon: Asana, Bing News, Bitbucket, Twitter, Trello, Wunderlist and Yammer.
We’re also announcing a preview of Actionable Messages which embed actions in both Connectors and direct email messages and help user’s complete tasks without having to leave Outlook. For example, Connector users can merge a pull request in GitHub or change the due date for a card in Trello without switching to those services.
Developers create Connector messages today by posting a JSON payload to an Office 365 webhook address and this payload has been extended to create an Actionable Message experience. By annotating actions, the message can render buttons, a dropdown list, date picker or text input box, enabling developers to model a wide variety of scenarios requiring actions.
Trello Connector card showing comment, due date, move and view actions.
Actionable Messages as direct integration within email are available in preview for apps such as SAP Fieldglass, Microsoft Flow and TINYpulse. TINYpulse Engage allows managers to send their employees a weekly pulse survey to gain feedback about workplace issues and with actionable messages, users can respond to the survey from within the context of their Outlook experience. By simplifying the process with the intuitive workflow, managers can receive better and richer feedback.
Respond to the TINYpulse survey with your choices and notes, in the convenience of your email.
Actionable Messages can help increase user engagement with your service and accelerate user productivity. If you would like to build a Connector for the inbox or use Actionable Messages, please complete this sign-up form for evaluation, as the developer platform is currently in limited preview. To learn more about building Connectors for Office 365 Groups, please see dev.outlook.com/Connectors.
Start Building!
As always, your starting point for all things Office platform related is dev.office.com. Find everything you need to get started with all of today’s announcements there. If you’re here with us at Ignite, come see detailed sessions on many of these announcements and visit us at the Office Developer booth to ask questions from Office extensibility engineers. Watch for future updates on Twitter via @OfficeDev, and provide your ideas and feedback on UserVoice.
Happy coding!