How to Retrieve All Calendar Events with Microsoft Graph API
Question details
The user needs to retrieve a complete list of calendar events, including recurring ones, within a specific date range using the Microsoft Graph API without missing any entries due to pagination.

- Product
- Microsoft Graph API
- Device & OS
- not provided
- Scenario
- Querying calendar events via API and ensuring all recurring events within a date range are fully retrieved.
- Observed behavior
- Using calendarView expands recurring events, but the API paginates results, which might result in incomplete data if the pagination link is not followed.
Ensure you have an active Microsoft Graph access token with the appropriate Calendar.Read or Calendar.ReadWrite permissions granted for the target mailbox.
Use the calendarView Endpoint with Pagination Handling
Utilize the calendarView endpoint with ISO 8601 timestamps and handle pagination via the @odata.nextLink property to ensure all events are retrieved.
The calendarView endpoint automatically expands recurring events into individual occurrences within your specified date range. Because the results are paginated, you must continue requesting the next set of data until all pages are consumed.
Set up the endpoint using GET https://graph.microsoft.com/v1.0/me/calendarView.
Append the startDateTime and endDateTime parameters using the ISO 8601 format (e.g., ?startDateTime=2025-01-01T00:00:00Z&endDateTime=2025-12-31T23:59:59Z).
Add &$top=1000 to the query string to retrieve up to 1000 events per response page.
Check the API JSON response for an @odata.nextLink property. If present, make a new GET request to that exact URL to fetch the next page of results. Repeat this process until @odata.nextLink is no longer returned.

Verify Calendar Permissions and Configuration
If events are still missing despite correct pagination, check user permissions and calendar targeting settings.
Manage Your Documents Effectively with WPS Office
While working with Microsoft APIs, you can streamline your everyday document workflow using WPS Office. It provides a lightweight, highly compatible alternative to Microsoft Office for creating and editing Word, Excel, and PowerPoint files.
- 1. Download WPS Office: Visit the official WPS Office website and click the download button.
- 2. Install and Launch: Follow the lightweight installation wizard to set up the software.
- 3. Open Office Documents: Double-click any Microsoft Office file to open it seamlessly in WPS Office.

Frequently Asked Questions
Why is Microsoft Graph API only returning a few calendar events?
By default, Microsoft Graph paginates results and may return a limited number of items (often 10). You must use the $top query parameter to increase the page size and follow the @odata.nextLink URL in the response to retrieve remaining events.
What is the difference between the events and calendarView endpoints?
The events endpoint returns the master series of recurring meetings but does not expand them into individual occurrences. The calendarView endpoint requires a start and end date and automatically expands recurring series into single instances.
How do I correctly format the date for the calendarView endpoint?
You must use the ISO 8601 format, including the time zone indicator. For example, 2025-01-01T00:00:00Z represents midnight on January 1, 2025, in Coordinated Universal Time (UTC).




