mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-18 22:07:32 +00:00
ad26ca88d7
Allow to list instances by their domains on the system API. closes #6785
166 lines
4.3 KiB
Protocol Buffer
166 lines
4.3 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
import "zitadel/object.proto";
|
|
import "validate/validate.proto";
|
|
import "protoc-gen-openapiv2/options/annotations.proto";
|
|
|
|
package zitadel.instance.v1;
|
|
|
|
option go_package ="github.com/zitadel/zitadel/pkg/grpc/instance";
|
|
|
|
message Instance {
|
|
string id = 1 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"69629023906488334\""
|
|
}
|
|
];
|
|
zitadel.v1.ObjectDetails details = 2;
|
|
State state = 3 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "current state of the instance";
|
|
}
|
|
];
|
|
string name = 4 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"ZITADEL\"";
|
|
}
|
|
];
|
|
string version = 5 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"1.0.0\"";
|
|
}
|
|
];
|
|
repeated Domain domains = 6;
|
|
}
|
|
|
|
message InstanceDetail {
|
|
string id = 1 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"69629023906488334\""
|
|
}
|
|
];
|
|
zitadel.v1.ObjectDetails details = 2;
|
|
State state = 3 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "current state of the instance";
|
|
}
|
|
];
|
|
string name = 4 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"ZITADEL\"";
|
|
}
|
|
];
|
|
string version = 5 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"1.0.0\"";
|
|
}
|
|
];
|
|
repeated Domain domains = 6;
|
|
}
|
|
|
|
enum State {
|
|
STATE_UNSPECIFIED = 0;
|
|
STATE_CREATING = 1;
|
|
STATE_RUNNING = 2;
|
|
STATE_STOPPING = 3;
|
|
STATE_STOPPED = 4;
|
|
}
|
|
|
|
message Query {
|
|
oneof query {
|
|
option (validate.required) = true;
|
|
|
|
IdsQuery id_query = 1;
|
|
DomainsQuery domain_query = 2;
|
|
}
|
|
}
|
|
|
|
//IdQuery always equals
|
|
message IdsQuery {
|
|
repeated string ids = 1 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "4820840938402429";
|
|
}
|
|
];
|
|
}
|
|
|
|
message DomainsQuery {
|
|
repeated string domains = 1 [
|
|
(validate.rules).repeated = {max_items: 20, items: {string: {min_len: 1, max_len: 100}}},
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
max_items: 20,
|
|
example: "[\"my-instace.zitadel.cloud\", \"auth.custom.com\"]";
|
|
description: "Return the instances that have the requested domains";
|
|
}
|
|
];
|
|
}
|
|
|
|
enum FieldName {
|
|
FIELD_NAME_UNSPECIFIED = 0;
|
|
FIELD_NAME_ID = 1;
|
|
FIELD_NAME_NAME = 2;
|
|
FIELD_NAME_CREATION_DATE = 3;
|
|
}
|
|
|
|
message Domain {
|
|
zitadel.v1.ObjectDetails details = 1;
|
|
string domain = 2 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
example: "\"zitadel.com\""
|
|
}
|
|
];
|
|
bool primary = 3;
|
|
bool generated = 4;
|
|
}
|
|
|
|
message DomainSearchQuery {
|
|
oneof query {
|
|
option (validate.required) = true;
|
|
|
|
DomainQuery domain_query = 1;
|
|
DomainGeneratedQuery generated_query = 2;
|
|
DomainPrimaryQuery primary_query = 3;
|
|
}
|
|
}
|
|
|
|
message DomainQuery {
|
|
string domain = 1 [
|
|
(validate.rules).string = {max_len: 200},
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "zitadel.com";
|
|
}
|
|
];
|
|
zitadel.v1.TextQueryMethod method = 2 [
|
|
(validate.rules).enum.defined_only = true,
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "defines which text equality method is used";
|
|
}
|
|
];
|
|
}
|
|
|
|
//DomainGeneratedQuery is always equals
|
|
message DomainGeneratedQuery {
|
|
bool generated = 1 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "generated domains";
|
|
}
|
|
];
|
|
}
|
|
|
|
//DomainPrimaryQuery is always equals
|
|
message DomainPrimaryQuery {
|
|
bool primary = 1 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "primary domains";
|
|
}
|
|
];
|
|
}
|
|
|
|
enum DomainFieldName {
|
|
DOMAIN_FIELD_NAME_UNSPECIFIED = 0;
|
|
DOMAIN_FIELD_NAME_DOMAIN = 1;
|
|
DOMAIN_FIELD_NAME_PRIMARY = 2;
|
|
DOMAIN_FIELD_NAME_GENERATED = 3;
|
|
DOMAIN_FIELD_NAME_CREATION_DATE = 4;
|
|
}
|