http://www.microsoftvirtualacademy.com/training-courses/introduction-to-office-365-development?m=10072&ct=31602
http://msdn.microsoft.com/en-us/office/office365/howto/platform-development-overview
http://msdn.microsoft.com/en-us/office/office365/howto/setup-development-environment#bk_Office365Account
Start with a free 30-day trial account
https://portal.microsoftonline.com/Signup/MainSignUp.aspx?OfferId=6881A1CB-F4EB-4db3-9F18-388898DAF510&DL=DEVELOPERPACK
log into the developer site
https://login.microsoftonline.com/
http://blogs.msdn.com/b/exchangedev/archive/2014/10/28/oauth2-in-action-with-the-release-of-office-365-calendar-contacts-and-mail.aspx
http://msdn.microsoft.com/office/office365/APi/api-catalog
http://msdn.microsoft.com/office/office365/api/calendar-rest-operations
Office Developer Tools for Visual Studio 2013
https://visualstudiogallery.msdn.microsoft.com/a15b85e6-69a7-4fdf-adda-a38066bb5155
Office Developer Tools for Visual Studio 2012
office365 cn
https://login.partner.microsoftonline.cn/ login url
https://partner.outlook.cn/ews/Exchange.asmx ews url
some of rest apis
https://partner.outlook.cn/api/v1.0/me
https://partner.outlook.cn/api/v1.0/me/calendars
https://partner.outlook.cn/api/v1.0/me/calendarview?startdatetime=2014-10-01t01:00:00z&enddatetime=2015-10-31t23:00:00z
office365 international
https://portal.office.com
windows azure international
https://manage.windowsazure.com/
nodejs read calendar via rest api
http://msdn.microsoft.com/office/office365/api/calendar-rest-operations#EventoperationsGetevents
https://code.msdn.microsoft.com/Office/Office-365-APIs-Get-d75d1c8a
var req=require('request') var user='[email protected]' var pwd='123456' var auth = "Basic " + new Buffer(user + ":" + pwd).toString("base64"); var url='https://partner.outlook.cn/api/v1.0/me/calendarview?startdatetime=2014-10-01t01:00:00z&enddatetime=2015-10-31t23:00:00z' req({url:url,headers:{'Authorization':auth}},function(err,response,body){ var obj= JSON.parse(body); //console.log(obj); console.log(obj.value[0].Subject); console.log(obj.value[0].BodyPreview); });