SCIM: List API returns paginated results; unsupported filters rejected (Pending)¶
Attention
This behavior change is in the 2026_03 bundle.
For the current status of the bundle, refer to Bundle history.
The SCIM List API endpoints (GET /scim/v2/Users and GET /scim/v2/Groups)
are changing to return a paginated list of users or groups in the account,
optionally matching a provided eq or sw filter. Previously, these
endpoints returned a single synthetic sample object.
Unfiltered list calls
- Before the change:
GET /scim/v2/UsersandGET /scim/v2/Groupswithout afilterparameter returned a single synthetic sample object. For example,GET /scim/v2/Usersreturned:Similarly,
GET /scim/v2/Groupsreturned a singlesynthetic_groupobject.- After the change:
The same calls return a paginated list of users or groups in the account, with standard SCIM pagination (
startIndex,count).
Filter expression validation
- Before the change:
Filter values were parsed loosely. Unsupported filter expressions, including those with logical operators (
and,or) and malformed filter values, were silently accepted and returned200 OKwith an emptyResourcesarray.- After the change:
Filter values are now parsed as quoted JSON strings, consistent with SCIM’s JSON encoding requirements. Unsupported or malformed filter expressions are rejected with HTTP
400 Bad Requestand SCIM error typeinvalidFilter. Supported single-attribute filters witheqorsware not affected.
ServiceProviderConfig filter support
- Before the change:
GET /scim/v2/ServiceProviderConfigreportedfilter.supportedas an integer (0).- After the change:
filter.supportedis a boolean (true), as required by RFC 7643.
Customers whose SCIM clients send filter expressions with and or or
should update the client to use simple filters or handle 400 invalidFilter
responses.
Note
Customers with large numbers of users or groups may see increased response
times for unfiltered list calls. To reduce response sizes, use
excludedAttributes=groups when listing users or excludedAttributes=members
when listing groups. This prevents membership expansion, which is the primary
driver of response size and latency for large accounts.
Ref: 2276