best way to extract meeting history data with Microsoft Graph

Weslley Wang 1 Reputation point

sorry I'm new to MS Graph. I'm working on a app to extract meeting history data for past hour/day/week/month for my company. I found there are APIs I can use:

  • List events
  • List calendarView
  • getSchedule

all 3 have different version under Users, Calendar and Groups,
which is the best to do the job?

I heard about delegated permission and application permission.
is delegated permssion good enough for me? or I have to ask for application permission?
one solution I heard: deletegated permission, create a normal account, share all meeting room account to this account. does this work for me?


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

3 answers

Sort by: Most helpful
  1. Deva-MSFT 2,256 Reputation points Microsoft Employee

    You need to understand the differences first:

    • List events - its used to retrieve a list of events in a given calendar.
    • List calendarview - using this you can get the occurrences, exceptions, and single instances of events in a calendar view defined by a time range, from the user's default calendar, or from some other calendar of the user's.
    • getschedule - you can get the free/busy availability information for a collection of users, distributions lists, or resources (rooms or equipment) for a specified time period. Also you need to understand the differences between the delegated & application permission - In short, if you want to access your calendar then go for Delegated, wherein if you want to access others calendar as well then go for application permission.
    0 comments No comments

  2. Wang, Weslley 1 Reputation point

    Thank you, @Deva-MSFT ,
    List events does not support parameter of date range, so I cannot use it. getSchedule has bug, I already file ticket.
    Do you know if List calendarView work with shared meeting room account. calendarView only related to the login account, e.g. I login as A, if meeting room account B have a meeting not related to A, then calendarView will not get it. so I'm thinking, if I share B to A, then I can use<accountB>/calendarView?startDateTime=... to get the data.
    I tested it, but got error message:
    {"code":"ErrorItemNotFound","message":"The specified object was not found in the store."}
    what could be wrong?

    Thank you again

  3. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.

    Comments have been turned off. Learn more