Getting started with the OneNote API

Last modified: January 22, 2016

Applies to: OneNote service

In this article
Publish popular apps with the OneNote API
What does the OneNote API do?
Using the OneNote API is EASY
Start coding fast

Note Note

Please use our new documentation site. It contains content for working with consumer and enterprise OneNote APIs.

OneNote is quite possibly the most popular note taking, life-organizing tool available. Long a part of Microsoft Office, recently available on all the hottest mobile and tablet platforms, now we're making it easier than ever to create life-simplifying and empowering apps on your favorite platform.

Microsoft OneNote: A full-featured note taking and organizing environment that's everywhere

Use Microsoft OneNote to collect and organize

Write apps to take notes, gather research, and succeed. The OneNote API is designed to make it easy to write apps that let students do research for term papers and reports, families share plans and ideas, shoppers share images—all the things that interest them most. They can use your app to grab the information they want and your app then uses the API to send the information to their personal OneNote notebook, stored in Microsoft OneDrive.

Integrate with OneNote to organize information, plans and life. Combining your apps with the simple notebook, section, and pages metaphor, your app users can make plans, organize projects and groups, and handle the overflowing information that is their life.

Reach millions of OneNote users on all the major platforms. As part of Microsoft Office, and available separately on a wide variety of platforms, millions of people worldwide actively use OneNote. When you publish your apps to capture and consume information into the fully-featured OneNote environment, the cross-platform market potential is simply too big to ignore.

Capture information in many formats. The OneNote API enables your app to capture HTML, images embedded in the request or at a URL, video, audio, email messages, and other common file types. Your app can even capture a snapshot image of a webpage for historical records and archiving.

Stay tuned as we expand and improve. Capturing to OneNote is just the start for the API. We have some great ideas, and are adding features regularly. Jump in early, add features as we do, and grow with us.

The OneNote API runs on the Microsoft globally-available cloud, and sends data from your app into the user's OneDrive. When the API sends the data to the OneNote notebook, it also does things like run OCR on images, rendering webpages as snapshot-images, and more.

OneNote API sends and retrieves information from OneNote notebooks on OneDrive.

OneNote Service API flow

Enjoy the simple, clean path to OneNote. The OneNote API works with your app in four easy steps. First, your user gets the information they want to capture into your app (1). When the user wants to send (or retrieve) information to OneNote, the app verifies the user's login and gets an OAuth token for the user's Microsoft Account (2). Then your app sends the information and token to the API (3). Last, the API gets or puts information in the user's online notebook. Your users can also access, organize, and edit their notes by having your app open OneNote clients on PCs, tablets and smartphones (4).

Relax with the multi-platform and device-independent REST API. Because we built the API as a REST web service, you can use it from any platform and device that can send HTTP requests with an OAuth token. No need to worry about being blocked on your favorite platform. Also, the OneNote client is available on most of those same platforms, so your users can access their information easily.

Capture photos, videos, text, web pages, and more. We've made the API flexible and powerful, so you can capture HTML, full web pages, images, videos, and other information that your users need in their digital lives. Learn about the things you can do in Develop with the OneNote API.

Organize and consume OneNote content. You can get and update the information from OneNote pages so users can use and organize their notes directly from your app. See Get OneNote content and structure and Update page content.

The OneNote API is designed to make coding simple. Coupling the easy-to-understand REST API with the Microsoft Live Connect SDK, it's designed to be super-easy to build apps on your preferred platform. We've even built an interactive REST reference and an interactive console on Check out this sample of Objective-C code from our iOS sample.

As shown here in Objective-C for iOS, it's simple to build and submit the create-page request.

iOS example page-create code flow

Use Microsoft accounts, OAuth, OneDrive, and the Live Connect SDK. Your app can authenticate users without having to store their sensitive data, or manage their account; the data goes right to their OneDrive. The Live Connect SDK is a full OAuth client, and the SDK has libraries and sample code available for Windows and Mac, iOS, Android, and Windows Phone. You identify your app using a client ID, or package ID for a Windows Store application.

Format pages using HTML. The OneNote API supports a subset of HTML to describe the OneNote notebook page layout. You can use tables, inline images, and basic formatting to get just the look you want.

Snapshot webpages as images. If you have more complicated HTML layout needs, or if you want a snapshot-in-time of a webpage, your app can render HTML or publicly-visible webpages as images, and embed them in your captured pages.

Embed images and files in the request, or by URL. If your app runs on a mobile device or tablet, or even a laptop, you might want to capture an image from the onboard camera. In that case, you can send the image data directly in the create-page request, without having to store the image online somewhere. On the other hand, if the image is already posted somewhere, just include the URL and the API will retrieve it and add it to the page. You can even pass documents and other files directly to the API.

Automatically OCR images and more. As we build out and expand the API, we're listening to developers, and working with partners to enhance what gets stored. Currently we've already included OCR capability so users can search for text in the images they save. In the future, we are looking at things like enabling your app to organize captured notes, full page recall, and even more advanced capabilities like automatically detecting package tracking numbers and storing the full tracking information on a page. Stay tuned for new and exciting additions.

To start writing apps with the OneNote API on your app platform, use these resources:

Get your Live Connect client ID. A client ID identifies your application to the system so the user can be sure they've granted permission to the correct app. For more information, see Get a client ID for use with the OneNote API.

Try out the APIs using your own OneNote notebooks in one of our interactive consoles:

Try the tutorials and code samples. As the API grows, we'll update and expand our samples and tutorials library across the platforms you use. Check them out at the links below.

Browse the How-to articles to find useful tips, tricks and techniques. So if you're looking for ideas, check out Develop with the OneNote API.

Connect with us in developer communities. We hang out where you do, and we always want to hear your questions, comments, help you figure things out, and keep you up-to-date: