Welcome to the OneNote API!

Hello, I'm Steven Novick, a Program Manager on the OneNote team, and I'm proud to welcome you to the new OneNote developer community! Our team has been hard at work for many months and we are excited to share with you the fruits of our labor and begin what we hope will be an exciting and rewarding relationship between you and our team.

Today, we are announcing the new OneNote API. This is a REST API that allows you to create rich content in OneNote and reach millions of users who are already using OneNote, for work and life, and across Windows, Mac, Windows Phone, iOS, Android and the Web. We are happy to be launching with 12 partners today, who have all successfully integrated with OneNote through our API to enhance their products and services. These partners are Feedly, News360, Weave (WP8/Win8), IFTTT, Livescribe, Doxie, Genius Scan, JotNot, Neat, Epson, Brother and Mod Notebooks. Right now, our API is focused on content creation, but we will be steadily adding new API functionality over the next several months to enable new scenarios for developers.

What Can I Do with the API?

You can start using our API today to create OneNote pages in a user's notebook that lives on OneDrive (formerly known as SkyDrive). The user must authenticate through a Microsoft Account and the authentication mechanism is identical to the one used by the OneDrive APIs; you just need to pass in an additional scope called Office.onenote_create. Once you have authentication working, you simply make a HTTP POST to the following endpoint:

https://www.onenote.com/api/v1.0/pages

to create a new page in the user's default notebook and section. The body of the page in the request is represented in HTML, but we do have some OneNote-isms added to support features specific to our service. For example, you can use the data-render-src custom attribute in the <img> tag to have a screenshot grabbed from a URL and have it inserted on the page. Any images included will also be run through OCR (optical character recognition) so they are immediately searchable in OneNote. That's ideal for integration with things like hardware and mobile app scanners. You can learn more about our API in our documentation.

We have worked with folks from Apigee to bring you an API Console that allows you to play with sending requests to our service without writing any code. This is a good way to explore what the API does and how it converts the HTML body in the request to OneNote content. We also have sample code for Android, iOS, Windows, and Windows Phone available on GitHub.

What's Next

As mentioned above, today is only a starting point in our journey. In the coming weeks and months, we will continue work hard at making new API features available. We want to use this blog as a channel to get feedback from our developer community, so we will be very transparent about our plans, roadmaps and even designs in order to get your feedback early.

We want to have a conversation with you. Some ways for you to communicate with us are:

Of course, don't forget to check out the OneNote Developer Center.

We can't wait to see what you can do with the OneNote API!

 

-Steven & the OneNote API team

Comments

  • Anonymous
    March 17, 2014
    This looks great. Do you have any plans to include the ability to post to a shared location in a notebook and perhaps replace the contents of an existing page? I'm thinking of a shared dashboard of sorts...

  • Anonymous
    March 17, 2014
    Hi John,   Thanks for the kind words.  Yes, we have plans for both those things.  With our current backlog, posting to a specific notebook (which can, of course, be a shared one) will come online pretty quickly.  Replacing the contents of a page will come just a little after getting the page contents out.

  • Anonymous
    March 17, 2014
    Hi, Please add functionality to append to / PATCH pages, please :-) --larsw

  • Anonymous
    March 17, 2014
    Hi there, Great work on the API. From what I understand when POSTing to www.onenote.com/.../pages notes seem to go into the "quick notes" section of OneNote. Is it possible to create notes in a specific notebook? Also is it possible to create a notebook from the API? Thanks!

  • Anonymous
    March 17, 2014
    Hi David, Posting to a specific notebook and section is at the top of our backlog and we are hard at work at enabling it!

  • Anonymous
    March 17, 2014
    You need to update the GitHub WP8 sample page and the MSDN Tutorial to tell people you can't use the Emulator.  You get a 0x8000FFFF error when you try to authenticate with OneDrive when you see the page: msdn.microsoft.com/.../dn575424.aspx github.com/.../OneNoteServiceSamplesWinPhone Thanks to Ginny Caughey (@gcaughey) on Twitter for telling me about this.  Also when I use "See page" on the phone, after logging in with OneDrive, it says the Notebook "does not exist" and aborts.

  • Anonymous
    March 17, 2014
    o/ Fantastic and such a slick launch, congratulations and very well played. Free, OSX and the API all in one day, superb. I've had a quick scan through the API and from what I can tell we're limited to writing, particularly to new pages but there's no way to read existing content or to write to an existing page? Once the dust has settled could you please elaborate a bit on your roadmap for expanding things out? I have had a few ideas for extending OneNote for some time, relating to interacting with an existing users' content. I've gone as far as to teach myself C# and have started developing a desktop app to achieve what I want. If you guys are looking to aggressively launch updates to the API feature set it'd be really good to gauge whether I should just hold off and then revert to technologies I'm much more comfortable with, web stuff, or keep plugging away. Congratulations again.

  • Anonymous
    March 17, 2014
    Would like to see a OneNote API that allowed real time interactive access to the editing page in OneNote so that things like Calca - http://calca.io could be implemented within OneNote.

  • Anonymous
    March 17, 2014
    @Robert - We're looking into this and will update appropriately. @Darren - Thanks for the kind words! Look for a detailed post about a roadmap next week!

  • Anonymous
    March 17, 2014
    The comment has been removed

  • Anonymous
    March 17, 2014
    Is there an overview list of all the methods available to the OneNote API, especially something to do with listing notebooks, reading tags, and searching notes?  Everything I've found so far has to do with creating/structuring & capturing new content and the Apigee API explorer page is basically blank except for the HTML/Mime message fields.

  • Anonymous
    March 17, 2014
    @Lars  Append/Prepend is absolutely on our roadmap, but it's a little way behind the other page CRUD methods at present.  We'll post more detail next week, then hopefully we can get some all-up prioritization feedback.

  • Anonymous
    March 17, 2014
    @Robert - Today we're launching POST on the Pages endpoint.  Look out for roadmap for the rest of CRUD.

  • Anonymous
    March 17, 2014
    @Gareth - Can't wait to see the roadmap. Please tweet loudly & repetitively when it's ready. :)

  • Anonymous
    March 18, 2014
    The width and height of <img> tags do not seem to be consistently supported. Should they be? For example this works:                                 "<img src="name:" + imagePartName + "" alt="A beautiful logo" width="42" height="7" />" + While this is ignored:                                 "<img data-render-src="http://www.onenote.com" alt="An important web page" width="100" height="100" />" +

  • Anonymous
    March 18, 2014
    @JohnK - We're looking into this and will let you know if it's a bug on our end or expected behavior

  • Anonymous
    March 19, 2014
    I see my main question has been answered "Posting to a specific notebook and section is at the top of our backlog and we are hard at work at enabling it!" Actually setting the default would be useful for apps (like office lens for windows phone) which get to market before you allow add it. This way the user can set a default once, instead of in every app.

  • Anonymous
    March 19, 2014
    Has the OneNote API been implemented in OneDrive for Business, either for SharePoint Online or for SharePoint Server 2013 on-premises? Or is it strictly for the OneDrive consumer service? A similar question about identity: Is Microsoft Account the only identity provider that works with the API?

  • Anonymous
    March 19, 2014
    @Rob - Right now we are strictly in the OneDrive consumer service and only support Microsoft Account as an identity provider.

  • Anonymous
    March 19, 2014
    @JohnK - Following up on your comment. This is in fact a bug on our end. You should expect the service to respect the specified height/width.

  • Anonymous
    March 21, 2014
    Fantastic.  Thank you so much.  I will be integrating One Note into my Windows Phone apps. This was just the kind of capability I needed and I was about to "roll my own". Would you provide us with a one note icon that we can use on the appbar of a windows phone app?  Also, will you be providing any "badges" that we can use on our web-sites to show that our apps use OneNote?

  • Anonymous
    March 21, 2014
    I would like to see some integration on the "ToDo" that you can use in OneNote into the API.  It would be great to be able to tap into other applications that help me manage my todo list.

  • Anonymous
    March 24, 2014
    Hi. Great news. About Other supported features: Request for GET command. e.g. export some pages in docx format or in HTML. Would be nice for integration with some portals/blogs, and will make possible even sync mechanism. Like I prefer OneNote, but my company uses Confluence as internal portal. I can capture my notes in OneNote, and then some tool on timely manner could extract my notes and push to Confluence.

  • Anonymous
    March 24, 2014
    @ktd09 - We're working on getting a set of "Branding Guidelines" out for partners. If you send us a DM @onenotedev we can probably get you something sooner. @cliff - Support for Tags is coming. Our first priority is to allow you to choose a specific section and get page recall working (i.e. GET), but tags is right behind that!

  • Anonymous
    April 01, 2014
    @JohnK - Thanks for the bug about the image size on screenshots. We fixed it and it should be live in the next day or two

  • Anonymous
    April 01, 2014
    onedrive is forbbidden in most of the companies. onenote saves pages/opens from onedrive. Like evernote, onenote should be isolated service from onedrive. That way onenote can be opened from anywhere and admins wont block onenote. Evernote has this advantage now.

  • Anonymous
    April 10, 2014
    Hi Do you have any plans to enable the handling of rich content in OneNote in the same manner as Word, for instance by allowing areas of content to be delimited as content controls?  I ask this because I run the Chemistry Add-In for Word project which allows embedding of semantic chemistry in Word documents.  I can see a real advantage to allowing this kind of functionality in OneNote as it would make it very appealing for use in the lab and in certain academic scenarios.

  • Anonymous
    April 11, 2014
    @Clyde - Our team is focused on the service APIs through OneNote.com. We will pass along your feedback to the OneNote client team.

  • Anonymous
    June 23, 2014
    Hey Steven, I'm a windows phone developer. I need a help in launching native OneNote application from my application but I'm facing launch issue. I googled the error and i got the problem I am login in my application using different MS LIVE user and my device is synced up with different MS Live account. Same scenario is working well in my Windows 8 application. Please help me out with this.

  • Anonymous
    June 23, 2014
    Hi Som, Gareth here - this is a limitation of OneNote on Windows Phone - you can only work with a single Microsoft ID at any one time.  You'll need to sign in to your app with the same ID that OneNote is signed in with.

  • Anonymous
    August 16, 2014
    Hi Steven, Thank you very much for the hard work and the nice API. We have created a new android application OneNote API, its called OnePaint where you can do a quick draw and post direct to OnePaint. We will be happy if you can try our new app This is the link for the app play.google.com/.../details let us know what you think! Thanks a lot Hussain from Apps House

  • Anonymous
    August 31, 2014
    Can we do Audio / Video Editing through OneNote, or Video Tagging. If any other tool is available on Windows Tablet then please let me know.

  • Anonymous
    October 30, 2015
    I am 6 months only online and am daunted by jargon,most dev's seem to think we know wot u mean, wen most of time I am looking it up wiv Cortana,jus try remember were not all geeked up on lingo ! Thanx belzy x

  • Anonymous
    May 20, 2016
    Steve, the URL: https://login.live.com/err.srf?lc=1033#error=invalid_request&error_description=The+provided+value+for+the+input+parameter+'redirect_uri'+is+not+valid.+The+expected+value+is+'https://login.live.com/oauth20_desktop.srf'+or+a+URL+which+matches+the+redirect+URI+registered+for+this+client+application.&state=107958511 is returning an error message that's not allowing me to upload a "note" or "page" onto on my website. Any suggestions?

  • Anonymous
    May 02, 2017
    Today, when I call the api, got 500 Error.