A unified data governance solution that helps manage, protect, and discover data across your organization
Hi Mofei Zhuang,
The error you’re encountering is not because the operator is missing in your code. It happens because the filter payload being sent to the Purview Discovery API does not match the structure that the service expects, so the backend fails to parse it and returns the misleading message “operator should not be null.”
In Discovery queries, filters are expected to follow a logical structure. The pattern of using a single condition with an array of values (for example, using an in operator with a list) is not reliably supported. When this pattern is used, the service cannot correctly bind the filter, which leads to the error you are seeing.
The reliable approach for your scenario is to structure the filter as a logical condition where each name is evaluated individually. This is typically done by combining multiple equality conditions under a logical operator, rather than trying to pass a list of values in a single condition. This aligns with how the Discovery API expects filters to be defined and ensures consistent behavior.
Also note that if you intend to restrict the search to a specific entity type, that constraint needs to be explicitly included in the query; otherwise, the search will run across all entity types.
the issue is caused by an unsupported filter pattern rather than a missing operator. Once the filter is restructured into a proper logical format, the query should work as expected.
Hope this helps, Please let us know if you have any questions and concerns.