#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ApiConfig {
#[prost(string, tag="1")]
pub client_id: ::prost::alloc::string::String,
#[prost(enumeration="ApiAuthMethodType", tag="2")]
pub auth_method_type: i32,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ApiAuthMethodType {
Basic = 0,
PrivateKeyJwt = 1,
}
impl ApiAuthMethodType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Basic => "API_AUTH_METHOD_TYPE_BASIC",
Self::PrivateKeyJwt => "API_AUTH_METHOD_TYPE_PRIVATE_KEY_JWT",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"API_AUTH_METHOD_TYPE_BASIC" => Some(Self::Basic),
"API_AUTH_METHOD_TYPE_PRIVATE_KEY_JWT" => Some(Self::PrivateKeyJwt),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoginVersion {
#[prost(oneof="login_version::Version", tags="1, 2")]
pub version: ::core::option::Option<login_version::Version>,
}
pub mod login_version {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Version {
#[prost(message, tag="1")]
LoginV1(super::LoginV1),
#[prost(message, tag="2")]
LoginV2(super::LoginV2),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct LoginV1 {
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoginV2 {
#[prost(string, optional, tag="1")]
pub base_uri: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OidcLocalizedMessage {
#[prost(string, tag="1")]
pub key: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub localized_message: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OidcConfig {
#[prost(string, repeated, tag="1")]
pub redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcResponseType", repeated, packed="false", tag="2")]
pub response_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcGrantType", repeated, packed="false", tag="3")]
pub grant_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcAppType", tag="4")]
pub app_type: i32,
#[prost(string, tag="5")]
pub client_id: ::prost::alloc::string::String,
#[prost(enumeration="OidcAuthMethodType", tag="6")]
pub auth_method_type: i32,
#[prost(string, repeated, tag="7")]
pub post_logout_redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcVersion", tag="8")]
pub version: i32,
#[prost(bool, tag="9")]
pub none_compliant: bool,
#[prost(message, repeated, tag="10")]
pub compliance_problems: ::prost::alloc::vec::Vec<OidcLocalizedMessage>,
#[prost(bool, tag="11")]
pub dev_mode: bool,
#[prost(enumeration="OidcTokenType", tag="12")]
pub access_token_type: i32,
#[prost(bool, tag="13")]
pub access_token_role_assertion: bool,
#[prost(bool, tag="14")]
pub id_token_role_assertion: bool,
#[prost(bool, tag="15")]
pub id_token_userinfo_assertion: bool,
#[prost(message, optional, tag="16")]
pub clock_skew: ::core::option::Option<::pbjson_types::Duration>,
#[prost(string, repeated, tag="17")]
pub additional_origins: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="18")]
pub allowed_origins: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(bool, tag="19")]
pub skip_native_app_success_page: bool,
#[prost(string, tag="20")]
pub back_channel_logout_uri: ::prost::alloc::string::String,
#[prost(message, optional, tag="21")]
pub login_version: ::core::option::Option<LoginVersion>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcResponseType {
Unspecified = 0,
Code = 1,
IdToken = 2,
IdTokenToken = 3,
}
impl OidcResponseType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "OIDC_RESPONSE_TYPE_UNSPECIFIED",
Self::Code => "OIDC_RESPONSE_TYPE_CODE",
Self::IdToken => "OIDC_RESPONSE_TYPE_ID_TOKEN",
Self::IdTokenToken => "OIDC_RESPONSE_TYPE_ID_TOKEN_TOKEN",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_RESPONSE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"OIDC_RESPONSE_TYPE_CODE" => Some(Self::Code),
"OIDC_RESPONSE_TYPE_ID_TOKEN" => Some(Self::IdToken),
"OIDC_RESPONSE_TYPE_ID_TOKEN_TOKEN" => Some(Self::IdTokenToken),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcGrantType {
AuthorizationCode = 0,
Implicit = 1,
RefreshToken = 2,
DeviceCode = 3,
TokenExchange = 4,
}
impl OidcGrantType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::AuthorizationCode => "OIDC_GRANT_TYPE_AUTHORIZATION_CODE",
Self::Implicit => "OIDC_GRANT_TYPE_IMPLICIT",
Self::RefreshToken => "OIDC_GRANT_TYPE_REFRESH_TOKEN",
Self::DeviceCode => "OIDC_GRANT_TYPE_DEVICE_CODE",
Self::TokenExchange => "OIDC_GRANT_TYPE_TOKEN_EXCHANGE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_GRANT_TYPE_AUTHORIZATION_CODE" => Some(Self::AuthorizationCode),
"OIDC_GRANT_TYPE_IMPLICIT" => Some(Self::Implicit),
"OIDC_GRANT_TYPE_REFRESH_TOKEN" => Some(Self::RefreshToken),
"OIDC_GRANT_TYPE_DEVICE_CODE" => Some(Self::DeviceCode),
"OIDC_GRANT_TYPE_TOKEN_EXCHANGE" => Some(Self::TokenExchange),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcAppType {
Web = 0,
UserAgent = 1,
Native = 2,
}
impl OidcAppType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Web => "OIDC_APP_TYPE_WEB",
Self::UserAgent => "OIDC_APP_TYPE_USER_AGENT",
Self::Native => "OIDC_APP_TYPE_NATIVE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_APP_TYPE_WEB" => Some(Self::Web),
"OIDC_APP_TYPE_USER_AGENT" => Some(Self::UserAgent),
"OIDC_APP_TYPE_NATIVE" => Some(Self::Native),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcAuthMethodType {
Basic = 0,
Post = 1,
None = 2,
PrivateKeyJwt = 3,
}
impl OidcAuthMethodType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Basic => "OIDC_AUTH_METHOD_TYPE_BASIC",
Self::Post => "OIDC_AUTH_METHOD_TYPE_POST",
Self::None => "OIDC_AUTH_METHOD_TYPE_NONE",
Self::PrivateKeyJwt => "OIDC_AUTH_METHOD_TYPE_PRIVATE_KEY_JWT",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_AUTH_METHOD_TYPE_BASIC" => Some(Self::Basic),
"OIDC_AUTH_METHOD_TYPE_POST" => Some(Self::Post),
"OIDC_AUTH_METHOD_TYPE_NONE" => Some(Self::None),
"OIDC_AUTH_METHOD_TYPE_PRIVATE_KEY_JWT" => Some(Self::PrivateKeyJwt),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcVersion {
OidcVersion10 = 0,
}
impl OidcVersion {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::OidcVersion10 => "OIDC_VERSION_1_0",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_VERSION_1_0" => Some(Self::OidcVersion10),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OidcTokenType {
Bearer = 0,
Jwt = 1,
}
impl OidcTokenType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Bearer => "OIDC_TOKEN_TYPE_BEARER",
Self::Jwt => "OIDC_TOKEN_TYPE_JWT",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OIDC_TOKEN_TYPE_BEARER" => Some(Self::Bearer),
"OIDC_TOKEN_TYPE_JWT" => Some(Self::Jwt),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SamlConfig {
#[prost(message, optional, tag="3")]
pub login_version: ::core::option::Option<LoginVersion>,
#[prost(oneof="saml_config::Metadata", tags="1, 2")]
pub metadata: ::core::option::Option<saml_config::Metadata>,
}
pub mod saml_config {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Metadata {
#[prost(bytes, tag="1")]
MetadataXml(::prost::alloc::vec::Vec<u8>),
#[prost(string, tag="2")]
MetadataUrl(::prost::alloc::string::String),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Application {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag="3")]
pub change_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(enumeration="AppState", tag="4")]
pub state: i32,
#[prost(string, tag="5")]
pub name: ::prost::alloc::string::String,
#[prost(oneof="application::Config", tags="6, 7, 8")]
pub config: ::core::option::Option<application::Config>,
}
pub mod application {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Config {
#[prost(message, tag="6")]
OidcConfig(super::OidcConfig),
#[prost(message, tag="7")]
ApiConfig(super::ApiConfig),
#[prost(message, tag="8")]
SamlConfig(super::SamlConfig),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ApplicationSearchFilter {
#[prost(oneof="application_search_filter::Filter", tags="1, 2, 3, 4, 5")]
pub filter: ::core::option::Option<application_search_filter::Filter>,
}
pub mod application_search_filter {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Filter {
#[prost(message, tag="1")]
NameFilter(super::ApplicationNameQuery),
#[prost(enumeration="super::AppState", tag="2")]
StateFilter(i32),
#[prost(bool, tag="3")]
ApiAppOnly(bool),
#[prost(bool, tag="4")]
OidcAppOnly(bool),
#[prost(bool, tag="5")]
SamlAppOnly(bool),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ApplicationNameQuery {
#[prost(string, tag="1")]
pub name: ::prost::alloc::string::String,
#[prost(enumeration="super::super::filter::v2::TextFilterMethod", tag="2")]
pub method: i32,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ApplicationKey {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub application_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub project_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="4")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag="5")]
pub organization_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="6")]
pub expiration_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AppState {
Unspecified = 0,
Active = 1,
Inactive = 2,
Removed = 3,
}
impl AppState {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "APP_STATE_UNSPECIFIED",
Self::Active => "APP_STATE_ACTIVE",
Self::Inactive => "APP_STATE_INACTIVE",
Self::Removed => "APP_STATE_REMOVED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"APP_STATE_UNSPECIFIED" => Some(Self::Unspecified),
"APP_STATE_ACTIVE" => Some(Self::Active),
"APP_STATE_INACTIVE" => Some(Self::Inactive),
"APP_STATE_REMOVED" => Some(Self::Removed),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum AppSorting {
AppSortById = 0,
AppSortByName = 1,
AppSortByState = 2,
AppSortByCreationDate = 3,
AppSortByChangeDate = 4,
}
impl AppSorting {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::AppSortById => "APP_SORT_BY_ID",
Self::AppSortByName => "APP_SORT_BY_NAME",
Self::AppSortByState => "APP_SORT_BY_STATE",
Self::AppSortByCreationDate => "APP_SORT_BY_CREATION_DATE",
Self::AppSortByChangeDate => "APP_SORT_BY_CHANGE_DATE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"APP_SORT_BY_ID" => Some(Self::AppSortById),
"APP_SORT_BY_NAME" => Some(Self::AppSortByName),
"APP_SORT_BY_STATE" => Some(Self::AppSortByState),
"APP_SORT_BY_CREATION_DATE" => Some(Self::AppSortByCreationDate),
"APP_SORT_BY_CHANGE_DATE" => Some(Self::AppSortByChangeDate),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ApplicationKeysSorting {
ApplicationKeysSortById = 0,
ApplicationKeysSortByProjectId = 1,
ApplicationKeysSortByApplicationId = 2,
ApplicationKeysSortByCreationDate = 3,
ApplicationKeysSortByOrganizationId = 4,
ApplicationKeysSortByExpiration = 5,
ApplicationKeysSortByType = 6,
}
impl ApplicationKeysSorting {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::ApplicationKeysSortById => "APPLICATION_KEYS_SORT_BY_ID",
Self::ApplicationKeysSortByProjectId => "APPLICATION_KEYS_SORT_BY_PROJECT_ID",
Self::ApplicationKeysSortByApplicationId => "APPLICATION_KEYS_SORT_BY_APPLICATION_ID",
Self::ApplicationKeysSortByCreationDate => "APPLICATION_KEYS_SORT_BY_CREATION_DATE",
Self::ApplicationKeysSortByOrganizationId => "APPLICATION_KEYS_SORT_BY_ORGANIZATION_ID",
Self::ApplicationKeysSortByExpiration => "APPLICATION_KEYS_SORT_BY_EXPIRATION",
Self::ApplicationKeysSortByType => "APPLICATION_KEYS_SORT_BY_TYPE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"APPLICATION_KEYS_SORT_BY_ID" => Some(Self::ApplicationKeysSortById),
"APPLICATION_KEYS_SORT_BY_PROJECT_ID" => Some(Self::ApplicationKeysSortByProjectId),
"APPLICATION_KEYS_SORT_BY_APPLICATION_ID" => Some(Self::ApplicationKeysSortByApplicationId),
"APPLICATION_KEYS_SORT_BY_CREATION_DATE" => Some(Self::ApplicationKeysSortByCreationDate),
"APPLICATION_KEYS_SORT_BY_ORGANIZATION_ID" => Some(Self::ApplicationKeysSortByOrganizationId),
"APPLICATION_KEYS_SORT_BY_EXPIRATION" => Some(Self::ApplicationKeysSortByExpiration),
"APPLICATION_KEYS_SORT_BY_TYPE" => Some(Self::ApplicationKeysSortByType),
_ => None,
}
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateApplicationRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub name: ::prost::alloc::string::String,
#[prost(oneof="create_application_request::CreationRequestType", tags="4, 5, 6")]
pub creation_request_type: ::core::option::Option<create_application_request::CreationRequestType>,
}
pub mod create_application_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum CreationRequestType {
#[prost(message, tag="4")]
OidcRequest(super::CreateOidcApplicationRequest),
#[prost(message, tag="5")]
SamlRequest(super::CreateSamlApplicationRequest),
#[prost(message, tag="6")]
ApiRequest(super::CreateApiApplicationRequest),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateApplicationResponse {
#[prost(string, tag="1")]
pub app_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(oneof="create_application_response::CreationResponseType", tags="3, 4, 5")]
pub creation_response_type: ::core::option::Option<create_application_response::CreationResponseType>,
}
pub mod create_application_response {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum CreationResponseType {
#[prost(message, tag="3")]
OidcResponse(super::CreateOidcApplicationResponse),
#[prost(message, tag="4")]
SamlResponse(super::CreateSamlApplicationResponse),
#[prost(message, tag="5")]
ApiResponse(super::CreateApiApplicationResponse),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateOidcApplicationRequest {
#[prost(string, repeated, tag="1")]
pub redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcResponseType", repeated, packed="false", tag="2")]
pub response_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcGrantType", repeated, packed="false", tag="3")]
pub grant_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcAppType", tag="4")]
pub app_type: i32,
#[prost(enumeration="OidcAuthMethodType", tag="5")]
pub auth_method_type: i32,
#[prost(string, repeated, tag="6")]
pub post_logout_redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcVersion", tag="7")]
pub version: i32,
#[prost(bool, tag="8")]
pub dev_mode: bool,
#[prost(enumeration="OidcTokenType", tag="9")]
pub access_token_type: i32,
#[prost(bool, tag="10")]
pub access_token_role_assertion: bool,
#[prost(bool, tag="11")]
pub id_token_role_assertion: bool,
#[prost(bool, tag="12")]
pub id_token_userinfo_assertion: bool,
#[prost(message, optional, tag="13")]
pub clock_skew: ::core::option::Option<::pbjson_types::Duration>,
#[prost(string, repeated, tag="14")]
pub additional_origins: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(bool, tag="15")]
pub skip_native_app_success_page: bool,
#[prost(string, tag="16")]
pub back_channel_logout_uri: ::prost::alloc::string::String,
#[prost(message, optional, tag="17")]
pub login_version: ::core::option::Option<LoginVersion>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateOidcApplicationResponse {
#[prost(string, tag="1")]
pub client_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub client_secret: ::prost::alloc::string::String,
#[prost(bool, tag="3")]
pub none_compliant: bool,
#[prost(message, repeated, tag="4")]
pub compliance_problems: ::prost::alloc::vec::Vec<OidcLocalizedMessage>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateSamlApplicationRequest {
#[prost(message, optional, tag="3")]
pub login_version: ::core::option::Option<LoginVersion>,
#[prost(oneof="create_saml_application_request::Metadata", tags="1, 2")]
pub metadata: ::core::option::Option<create_saml_application_request::Metadata>,
}
pub mod create_saml_application_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Metadata {
#[prost(bytes, tag="1")]
MetadataXml(::prost::alloc::vec::Vec<u8>),
#[prost(string, tag="2")]
MetadataUrl(::prost::alloc::string::String),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CreateSamlApplicationResponse {
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CreateApiApplicationRequest {
#[prost(enumeration="ApiAuthMethodType", tag="1")]
pub auth_method_type: i32,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateApiApplicationResponse {
#[prost(string, tag="1")]
pub client_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub client_secret: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateApplicationRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub name: ::prost::alloc::string::String,
#[prost(oneof="update_application_request::UpdateRequestType", tags="4, 5, 6")]
pub update_request_type: ::core::option::Option<update_application_request::UpdateRequestType>,
}
pub mod update_application_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum UpdateRequestType {
#[prost(message, tag="4")]
SamlConfigurationRequest(super::UpdateSamlApplicationConfigurationRequest),
#[prost(message, tag="5")]
OidcConfigurationRequest(super::UpdateOidcApplicationConfigurationRequest),
#[prost(message, tag="6")]
ApiConfigurationRequest(super::UpdateApiApplicationConfigurationRequest),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct UpdateApplicationResponse {
#[prost(message, optional, tag="2")]
pub change_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateSamlApplicationConfigurationRequest {
#[prost(message, optional, tag="3")]
pub login_version: ::core::option::Option<LoginVersion>,
#[prost(oneof="update_saml_application_configuration_request::Metadata", tags="1, 2")]
pub metadata: ::core::option::Option<update_saml_application_configuration_request::Metadata>,
}
pub mod update_saml_application_configuration_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Metadata {
#[prost(bytes, tag="1")]
MetadataXml(::prost::alloc::vec::Vec<u8>),
#[prost(string, tag="2")]
MetadataUrl(::prost::alloc::string::String),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateOidcApplicationConfigurationRequest {
#[prost(string, repeated, tag="1")]
pub redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcResponseType", repeated, packed="false", tag="2")]
pub response_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcGrantType", repeated, packed="false", tag="3")]
pub grant_types: ::prost::alloc::vec::Vec<i32>,
#[prost(enumeration="OidcAppType", optional, tag="4")]
pub app_type: ::core::option::Option<i32>,
#[prost(enumeration="OidcAuthMethodType", optional, tag="5")]
pub auth_method_type: ::core::option::Option<i32>,
#[prost(string, repeated, tag="6")]
pub post_logout_redirect_uris: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration="OidcVersion", optional, tag="7")]
pub version: ::core::option::Option<i32>,
#[prost(bool, optional, tag="8")]
pub dev_mode: ::core::option::Option<bool>,
#[prost(enumeration="OidcTokenType", optional, tag="9")]
pub access_token_type: ::core::option::Option<i32>,
#[prost(bool, optional, tag="10")]
pub access_token_role_assertion: ::core::option::Option<bool>,
#[prost(bool, optional, tag="11")]
pub id_token_role_assertion: ::core::option::Option<bool>,
#[prost(bool, optional, tag="12")]
pub id_token_userinfo_assertion: ::core::option::Option<bool>,
#[prost(message, optional, tag="13")]
pub clock_skew: ::core::option::Option<::pbjson_types::Duration>,
#[prost(string, repeated, tag="14")]
pub additional_origins: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(bool, optional, tag="15")]
pub skip_native_app_success_page: ::core::option::Option<bool>,
#[prost(string, optional, tag="16")]
pub back_channel_logout_uri: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="17")]
pub login_version: ::core::option::Option<LoginVersion>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct UpdateApiApplicationConfigurationRequest {
#[prost(enumeration="ApiAuthMethodType", tag="1")]
pub auth_method_type: i32,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetApplicationRequest {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetApplicationResponse {
#[prost(message, optional, tag="1")]
pub app: ::core::option::Option<Application>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteApplicationRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DeleteApplicationResponse {
#[prost(message, optional, tag="1")]
pub deletion_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeactivateApplicationRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DeactivateApplicationResponse {
#[prost(message, optional, tag="1")]
pub deactivation_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReactivateApplicationRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ReactivateApplicationResponse {
#[prost(message, optional, tag="1")]
pub reactivation_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegenerateClientSecretRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub application_id: ::prost::alloc::string::String,
#[prost(oneof="regenerate_client_secret_request::AppType", tags="3, 4")]
pub app_type: ::core::option::Option<regenerate_client_secret_request::AppType>,
}
pub mod regenerate_client_secret_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
pub enum AppType {
#[prost(bool, tag="3")]
IsOidc(bool),
#[prost(bool, tag="4")]
IsApi(bool),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegenerateClientSecretResponse {
#[prost(string, tag="1")]
pub client_secret: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListApplicationsRequest {
#[prost(string, tag="1")]
pub project_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub pagination: ::core::option::Option<super::super::filter::v2::PaginationRequest>,
#[prost(message, repeated, tag="3")]
pub filters: ::prost::alloc::vec::Vec<ApplicationSearchFilter>,
#[prost(enumeration="AppSorting", tag="4")]
pub sorting_column: i32,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListApplicationsResponse {
#[prost(message, repeated, tag="1")]
pub applications: ::prost::alloc::vec::Vec<Application>,
#[prost(message, optional, tag="2")]
pub pagination: ::core::option::Option<super::super::filter::v2::PaginationResponse>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateApplicationKeyRequest {
#[prost(string, tag="1")]
pub app_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub project_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub expiration_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateApplicationKeyResponse {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(bytes="vec", tag="3")]
pub key_details: ::prost::alloc::vec::Vec<u8>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteApplicationKeyRequest {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub application_id: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub organization_id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DeleteApplicationKeyResponse {
#[prost(message, optional, tag="1")]
pub deletion_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetApplicationKeyRequest {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub project_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub application_id: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub organization_id: ::prost::alloc::string::String,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetApplicationKeyResponse {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub creation_date: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag="3")]
pub expiration_date: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListApplicationKeysRequest {
#[prost(message, optional, tag="1")]
pub pagination: ::core::option::Option<super::super::filter::v2::PaginationRequest>,
#[prost(enumeration="ApplicationKeysSorting", tag="2")]
pub sorting_column: i32,
#[prost(oneof="list_application_keys_request::ResourceId", tags="3, 4, 5")]
pub resource_id: ::core::option::Option<list_application_keys_request::ResourceId>,
}
pub mod list_application_keys_request {
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum ResourceId {
#[prost(string, tag="3")]
ApplicationId(::prost::alloc::string::String),
#[prost(string, tag="4")]
ProjectId(::prost::alloc::string::String),
#[prost(string, tag="5")]
OrganizationId(::prost::alloc::string::String),
}
}
#[derive(::serde::Serialize, ::serde::Deserialize)]
#[serde(crate = "serde", rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListApplicationKeysResponse {
#[prost(message, repeated, tag="1")]
pub keys: ::prost::alloc::vec::Vec<ApplicationKey>,
#[prost(message, optional, tag="2")]
pub pagination: ::core::option::Option<super::super::filter::v2::PaginationResponse>,
}
include!("zitadel.app.v2beta.tonic.rs");