| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- syntax = "proto3";
- package chatto.api.v1;
- import "chatto/api/v1/common.proto";
- // Public server profile, identity, and branding fields.
- message ServerPublicProfile {
- // Display name of the Chatto server.
- string name = 1;
- // Server software version.
- string version = 2;
- // Optional server logo URL.
- optional string logo_url = 3;
- // Optional server banner URL.
- optional string banner_url = 4;
- // Optional welcome message.
- optional string welcome_message = 5;
- // Optional server description.
- optional string description = 6;
- }
- // Policy controlling whether self-service account creation requires an invitation.
- enum AccountCreationPolicy {
- // Compatibility value used by older servers. Clients treat it as open.
- ACCOUNT_CREATION_POLICY_UNSPECIFIED = 0;
- // Self-service account creation does not require an invitation.
- ACCOUNT_CREATION_POLICY_OPEN = 1;
- // Every self-service account creation path requires a valid invitation.
- ACCOUNT_CREATION_POLICY_INVITE_ONLY = 2;
- }
- // Login and registration options exposed before authentication.
- message ServerLogin {
- // Whether users can create accounts through the public UI.
- bool direct_registration_enabled = 1;
- // Configured login providers.
- repeated ProviderMetadata providers = 2;
- // URL for the legacy authorization flow, when enabled.
- string authorize_url = 3;
- // Admission policy for direct registration and provider auto-provisioning.
- AccountCreationPolicy account_creation_policy = 4;
- // Whether users can sign in directly with a username or email address and password.
- // Absent on older servers, where clients should treat direct login as enabled.
- optional bool direct_login_enabled = 5;
- }
|