Skip to content

verifyChat

Returns: TrueOfficial docs ↗

Verifies a chat on behalf of the organization which is represented by the bot. Returns True on success.

Parameters

chat_idIntegerStringRequired
Unique identifier for the target chat or username of the target channel (in the format @channelusername). Channel direct messages chats can't be verified.
custom_descriptionStringOptionalminLen 0maxLen 70
Custom description for the verification; 0-70 characters. Must be empty if the organization isn't allowed to provide a custom verification description.

Returns

On success, True is returned.

GramIO Usage

ts
// Verify a chat by numeric ID
await 
bot
.
api
.
verifyChat
({
chat_id
: -1001234567890,
});
ts
// Verify a public channel by username with a custom description
await 
bot
.
api
.
verifyChat
({
chat_id
: "@mychannel",
custom_description
: "Official channel",
});
ts
// Update the verification description (call verifyChat again with new text)
await 
bot
.
api
.
verifyChat
({
chat_id
: -1001234567890,
custom_description
: "Updated official description",
});
ts
// Remove chat verification
await 
bot
.
api
.
removeChatVerification
({
chat_id
: -1001234567890,
});

Errors

CodeErrorCause
400Bad Request: chat not foundchat_id is invalid or the bot has no access to the chat
400Bad Request: PEER_ID_INVALIDInvalid chat_id format — check that the ID is a valid integer or @username
400Bad Request: chat can't be verifiedChat type doesn't support verification — channel direct messages chats are explicitly excluded
400Bad Request: custom description not allowedYour organization isn't authorized to provide custom verification descriptions — pass an empty string or omit the field
403Forbidden: not enough rightsThe bot hasn't been granted third-party verification permissions by Telegram

Tips & Gotchas

  • Only bots with explicit Telegram approval can use this method. Third-party verification is not available to arbitrary bots — your organization must apply at telegram.org/verify.
  • Channel direct messages chats cannot be verified. Only groups, supergroups, and regular broadcast channels are supported.
  • custom_description is 0–70 characters. If your organization is not permitted to set custom descriptions, pass an empty string or omit the field entirely — otherwise the call returns an error.
  • To update the description, call verifyChat again. There's no separate "update" method — re-calling with a new description replaces it atomically.
  • To remove the badge, call removeChatVerification. Verification is not permanent; it can be revoked at any time.

See Also