From 1182cdcdd9d83cbd9e1dc1c1cdc640fcb02b1632 Mon Sep 17 00:00:00 2001 From: Marco Ardizzone Date: Thu, 31 Jul 2025 18:20:08 +0200 Subject: [PATCH] Add AND, OR and NOT filters --- proto/zitadel/metadata/v2/metadata.proto | 27 ++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/proto/zitadel/metadata/v2/metadata.proto b/proto/zitadel/metadata/v2/metadata.proto index 174d93265e..31501f29bb 100644 --- a/proto/zitadel/metadata/v2/metadata.proto +++ b/proto/zitadel/metadata/v2/metadata.proto @@ -61,6 +61,9 @@ message UserByMetadataSearchFilter { option (validate.required) = true; MetadataKeyFilter key_filter = 1; MetadataValueFilter value_filter = 2; + MetadataAndFilter and_filter = 3; + MetadataOrFilter or_filter = 4; + MetadataNotFilter not_filter = 5; } } @@ -78,4 +81,28 @@ message MetadataValueFilter { description: "defines which bytes equality method is used"; } ]; +} + +message MetadataAndFilter { + repeated UserByMetadataSearchFilter queries = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "the sub queries to 'AND'" + } + ]; +} + +message MetadataOrFilter { + repeated UserByMetadataSearchFilter queries = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "the sub queries to 'OR'" + } + ]; +} + +message MetadataNotFilter { + UserByMetadataSearchFilter query = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "the sub query to negate (NOT)" + } + ]; } \ No newline at end of file