findMeetingTimes doesn't return all available slots

Serhii Kondratiuk 26 Reputation points
2022-07-06T14:55:53.737+00:00

Hi, I'm trying to query the available slots from Outlook Calendar using MSGraph findMeetingTimes endpoint. I'm sending this body:

{"attendees":[{"type":"required","emailAddress":{"address":"******@email.com"}}],"timeConstraint":{"activityDomain":"work","timeSlots":[{"start":{"dateTime":"2022-08-22 00:00:00","timeZone":"Central European Standard Time"},"end":{"dateTime":"2022-08-28 23:59:59","timeZone":"Central European Standard Time"}}]},"isOrganizerOptional":"true","meetingDuration":"PT105M","maxCandidates":1000,"locationConstraint":{"isRequired":"true","suggestLocation":"false","locations":[{"resolveAvailability":"false","locationEmailAddress":"******@email.com","displayName":"Room 0"},{"resolveAvailability":"false","locationEmailAddress":"******@email.com","displayName":"Room 1"},{"resolveAvailability":"false","locationEmailAddress":"******@email.com","displayName":"Room 2"}]}}  

And in the Outlook there are two slots available from 9:00 to 10:45 (105 minutes) and from 10:45 to 12:30 (105 minutes) on 2022-08-26. Locations are also available at those periods of time
But MSGraph only returns first slot and ignores the second one. But it gives me two slots when I change meetingDuration option from PT105M to PT90M, adding an extra gap between the slots. Is it required by findMeetingTimes to have a 15 minutes gap between slots? I didn't find anything about that in the docs. Could it be configured somehow? Thanks in advance

Microsoft Graph
Microsoft Graph
A Microsoft programmability model that exposes REST APIs and client libraries to access data on Microsoft 365 services.
13,270 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. HarmeetSingh7172 4,826 Reputation points
    2022-07-06T15:29:23.297+00:00

    Hi @Serhii Kondratiuk

    Hope you are doing well.

    Per my research, FindMeetingTimes graph API works in this way only. It will not return all the time slots/meeting suggestions between a given range. You can always check suggestionReason property in API response to know the reason for suggesting the meeting time.

    Currently, with available documentation there is no specific time period range given for findMeetingTimesAPI.

    218157-100.png

    Please refer these Similar posts for more details-

    https://learn.microsoft.com/en-us/answers/questions/839385/findmeetingtimes-api-is-not-returning-time-slots-f.html
    https://learn.microsoft.com/en-us/answers/questions/870083/findmeetingtimes-in-ms-graph-not-returning-all-eve.html

    Note: If you want to know free/busy availability information for a collection of users, distributions lists, or resources (rooms or equipment) for a specified time period, you can use getSchedule graph API.

    Hope this helps.

    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have further questions about this answer, please click "Comment".


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.