Created by Microsoft Corporation, 2017. Provided As-is without warranty. Trademarks mentioned here are the property of their owners.
The following aspects of the API are covered in this sample. You can find additional documentation at the links below.
- Log-in the user
- GET a user's OneNote notebooks
- GET a user's OneNote notebooks with expanded sections
- GET a user's OneNote pages
- GET a user's OneNote sections
- POST simple HTML to a new OneNote QuickNotes page
- POST multi-part message with image data included in the request*
- POST page with a URL rendered as an image*
- POST page with HTML rendered as an image*
- POST page with a PDF file rendered and attached*
* Indicates documentation for multi-part POST requests to the OneNote API before its integration into the Microsoft Graph API. The documentation for the outlined request examples work as of the production of this sample, but be aware that changes may be upcoming.
Tools and Libraries you will need to download, install, and configure for your development environment.
- Node.js
- Express framework for Node.js
- You have a normal URL with hostname (not just an IP address) to use for the Redirect URL. If you run this from your own desktop, you'll need to modify your Hosts file (in C:\Windows\System32\drivers\etc for Windows machines and /private/etc for Macs) and map your local server IP address to a new domain name, as in the following example.
Accounts
- As the developer, you'll need to have a Microsoft account and get a client ID string so your app can authenticate with the Microsoft Azure AD v2.0 endpoint.
- As the user of the sample, you'll need a Microsoft account so the OneNote API can send the pages to your OneDrive.
After you've setup your web server described above,....
- Download the repo as a ZIP file to your local computer, and extract the files. Or, clone the repository into a local copy of Git.
- Go to the Microsoft app registration page.
- Set the Redirect URI to the domain name of your web site. In this example, we used http://localhost:3000/callback. The root domain name must be unique, so if you use one domain for testing and another for production, you'll need to register separate client ids and secrets for each domain.
- On the App Setting page, copy the client ID and secret into the config.js file.
- Open a command prompt and go to the root directory of the project.
- Setup project dependencies with the
npm install
command. - Run the app with the
npm start
command. - Open a browser and navigate to the app running by default on port 3000.
- Login using your Microsoft account (Org ID or MSA), and allow the app to create pages in your OneNote notebooks.
Date | Change |
---|---|
May 2017 | Updated to utilize the Microsoft Graph v1.0 base URL for OneNote resources |
April 2017 | Updated to utilize the Microsoft Graph API endpoints. |
June 2016 | Initial public release for this code sample. |
- Visit the dev.onenote.com Dev Center
- Contact us on StackOverflow (tagged OneNote)
- Follow us on Twitter @onenotedev
- Read our OneNote Developer blog
- Explore the API using the Graph Explorer
- API Reference documentation
- Known Issues
- Getting Started with the Microsoft Graph API
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.