#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SendPasskeyRegistrationLink {
#[prost(string, optional, tag="1")]
pub url_template: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReturnPasskeyRegistrationCode {
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PasskeyRegistrationCode {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub code: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PasskeyAuthenticator {
Unspecified = 0,
Platform = 1,
CrossPlatform = 2,
}
impl PasskeyAuthenticator {
pub fn as_str_name(&self) -> &'static str {
match self {
PasskeyAuthenticator::Unspecified => "PASSKEY_AUTHENTICATOR_UNSPECIFIED",
PasskeyAuthenticator::Platform => "PASSKEY_AUTHENTICATOR_PLATFORM",
PasskeyAuthenticator::CrossPlatform => "PASSKEY_AUTHENTICATOR_CROSS_PLATFORM",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PASSKEY_AUTHENTICATOR_UNSPECIFIED" => Some(Self::Unspecified),
"PASSKEY_AUTHENTICATOR_PLATFORM" => Some(Self::Platform),
"PASSKEY_AUTHENTICATOR_CROSS_PLATFORM" => Some(Self::CrossPlatform),
_ => None,
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHumanEmail {
#[prost(string, tag="1")]
pub email: ::prost::alloc::string::String,
#[prost(oneof="set_human_email::Verification", tags="2, 3, 4")]
pub verification: ::core::option::Option<set_human_email::Verification>,
}
pub mod set_human_email {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Verification {
#[prost(message, tag="2")]
SendCode(super::SendEmailVerificationCode),
#[prost(message, tag="3")]
ReturnCode(super::ReturnEmailVerificationCode),
#[prost(bool, tag="4")]
IsVerified(bool),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SendEmailVerificationCode {
#[prost(string, optional, tag="1")]
pub url_template: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReturnEmailVerificationCode {
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdpInformation {
#[prost(string, tag="2")]
pub idp_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub user_name: ::prost::alloc::string::String,
#[prost(message, optional, tag="5")]
pub raw_information: ::core::option::Option<::pbjson_types::Struct>,
#[prost(oneof="idp_information::Access", tags="1")]
pub access: ::core::option::Option<idp_information::Access>,
}
pub mod idp_information {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Access {
#[prost(message, tag="1")]
Oauth(super::IdpoAuthAccessInformation),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdpoAuthAccessInformation {
#[prost(string, tag="1")]
pub access_token: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub id_token: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdpLink {
#[prost(string, tag="1")]
pub idp_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub user_name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetUserPassword {
#[prost(oneof="set_user_password::Type", tags="1, 2")]
pub r#type: ::core::option::Option<set_user_password::Type>,
}
pub mod set_user_password {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Type {
#[prost(message, tag="1")]
Password(super::Password),
#[prost(message, tag="2")]
HashedPassword(super::HashedPassword),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Password {
#[prost(string, tag="1")]
pub password: ::prost::alloc::string::String,
#[prost(bool, tag="2")]
pub change_required: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HashedPassword {
#[prost(string, tag="1")]
pub hash: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub algorithm: ::prost::alloc::string::String,
#[prost(bool, tag="3")]
pub change_required: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct User {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHumanProfile {
#[prost(string, tag="1")]
pub first_name: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub last_name: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub nick_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub display_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub preferred_language: ::core::option::Option<::prost::alloc::string::String>,
#[prost(enumeration="Gender", optional, tag="6")]
pub gender: ::core::option::Option<i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetMetadataEntry {
#[prost(string, tag="1")]
pub key: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="2")]
pub value: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Gender {
Unspecified = 0,
Female = 1,
Male = 2,
Diverse = 3,
}
impl Gender {
pub fn as_str_name(&self) -> &'static str {
match self {
Gender::Unspecified => "GENDER_UNSPECIFIED",
Gender::Female => "GENDER_FEMALE",
Gender::Male => "GENDER_MALE",
Gender::Diverse => "GENDER_DIVERSE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"GENDER_UNSPECIFIED" => Some(Self::Unspecified),
"GENDER_FEMALE" => Some(Self::Female),
"GENDER_MALE" => Some(Self::Male),
"GENDER_DIVERSE" => Some(Self::Diverse),
_ => None,
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AddHumanUserRequest {
#[prost(string, optional, tag="1")]
pub user_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub username: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="3")]
pub organisation: ::core::option::Option<super::super::object::v2alpha::Organisation>,
#[prost(message, optional, tag="4")]
pub profile: ::core::option::Option<SetHumanProfile>,
#[prost(message, optional, tag="5")]
pub email: ::core::option::Option<SetHumanEmail>,
#[prost(message, repeated, tag="6")]
pub metadata: ::prost::alloc::vec::Vec<SetMetadataEntry>,
#[prost(message, repeated, tag="9")]
pub idp_links: ::prost::alloc::vec::Vec<IdpLink>,
#[prost(oneof="add_human_user_request::PasswordType", tags="7, 8")]
pub password_type: ::core::option::Option<add_human_user_request::PasswordType>,
}
pub mod add_human_user_request {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum PasswordType {
#[prost(message, tag="7")]
Password(super::Password),
#[prost(message, tag="8")]
HashedPassword(super::HashedPassword),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AddHumanUserResponse {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(string, optional, tag="3")]
pub email_code: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetEmailRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub email: ::prost::alloc::string::String,
#[prost(oneof="set_email_request::Verification", tags="3, 4, 5")]
pub verification: ::core::option::Option<set_email_request::Verification>,
}
pub mod set_email_request {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Verification {
#[prost(message, tag="3")]
SendCode(super::SendEmailVerificationCode),
#[prost(message, tag="4")]
ReturnCode(super::ReturnEmailVerificationCode),
#[prost(bool, tag="5")]
IsVerified(bool),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetEmailResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(string, optional, tag="2")]
pub verification_code: ::core::option::Option<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyEmailRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub verification_code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyEmailResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterPasskeyRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub code: ::core::option::Option<PasskeyRegistrationCode>,
#[prost(enumeration="PasskeyAuthenticator", tag="3")]
pub authenticator: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterPasskeyResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(string, tag="2")]
pub passkey_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub public_key_credential_creation_options: ::core::option::Option<::pbjson_types::Struct>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyPasskeyRegistrationRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub passkey_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub public_key_credential: ::core::option::Option<::pbjson_types::Struct>,
#[prost(string, tag="4")]
pub passkey_name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyPasskeyRegistrationResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterU2fRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterU2fResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(string, tag="2")]
pub u2f_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub public_key_credential_creation_options: ::core::option::Option<::pbjson_types::Struct>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyU2fRegistrationRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub u2f_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub public_key_credential: ::core::option::Option<::pbjson_types::Struct>,
#[prost(string, tag="4")]
pub token_name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyU2fRegistrationResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterOtpRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RegisterOtpResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(string, tag="2")]
pub uri: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub secret: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyOtpRegistrationRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VerifyOtpRegistrationResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreatePasskeyRegistrationLinkRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(oneof="create_passkey_registration_link_request::Medium", tags="2, 3")]
pub medium: ::core::option::Option<create_passkey_registration_link_request::Medium>,
}
pub mod create_passkey_registration_link_request {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Medium {
#[prost(message, tag="2")]
SendLink(super::SendPasskeyRegistrationLink),
#[prost(message, tag="3")]
ReturnCode(super::ReturnPasskeyRegistrationCode),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreatePasskeyRegistrationLinkResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(message, optional, tag="2")]
pub code: ::core::option::Option<PasskeyRegistrationCode>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartIdentityProviderFlowRequest {
#[prost(string, tag="1")]
pub idp_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub success_url: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub failure_url: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartIdentityProviderFlowResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(oneof="start_identity_provider_flow_response::NextStep", tags="2")]
pub next_step: ::core::option::Option<start_identity_provider_flow_response::NextStep>,
}
pub mod start_identity_provider_flow_response {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum NextStep {
#[prost(string, tag="2")]
AuthUrl(::prost::alloc::string::String),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RetrieveIdentityProviderInformationRequest {
#[prost(string, tag="1")]
pub intent_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RetrieveIdentityProviderInformationResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
#[prost(message, optional, tag="2")]
pub idp_information: ::core::option::Option<IdpInformation>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AddIdpLinkRequest {
#[prost(string, tag="1")]
pub user_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub idp_link: ::core::option::Option<IdpLink>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AddIdpLinkResponse {
#[prost(message, optional, tag="1")]
pub details: ::core::option::Option<super::super::object::v2alpha::Details>,
}
include!("zitadel.user.v2alpha.tonic.rs");