
Overview
Gogram is a modern, elegant and concurrent MTProto API framework. It enables you to easily interact with the main Telegram API through a user account (custom client) or a bot identity (bot API alternative) using Go.Gogram is currently in its stable release stage. While there may still be a few bugs, feel free to use it and provide feedback if you encounter any issues or rough edges. 😊
Setup
Please note that gogram requires Go 1.18 or later to support go-generics.- Latest Stable
- Master Branch
- Dev Branch
Verify Installation
Quick Start
New to Go? Check out Go by Example for a quick introduction to the language.
Try the Live Demo
Try JuliaBot - modular bot example. View Source
Learn More
Authentication
Learn how to authenticate as a bot or user account.
Event Handlers
Handle messages and other updates.
API Methods
Explore available methods and features.
TL Reference
Complete Telegram Layer (TL) schema reference.
Examples
View complete examples and use cases.
Why Gogram?
Pure Go Implementation
Pure Go Implementation
Written entirely in Go with no external dependencies. Native MTProto implementation means you get full access to Telegram’s features without limitations.
Type-Safe & Modern
Type-Safe & Modern
Leverages Go 1.18+ generics for compile-time type safety. Clean, intuitive API design that follows Go best practices.
High Performance
High Performance
Built for concurrent operations with goroutines. Efficient connection pooling and automatic flood control. Optimized for both bots and user clients.
Feature Complete
Feature Complete
Full MTProto protocol support including file transfers, media handling, inline bots, payments, and all Telegram features. Regular updates to support new Telegram features.
Features
Type-Safe
Full type safety with Go’s strong typing system.
Concurrent
Built for concurrent operations and high performance.
Modern API
Clean, intuitive API that’s easy to use.
MTProto Native
Full native implementation of MTProto protocol.