Using the Microsoft Graph Beta REST API for Customer Bookings I would like to retrieve the public link for a specific booking service page, which is available through the MS Bookings app here:
Booking service sharable URL
It looks like: https://outlook.office365.com/owa/calendar/[bookingBusinessEmail]/bookings/s/LdQCYS7WqEa7upCnyiybFg2
However, it doesn't seem to be in the response body for bookingService or any other resource: https://learn.microsoft.com/en-us/graph/api/resources/bookingservice?view=graph-rest-beta
Is there a way via MS Graphs to get this link?
Thanks
Looking through the documentation shared and the Bookings resources, it looks like there isn't yet a way to retrieve the public link using MS Graph.
Related
Trying to use Microsoft's Graph API to iterate through Sharepoint sites, in order to find and remove a user's access to sites when they go out of the country.
Graph / Sharepoint API documentation: https://learn.microsoft.com/en-us/graph/api/resources/site?view=graph-rest-1.0
I get a list of all sites using the Get Sites endpoint:
https://graph.microsoft.com/v1.0/sites
I then filter out personal / OneDrive sites, and try to use the List Site Permissions endpoint to try to get admins/members: https://learn.microsoft.com/en-us/graph/api/site-list-permissions?view=graph-rest-beta&tabs=http
Unfortunately, I get an empty value array in response for all sites:
{'#odata.context': "https://graph.microsoft.com/v1.0/$metadata#sites('<domain>.sharepoint.com%asdfasdgsdf-ca8f-4ec1-bb3e-sdfsdfsdgsdf%2Cbed949c3-3f83-47c2-a263-sdfsdfsdgasdf')/permissions", 'value': []}
I know that the query is fine, because if I change it to instead hit the Site Lists endpoint, I get a response which includes various values:
{'#odata.context': "https://graph.microsoft.com/v1.0/$metadata#sites('<domain>.sharepoint.com%sdfsdfsdgsd-7dce-4564-9de8-eb2dfc02eb86%sdfsdgsdfsdf-ab8c-464f-a77d-sdfsdfsdgsdg')/lists", 'value': [{'#odata.etag': '"sfwsdgsdg-aff1-4295-8443-sdfsdgasdf,7"', 'createdDateTime': '2020-08-26T16:17:41Z', 'description': 'This library contains items that have been modified or deleted but must remain available due to eDiscovery holds. Items cannot be modified...
...
So, the Site ID I am passing to the permissions request must be correct. Is this the wrong endpoint then? Or, is this functionality missing from the Graph API, and my only solution is via the SP Powershell module?
I have tried with both the v1.0 and beta vesions of the API.
Thanks!
According this it looks like a bug in Graph API.
I am testing with the To-Do task API (Create todoTask - Microsoft Graph v1.0 | Microsoft Docs) in Microsoft Graph Explorer.
I am able to create and see the list and task in MS Teams Planner using below requests for my own:
POST /me/todo/lists
POST /me/todo/lists/{todoTaskListId}/tasks
If I am trying to create list or task for someone else using below, I am getting response as created - 201 that is all good till now.
But if look into that MS Teams account into which I created list/task, no list or task is present in the planner. What is the issue behind this?
NOTE: I am passing id down not userPrincipalName.
POST /users/{id|userPrincipalName}/todo/lists
POST /users/{id|userPrincipalName}/todo/lists/{todoTaskListId}/tasks
Point 1:
The todo API is a api to access the office 365 todo list, it has nothing to do with the MS Planner tasks. The MS Planner user tasks can be found /me/planner/tasks and /user/{id}/planner/tasks. The two are not related any way (other than being a "task" in nature). i.e. a ToDo task is not any planner plan and a planner task can't be a ToDo task.
Point 2:
Like the planner API, the ToDo tasks API only supports the delgated permision and only for the "current" user. So only /users/{your userid}/todo/lists works...
Until MS add application permission support for the ToDo API will you be able to access another users ToDo list API. The same is true for the Planner API.
If you need such feature you may like to add a request over at the MS todo user voice page.
I need to get the list of members from a SPA that is hosted as a tab in a private channel in Microsoft Teams. I know how to query it from this page. So the request is something like this:
GET https://graph.microsoft.com/beta/teams/<group_id>/channels/<channel_id>/members
The problem is from the SPA I couldn't get the groupId because in a private channel the context provided by Microsoft Teams SDK is undefined. I know that this is done to provide privacy for the channel. But, are there any other queries that I could use to get the members, or is there any other way to get groupId from a private channel?
Copying Answer from the comments
To get the list of members from a private channel, you can call GET graph.microsoft.com/v1.0/me/joinedteams and get the corresponding Team ID/Group ID and call GET graph.microsoft.com/v1.0/Teams{groupID}/channels/{PrivateChannelID}/members
In Microsoft admin center, we can see the new columns available for the Microsoft Teams User Activity as specified in the following
On trying to retrieve the data vis Microsoft Graph API, we are getting the old attributes in response:
Request : https://graph.microsoft.com/beta/reports/getTeamsUserActivityUserDetail(period='D180')?$format=application/json
On following the redirect link and downloaded the Response CSV file, I could see new attributes in that file
Is I am missing anything in the request ? Any help would be appreciated
I'm trying to fetch information about meeting rooms such as capacity and office.
I have the resource email address and MS ID.
I can view this information in Outlook but cannot when using the endpoint https://graph.microsoft.com/v1.0/users/{resource id}
Is this possible using the current API?
Any help appreciated.
You have to add one more attribute in graph endpoint to fetch room details as mentioned in the below example :
https://graph.microsoft.com/beta/users/{resource id}/findrooms
Reference : https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/user_findrooms