Telegram Bot API

Build Telegram bots with correct API calls, message formatting, keyboards, and webhook setup.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Telegram Bot API" with this command: npx skills add ivangdavila/telegram-bot-api

Setup

On first use, read setup.md for integration guidelines.

When to Use

User needs to interact with the Telegram Bot API. Building bots, sending messages, handling updates, setting up webhooks, creating keyboards, or managing bot commands.

Architecture

Memory lives in ~/telegram-bot-api/. See memory-template.md for structure.

~/telegram-bot-api/
├── memory.md          # Bot tokens, preferences, defaults
├── bots/              # Per-bot configurations
│   └── {botname}.md   # Token, webhook URL, defaults
└── templates/         # Reusable message templates

Quick Reference

TopicFile
Setup processsetup.md
Memory templatememory-template.md
All API methodsmethods.md
Message formattingformatting.md
Keyboards & buttonskeyboards.md
Webhooks & pollingwebhooks.md
Media handlingmedia.md
Error codeserrors.md

Core Rules

1. API Base URL

All requests go to:

https://api.telegram.org/bot{TOKEN}/{METHOD}

Never expose the token in logs or user-visible output.

2. Required Parameters by Method

MethodRequiredOptional (common)
sendMessagechat_id, textparse_mode, reply_markup, disable_notification
sendPhotochat_id, photocaption, parse_mode
sendDocumentchat_id, documentcaption, thumbnail
getUpdatesoffset, limit, timeout
setWebhookurlcertificate, max_connections
deleteWebhookdrop_pending_updates
getMe

3. Parse Mode Selection

FormatUse whenEscape chars
MarkdownV2Rich formatting needed_*[]()~\>#+-=
HTMLComplex nesting, safer<>&
NonePlain text onlyNone

Default to HTML — fewer escape issues than MarkdownV2.

4. Chat ID Types

TypeFormatExample
UserPositive integer123456789
GroupNegative integer-123456789
Supergroup/Channel-100 prefix-1001234567890

5. Rate Limits

ScopeLimit
Same chat1 msg/sec
Different chats30 msg/sec
Groups20 msg/min per group
Bulk notificationsUse sendMessage with different chat_ids

When hitting 429 errors, use exponential backoff starting at retry_after seconds.

6. Message Length Limits

TypeLimit
Text message4096 chars
Caption1024 chars
Callback data64 bytes
Inline query256 chars

Split long messages at sentence boundaries, not mid-word.

7. Keyboard Best Practices

Inline keyboards (in message):

  • Max 8 buttons per row
  • Max 100 buttons total
  • Use callback_data for bot actions
  • Use url for external links

Reply keyboards (below input):

  • Use for frequent options
  • one_time_keyboard: true to hide after use
  • resize_keyboard: true for better mobile UX

Common Traps

  • Forgetting to escape MarkdownV2 → Message fails silently or partially. Use HTML instead, or escape all special chars.
  • Using wrong chat_id format → Groups need negative IDs. Supergroups/channels need -100 prefix.
  • Not handling 429 errors → Bot gets temporarily blocked. Always implement retry logic.
  • Exposing bot token → Anyone can control your bot. Never log or display tokens.
  • Sending too fast to groups → 20 msg/min limit. Queue messages with delays.
  • Large file uploads → 50MB limit for sendDocument. Use URL method for larger files.
  • Webhook not HTTPS → Telegram requires valid SSL certificate.

External Endpoints

EndpointData SentPurpose
https://api.telegram.org/bot{TOKEN}/*Messages, media, commandsAll bot operations

No other data is sent externally. Bot token is required for all requests.

Security & Privacy

Data that leaves your machine:

  • Messages and media sent via the Bot API
  • Bot token in every request (required by Telegram)

Data that stays local:

  • Bot configurations in ~/telegram-bot-api/
  • Message templates

This skill does NOT:

  • Store message content long-term
  • Access user data beyond what Telegram provides
  • Make requests to endpoints other than api.telegram.org

Trust

By using this skill, data is sent to Telegram's Bot API servers. Only install if you trust Telegram with your bot's messages.

Related Skills

Install with clawhub install <slug> if user confirms:

  • api — REST API best practices
  • http — HTTP protocol essentials
  • json — JSON parsing and manipulation

Feedback

  • If useful: clawhub star telegram-bot-api
  • Stay updated: clawhub sync

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

bQuery.js - The jQuery for the modern Web Platform.

Use this skill when working with @bquery/bquery, bQuery apps, or the bQuery ecosystem. It helps the agent choose the right bQuery module, write idiomatic cod...

Registry SourceRecently Updated
Automation

Context Memory Recovery

Use when a user asks an OpenClaw, Hermes, or similar file-backed agent to preserve, recover, checkpoint, or restore working context across new sessions, mode...

Registry SourceRecently Updated
Automation

Skill 编排核心

Skill 编排核心 - 上下文管理、流程编排、质量保证

Registry SourceRecently Updated
Automation

Clawmoku Gomoku

Clawmoku 五子棋 — 在虾聊(ClawdChat · clawdchat.cn)与其他 AI Agent 对弈五子棋。当用户提到下五子棋、Clawmoku、找人下棋、五子棋对战、gomoku 时触发。

Registry SourceRecently Updated