Integration reference
Telegram Bot Trigger and Action reference
Start from Telegram Bot API updates and send messages through a customer-owned bot.
Authentication
Store the bot token issued by BotFather in a connected Telegram account.
- Trigger account type:
api_key; reconnect byreplace_credentials. - Action connection type:
api_key; available modes: Connected Telegram bot.
Create or reuse the account from a Trigger or Action dialog, or manage it under Settings → Connected accounts. See Authentication and permissions for scopes and access diagnostics, or Connected accounts for reuse, reconnect, revocation, and credential rotation.
Scopes and permissions
The Trigger manifest does not declare a fixed base OAuth scope list. Installation access, API credentials, or the selected event configuration can still control available resources.
View 1 provider permissions or credential requirements
The bot must be allowed to send messages to the target chat
Operation-specific requirements appear in the tables below. Custom event selections can add scopes dynamically, so the current Trigger or Action dialog remains authoritative for the exact consent request.
Use Telegram Bot as a Trigger
The current provider manifest contains 29 available Trigger definitions. Representative definitions include:
- Any Telegram Update
- New Message
- Edited Message
- New Channel Post
- New Callback Query
- Chat Member Changed
View all 29 available Trigger definitions
| Trigger | Manifest key | Delivery | Additional scopes |
|---|---|---|---|
| Any Telegram Update | telegram.any_event.instant | instant | None declared |
| Custom Telegram Updates | telegram.custom_webhook_events.instant | instant | None declared |
| New Message | telegram.message.instant | instant | None declared |
| Edited Message | telegram.edited_message.instant | instant | None declared |
| New Channel Post | telegram.channel_post.instant | instant | None declared |
| Edited Channel Post | telegram.edited_channel_post.instant | instant | None declared |
| Business Connection Changed | telegram.business_connection.instant | instant | None declared |
| New Business Message | telegram.business_message.instant | instant | None declared |
| Edited Business Message | telegram.edited_business_message.instant | instant | None declared |
| Deleted Business Messages | telegram.deleted_business_messages.instant | instant | None declared |
| New Guest Message | telegram.guest_message.instant | instant | None declared |
| Message Reaction Changed | telegram.message_reaction.instant | instant | None declared |
| Message Reaction Count Changed | telegram.message_reaction_count.instant | instant | None declared |
| New Inline Query | telegram.inline_query.instant | instant | None declared |
| Inline Result Chosen | telegram.chosen_inline_result.instant | instant | None declared |
| New Callback Query | telegram.callback_query.instant | instant | None declared |
| New Shipping Query | telegram.shipping_query.instant | instant | None declared |
| New Pre-checkout Query | telegram.pre_checkout_query.instant | instant | None declared |
| Paid Media Purchased | telegram.purchased_paid_media.instant | instant | None declared |
| Poll Updated | telegram.poll.instant | instant | None declared |
| Poll Answer Updated | telegram.poll_answer.instant | instant | None declared |
| Bot Membership Changed | telegram.my_chat_member.instant | instant | None declared |
| Chat Member Changed | telegram.chat_member.instant | instant | None declared |
| New Chat Join Request | telegram.chat_join_request.instant | instant | None declared |
| Chat Boost Updated | telegram.chat_boost.instant | instant | None declared |
| Chat Boost Removed | telegram.removed_chat_boost.instant | instant | None declared |
| Managed Bot Changed | telegram.managed_bot.instant | instant | None declared |
| Subscription Changed | telegram.subscription.instant | instant | None declared |
| Message Generation Stopped | telegram.stopped_message_generation.instant | instant | None declared |
Choose the narrowest event definition that fits the Workflow. Configure provider-specific resource and event filters in the Source dialog before adding broader Workflow Filters.
Use Telegram Bot Actions
The current Action manifest contains 1 operations. Representative Actions include:
- Send Message
View all 1 available Action definitions
| Action | Manifest key | Access and auth | Manifest rate limit |
|---|---|---|---|
| Send Message | telegram.send_message | The bot must be allowed to send messages to the target chatFastHook-managed account | 1/second |
The Action editor reads its required permissions, fields, remote resource pickers, output schema, and rate limit from the provider manifest. Available fields can change with the selected operation and authentication mode.
Build a Workflow
- Create a Source using a Telegram Bot Trigger definition.
- Create a Workflow with that Source as its Trigger.
- Add the required Telegram Bot Action and select the connected account.
- Map Trigger or earlier-Step data into the Action fields with the field picker.
- Add a Filter, Paths, Delay, or Transformation when the route needs it.
- Activate the Workflow, produce a controlled event, and verify the run in Audit and in Telegram Bot.
Troubleshooting Telegram Bot
- The account is missing or cannot be selected
- Confirm the active FastHook team, provider, account status, and authentication mode. A disabled or revoked account cannot execute an Action.
- A resource picker is empty
- Verify that the connected provider identity can access the resource itself. OAuth consent does not add workspace, repository, channel, drive, project, base, or record permissions.
- The editor asks for additional scopes
- Reconnect the same account from the affected Trigger or Action so FastHook can request its current manifest scopes. Then reopen the editor and select the resource again.
- An active Workflow returns 401, 403, or a permission error
- Compare the selected operation’s access requirements below with the account recorded in Audit. Check provider-side membership and object access before repeating the Action.
- The provider returns 429 or a temporary 5xx
- Inspect the Step attempt and retryability in Audit. FastHook can retry temporary failures, but provider quotas and idempotency rules still apply.
Provider-specific checks
- Keep the bot token secret and rotate it with BotFather when compromised.
- Filter bot-originated messages or commands when a response could create an event loop.