TelegramBotPHP
A very simple PHP Telegram Bot API for sending messages
 All Data Structures Functions Variables Pages
Public Member Functions | Data Fields
Telegram Class Reference

Public Member Functions

 __construct ($bot_token, $log_errors=true, array $proxy=[])
 Class constructor. More...
 
 endpoint ($api, array $content, $post=true)
 Do requests to Telegram Bot API. More...
 
 getMe ()
 A method for testing your bot. More...
 
 respondSuccess ()
 A method for responding http to Telegram. More...
 
 sendMessage (array $content)
 Send a message. More...
 
 forwardMessage (array $content)
 Forward a message. More...
 
 sendPhoto (array $content)
 Send a photo. More...
 
 sendAudio (array $content)
 Send an audio. More...
 
 sendDocument (array $content)
 Send a document. More...
 
 sendAnimation (array $content)
 Send an animation. More...
 
 sendSticker (array $content)
 Send a sticker. More...
 
 sendVideo (array $content)
 Send a video. More...
 
 sendVoice (array $content)
 Send a voice message. More...
 
 sendLocation (array $content)
 Send a location. More...
 
 editMessageLiveLocation (array $content)
 Edit Message Live Location. More...
 
 stopMessageLiveLocation (array $content)
 Stop Message Live Location. More...
 
 setChatStickerSet (array $content)
 Set Chat Sticker Set. More...
 
 deleteChatStickerSet (array $content)
 Delete Chat Sticker Set. More...
 
 sendMediaGroup (array $content)
 Send Media Group. More...
 
 sendVenue (array $content)
 Send Venue. More...
 
 sendContact (array $content)
 
 sendChatAction (array $content)
 Send a chat action. More...
 
 getUserProfilePhotos (array $content)
 Get a list of profile pictures for a user. More...
 
 getFile ($file_id)
 Use this method to get basic info about a file and prepare it for downloading. More...
 
 kickChatMember (array $content)
 Kick Chat Member. More...
 
 leaveChat (array $content)
 Leave Chat. More...
 
 unbanChatMember (array $content)
 Unban Chat Member. More...
 
 getChat (array $content)
 Get Chat Information. More...
 
 getChatAdministrators (array $content)
 
 getChatMembersCount (array $content)
 
 getChatMember (array $content)
 
 answerInlineQuery (array $content)
 
 setGameScore (array $content)
 Set Game Score. More...
 
 answerCallbackQuery (array $content)
 Answer a callback Query. More...
 
 editMessageText (array $content)
 
 editMessageCaption (array $content)
 
 editMessageReplyMarkup (array $content)
 
 downloadFile ($telegram_file_path, $local_file_path)
 Use this method to download a file. More...
 
 setWebhook ($url, $certificate= '')
 Set a WebHook for the bot. More...
 
 deleteWebhook ()
 Delete the WebHook for the bot. More...
 
 getData ()
 Get the data of the current message. More...
 
 setData (array $data)
 Set the data currently used.
 
 Text ()
 Get the text of the current message. More...
 
 Caption ()
 
 ChatID ()
 Get the chat_id of the current message. More...
 
 MessageID ()
 Get the message_id of the current message. More...
 
 ReplyToMessageID ()
 Get the reply_to_message message_id of the current message. More...
 
 ReplyToMessageFromUserID ()
 Get the reply_to_message forward_from user_id of the current message. More...
 
 Inline_Query ()
 Get the inline_query of the current update. More...
 
 Callback_Query ()
 Get the callback_query of the current update. More...
 
 Callback_ID ()
 Get the callback_query id of the current update. More...
 
 Callback_Data ()
 Get the Get the data of the current callback. More...
 
 Callback_Message ()
 Get the Get the message of the current callback. More...
 
 Callback_ChatID ()
 Get the Get the chati_id of the current callback. More...
 
 Date ()
 Get the date of the current message. More...
 
 FirstName ()
 Get the first name of the user.
 
 LastName ()
 Get the last name of the user.
 
 Username ()
 Get the username of the user.
 
 Location ()
 Get the location in the message.
 
 UpdateID ()
 Get the update_id of the message.
 
 UpdateCount ()
 Get the number of updates.
 
 UserID ()
 Get user's id of current message.
 
 FromID ()
 Get user's id of current forwarded message.
 
 FromChatID ()
 Get chat's id where current message forwarded from.
 
 messageFromGroup ()
 Tell if a message is from a group or user chat. More...
 
 messageFromGroupTitle ()
 Get the title of the group chat. More...
 
 buildKeyBoard (array $options, $onetime=false, $resize=false, $selective=true)
 Set a custom keyboard. More...
 
 buildInlineKeyBoard (array $options)
 Set an InlineKeyBoard. More...
 
 buildInlineKeyboardButton ($text, $url= '', $callback_data= '', $switch_inline_query=null, $switch_inline_query_current_chat=null, $callback_game= '', $pay= '')
 Create an InlineKeyboardButton. More...
 
 buildKeyboardButton ($text, $request_contact=false, $request_location=false)
 Create a KeyboardButton. More...
 
 buildKeyBoardHide ($selective=true)
 Hide a custom keyboard. More...
 
 buildForceReply ($selective=true)
 Display a reply interface to the user.
 
 sendInvoice (array $content)
 Send an invoice. More...
 
 answerShippingQuery (array $content)
 Answer a shipping query. More...
 
 answerPreCheckoutQuery (array $content)
 Answer a PreCheckout query. More...
 
 sendVideoNote (array $content)
 Send a video note. More...
 
 restrictChatMember (array $content)
 Restrict Chat Member. More...
 
 promoteChatMember (array $content)
 Promote Chat Member. More...
 
 exportChatInviteLink (array $content)
 
 setChatPhoto (array $content)
 Set Chat Photo. More...
 
 deleteChatPhoto (array $content)
 Delete Chat Photo. More...
 
 setChatTitle (array $content)
 Set Chat Title. More...
 
 setChatDescription (array $content)
 Set Chat Description. More...
 
 pinChatMessage (array $content)
 Pin Chat Message. More...
 
 unpinChatMessage (array $content)
 Unpin Chat Message. More...
 
 getStickerSet (array $content)
 Get Sticker Set. More...
 
 uploadStickerFile (array $content)
 Upload Sticker File. More...
 
 createNewStickerSet (array $content)
 Create New Sticker Set. More...
 
 addStickerToSet (array $content)
 Add Sticker To Set. More...
 
 setStickerPositionInSet (array $content)
 Set Sticker Position In Set. More...
 
 deleteStickerFromSet (array $content)
 Delete Sticker From Set. More...
 
 deleteMessage (array $content)
 Delete a message. More...
 
 getUpdates ($offset=0, $limit=100, $timeout=0, $update=true)
 Receive incoming messages using polling. More...
 
 serveUpdate ($update)
 Serve an update. More...
 
 getUpdateType ()
 Return current update type. More...
 

Data Fields

const INLINE_QUERY = 'inline_query'
 
const CALLBACK_QUERY = 'callback_query'
 
const EDITED_MESSAGE = 'edited_message'
 
const REPLY = 'reply'
 
const MESSAGE = 'message'
 
const PHOTO = 'photo'
 
const VIDEO = 'video'
 
const AUDIO = 'audio'
 
const VOICE = 'voice'
 
const ANIMATION = 'animation'
 
const DOCUMENT = 'document'
 
const LOCATION = 'location'
 
const CONTACT = 'contact'
 
const CHANNEL_POST = 'channel_post'
 

Detailed Description

Telegram Bot Class.

Author
Gabriele Grillo gabry.nosp@m..gri.nosp@m.llo@a.nosp@m.lice.nosp@m..it

Constructor & Destructor Documentation

__construct (   $bot_token,
  $log_errors = true,
array  $proxy = [] 
)

Class constructor.

Create a Telegram instance from the bot token

Parameters
$bot_tokenthe bot token
$log_errorsenable or disable the logging
$proxyarray with the proxy configuration (url, port, type, auth)
Returns
an instance of the class.

Member Function Documentation

addStickerToSet ( array  $content)

Add Sticker To Set.

Use this method to add a new sticker to a set created by the bot. Returns True on success.

Parameters Type Required Description
user_id Integer Yes User identifier of sticker set owner
name String Yes Sticker set name
png_sticker InputFile or String Yes Png image with the sticker, must be up to 512 kilobytes in size, dimensions must not exceed 512px, and either width or height must be exactly 512px. Pass a file_id as a String to send a file that already exists on the Telegram servers, pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. More info on Sending Files »
emojis String Yes One or more emoji corresponding to the sticker
mask_position MaskPosition Optional Position where the mask should be placed on faces
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
answerCallbackQuery ( array  $content)

Answer a callback Query.

Use this method to send answers to callback queries sent from inline keyboards. The answer will be displayed to the user as a notification at the top of the chat screen or as an alert. On success, True is returned.
Values inside $content:

Parameters Type Required Description
callback_query_id String Yes Unique identifier for the query to be answered
text String Optional Text of the notification. If not specified, nothing will be shown to the user
show_alert Boolean Optional If true, an alert will be shown by the client instead of a notification at the top of the chat screen. Defaults to false.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
answerInlineQuery ( array  $content)

Use this method to send answers to an inline query. On success, True is returned.
No more than 50 results per query are allowed.
Values inside $content:

Parameters Type Required Description
inline_query_id String Yes Unique identifier for the answered query
results Array of InlineQueryResult Yes A JSON-serialized array of results for the inline query
cache_time Integer Optional The maximum amount of time in seconds that the result of the inline query may be cached on the server. Defaults to 300.
is_personal Boolean Optional Pass True, if results may be cached on the server side only for the user that sent the query. By default, results may be returned to any user who sends the same query
next_offset String Optional Pass the offset that a client should send in the next query with the same text to receive more results. Pass an empty string if there are no more results or if you don‘t support pagination. Offset length can’t exceed 64 bytes.
switch_pm_text String Optional If passed, clients will display a button with specified text that switches the user to a private chat with the bot and sends the bot a start message with the parameter switch_pm_parameter
switch_pm_parameter String Optional Parameter for the start message sent to the bot when user presses the switch button<br>
Example: An inline bot that sends YouTube videos can ask the user to connect the bot to their YouTube account to adapt search results accordingly. To do this, it displays a ‘Connect your YouTube account’ button above the results, or even before showing any. The user presses the button, switches to a private chat with the bot and, in doing so, passes a start parameter that instructs the bot to return an oauth link. Once done, the bot can offer a switch_inline button so that the user can easily return to the chat where they wanted to use the bot&#39;s inline capabilities.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
answerPreCheckoutQuery ( array  $content)

Answer a PreCheckout query.

Once the user has confirmed their payment and shipping details, the Bot API sends the final confirmation in the form of an Update with the field pre_checkout_query. Use this method to respond to such pre-checkout queries. On success, True is returned. Note: The Bot API must receive an answer within 10 seconds after the pre-checkout query was sent.

Parameters Type Required Description
pre_checkout_query_id String Yes Unique identifier for the query to be answered
ok Boolean Yes Specify True if everything is alright (goods are available, etc.) and the bot is ready to proceed with the order. Use False if there are any problems.
error_message String Optional Required if ok is False. Error message in human readable form that explains the reason for failure to proceed with the checkout (e.g. "Sorry, somebody just bought the last of our amazing black T-shirts while you were busy filling out your payment details. Please choose a different color or garment!"). Telegram will display this message to the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
answerShippingQuery ( array  $content)

Answer a shipping query.

Once the user has confirmed their payment and shipping details, the Bot API sends the final confirmation in the form of an Update with the field pre_checkout_query. Use this method to respond to such pre-checkout queries. On success, True is returned. Note: The Bot API must receive an answer within 10 seconds after the pre-checkout query was sent.

Parameters Type Required Description
shipping_query_id String Yes Unique identifier for the query to be answered
ok Boolean Yes Specify True if delivery to the specified address is possible and False if there are any problems (for example, if delivery to the specified address is not possible)
shipping_options Array of ShippingOption Optional Required if ok is True. A JSON-serialized array of available shipping options.
error_message String Optional Required if ok is False. Error message in human readable form that explains why it is impossible to complete the order (e.g. "Sorry, delivery to your desired address is unavailable'). Telegram will display this message to the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
buildInlineKeyBoard ( array  $options)

Set an InlineKeyBoard.

This object represents an inline keyboard that appears right next to the message it belongs to.

Parameters
$optionsArray of Array of InlineKeyboardButton; Array of button rows, each represented by an Array of InlineKeyboardButton
Returns
the requested keyboard as Json.
buildInlineKeyboardButton (   $text,
  $url = '',
  $callback_data = '',
  $switch_inline_query = null,
  $switch_inline_query_current_chat = null,
  $callback_game = '',
  $pay = '' 
)

Create an InlineKeyboardButton.

This object represents one button of an inline keyboard. You must use exactly one of the optional fields.

Parameters
$textString; Array of button rows, each represented by an Array of Strings
$urlString Optional. HTTP url to be opened when button is pressed
$callback_dataString Optional. Data to be sent in a callback query to the bot when button is pressed
$switch_inline_queryString Optional. If set, pressing the button will prompt the user to select one of their chats, open that chat and insert the bot‘s username and the specified inline query in the input field. Can be empty, in which case just the bot’s username will be inserted.
$switch_inline_query_current_chatString Optional. Optional. If set, pressing the button will insert the bot‘s username and the specified inline query in the current chat's input field. Can be empty, in which case only the bot’s username will be inserted.
$callback_gameString Optional. Description of the game that will be launched when the user presses the button.
$payBoolean Optional. Specify True, to send a Pay button.
Returns
the requested button as Array.
buildKeyBoard ( array  $options,
  $onetime = false,
  $resize = false,
  $selective = true 
)

Set a custom keyboard.

This object represents a custom keyboard with reply options

Parameters
$optionsArray of Array of String; Array of button rows, each represented by an Array of Strings
$onetimeBoolean Requests clients to hide the keyboard as soon as it's been used. Defaults to false.
$resizeBoolean Requests clients to resize the keyboard vertically for optimal fit (e.g., make the keyboard smaller if there are just two rows of buttons). Defaults to false, in which case the custom keyboard is always of the same height as the app's standard keyboard.
$selectiveBoolean Use this parameter if you want to show the keyboard to specific users only. Targets: 1) users that are in the text of the Message object; 2) if the bot's message is a reply (has reply_to_message_id), sender of the original message.
Returns
the requested keyboard as Json.
buildKeyboardButton (   $text,
  $request_contact = false,
  $request_location = false 
)

Create a KeyboardButton.

This object represents one button of an inline keyboard. You must use exactly one of the optional fields.

Parameters
$textString; Array of button rows, each represented by an Array of Strings
$request_contactBoolean Optional. If True, the user's phone number will be sent as a contact when the button is pressed. Available in private chats only
$request_locationBoolean Optional. If True, the user's current location will be sent when the button is pressed. Available in private chats only
Returns
the requested button as Array.
buildKeyBoardHide (   $selective = true)

Hide a custom keyboard.

Upon receiving a message with this object, Telegram clients will hide the current custom keyboard and display the default letter-keyboard. By default, custom keyboards are displayed until a new keyboard is sent by a bot. An exception is made for one-time keyboards that are hidden immediately after the user presses a button.

Parameters
$selectiveBoolean Use this parameter if you want to show the keyboard to specific users only. Targets: 1) users that are in the text of the Message object; 2) if the bot's message is a reply (has reply_to_message_id), sender of the original message.
Returns
the requested keyboard hide as Array.
Callback_ChatID ( )

Get the Get the chati_id of the current callback.

Deprecated:
Use ChatId() instead
Returns
the String callback_query.
Callback_Data ( )

Get the Get the data of the current callback.

Deprecated:
Use Text() instead
Returns
the String callback_data.
Callback_ID ( )

Get the callback_query id of the current update.

Returns
the String callback_query id.
Callback_Message ( )

Get the Get the message of the current callback.

Returns
the Message.
Callback_Query ( )

Get the callback_query of the current update.

Returns
the String callback_query.
ChatID ( )

Get the chat_id of the current message.

Returns
the String users's chat_id.
createNewStickerSet ( array  $content)

Create New Sticker Set.

Use this method to create new sticker set owned by a user. The bot will be able to edit the created sticker set. Returns True on success.

Parameters Type Required Description
user_id Integer Yes User identifier of created sticker set owner
name String Yes Short name of sticker set, to be used in t.me/addstickers/ URLs (e.g., animals). Can contain only english letters, digits and underscores. Must begin with a letter, can't contain consecutive underscores and must end in “_by_<bot username>”. <bot_username> is case insensitive. 1-64 characters.
title String Yes Sticker set title, 1-64 characters
png_sticker InputFile or String Yes Png image with the sticker, must be up to 512 kilobytes in size, dimensions must not exceed 512px, and either width or height must be exactly 512px. Pass a file_id as a String to send a file that already exists on the Telegram servers, pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. More info on Sending Files »
emojis String Yes One or more emoji corresponding to the sticker
is_masks Boolean Optional Pass True, if a set of mask stickers should be created
mask_position MaskPosition Optional Position where the mask should be placed on faces
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
Date ( )

Get the date of the current message.

Returns
the String message's date.
deleteChatPhoto ( array  $content)

Delete Chat Photo.

Use this method to delete a chat photo. Photos can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success. Note: In regular groups (non-supergroups), this method will only work if the ‘All Members Are Admins’ setting is off in the target group.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
deleteChatStickerSet ( array  $content)

Delete Chat Sticker Set.

Use this method to delete a group sticker set from a supergroup. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Use the field can_set_sticker_set optionally returned in getChat requests to check if the bot can use this method. Returns True on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup (in the format )
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
deleteMessage ( array  $content)

Delete a message.

Use this method to delete a message. A message can only be deleted if it was sent less than 48 hours ago. Any such recently sent outgoing message may be deleted. Additionally, if the bot is an administrator in a group chat, it can delete any message. If the bot is an administrator in a supergroup, it can delete messages from any other user and service messages about people joining or leaving the group (other types of service messages may only be removed by the group creator). In channels, bots can only remove their own messages. Returns True on success.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer Yes Identifier of the message to delete
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
deleteStickerFromSet ( array  $content)

Delete Sticker From Set.

Use this method to delete a sticker from a set created by the bot. Returns True on success.

Parameters Type Required Description
sticker String Yes File identifier of the sticker
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
deleteWebhook ( )

Delete the WebHook for the bot.

Use this method to remove webhook integration if you decide to switch back to getUpdates. Returns True on success. Requires no parameters.

Returns
the JSON Telegram's reply.
downloadFile (   $telegram_file_path,
  $local_file_path 
)

Use this method to download a file.

Use this method to to download a file from the Telegram servers.

Parameters
$telegram_file_pathString File path on Telegram servers
$local_file_pathString File path where save the file.
editMessageCaption ( array  $content)

Use this method to edit captions of messages sent by the bot or via the bot (for inline bots). On success, if edited message is sent by the bot, the edited Message is returned, otherwise True is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String No Required if inline_message_id is not specified. Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer No Required if inline_message_id is not specified. Unique identifier of the sent message
inline_message_id String No Required if chat_id and message_id are not specified. Identifier of the inline message
caption String Optional New caption of the message
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for an inline keyboard.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
editMessageLiveLocation ( array  $content)

Edit Message Live Location.

Use this method to edit live location messages sent by the bot or via the bot (for inline bots). A location can be edited until its live_period expires or editing is explicitly disabled by a call to stopMessageLiveLocation. On success, if the edited message was sent by the bot, the edited Message is returned, otherwise True is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Optional Required if inline_message_id is not specified. Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer Optional Required if inline_message_id is not specified. Identifier of the sent message
inline_message_id String Optional Required if chat_id and message_id are not specified. Identifier of the inline message
latitude Float number Yes Latitude of new location
longitude Float number Yes Longitude of new location
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for a new inline keyboard.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
editMessageReplyMarkup ( array  $content)

Use this method to edit only the reply markup of messages sent by the bot or via the bot (for inline bots). On success, if edited message is sent by the bot, the edited Message is returned, otherwise True is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String No Required if inline_message_id is not specified. Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer No Required if inline_message_id is not specified. Unique identifier of the sent message
inline_message_id String No Required if chat_id and message_id are not specified. Identifier of the inline message
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for an inline keyboard.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
editMessageText ( array  $content)

Use this method to edit text messages sent by the bot or via the bot (for inline bots). On success, if edited message is sent by the bot, the edited Message is returned, otherwise True is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String No Required if inline_message_id is not specified. Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer No Required if inline_message_id is not specified. Unique identifier of the sent message
inline_message_id String No Required if chat_id and message_id are not specified. Identifier of the inline message
text String Yes New text of the message
parse_mode String Optional Send Markdown or HTML, if you want Telegram apps to show bold, italic, fixed-width text or inline URLs in your bot&#39;s message.
disable_web_page_preview Boolean Optional Disables link previews for links in this message
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for an inline keyboard.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
endpoint (   $api,
array  $content,
  $post = true 
)

Do requests to Telegram Bot API.

Contacts the various API's endpoints

Parameters
$apithe API endpoint
$contentthe request parameters as array
$postboolean tells if $content needs to be sends
Returns
the JSON Telegram's reply.
exportChatInviteLink ( array  $content)

Use this method to export an invite link to a supergroup or a channel. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns exported invite link as String on success.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
forwardMessage ( array  $content)

Forward a message.

Use this method to forward messages of any kind. On success, the sent Message is returned
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
from_chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
message_id Integer Yes Unique message identifier
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getChat ( array  $content)

Get Chat Information.

Use this method to get up to date information about the chat (current name of the user for one-on-one conversations, current username of a user, group or channel, etc.). Returns a Chat object on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getChatAdministrators ( array  $content)

Use this method to get a list of administrators in a chat. On success, returns an Array of ChatMember objects that contains information about all chat administrators except other bots. If the chat is a group or a supergroup and no administrators were appointed, only the creator will be returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getChatMember ( array  $content)

Use this method to get information about a member of a chat. Returns a ChatMember object on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
user_id Integer Yes Unique identifier of the target user
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getChatMembersCount ( array  $content)

Use this method to get the number of members in a chat. Returns Int on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getData ( )

Get the data of the current message.

Get the POST request of a user in a Webhook or the message actually processed in a getUpdates() enviroment.

Returns
the JSON users's message.
getFile (   $file_id)

Use this method to get basic info about a file and prepare it for downloading.

Use this method to get basic info about a file and prepare it for downloading. For the moment, bots can download files of up to 20MB in size. On success, a File object is returned. The file can then be downloaded via the link https://api.telegram.org/file/bot<token>/<file_path>, where <file_path> is taken from the response. It is guaranteed that the link will be valid for at least 1 hour. When the link expires, a new one can be requested by calling getFile again.

Parameters
$file_idString File identifier to get info about
Returns
the JSON Telegram's reply.
getMe ( )

A method for testing your bot.

A simple method for testing your bot's auth token. Requires no parameters. Returns basic information about the bot in form of a User object.

Returns
the JSON Telegram's reply.
getStickerSet ( array  $content)

Get Sticker Set.

Use this method to get a sticker set. On success, a StickerSet object is returned.

Parameters Type Required Description
name String Yes Short name of the sticker set that is used in t.me/addstickers/ URLs (e.g., animals)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
getUpdates (   $offset = 0,
  $limit = 100,
  $timeout = 0,
  $update = true 
)

Receive incoming messages using polling.

Use this method to receive incoming updates using long polling.

Parameters
$offsetInteger Identifier of the first update to be returned. Must be greater by one than the highest among the identifiers of previously received updates. By default, updates starting with the earliest unconfirmed update are returned. An update is considered confirmed as soon as getUpdates is called with an offset higher than its update_id.
$limitInteger Limits the number of updates to be retrieved. Values between 1—100 are accepted. Defaults to 100
$timeoutInteger Timeout in seconds for long polling. Defaults to 0, i.e. usual short polling
$updateBoolean If true updates the pending message list to the last update received. Default to true.
Returns
the updates as Array.
getUpdateType ( )

Return current update type.

Return current update type False on failure.

Returns
bool|string
getUserProfilePhotos ( array  $content)

Get a list of profile pictures for a user.

Use this method to get a list of profile pictures for a user. Returns a UserProfilePhotos object.
Values inside $content:

Parameters Type Required Description
user_id Integer Yes Unique identifier of the target user
offset Integer Optional Sequential number of the first photo to be returned. By default, all photos are returned.
limit Integer Optional Limits the number of photos to be retrieved. Values between 1—100 are accepted. Defaults to 100.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
Inline_Query ( )

Get the inline_query of the current update.

Returns
the Array inline_query.
kickChatMember ( array  $content)

Kick Chat Member.

Use this method to kick a user from a group or a supergroup. In the case of supergroups, the user will not be able to return to the group on their own using invite links, etc., unless unbanned first. The bot must be an administrator in the group for this to work. Returns True on success.
Note: This will method only work if the \˜All Members Are Admins\' setting is off in the target group. Otherwise members may only be removed by the group&#39;s creator or by the member that added them.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target group or username of the target supergroup (in the format @supergroupusername)
user_id Integer Yes Unique identifier of the target user
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
leaveChat ( array  $content)

Leave Chat.

Use this method for your bot to leave a group, supergroup or channel. Returns True on success.


Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
messageFromGroup ( )

Tell if a message is from a group or user chat.

Returns
BOOLEAN true if the message is from a Group chat, false otherwise.
messageFromGroupTitle ( )

Get the title of the group chat.

Returns
a String of the title chat.
MessageID ( )

Get the message_id of the current message.

Returns
the String message_id.
pinChatMessage ( array  $content)

Pin Chat Message.

Use this method to pin a message in a supergroup. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer Yes Identifier of a message to pin
disable_notification Boolean No Pass True, if it is not necessary to send a notification to all group members about the new pinned message
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
promoteChatMember ( array  $content)

Promote Chat Member.

Use this method to promote or demote a user in a supergroup or a channel. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Pass False for all boolean parameters to demote a user. Returns True on success

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
user_id Integer Yes Unique identifier of the target user
can_change_info Boolean No Pass True, if the administrator can change chat title, photo and other settings
can_post_messages Boolean No Pass True, if the administrator can create channel posts, channels only
can_edit_messages Boolean No Pass True, if the administrator can edit messages of other users, channels only
can_delete_messages Boolean No Pass True, if the administrator can delete messages of other users
can_invite_users Boolean No Pass True, if the administrator can invite new users to the chat
can_restrict_members Boolean No Pass True, if the administrator can restrict, ban or unban chat members
can_pin_messages Boolean No Pass True, if the administrator can pin messages, supergroups only
can_promote_members Boolean No Pass True, if the administrator can add new administrators with a subset of his own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by him)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
ReplyToMessageFromUserID ( )

Get the reply_to_message forward_from user_id of the current message.

Returns
the String reply_to_message forward_from user_id.
ReplyToMessageID ( )

Get the reply_to_message message_id of the current message.

Returns
the String reply_to_message message_id.
respondSuccess ( )

A method for responding http to Telegram.

Returns
the HTTP 200 to Telegram.
restrictChatMember ( array  $content)

Restrict Chat Member.

Use this method to restrict a user in a supergroup. The bot must be an administrator in the supergroup for this to work and must have the appropriate admin rights. Pass True for all boolean parameters to lift restrictions from a user. Returns True on success.

Parameters Type Required Description
chat_id Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
photo InputFile or String Yes Photo to send. Pass a file_id as String to send a photo that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a photo from the Internet, or upload a new photo using multipart/form-data. More info on Sending Files »
caption String Optional Photo caption (may also be used when resending photos by file_id), 0-200 characters
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendAnimation ( array  $content)

Send an animation.

Use this method to send animation files (GIF or H.264/MPEG-4 AVC video without sound). On success, the sent Message is returned. Bots can currently send animation files of up to 50 MB in size, this limit may be changed in the future.
Values inside $content:

Parameter

Type

Required

Description </thead> <tbody>

chat_id

Integer or String

Yes

Unique identifier for the target chat or username of the target channel (in the format )

animation

InputFile or String

Yes

Animation to send. Pass a file_id as String to send an animation that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get an animation from the Internet, or upload a new animation using multipart/form-data. More info on Sending Files »

duration

Integer

Optional

Duration of sent animation in seconds

width

Integer

Optional

Animation width

height

Integer

Optional

Animation height

thumb

InputFile or String

Optional

Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail‘s width and height should not exceed 90. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can’t be reused and can be only uploaded as a new file, so you can pass “attach://<file_attach_name>” if the thumbnail was uploaded using multipart/form-data under <file_attach_name>. More info on Sending Files »

caption

String

Optional

Animation caption (may also be used when resending animation by file_id), 0-1024 characters

parse_mode

String

Optional

Send Markdown or HTML, if you want Telegram apps to show bold, italic, fixed-width text or inline URLs in the media caption.

disable_notification

Boolean

Optional

Sends the message silently. Users will receive a notification with no sound.

reply_to_message_id

Integer

Optional

If the message is a reply, ID of the original message

reply_markup

InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply

Optional

Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.

Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendAudio ( array  $content)

Send an audio.

Use this method to send audio files, if you want Telegram clients to display them in the music player. Your audio must be in the .mp3 format. On success, the sent Message is returned. Bots can currently send audio files of up to 50 MB in size, this limit may be changed in the future. For sending voice messages, use the sendVoice method instead.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
audio InputFile or String Yes Audio file to send. Pass a file_id as String to send an audio file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get an audio file from the Internet, or upload a new one using multipart/form-data.
duration Integer Optional Duration of the audio in seconds
performer String Optional Performer
title String Optional Track name
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendChatAction ( array  $content)

Send a chat action.

Use this method when you need to tell the user that something is happening on the bot's side. The status is set for 5 seconds or less (when a message arrives from your bot, Telegram clients clear its typing status).

Example: The ImageBot needs some time to process a request and upload the image. Instead of sending a text message along the lines of “Retrieving image, please wait…”, the bot may use sendChatAction with action = upload_photo. The user will see a “sending photo” status for the bot.

We only recommend using this method when a response from the bot will take a noticeable amount of time to arrive.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the message recipient — User or GroupChat id
action String Yes Type of action to broadcast. Choose one, depending on what the user is about to receive: typing for text messages, upload_photo for photos, record_video or upload_video for videos, record_audio or upload_audio for audio files, upload_document for general files, find_location for location data.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendContact ( array  $content)

Use this method to send phone contacts. On success, the sent Message is returned.


Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
phone_number String Yes Contact&#39;s phone number
first_name String Yes Contact&#39;s first name
last_name String Optional Contact&#39;s last name
disable_notification Boolean Optional Sends the message silently. iOS users will not receive a notification, Android users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardHide or ForceReply Optional Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply
sendDocument ( array  $content)

Send a document.

Use this method to send general files. On success, the sent Message is returned. Bots can currently send files of any type of up to 50 MB in size, this limit may be changed in the future.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
document InputFile or String Yes File to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data.
caption String Optional Document caption (may also be used when resending documents by file_id), 0-200 characters.
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendInvoice ( array  $content)

Send an invoice.

Use this method to send invoices. On success, the sent Message is returned.

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target private chat
title String Yes Product name
description String Yes Product description
payload String Yes Bot-defined invoice payload, 1-128 bytes. This will not be displayed to the user, use for your internal processes.
provider_token String Yes Payments provider token, obtained via Botfather
start_parameter String Yes Unique deep-linking parameter that can be used to generate this invoice when used as a start parameter
currency String Yes Three-letter ISO 4217 currency code, see more on currencies
prices Array of LabeledPrice Yes Price breakdown, a list of components (e.g. product price, tax, discount, delivery cost, delivery tax, bonus, etc.)
provider_data String Optional JSON-encoded data about the invoice, which will be shared with the payment provider. A detailed description of required fields should be provided by the payment provider.
photo_url String Optional URL of the product photo for the invoice. Can be a photo of the goods or a marketing image for a service. People like it better when they see what they are paying for.
photo_size Integer Optional Photo size
photo_width Integer Optional Photo width
photo_height Integer Optional Photo height
need_name Bool Optional Pass True, if you require the user's full name to complete the order
need_phone_number Boolean Optional Pass True, if you require the user's phone number to complete the order
need_email Bool Optional Pass True, if you require the user's email to complete the order
need_shipping_address Boolean Optional Pass True, if you require the user's shipping address to complete the order
is_flexible Boolean Optional Pass True, if the final price depends on the shipping method
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for an inline keyboard. If empty, one 'Pay total price' button will be shown. If not empty, the first button must be a Pay button.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendLocation ( array  $content)

Send a location.

Use this method to send point on the map. On success, the sent Message is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
latitude Float number Yes Latitude of location
longitude Float number Yes Longitude of location
live_period Integer Optional Period in seconds for which the location will be updated (see Live Locations, should be between 60 and 86400.
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendMediaGroup ( array  $content)

Send Media Group.

Use this method to send a group of photos or videos as an album. On success, an array of the sent Messages is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
media Array of InputMedia Yes A JSON-serialized array describing photos and videos to be sent, must include 2–10 items
disable_notification Boolean Optional Sends the messages silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the messages are a reply, ID of the original message
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendMessage ( array  $content)

Send a message.

Use this method to send text messages.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
text String Yes Text of the message to be sent
parse_mode String Optional Send Markdown, if you want Telegram apps to show bold, italic and inline URLs in your bot's message. For the moment, only Telegram for Android supports this.
disable_web_page_preview Boolean Optional Disables link previews for links in this message
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardHide or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendPhoto ( array  $content)

Send a photo.

Use this method to send photos. On success, the sent Message is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
photo InputFile or String Yes Photo to send. Pass a file_id as String to send a photo that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a photo from the Internet, or upload a new photo using multipart/form-data.
caption String Optional Photo caption (may also be used when resending photos by file_id).
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendSticker ( array  $content)

Send a sticker.

Use this method to send .webp stickers. On success, the sent Message is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the message recipient — User or GroupChat id
sticker InputFile or String Yes Sticker to send. You can either pass a file_id as String to resend a sticker that is already on the Telegram servers, or upload a new sticker using multipart/form-data.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup ReplyKeyboardMarkup or ReplyKeyboardHide or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendVenue ( array  $content)

Send Venue.

Use this method to send information about a venue. On success, the sent Message is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
latitude Float number Yes Latitude of the venue
longitude Float number Yes Longitude of the venue
title String Yes Name of the venue
address String Yes Address of the venue
foursquare_id String Optional Foursquare identifier of the venue
disable_notification Boolean Optional Sends the message silently. iOS users will not receive a notification, Android users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardHide or ForceReply Optional Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to hide reply keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendVideo ( array  $content)

Send a video.

Use this method to send video files, Telegram clients support mp4 videos (other formats may be sent as Document). On success, the sent Message is returned. Bots can currently send video files of up to 50 MB in size, this limit may be changed in the future.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the message recipient — User or GroupChat id
video InputFile or String Yes Video to send. Pass a file_id as String to send a video that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a video from the Internet, or upload a new video using multipart/form-data.
duration Integer Optional Duration of sent video in seconds
width Integer Optional Video width
height Integer Optional Video height
caption String Optional Video caption (may also be used when resending videos by file_id).
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendVideoNote ( array  $content)

Send a video note.

As of v.4.0, Telegram clients support rounded square mp4 videos of up to 1 minute long. Use this method to send video messages. On success, the sent Message is returned.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
video_note InputFile or String Yes Video note to send. Pass a file_id as String to send a video note that exists on the Telegram servers (recommended) or upload a new video using multipart/form-data. More info on Sending Files ». Sending video notes by a URL is currently unsupported
duration Integer Optional Duration of sent video in seconds
length Integer Optional Video width and height
disable_notification Boolean Optional Sends the message silently. iOS users will not receive a notification, Android users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
sendVoice ( array  $content)

Send a voice message.

Use this method to send audio files, if you want Telegram clients to display the file as a playable voice message. For this to work, your audio must be in an .ogg file encoded with OPUS (other formats may be sent as Audio or Document). On success, the sent Message is returned. Bots can currently send voice messages of up to 50 MB in size, this limit may be changed in the future.
Values inside $content:

Parameters Type Required Description
chat_id Integer Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
voice InputFile or String Yes Audio file to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data.
caption String Optional Voice message caption, 0-200 characters
duration Integer Optional Duration of sent audio in seconds
disable_notification Boolean Optional Sends the message silently. Users will receive a notification with no sound.
reply_to_message_id Integer Optional If the message is a reply, ID of the original message
reply_markup InlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply Optional Additional interface options. A JSON-serialized object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
serveUpdate (   $update)

Serve an update.

Use this method to use the bultin function like Text() or Username() on a specific update.

Parameters
$updateInteger The index of the update in the updates array.
setChatDescription ( array  $content)

Set Chat Description.

Use this method to change the description of a supergroup or a channel. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
description String No New chat description, 0-255 characters
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setChatPhoto ( array  $content)

Set Chat Photo.

Use this method to set a new profile photo for the chat. Photos can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success. Note: In regular groups (non-supergroups), this method will only work if the ‘All Members Are Admins’ setting is off in the target group.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
photo InputFile Yes New chat photo, uploaded using multipart/form-data
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setChatStickerSet ( array  $content)

Set Chat Sticker Set.

Use this method to set a new group sticker set for a supergroup. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Use the field can_set_sticker_set optionally returned in getChat requests to check if the bot can use this method. Returns True on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target supergroup (in the format )
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setChatTitle ( array  $content)

Set Chat Title.

Use this method to change the title of a chat. Titles can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success. Note: In regular groups (non-supergroups), this method will only work if the ‘All Members Are Admins’ setting is off in the target group.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
title String Yes New chat title, 1-255 characters
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setGameScore ( array  $content)

Set Game Score.

Use this method to set the score of the specified user in a game. On success, if the message was sent by the bot, returns the edited Message, otherwise returns True. Returns an error, if the new score is not greater than the user&#39;s current score in the chat and force is False.

Parameters Type Required Description
user_id Integer Yes User identifier
score Integer Yes New score, must be non-negative
force Boolean Optional Pass True, if the high score is allowed to decrease. This can be useful when fixing mistakes or banning cheaters
disable_edit_message Boolean Optional Pass True, if the game message should not be automatically edited to include the current scoreboard
chat_id Integer Optional Required if inline_message_id is not specified. Unique identifier for the target chat
message_id Integer Optional Required if inline_message_id is not specified. Identifier of the sent message
inline_message_id String Optional Required if chat_id and message_id are not specified. Identifier of the inline message
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setStickerPositionInSet ( array  $content)

Set Sticker Position In Set.

Use this method to move a sticker in a set created by the bot to a specific position . Returns True on success.

Parameters Type Required Description
sticker String Yes File identifier of the sticker
position Integer Yes New sticker position in the set, zero-based
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
setWebhook (   $url,
  $certificate = '' 
)

Set a WebHook for the bot.

Use this method to specify a url and receive incoming updates via an outgoing webhook. Whenever there is an update for the bot, we will send an HTTPS POST request to the specified url, containing a JSON-serialized Update. In case of an unsuccessful request, we will give up after a reasonable amount of attempts.

If you'd like to make sure that the Webhook request comes from Telegram, we recommend using a secret path in the URL, e.g. https://www.example.com/<token>. Since nobody else knows your bot‘s token, you can be pretty sure it’s us.

Parameters
$urlString HTTPS url to send updates to. Use an empty string to remove webhook integration
$certificateInputFile Upload your public key certificate so that the root certificate in use can be checked
Returns
the JSON Telegram's reply.
stopMessageLiveLocation ( array  $content)

Stop Message Live Location.

Use this method to stop updating a live location message sent by the bot or via the bot (for inline bots) before live_period expires. On success, if the message was sent by the bot, the sent Message is returned, otherwise True is returned.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Optional Required if inline_message_id is not specified. Unique identifier for the target chat or username of the target channel (in the format @channelusername)
message_id Integer Optional Required if inline_message_id is not specified. Identifier of the sent message
inline_message_id String Optional Required if chat_id and message_id are not specified. Identifier of the inline message
reply_markup InlineKeyboardMarkup Optional A JSON-serialized object for a new inline keyboard.
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
Text ( )

Get the text of the current message.

Returns
the String users's text.
unbanChatMember ( array  $content)

Unban Chat Member.

Use this method to unban a previously kicked user in a supergroup. The user will not return to the group automatically, but will be able to join via link, etc. The bot must be an administrator in the group for this to work. Returns True on success.
Values inside $content:

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target group or username of the target supergroup (in the format )
user_id Integer Yes Unique identifier of the target user
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
unpinChatMessage ( array  $content)

Unpin Chat Message.

Use this method to unpin a message in a supergroup chat. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success.

Parameters Type Required Description
chat_id Integer or String Yes Unique identifier for the target chat or username of the target channel (in the format @channelusername)
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.
uploadStickerFile ( array  $content)

Upload Sticker File.

Use this method to upload a .png file with a sticker for later use in createNewStickerSet and addStickerToSet methods (can be used multiple times). Returns the uploaded File on success.

Parameters Type Required Description
user_id Integer Yes User identifier of sticker file owner
png_sticker InputFile Yes Png image with the sticker, must be up to 512 kilobytes in size, dimensions must not exceed 512px, and either width or height must be exactly 512px. More info on Sending Files »
Parameters
$contentthe request parameters as array
Returns
the JSON Telegram's reply.

Field Documentation

const ANIMATION = 'animation'

Constant for type animation.

const AUDIO = 'audio'

Constant for type Audio.

const CALLBACK_QUERY = 'callback_query'

Constant for type Callback Query.

const CHANNEL_POST = 'channel_post'

Constant for type Channel Post.

const CONTACT = 'contact'

Constant for type Contact.

const DOCUMENT = 'document'

Constant for type Document.

const EDITED_MESSAGE = 'edited_message'

Constant for type Edited Message.

const INLINE_QUERY = 'inline_query'

Constant for type Inline Query.

const LOCATION = 'location'

Constant for type Location.

const MESSAGE = 'message'

Constant for type Message.

const PHOTO = 'photo'

Constant for type Photo.

const REPLY = 'reply'

Constant for type Reply.

const VIDEO = 'video'

Constant for type Video.

const VOICE = 'voice'

Constant for type Voice.


The documentation for this class was generated from the following file: