Subscribed calendars not visible in Microsoft Graph Explorer - outlook

I have subscribed calendars in my Outlook (subscribed to using feed links), and I want to get the id of these calendars. Following Microsoft's API, a GET Request on https://graph.microsoft.com/v1.0/me/calendars using Microsoft Graph Explorer only shows my Outlook calendar and not the calendars that I have subscribed to. How can I make them visible?

I have tried it from my end using Outlook on the Web, going to
Calendar--> Add Calendar--> Subscribe from Web--> Give the link and Save.
I used the same call and it worked for me.

Related

How to send an email from an outlook office add on?

I am trying to build an outlook add on, using react. I looked everywhere trying to find something that uses the mailbox in which the addon has been opened from, to programmatically send an email to a specified user.
Something similar to the google's command:
GmailApp.createDraft(e.parameters.address, e.parameters.subject, e.parameters.body, {
htmlBody: e.parameters.body,
name: 'Automatic Sender'
}).send();
Is the mail-sending process available on outlook?
Outlook web add-ins work under the context of currently selected item only. OfficeJS doesn't provide anything for creating and sending emails programmatically.
In Outlook add-ins you may consider using EWS, see Call web services from an Outlook add-in for more information. Also you may take a look at the Graph API as a possible workaround.

Is there an Outlook Javascript API to get control to addin on Saving as Draft or before syncing to server?

I am working on an Outlook addin to make sure confidential information is not leaked using mail.
Using the on-send feature using ItemSend, we were able to get the email fields and block the sendmail, if required
https://github.com/OfficeDev/Outlook-Add-in-On-Send/tree/master/outlook-add-in-on-send
But there is an use case
User composes the mail and saves it to draft (without clicking on Send)
In outlook on web, composing a mail saves to draft automatically.
How can the add-in get a callback when draft is synced to Outlook server ?
How can the add-in get a callback when draft is synced to Outlook server ?
There is no such callback available for web add-ins. You may post a feature request or suggest a feature on the Tech Community site where community members get to share ideas on ways MS can make Microsoft Graph and Office Platform better by sharing feature requests and ideas.
Nothing like that for the JS-based addins.
For the COM addins, OOM exposes MailItem.Write event - your event handler can cancel the operation.

How to send appointment through Outlook add-in?

I'm trying to implement an add-in for Outlook which has some fields and a button that once clicked does some validations and sends an appointment to inform the attendees.
I am using the function below to achieve my goal:
Office.context.mailbox.item.saveAsync()
Office.context.mailbox.item.close() (as a callback for the function above)
It works for office365, but it doesn't work for office365 thick client.
I found in the Microsoft docs that with the function 'saveAsync' in Outlook in cached mode, the item is saved to the local cache. I disabled this option and still getting the same result.
I was using OnSend functionality, but this feature is not supported for Outlook client.
Any advice or tips of how could I have the functionality of sending the appointment through my Add-in in both, client and web version of Outlook? Basically I need to trigger the existing button 'Send' in the calendar.
It sounds like the ItemSend Event (OnSend) you are using in Outlook on the Web handles your scenario. We are working to bring this functionality to Outlook on Windows soon.

Can UCWA retrieve the scheduled Microsoft Outlook meetings?

I am specifically interested in the OUTLOOK Meeting information and
NOT ONLINE MEETING.
Can I GET the outlook calendar meetings (along with its details: time, subject, location, attendees, etc) using UCWA.
I asked about the same on UCWA forum of MSDN, and came to know that it isn't possible via UCWA.
However, this raises another question:
As a Lync user, if I hover my mouse over a contact who's busy in a meeting, then it shows the time until when he/she is busy, for example "Busy until 2 p.m.".
How is Lync fetching this outlook meetings information and displaying the output as per the meeting time. How does this mechanism work?
Lync/Skype for Business clients are making requests via Outlook APIs to grab non-online-meeting events to display that data. You would need to design your application to sign-in to their Outlook account and make use the available Outlook APIs to get all the meetings/appointments that are not present in Lync/Skype.

Outlook 365: Keeping specific events in sync with external system

I'm developing an integration with Outlook in Office 365 using the latest office.js api for add-ins.
What I have currently is an add-in, which displays a side pane on the appointment compose form. Inside that pane I have the functionality to create an object in our external based on the appointment, taking the start/end times, subject, location etc.
So I have appointment A in the calendar of an O365 account, and object A in an external system.
Is there a way to keep those in sync? I don't see it could be possible using the Outlook Add-In Javascript API, but maybe using ics files, or the Outlook REST API, or Exchange EWS? I see here plenty of issues with the credentials, as the user has separate credentials in our system.
Any tips? I tried to send from our system an ICS file with same iCal UID, but Outlook ignores it.
You would want to to use the Outlook Push Notifications REST API in your web service to get polled when users make changes to their Calendar. Then use the Outlook Calendar REST API to sync changes from your system to their Calendar.

Resources