I have a service which utilises MS Graph API and I'm looking for a way to delete and restore deleted channel(s) using MS Graph API.
To delete a channel I am utilising /teams/{id}/channels/{id} Graph API, however I am struggling to find a way to recover deleted channel.
In the description of above call it is mentioned that data is stored for couple of weeks (21 days since delete) so there should be a way to recover it?
I know it can be done using Teams application, however I would like to do it via Graph API.
I checked below article and Graph documentation but was not able to find suitable solution. Am I missing something or this has not been implemented yet?
https://blogs.technet.microsoft.com/uclobby/2018/08/21/restore-deleted-teams-and-channels-from-microsoft-teams/
https://learn.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0
Related
Now we are trying to migrate to Microsoft Graph API from EWS SDK, but after we investigate the Graph API, we found it seems that we can not use list instances API to get the deleted instances quickly except we scan the whole instances ?
Is there any way to fetch the share point O365 site's recycle bin items using graph API?
I am looking for option using IGraphServiceClient c# interface.
As you said there is no such Graph API call that can get data from the recycle bin. There is also a feature request already raised by some users in the Microsoft Graph Feedback Forum. Please upvote this feature so that the product team can implement it in the future.
I'm trying to extract the share permissions for a Calendar through Microsoft Graph (or even the old Outlook REST API) but it seems that there is no Graph endpoint to get a calendar's sharing permissions.
When fetching a calendar's details, the closest I found was isShared on the Calendar resource - but that doesn't give me the full data I see from the Web UI:
Basically, trying to receive the equivalent of Google Calendar's ACL list.
Am I missing anything?
Since you cannot share the calendar through the graph api, or open a calendar from some other user that they shared with you, there is no point in showing the ACL.
You might have better luck using the Exchange Web Service (or EWS) they do have those properties on folders. https://learn.microsoft.com/en-us/exchange/client-developer/exchange-web-services/folders-and-items-in-ews-in-exchange
Or if you really need it in the graph api (since the EWS is no longer the recommended way to talk to Office 365) you can create a ticket on UserVoice (if it doesn't exist already).
Whenever I query the Teams endpoint in Microsoft Graph:
GET https://graph.microsoft.com/beta/teams/{id}
I get the following error:
AccessDenied - Failed to execute Skype backend request GetThreadRequest.
The permissions are set according to the documentation. (Group.Read.All - delegated permission)
Querying https://graph.microsoft.com/beta/groups/{id} is working while with the same access token https://graph.microsoft.com/beta/teams/{id} isn't.
I tried it with my own application and in the Graph Explorer. Both ways didnt't work for me. However using Graph Explorer with the sample account is working. Is there maybe another permission needed which is not yet documented?
Currently it's a requirement that the person using the Graph APIs (and the PowerShell cmdlets that use them under the covers) must be a member of the team whose information they are trying to retrieve. This is the second-most popular ask for users of our cmdlets, and we are close to resolving it. We expect this to be fixed by the end of September 2018, with write APIs/commands coming a few weeks later than read APIs/commands.
When you view document folders in a SharePoint online site you have the ability to configure email alerts on folders based on when items are added or deleted. Can I do the same thing via the Microsoft Graph API? If this is not possible now, is there any plan to add this to the API in the near future? The only workaround I have been able to come up with involves using the Delta API to poll for changes periodically, but that requires a lot of processing as the Delta API is not very granular.
You do this using webhooks and registering a subscription against the resource you want to monitor.
See Using webhooks to receive service-to-service notifications for details and examples of how this works.