An API that connects multiple Microsoft services, enabling data access and automation across platforms
Unable to use $filter with Microsoft Graph Time Card API on our Azure Web App Service
We are using an Azure Web App Service to call the Microsoft Graph Time Card Shifts Management API to list all time cards:: https://learn.microsoft.com/en-us/graph/api/schedule-list-timecards?view=graph-rest-1.0&tabs=http .
According to the documentation, this method supports the $filter OData query parameter: "This method supports the $filter OData query parameter to help customize the response".
This is important because, by default, all time cards are returned — potentially thousands of records. In our use case, we only need the shifts/time cards from the last 7 days.
However, when we try a request like:
https://graph.microsoft.com/v1.0/teams/{TEAMID}/schedule/timeCards?$filter=createdDateTime ge 2025-08-10T00:00:00Z
We receive the following error:
"code": "BadRequest",
"message": "The entity property 'createdDateTime' and operationKind 'GreaterThanOrEqual' is not allowed in $filter query."
The same error occurs when attempting to filter by:
-
lastModifiedDateTime -
clockInEvent/dateTime -
clockOutEvent/dateTime
It would be surprising if the API always required retrieving all time cards without any date-based filtering.
Our questions:
-
- Is this a bug or an intentional limitation?
-
- If intentional, why?
-
- If intentional, what properties can be used with
$filterfor this endpoint?
- If intentional, what properties can be used with
-
- If intentional, why is the documentation not mentioning the limitations?
Any guidance or workarounds would be greatly appreciated.