Unable to use $filter with Microsoft Graph Time Card API on our Azure Web App Service

Gaétan 0 Reputation points
2025-08-15T20:40:42.6133333+00:00

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:

    1. Is this a bug or an intentional limitation?
    1. If intentional, why?
    1. If intentional, what properties can be used with $filter for this endpoint?
    1. If intentional, why is the documentation not mentioning the limitations?

Any guidance or workarounds would be greatly appreciated.

Microsoft Security | Microsoft Graph

Your answer

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