diff --git a/src/types/chat.rs b/src/types/chat.rs
index 1855e775..dda0cfbb 100644
--- a/src/types/chat.rs
+++ b/src/types/chat.rs
@@ -188,13 +188,19 @@ pub enum PublicChatKind {
 }
 
 #[serde_with_macros::skip_serializing_none]
-#[derive(Clone, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)]
+#[derive(Clone, Default, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)]
 #[non_exhaustive]
 pub struct PublicChatChannel {
     /// A username, for private chats, supergroups and channels if available.
     pub username: Option<String>,
 }
 
+impl PublicChatChannel {
+    pub fn new() -> Self {
+        Self::default()
+    }
+}
+
 #[serde_with_macros::skip_serializing_none]
 #[derive(Clone, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)]
 #[non_exhaustive]