Search and filter model

Filtering needs strict grammar validation and result bounds to prevent expensive backend scans and unexpected result windows. FreeSCIM keeps the public contract practical: exact-match user filters, active-state filters, and exact group display-name lookup.

Pagination guidance

Performance guardrail

When queries grow, move to indexed attribute paths first, then broaden query complexity in controlled maintenance windows.

Filter edge cases

GET /scim/v2/Users?filter=userName+eq+%22alice%22&startIndex=1&count=25
GET /scim/v2/Users?filter=active+eq+false&startIndex=1&count=25
GET /scim/v2/Groups?filter=displayName+eq+%22eng-admin%22&startIndex=1&count=25