Gareth Jones API Architect OneNote BRK3101 Agenda OneNote in 2015 API Basics OneNote API in Office 365 Demo Roadmap amp Next Steps Ubiquitous Every new Windows device has OneNote Universal app ID: 350676
Download Presentation The PPT/PDF document "Connecting to OneNote in the Cloud with ..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1Slide2
Connecting to OneNote in the Cloud with Office 365 APIs
Gareth JonesAPI ArchitectOneNote
BRK3101Slide3
Agenda
OneNote in 2015API BasicsOneNote API in Office 365Demo
Roadmap & Next StepsSlide4
Ubiquitous
Every
new Windows
device has OneNote Universal app
Samsung Galaxy S6, Galaxy S6 Edge, select Android tablets
Devices from ten other manufacturersFree on all platforms Windows, Mac, iOS, Android, Web Android Wear, Apple WatchTens of millions of usersBroad consumer ecosystemOffice Lens: Your pocket scanner. Snap whiteboards and documents. Beautiful images stored.OneNote Clipper: Clip articles, products, recipes from the web using your favorite browserMore than 100 Apps and hardware integrations already.Newsreaders, scanners, digital pens, cloud workflow, classroom support, email http://www.onenote.com/apps
OneNote in 2015 – The OpportunitySlide5
DATA
USERS
HTML
Developer visionSlide6
New in preview:
OneNote API support for Office 365Slide7
POST
https://www.onenote.com/api/beta/me/notes/sections/{id}/pages<html lang="
en
"
xmlns
="http://www.w3.org/1999/xhtml"><head> <meta name="created" content="<ISO8601DATE>" /> <title>/build rocks!</title>
</head><body> <h1>Greetings, fellow people of /build!</h1>
<
img src="http://placekitten.com/g/200/225" alt="Pic!" /></body></html>Create pagesSlide8
POST
https://www.onenote.com/api/beta/me/notes/sections/{id}/pages
<
html
lang
="en" xmlns="http://www.w3.org/1999/xhtml">
<head> <meta name="created" content=“<ISO8601DATE>" />
<title
>/build rolls left and right</title></head><body data-absolute-enabled="true"> <div style="position:absolute;width:280px;top:120px;left:68px"> <h1>Hello left side of audience</h1> <p>sorry, no pic for you</p> </div> <img style="position:absolute;top:120px;left:400px" src="http://placekitten.com/g/360/280" alt="Pic for the right side!" /></body></html>Create pagesSlide9
GET
https://www.onenote.com/api/beta/me/notes/notebooks
GET
https://
www.onenote.com/api/beta/me/notes/sectiongroups
GET https://
www.onenote.com/api/beta/me/notes/sectionsGet the whole lot with expand
GET
https://www.onenote.com/api/beta/me/notes/notebooks? $expand=sections,sectionGroups($expand=sections, sectionGroups($levels=max;$expand=sections)) Get Notebooks HierarchySlide10
GET
https://www.onenote.com/api/beta/me/notes/sections/{id}/pagesGET
https://www.onenote.com/api/beta/me/notes/sections/{id}/
pages?filter
=lastModifiedDate
gt <isodate>
GET https://www.onenote.com/api/beta/me/notes/pages/{id}/content
GET
https://www.onenote.com/api/beta/me/notes/resources/{id}/contentGet Pages & ContentSlide11
GET
https://www.onenote.com/api/beta/me/notes/pages/{id}/content
?includeIDs=true
PATCH
https://www.onenote.com/api/beta/me/notes/pages/{id}/content
[{ "target": “h1:{33f8a242-7c33-4bb2-90c5-8425a68cc5bf}{45}",
"action":
“replace", "content": "<img src='placekitten.com/g/300/200' data-id=‘kitten'/>"}]PATCH the titlePATCH well-known imagesUpdate a pageSlide12
PATCH the
body to append to the default outline[{
"target":
“body",
"action": "append",
"content": "<img src="placecorgi.com/300" data-id="corgi"/>"
}]PATCH (continued)Slide13
DELETE
https://www.onenote.com/api/beta/me/notes/pages/{id}
Delete a PageSlide14
Demo
Core API UsageSlide15
Beyond the Basics - Extract Entities
POST
https://www.onenote.com/api/beta/me/notes/sections/{id}/pages
<
html>
<
head>…</head><body><div data-render-method="extract" data-render-src="www.amazon.com/foo/bar" /></body></html> For URLs For images Product Business Card Article RecipeSlide16
OneDrive for Business for individual scenarios
Consumer/business
converged
endpoint
me
/notes/notebooks
Sharepoint sites for team scenarios myorganization/siteCollections/{id}/sites/{id}/notes/notebooksBeta now, GA approx. this summer.Coming by GA: Create in default notebook, Page search, PerformanceComing: Microsoft converged API endpoint supportComing: Modern Groups support
OneNote API for Office 365Slide17
Demo
Bringing it all togetherSlide18
Mobile app captures compelling content
Bizcard
extraction, OCR
Also, recipes, products, articles
Office add-in for Outlook reasons over captured data
Digital memory, there when you need it
Don’t need every piece of data in your transactional systems Surface it on demand from digital memoryWhat did we see?Slide19
Available today for iOS and Android
Personal Notebooks for initial release
Office 365 support will come soon
.NET portable will come soon
Pick them up on
github
https://github.com/OfficeDev/Office-365-SDK-for-iOShttps://github.com/OfficeDev/Office-365-SDK-for-AndroidOneNote SDKs
NSURLSessionTask
*task = [[[[
self.Client
getnotebooks
] filter:@"name
eq
'Test notebook iOS'"] top:1]
readWithCallback
:^(NSArray<
MSOneNoteApiNotebook> *notebooks, MSODataException *error) {}Slide20
Webhooks
More SDKs
Updated samples
Ink support
Copy notebook and ‘Make it mine’
Better tools to showcase apps
Live OneNote pages embedded on a website
Tell us what you need
https://onenote.uservoice.com/forums/245490-onenote-apisOneNote ecosystem roadmapSlide21
http://dev.office.com/devprogram
Developer Program Launch
E-mail
Newsletters
Free Developer Subscription
1 YEAR FREE
Free
Training
Free
Tools
WebinarsSlide22
Build and ship OneNote consumer apps
Use full CRUD and rich data extractors to make amazing productsStart building OneNote Office 365 appsTell us the gapsMigrate consumer apps to support both platforms –
converge
Integrate LOB apps – data source and store for organizational memory
Tell us what you need/vote priorities on
uservoiceEngage us on stack/blog/twitter
@onenotedev http://dev.onenote.comCall to ActionSlide23
Visit
Myignite
at
http://myignite.microsoft.com
or download and use the
Ignite
Mobile
App
with
the QR code above.
Please evaluate this session
Your feedback is important to us!Slide24