SlideShare a Scribd company logo
Getting Started with
the Office 365 API
Speaker: Bjoern H Rapp
15th November 2014
Host: Matthew Hughes
About me
Bjoern H Rapp
Blog: www.sharepointviking.com
Twitter: @bjoern_rapp
AGENDA
 What are the Office 365 API’s?
 How do Office 365 API’s work?
 Setting up your dev environment
 Start building your apps
 Tools
 Resources
Office 365 APIs
Active
Directory
Users
Groups
Exchange &
Outlook.com
Mail
Calendar
Contacts
SharePoint
Sites
Client API
Sites,
Lists, Libs
Workflow
Search
Taxonomy
BCS
…
OneDrive
OneDrive
OneDrive
for Business
How they work
Solution
Your App
.NET, js, HTML, Ruby, Java
fAzure IIS, Apache..
Dev env
Authentication
Your Dev Tools
f f f fXCode Eclipse /Android
Studio
Visual Studio REST
iOS O365 SDK
Android O365
SDK
VS O365 SDK
Data
Azure AD Single Sign-On (OAuth 2.0)
REST APIs
Files, Sites Mails, Contacts,
Calendars
Users and Groups
Azure AD
Setting up your Office 365 Dev
Environment
1
2
3
Get an Office 365 Developer Site
Set up Azure AD for your dev. Site
Get the Tools!
Get a Site.
 If you already have an Office 365 dev site…
 You are good to go!! Configuring Azure is next…
 If you don’t have an Office 365 dev site
 If you have an MSDN subscription
 Redeem your Office 365 Dev Subscription benefit.
 If you own one of the following plans
 Midsize business, Enterprise E1, E3, E4 or K1, Education
A2, A3, A4 or Government, G1, G3, G4 or K1
 Create a dev site within your existing subscription!
 Start a free 30-days trial or buy a dev subscription
with 1 user license
1. Register your site
 http://bit.ly/1uv0f6l
2. Set up Azure AD
I have a
tenant
I don’t
have a
tenant
1. Log in to your Azure Management portal
2. Add an association by using existing Active
Direcory Node
3. Remember to close and reopen
1. Log in to Office 365 Admin Center
2. Open a new tab and go to
https://account.windowsazure.com/Signup and
create a new Azure subscription
3. Verify there’s a directory node with your O365
tenant name
DEMO
Associating an existing Azure
tenant with your Office 365
subscription
3. Get the dev. tools
.NET (WIN
8.1 APPS,
WEB )
1. Install Visual Studio
2. Install the Office Developer Tools http://bit.ly/1dEXN1G
Get the Office 365 SDK for Android http://bit.ly/1fbsxqD
ANDROID
(ANDROID
APPS)
iOS (iPhone,
iPad Apps)
Get the Office 365 SDK for iOS (Preview) :
http://bit.ly/14ohQ6k
OR CALL THE REST API’s DIRECTLY USING YOUR LANGUAGE AND TOOL OF CHOICE
I have created my VS Project,
now what?
 Add Office 365 API’s to your project
 Choose Add > Connected Service from SM
 Register your App
 Sign in with your Office 365 Tenant Admin account
 Select the Office 365 Service
 Calendar, Contacts, Mail, Files, Sites, Users and Groups
 Set the Permissions
 Read
 Full Access
 Set App Properties
DEMO
Creating a VS Project and adding
the Office 365 API’s
Next Steps
Authenticate your app
Create the Office 365 Discovery
Client
Getting an Access Token for
Office 365
Creating the client object.
DEMO
Integrating Office 365 API’s into
an ASP .NET MVC Project.
Some Tools
 API Sandbox
 Xamarin
 Cordova
API Sandbox
http://apisandbox.msdn.microsoft.com/
Xamarin
(http://xamarin.com/platform)
 Create native iOS, Android and Windows Apps
using C#
 New templates with support for Visual Studio
2015
 Free edition available for Visual Studio
Community
 20% discount for MSDN subscribers
Cordova
(http://cordova.apache.org/)
 A platform for building native mobile apps
 Apps based on HTML, CSS and Javascript
 Same set of code running on different devices
References
 Office Development: http://dev.office.com
 Code samples: http://bit.ly/13EyQVs
 Android Office 365 SDK: http://bit.ly/1xqmnRN
 REST API Reference: http://bit.ly/10rseIb
THANK YOU!
O365EU Sponsors

More Related Content

What's hot

Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
Bram de Jager
 
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
SPTechCon
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Bram de Jager
 
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
European Collaboration Summit
 
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s TourECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
European Collaboration Summit
 
SharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid OverviewSharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid Overview
Roy Kim
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APISharePointRadi
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwugBIWUG
 
SPEvo 2015 app launcher
SPEvo 2015 app launcherSPEvo 2015 app launcher
SPEvo 2015 app launcher
Wes Hackett
 
Microsoft Teams as a Development Platform
Microsoft Teams as a Development PlatformMicrosoft Teams as a Development Platform
Microsoft Teams as a Development Platform
David Schneider
 
What do you get from share point hybrid
What do you get from share point hybridWhat do you get from share point hybrid
What do you get from share point hybrid
Samuel Lévesque
 
Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Giuseppe Marchi
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online development
Jeremy Thake
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
Nik Patel
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Corey Roth
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
Yaroslav Pentsarskyy [MVP]
 
Charla desarrollo de apps con sharepoint y office 365
Charla   desarrollo de apps con sharepoint y office 365Charla   desarrollo de apps con sharepoint y office 365
Charla desarrollo de apps con sharepoint y office 365
Luis Valencia
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
SPTechCon
 
Microsoft Graph API - A Single Stop For Your Cloud Solution
Microsoft Graph API - A Single Stop For Your Cloud SolutionMicrosoft Graph API - A Single Stop For Your Cloud Solution
Microsoft Graph API - A Single Stop For Your Cloud Solution
Dipti Chhatrapati
 

What's hot (20)

Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
Developing hybrid SharePoint apps that run on-premise and in the cloud - ESPC...
 
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
Tutorial: Building Apps for SharePoint 2013 Inside and Outside of the Firewal...
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
 
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
 
Sharepoint Online
Sharepoint OnlineSharepoint Online
Sharepoint Online
 
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s TourECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
ECS19 - Mike Ammerlaan - The Microsoft 365 Platform: A Developer’s Tour
 
SharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid OverviewSharePoint 2016 Hybrid Overview
SharePoint 2016 Hybrid Overview
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwug
 
SPEvo 2015 app launcher
SPEvo 2015 app launcherSPEvo 2015 app launcher
SPEvo 2015 app launcher
 
Microsoft Teams as a Development Platform
Microsoft Teams as a Development PlatformMicrosoft Teams as a Development Platform
Microsoft Teams as a Development Platform
 
What do you get from share point hybrid
What do you get from share point hybridWhat do you get from share point hybrid
What do you get from share point hybrid
 
Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online development
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
 
Charla desarrollo de apps con sharepoint y office 365
Charla   desarrollo de apps con sharepoint y office 365Charla   desarrollo de apps con sharepoint y office 365
Charla desarrollo de apps con sharepoint y office 365
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
Microsoft Graph API - A Single Stop For Your Cloud Solution
Microsoft Graph API - A Single Stop For Your Cloud SolutionMicrosoft Graph API - A Single Stop For Your Cloud Solution
Microsoft Graph API - A Single Stop For Your Cloud Solution
 

Similar to Getting Started with the Office 365 API

Office apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thingOffice apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thing
SPC Adriatics
 
MVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
MVP Virtual Conference - Introduction to AngularJS in an Office 365 ContextMVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
MVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
Sébastien Levert
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
Waldek Mastykarz
 
Mastering Office 365 Development - Toni Pohl, atwork
Mastering Office 365 Development - Toni Pohl, atworkMastering Office 365 Development - Toni Pohl, atwork
Mastering Office 365 Development - Toni Pohl, atwork
SPC Adriatics
 
Mastering Office 365 Development
Mastering Office 365 DevelopmentMastering Office 365 Development
Mastering Office 365 Development
atwork
 
Developing Apps with Azure AD
Developing Apps with Azure ADDeveloping Apps with Azure AD
Developing Apps with Azure AD
SharePointRadi
 
Connected Office 365 with UWP
Connected Office 365 with UWPConnected Office 365 with UWP
Connected Office 365 with UWP
Cheah Eng Soon
 
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
atwork
 
Sp2013 overview
Sp2013 overviewSp2013 overview
Sp2013 overviewBIWUG
 
Spca2014 keynote johnson
Spca2014 keynote johnsonSpca2014 keynote johnson
Spca2014 keynote johnsonNCCOMMS
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in action
NCCOMMS
 
SPSNYC - Next Generation Portals
SPSNYC - Next Generation PortalsSPSNYC - Next Generation Portals
SPSNYC - Next Generation Portals
Bob German
 
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni PohlSPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
atwork
 
Microsoft Teams - A developers perspective
Microsoft Teams - A developers perspectiveMicrosoft Teams - A developers perspective
Microsoft Teams - A developers perspective
Thomas Gölles
 
Embed Interactive Reports in Your Apps
Embed Interactive Reports in Your AppsEmbed Interactive Reports in Your Apps
Embed Interactive Reports in Your AppsTeo Lachev
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
Waldek Mastykarz
 
SPConnect2014 Office 365 APIs
SPConnect2014 Office 365 APIsSPConnect2014 Office 365 APIs
SPConnect2014 Office 365 APIs
Wes Hackett
 
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
Sébastien Levert
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365
Kris Wagner
 

Similar to Getting Started with the Office 365 API (20)

Office apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thingOffice apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thing
 
MVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
MVP Virtual Conference - Introduction to AngularJS in an Office 365 ContextMVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
MVP Virtual Conference - Introduction to AngularJS in an Office 365 Context
 
SPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business AppSPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business App
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
 
Mastering Office 365 Development - Toni Pohl, atwork
Mastering Office 365 Development - Toni Pohl, atworkMastering Office 365 Development - Toni Pohl, atwork
Mastering Office 365 Development - Toni Pohl, atwork
 
Mastering Office 365 Development
Mastering Office 365 DevelopmentMastering Office 365 Development
Mastering Office 365 Development
 
Developing Apps with Azure AD
Developing Apps with Azure ADDeveloping Apps with Azure AD
Developing Apps with Azure AD
 
Connected Office 365 with UWP
Connected Office 365 with UWPConnected Office 365 with UWP
Connected Office 365 with UWP
 
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
TechNet Conference 2013 Berlin-Wie Sie Office 365 mit Windows Azure steuern b...
 
Sp2013 overview
Sp2013 overviewSp2013 overview
Sp2013 overview
 
Spca2014 keynote johnson
Spca2014 keynote johnsonSpca2014 keynote johnson
Spca2014 keynote johnson
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in action
 
SPSNYC - Next Generation Portals
SPSNYC - Next Generation PortalsSPSNYC - Next Generation Portals
SPSNYC - Next Generation Portals
 
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni PohlSPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
SPC Adriatics 2013 - Working with the new SharePoint Online Apps by Toni Pohl
 
Microsoft Teams - A developers perspective
Microsoft Teams - A developers perspectiveMicrosoft Teams - A developers perspective
Microsoft Teams - A developers perspective
 
Embed Interactive Reports in Your Apps
Embed Interactive Reports in Your AppsEmbed Interactive Reports in Your Apps
Embed Interactive Reports in Your Apps
 
NextGen Portal for Your Organization
NextGen Portal for Your OrganizationNextGen Portal for Your Organization
NextGen Portal for Your Organization
 
SPConnect2014 Office 365 APIs
SPConnect2014 Office 365 APIsSPConnect2014 Office 365 APIs
SPConnect2014 Office 365 APIs
 
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
Collab365 - AngularJS & Office 365 Unified API : A match made in heaven!
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365
 

Recently uploaded

Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Matjaž Lipuš
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
Howard Spence
 
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie WellsCollapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Rosie Wells
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
khadija278284
 
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Dutch Power
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
Sebastiano Panichella
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
Faculty of Medicine And Health Sciences
 
Media as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern EraMedia as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern Era
faizulhassanfaiz1670
 
Burning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdfBurning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdf
kkirkland2
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Sebastiano Panichella
 
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
AwangAniqkmals
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Sebastiano Panichella
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
gharris9
 
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Dutch Power
 
2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf
Frederic Leger
 
María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024
eCommerce Institute
 
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdfSupercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Access Innovations, Inc.
 
Gregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics PresentationGregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics Presentation
gharris9
 
Tom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issueTom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issue
amekonnen
 

Recently uploaded (19)

Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
 
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie WellsCollapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
Collapsing Narratives: Exploring Non-Linearity • a micro report by Rosie Wells
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
 
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
Presentatie 4. Jochen Cremer - TU Delft 28 mei 2024
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
 
Media as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern EraMedia as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern Era
 
Burning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdfBurning Issue Presentation By Kenmaryon.pdf
Burning Issue Presentation By Kenmaryon.pdf
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
 
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
AWANG ANIQKMALBIN AWANG TAJUDIN B22080004 ASSIGNMENT 2 MPU3193 PHILOSOPHY AND...
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
 
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
Presentatie 8. Joost van der Linde & Daniel Anderton - Eliq 28 mei 2024
 
2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf2024-05-30_meetup_devops_aix-marseille.pdf
2024-05-30_meetup_devops_aix-marseille.pdf
 
María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024
 
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdfSupercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
 
Gregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics PresentationGregory Harris - Cycle 2 - Civics Presentation
Gregory Harris - Cycle 2 - Civics Presentation
 
Tom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issueTom tresser burning issue.pptx My Burning issue
Tom tresser burning issue.pptx My Burning issue
 

Getting Started with the Office 365 API

  • 1. Getting Started with the Office 365 API Speaker: Bjoern H Rapp 15th November 2014 Host: Matthew Hughes
  • 2. About me Bjoern H Rapp Blog: www.sharepointviking.com Twitter: @bjoern_rapp
  • 3. AGENDA  What are the Office 365 API’s?  How do Office 365 API’s work?  Setting up your dev environment  Start building your apps  Tools  Resources
  • 4. Office 365 APIs Active Directory Users Groups Exchange & Outlook.com Mail Calendar Contacts SharePoint Sites Client API Sites, Lists, Libs Workflow Search Taxonomy BCS … OneDrive OneDrive OneDrive for Business
  • 5. How they work Solution Your App .NET, js, HTML, Ruby, Java fAzure IIS, Apache.. Dev env Authentication Your Dev Tools f f f fXCode Eclipse /Android Studio Visual Studio REST iOS O365 SDK Android O365 SDK VS O365 SDK Data Azure AD Single Sign-On (OAuth 2.0) REST APIs Files, Sites Mails, Contacts, Calendars Users and Groups Azure AD
  • 6. Setting up your Office 365 Dev Environment 1 2 3 Get an Office 365 Developer Site Set up Azure AD for your dev. Site Get the Tools!
  • 7. Get a Site.  If you already have an Office 365 dev site…  You are good to go!! Configuring Azure is next…  If you don’t have an Office 365 dev site  If you have an MSDN subscription  Redeem your Office 365 Dev Subscription benefit.  If you own one of the following plans  Midsize business, Enterprise E1, E3, E4 or K1, Education A2, A3, A4 or Government, G1, G3, G4 or K1  Create a dev site within your existing subscription!  Start a free 30-days trial or buy a dev subscription with 1 user license
  • 8. 1. Register your site  http://bit.ly/1uv0f6l
  • 9. 2. Set up Azure AD I have a tenant I don’t have a tenant 1. Log in to your Azure Management portal 2. Add an association by using existing Active Direcory Node 3. Remember to close and reopen 1. Log in to Office 365 Admin Center 2. Open a new tab and go to https://account.windowsazure.com/Signup and create a new Azure subscription 3. Verify there’s a directory node with your O365 tenant name
  • 10. DEMO Associating an existing Azure tenant with your Office 365 subscription
  • 11. 3. Get the dev. tools .NET (WIN 8.1 APPS, WEB ) 1. Install Visual Studio 2. Install the Office Developer Tools http://bit.ly/1dEXN1G Get the Office 365 SDK for Android http://bit.ly/1fbsxqD ANDROID (ANDROID APPS) iOS (iPhone, iPad Apps) Get the Office 365 SDK for iOS (Preview) : http://bit.ly/14ohQ6k OR CALL THE REST API’s DIRECTLY USING YOUR LANGUAGE AND TOOL OF CHOICE
  • 12. I have created my VS Project, now what?  Add Office 365 API’s to your project  Choose Add > Connected Service from SM  Register your App  Sign in with your Office 365 Tenant Admin account  Select the Office 365 Service  Calendar, Contacts, Mail, Files, Sites, Users and Groups  Set the Permissions  Read  Full Access  Set App Properties
  • 13. DEMO Creating a VS Project and adding the Office 365 API’s
  • 14. Next Steps Authenticate your app Create the Office 365 Discovery Client Getting an Access Token for Office 365 Creating the client object.
  • 15. DEMO Integrating Office 365 API’s into an ASP .NET MVC Project.
  • 16. Some Tools  API Sandbox  Xamarin  Cordova
  • 18. Xamarin (http://xamarin.com/platform)  Create native iOS, Android and Windows Apps using C#  New templates with support for Visual Studio 2015  Free edition available for Visual Studio Community  20% discount for MSDN subscribers
  • 19. Cordova (http://cordova.apache.org/)  A platform for building native mobile apps  Apps based on HTML, CSS and Javascript  Same set of code running on different devices
  • 20. References  Office Development: http://dev.office.com  Code samples: http://bit.ly/13EyQVs  Android Office 365 SDK: http://bit.ly/1xqmnRN  REST API Reference: http://bit.ly/10rseIb

Editor's Notes

  1. I assume you basic knowledge with Visual Studio, Office 365, and that you have been working with
  2. The Office 365 APIs are REST services that provide access to high-value data types from Office 365 services: mail, calendars, and contacts from Exchange Online; files and folders from SharePoint Online and OneDrive for Business; users and groups from Azure AD. And with the simplicity of REST, you don't need any specialized Exchange, SharePoint, or Azure AD knowledge to access these services. The Office 365 APIs follow REST and OData 2.0 standards for data transport, and use the OAuth 2.0 standard for authentications and authorization.
  3. Select the language, development platform, and hosting environment you want. Build using any web language, including JavaScript, HTML5, Python, Ruby, PHP, and ASP.NET. Use Visual Studio, Eclipse, Android Studio, XCode, or the IDE of your choice. Host your apps in Microsoft Azure or any cloud platform you choose. Then, use single sign-on with Azure AD to authenticate your users, and let them access email, files, calendar, and user information, and the petabytes of data that are stored in Office 365.
  4. Before you can create applications that use the Office 365 APIs, it's important to set up your Visual Studio environment. If you're using Visual Studio 2013, you can take advantage of the Office 365 API tools to access Office 365 right away. To set up your development environment, perform the steps described in the slide above.
  5. To register and authenticate your applications, you need to use Microsoft Azure Active Directory. This is where application and user account information is stored. To get access to Microsoft Azure Active Directory, you need a Microsoft Azure tenant. A Microsoft Azure tenant gives you access to the management portal in Microsoft Azure, where you can add users, roles, and apps. Fortunately, when you sign up for an Office 365 subscription, such as your Developer Site, an Microsoft Azure tenant is automatically created and associated with that Office 365 subscription. So, if you can have an existing Microsoft Azure tenant, you can associate your Office 365 Developer Site with it. If not, you'll need to create a new subscription to the Azure tenant that was created when you sign up for your Office 365 subscription. If you have an Azure tenant If you have an existing Azure tenant, you can associate that with your Office 365 subscription. To associate an existing Azure tenant with your Office 365 subscription Log on to the Microsoft Azure Management portal with your existing Azure credentials (for example, your Microsoft ID such as user@live.com), and navigate to the Active Directory node. Choose the Active Directory node, then choose the Directory tab and, at the bottom of the screen, choose Add. On the dialog box, choose Use existing directory, select the check box, and choose the check mark in the lower right hand corner. This brings you back to the Azure Management Portal. Log on with your Office 365 subscription information. You will be prompted whether to use your directory with Azure. Choose continue and a screen comes up that confirms your action. Now, choose Sign out now. Close the browser and reopen the portal. Otherwise, you will get an access denied error. Log on again to your Azure subscription (for example, your Microsoft ID). Navigate to the Active Directory node and, under Directory, you should now see your Office 365 subscription. If you don't have an Azure tenant You can use the Azure tenant that was created when you created your Office 365 subscription to register and authenticate your apps. To access this underlying tenant from your Office 365 Admin Center, you'll need to create a subscription to your Azure tenant. To create the Azure subscription to your Office 365 subscription Log on to your Office 365 tenant and go to the Office 365 admin center. In the same browser, open a new tab and sign in to Microsoft Azure by navigating to https://account.windowsazure.com/SignUp. You should log on with your Office 365 credentials. Create a new subscription. After you create your subscription, choose Portal. The Azure Tour appears. You can view it, or choose X to close it. You should now see all items in the Azure tenant. It lists a single directory with the name of your Office 365 tenant.
  6. You have several options for developing with Office 365 APIs, based on the developer environment you choose, and the type of solution you're building: Install Visual Studio and the Office 365 API tools to create .NET and hybrid (Xamarin and Apache Cordova) projects Use the Android SDK for Office 365 to create Android apps Call the Office 365 REST APIs directly using any REST-compatible development environment and language Install Visual Studio and the Office 365 API tools The quickest way to get started developing an app with the Ofiice 365 APIs is to use Visual Studio 2013 and the Office 365 API tools for Visual Studio, which enable you to access Office 365 services easily. The Office 365 API tools include client libraries and UI enhancements to Visual Studio. The client libraries make it easier for you to interact with the Office 365 REST APIs from the device or platform of your choice by using libraries available for .NET Framework and JavaScript. The Visual Studio UI enhancements make it easy to add Office 365 services to your app projects. For the Android you would typically need Android Studio or IDE’s like Eclipse in addition to Java Development Kits, and for iOS you would need an environment like XCode. Later on in this session I will show you some tools that enables you to use Visual Studio even for your
  7. Add Office 365 APIs to your project You add and configure Office 365 APIs by using the Services Manager in Visual Studio. In the Solution Explorer, choose the project node to which you want to add an Office 365 service . Right-click or press and hold the project node and choose Add > Connected Service. At the top of the Services Manager dialog box, choose the Office 365 link, and then choose Register your app. Sign in with a tenant administrator account for your Office 365 developer organization. This starts the process of registering your app in Microsoft Azure Active Directory, which allows your app to authenticate via OAuth. After you've logged on to Office 365, a list of available Office 365 APIs services appears. You will see a list of Office 365 services. At this point, the Permissions column to the right of each service is empty. In the list: Select the Office 365 service you want to add Choose Permissions. In the [Office 365 service] Permissions dialog: Select the permissions your project requires Choose Apply. Choose App Properties in the Services Manager dialog. If you want to make this sample application available to Office 365 organizations other than your developer organization: Change the Make this app available to: setting to Multiple Organizations Choose Apply. Note It is not necessary to change this setting to test the application. However, users from your developer organization will bypass the user consent page after they sign in. The Services Manager dialog now lists: The service(s) you've selected to add to your project The permissions for each service. Choose OK. At this point, Visual Studio adds the required NuGet packages to the project. The NuGet packages added vary based on the Office 365 services you added. The tool also registers your web app in Microsoft Azure Active Directory behind the scenes, so you don't have to.
  8. After you've added an Office 365 service to your project, you'll need to authenticate the app with Office 365 in order to gain access to your user's data. Authenticating your app includes three steps: creating the Office 365 discovery context, getting an access token, and then creating the appropriate client object for the Office 365 service you want to access. Create the Office 365 discovery client Getting an access token for Office 365 Creating the appropriate client object Creating the Office 365 discovery client Many of the endpoints that your application may need to call vary by user, such as the endpoints for the user's mailbox, calendar, and OneDrive site. To obtain the URLs of these endpoints, your application calls the Office 365 Discovery Service. Typically, this will be the first Office 365 service that your solution calls. For more details about calling this service, see Discover service endpoints for your Office 365 app and Discovery Service APIs. Getting an access token for Office 365 Your code can use the refresh token that it gets from Azure AD when it authorizes to the Discovery Service to get access tokens from Azure AD with a single round-trip. Creating the client object to access the Office 365 services Lastly, to actually access your user's Office 365 data, you'll need to create the appropriate client object in your code. The type of client object you create depends on the Office 365 API service you access. For calendar, contacts, and email, create an Outlook Services client object For files and sites, create a SharePoint client object For user information, create an Azure AD client object
  9. Xamarin is a set cross-platform development environment developed by the creators of Mono With a C# shared codebase, developers can use Xamarin to write native iOS, Android, and Windows apps with native user interfaces and share code across multiple platforms.
  10. Cordova is an Open Source Framework under the Apache Foundation. It is a set of device API’s that enables software programmers to build applications for mobile devices using JavaScript, HTML5, and CSS3, instead of relying on platform-specific APIs like those in iOS Android. Or Windows Phone[5] It enables wrapping up of HTML, CSS and Javascript code depending upon the platform of the device. It extends the features of HTML and Javascript to work with the device. The resulting applications are hybrid, meaning that they are neither truly native mobile application (because all layout rendering is done via web views instead of the platform's native UI framework) nor purely web-based (because they are not just web apps, but are packaged as apps for distribution and have access to native device APIs) When using the Cordova APIs, an app can be built without any native code (Java, Objective-C, etc) from the app developer. Instead, web technologies are used, and they are hosted in the app itself locally (generally not on a remote http server). And because these JavaScript APIs are consistent across multiple device platforms and built on web standards, the app should be portable to other device platforms with minimal to no changes. Apps using Cordova are still packaged as apps using the platform SDKs, and can be made available for installation from each device's app store. Cordova provides a set of uniform JavaScript libraries that can be invoked, with device-specific native backing code for those JavaScript libraries. Cordova is available for the following platforms: iOS, Android, Blackberry, Windows Phone, Palm WebOS, Bada, and Symbian.