i new user on stackoverflow in office 365 development using node.js.
i getting user(my own office 365 account) mails,calendar events using tutorial (https://dev.outlook.com/restgettingstarted/tutorial/node)
but when trying create event in calender gives me below error "{"error":{"code":"erroraccessdenied","message":"access denied. check credentials , try again."}}"
please provide me suggestions on same.
below code creating event copied [https://msdn.microsoft.com/office/office365/api/calendar-rest-operations#createevents] here
function createevent(response, request) { var cookiename = 'node-tutorial-token'; var cookie = request.headers.cookie; // if (cookie && cookie.indexof(cookiename) !== -1) { console.log("cookie: ", cookie); // found our token, extract cookie value var start = cookie.indexof(cookiename) + cookiename.length + 1; var end = cookie.indexof(';', start); end = end === -1 ? cookie.length : end; var token = cookie.substring(start, end); console.log("token found in cookie: " + token); var event = new outlook.microsoft.outlookservices.event(); event.subject = 'your subject'; event.start = new date("october 30, 2014 11:13:00").toisostring(); event.end = new date("october 30, 2014 12:13:00").toisostring(); // body event.body = new outlook.microsoft.outlookservices.itembody(); event.body.content = 'body content'; event.body.contenttype = outlook.microsoft.outlookservices.bodytype.text; // location event.location = new outlook.microsoft.outlookservices.location(); event.location.displayname = 'location'; // attendee var attendee1 = new outlook.microsoft.outlookservices.attendee(); var emailaddress1 = new outlook.microsoft.outlookservices.emailaddress(); emailaddress1.name = "abc"; emailaddress1.address = "abc@abcdt.onmicrosoft.com"; attendee1.emailaddress = emailaddress1; event.attendees.push(attendee1); var outlookclient = new outlook.microsoft.outlookservices.client('https://outlook.office365.com/api/v1.0', authhelper.getaccesstokenfn(token)); outlookclient.me.calendar.events.addevent(event) .then(function (response) { console.log(response._id); }, function (error) { console.log(error); });
}
make sure app has requested calendar.readwrite permission , need create new events. in example followed, app registered calendar.read permissions (see below). 
you should instead go https://dev.outlook.com/appregistration register app calendar.readwrite permission required create new events.
Comments
Post a Comment