Office Add-ins platform overview
You can use Office Add-ins to:
Add new functionality to Office clients - For example, augment Word, Excel, PowerPoint, and Outlook by interacting with Office documents and mail items, bringing external data into Office, processing Office documents, exposing third-party functionality into Office clients, and much more.
Create new rich, interactive objects that can be embedded into Office documents - For example, maps, charts, and interactive visualizations that users can add to their own Excel spreadsheets and PowerPoint presentations.
Office Add-ins run across multiple versions of Office including Office for Windows Desktop, Office Online, Office for the Mac, and Office for the iPad.
Note: When you build your add-in, if you plan to publish your add-in to the Office Store, make sure that you conform to the Office Store validation policies. For example, to pass validation, your add-in must work across all platforms that support the methods that you define (for more information, see section 4.12 and the Office Add-in host and availability page).
For a high-level view of where Office Add-ins are currently supported, see the Office Add-in host and platform availability page.
What can an Office Add-in do?
An Office Add-in can do almost anything a webpage can do inside the browser, such as the following:
Extend Office native UI by creating custom ribbon buttons and tabs.
Connect to REST endpoints and web services via HTTP and AJAX.
Run server-side code or logic, if the page is implemented using a server-side scripting language such as ASP or PHP.
Types of Office Add-ins
You can create the following types of Office Add-ins:
- Word, Excel, and PowerPoint add-ins that extend functionality
- Excel and PowerPoint add-ins that create new objects
- Outlook add-ins that extend functionality
Word, Excel, and PowerPoint Add-ins that extend functionality
You can add new functionality to Word, Excel, or PowerPoint by registering your add-in using a task pane add-in manifest. This manifest supports two integration modes:
- Add-in commands
- Insertable task panes
Add-in with commands running in Excel Desktop
Add-in with commands running in Excel Online
You can define your commands in your add-in manifest by using VersionOverrides. The Office platform takes care of interpreting them into native UI. To get started, check out these samples on GitHub, and see Add-in commands for Excel, Word, and PowerPoint
Clients that do not support add-in commands yet (Office 2013, Office for Mac, and Office for iPad) will run your add-in as a Task pane using the DefaultUrl provided in the manifest. The add-in can then be launched via the My Add-ins menu from the Insert tab.
Important: A single manifest can have both a task pane add-in that runs in clients that do not support commands and a version that runs with commands. This allows you to have a single add-in that works across all clients that support Office Add-ins.
Excel and PowerPoint add-ins that create new objects
Use a content add-in manifest to integrate web-based objects that can be embedded inside documents. Content add-ins let you integrate rich, web-based data visualizations, embedded media (such as a YouTube video player or a picture gallery), and other external content.
Note: Content add-ins do not currently support add-in commands.
To try out a content add-in in Excel 2013 or Excel Online, install the Bing Maps add-in.
Outlook add-ins that extend functionality
Outlook add-ins can extend the Office ribbon and also display contextually next to an Outlook item when you're viewing or composing it. They can work with an email message, meeting request, meeting response, meeting cancellation, or appointment in a read scenario - the user viewing a received item - or in a compose scenario - the user replying or creating a new item.
Outlook add-ins can access contextual information from the item, such as address or tracking ID, and then use that data to access additional information on the server and from web services to create compelling user experiences. In most cases, an Outlook add-in runs without modification on the various supporting host applications, including Outlook, Outlook for Mac, Outlook Web App, and OWA for Devices, to provide a seamless experience on the desktop, web, and tablet and mobile devices.
To learn more, see Outlook add-ins.
Note Outlook add-ins require a minimum version of Exchange 2013 or Exchange Online to host the user's mailbox. POP and IMAP email accounts aren't supported.
Outlook add-in with command buttons on the ribbon
Contextual Outlook add-in
To try out an Outlook add-in in Outlook, Outlook for Mac, or Outlook Web App, install the Package Tracker add-in.
Anatomy of an Office Add-in
The basic components of an Office Add-in are an XML manifest file and your own web application. The manifest defines various settings, including how your add-in integrates with Office clients. Your web application needs to be hosted on a web server, or web hosting service, such as Microsoft Azure.
Manifest + webpage = an Office Add-in
The manifest specifies settings and capabilities of the add-in, such as the following:
The add-in's display name, description, ID, version, and default locale.
How the add-in integrates with Office:
- For add-ins that extend Word/Excel/PowerPoint/Outlook: The native extension points the add-in uses to expose functionality, such as buttons on the ribbon.
- For add-ins that create new embeddable objects: The URL of the default page that is loaded for the object.
The permission level and data access requirements for the add-in.
For more information, see Office Add-ins XML manifest.
The minimal version of a compliant web app is a static HTML webpage. The page can be hosted on any web server, or web hosting service, such as Microsoft Azure. You can host your web app on the service that you choose.
Components of a Hello World Office Add-in