# MadelineProto, a PHP MTProto telegram client
Created by Daniil Gentili
Do join the official channel, @MadelineProto and the support groups!
Now with Telegram TON blockchain integration!
# What’s this?
This library can be used to easily interact with Telegram without the bot API, just like the official apps.
It can login with a phone number (MTProto API), or with a bot token (MTProto API, no bot API involved!).
# Getting started (now fully async!)
<?php
if (!file_exists('madeline.php')) {
copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
}
include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->async(true);
$MadelineProto->loop(function () use ($MadelineProto) {
yield $MadelineProto->start();
$me = yield $MadelineProto->getSelf();
$MadelineProto->logger($me);
if (!$me['bot']) {
yield $MadelineProto->messages->sendMessage(['peer' => '@danogentili', 'message' => "Hi!\nThanks for creating MadelineProto! <3"]);
yield $MadelineProto->channels->joinChannel(['channel' => '@MadelineProto']);
try {
yield $MadelineProto->messages->importChatInvite(['hash' => 'https://t.me/joinchat/Bgrajz6K-aJKu0IpGsLpBg']);
} catch (\danog\MadelineProto\RPCErrorException $e) {
$MadelineProto->logger($e);
}
yield $MadelineProto->messages->sendMessage(['peer' => 'https://t.me/joinchat/Bgrajz6K-aJKu0IpGsLpBg', 'message' => 'Testing MadelineProto!']);
}
yield $MadelineProto->echo('OK, done!');
});
Try this code now! or run this code in a browser or in a console.
Tip: if you receive an error (or nothing), send us the error message and the MadelineProto.log
file that was created in the same directory (if running from a browser).
# Examples
You can find examples for nearly every MadelineProto function in
- magnaluna webradio - Multifeatured Telegram VoIP webradio
downloadRenameBot.php
- download files by URL and rename Telegram files using this async parallelized bot!bot.php
- examples for sending normal messages, downloading any mediasecret_bot.php
- secret chat botpipesbot.php
- examples for creating inline bots and using other inline bots via a userbot
# Documentation
- Creating a client
- Login
- Features
- Requirements
- Installation
- Handling updates (new messages)
- Settings
- Getting info about the current user
- Exceptions
- Avoiding FLOOD_WAITs
- Logging
- Telegram VoIP phone calls
- Uploading and downloading files
- Getting info about chats
- Getting all chats (dialogs)
- Inline buttons ([now fully async!](https://docs.madelineproto.xyz/docs/ASYNC.html))
- Secret chats
- Lua binding
- Using a proxy
- Async
- Using methods
- FULL API Documentation with descriptions
- Logout
- Login
- Change 2FA password
- Get all chats, broadcast a message to all chats
- Get the full participant list of a channel/group/supergroup
- Get full info about a user/chat/supergroup/channel
- Get info about a user/chat/supergroup/channel
- Get info about the currently logged-in user
- Upload or download files up to 1.5 GB
- Make a phone call and play a song
- Create a secret chat bot
- Accept QR code login token, logging in the app that generated it: auth.acceptLoginToken
- Accept incoming call: phone.acceptCall
- Accept the new terms of service: help.acceptTermsOfService
- Add GIF to saved gifs list: messages.saveGif
- Add a sticker to a stickerset, bots only. The sticker set must have been created by the bot: stickers.addStickerToSet
- Add an existing telegram user as contact: contacts.addContact
- Add/remove sticker from recent stickers list: messages.saveRecentSticker
- Adds a user to a chat and sends a service message on it: messages.addChatUser
- Adds the user to the blacklist: contacts.block
- Answer an inline query, for bots only: messages.setInlineBotResults
- Answers a custom query; for bots only: bots.answerWebhookJSONQuery
- Apply changes to multiple stickersets: messages.toggleStickerSets
- Associate a group to a channel as discussion group for that channel: channels.setDiscussionGroup
- Associate a stickerset to the supergroup: channels.setStickers
- Ban/unban/kick a user in a supergroup/channel: channels.editBanned
- Binds a temporary authorization key temp_auth_key_id to the permanent authorization key perm_auth_key_id. Each permanent key may only be bound to one temporary key at a time, binding a new temporary key overwrites the previous one: auth.bindTempAuthKey
- Cancel the code that was sent to verify an email to use as 2FA recovery method: account.cancelPasswordEmail
- Cancel the login verification code: auth.cancelCode
- Cancels a request for creation and/or delete info on secret chat: messages.discardEncryption
- Chanages chat name and sends a service message on it: messages.editChatTitle
- Change media autodownload settings: account.saveAutoDownloadSettings
- Change privacy settings of current account: account.setPrivacy
- Change the phone number of the current account: account.changePhone
- Change the photo of a channel/supergroup: channels.editPhoto
- Change the username of a supergroup/channel: channels.updateUsername
- Changes chat photo and sends a service message on it: messages.editChatPhoto
- Changes the absolute position of a sticker in the set to which it belongs; for bots only. The sticker set must have been created by the bot: stickers.changeStickerPosition
- Changes username for the current user: account.updateUsername
- Check if a username is free and can be assigned to a channel/supergroup: channels.checkUsername
- Check the validity of a chat invite link and get basic info about it: messages.checkChatInvite
- Clear all drafts: messages.clearAllDrafts
- Clear recent stickers: messages.clearRecentStickers
- Clear saved payment information: payments.clearSavedInfo
- Confirm a phone number to cancel account deletion, for more info click here »: account.confirmPhone
- Confirms creation of a secret chat: messages.acceptEncryption
- Confirms receipt of messages by a client, cancels PUSH-notification sending: messages.receivedMessages
- Confirms receipt of messages in a secret chat by client, cancels push notifications: messages.receivedQueue
- Create a supergroup/channel: channels.createChannel
- Create a stickerset, bots only: stickers.createStickerSet
- Create a theme: account.createTheme
- Create and upload a new wallpaper: account.uploadWallPaper
- Creates a new chat: messages.createChat
- Delete a channel/supergroup: channels.deleteChannel
- Delete a peer folder: folders.deleteFolder
- Delete all messages sent by a certain user in a supergroup: channels.deleteUserHistory
- Delete all temporary authorization keys except for the ones specified: auth.dropTempAuthKeys
- Delete contacts by phone number: contacts.deleteByPhones
- Delete installed wallpapers: account.resetWallPapers
- Delete messages in a channel/supergroup: channels.deleteMessages
- Delete saved contacts: contacts.resetSaved
- Delete scheduled messages: messages.deleteScheduledMessages
- Delete stored Telegram Passport documents, for more info see the passport docs »: account.deleteSecureValue
- Delete the history of a supergroup: channels.deleteHistory
- Delete the user’s account from the telegram servers. Can be used, for example, to delete the account of a user that provided the login code, but forgot the 2FA password and no recovery method is configured: account.deleteAccount
- Deletes a device by its token, stops sending PUSH-notifications to it: account.unregisterDevice
- Deletes a user from a chat and sends a service message on it: messages.deleteChatUser
- Deletes communication history: messages.deleteHistory
- Deletes messages by their identifiers: messages.deleteMessages
- Deletes profile photos: photos.deletePhotos
- Deletes several contacts from the list: contacts.deleteContacts
- Deletes the user from the blacklist: contacts.unblock
- Download a CDN file: upload.getCdnFile
- Edit an inline bot message: messages.editInlineBotMessage
- Edit location of geogroup: channels.editLocation
- Edit message: messages.editMessage
- Edit peers in peer folder: folders.editPeerFolders
- Edit the default banned rights of a channel/supergroup/group: messages.editChatDefaultBannedRights
- Edit the description of a group/supergroup/channel: messages.editChatAbout
- Edit the name of a channel/supergroup: channels.editTitle
- Edits notification settings from a given user/group, from all users/all groups: account.updateNotifySettings
- Enable/disable top peers: contacts.toggleTopPeers
- Enable/disable message signatures in channels: channels.toggleSignatures
- Export an invite link for a chat: messages.exportChatInvite
- Find out if a media message’s caption can be edited: messages.getMessageEditData
- Finish account takeout session: account.finishTakeoutSession
- Forwards messages by their IDs: messages.forwardMessages
- Generate a login token, for login via QR code. : auth.exportLoginToken
- Get MTProxy/Public Service Announcement information: help.getPromoData
- Get SHA256 hashes for verifying downloaded CDN files: upload.getCdnFileHashes
- Get SHA256 hashes for verifying downloaded files: upload.getFileHashes
- Get channel statistics: stats.getBroadcastStats
- Get channel/supergroup messages: channels.getMessages
- Get channels/supergroups/geogroups we’re admin in. Usually called when the user exceeds the limit for owned public channels/supergroups/geogroups, and the user is given the choice to remove one of his channels/supergroups/geogroups: channels.getAdminedPublicChannels
- Get folders: messages.getDialogFilters
- Get instant view page: messages.getWebPage
- Get passport configuration: help.getPassportConfig
- Get suggested folders: messages.getSuggestedDialogFilters
- Get a document by its SHA256 hash, mainly used for gifs: messages.getDocumentByHash
- Get a list of channels/supergroups we left: channels.getLeftChannels
- Get a payment form: payments.getPaymentForm
- Get all archived stickers: messages.getArchivedStickers
- Get all chats, channels and supergroups: messages.getAllChats
- Get all contacts: contacts.getSaved
- Get all groups that can be used as discussion groups: channels.getGroupsForDiscussion
- Get all installed stickers: messages.getAllStickers
- Get all saved Telegram Passport documents, for more info see the passport docs »: account.getAllSecureValues
- Get and increase the view counter of a message sent or forwarded from a channel: messages.getMessagesViews
- Get app-specific configuration, see client configuration for more info on the result: help.getAppConfig
- Get changed emoji keywords: messages.getEmojiKeywordsDifference
- Get changelog of current app. : help.getAppChangelog
- Get chats in common with a user: messages.getCommonChats
- Get configuration for CDN file downloads: help.getCdnConfig
- Get contact by telegram IDs: contacts.getContactIDs
- Get contacts near you: contacts.getLocated
- Get count of online users in a chat: messages.getOnlines
- Get days to live of account: account.getAccountTTL
- Get dialog info of specified peers: messages.getPeerDialogs
- Get dialogs manually marked as unread: messages.getDialogUnreadMarks
- Get faved stickers: messages.getFavedStickers
- Get featured stickers: messages.getFeaturedStickers
- Get full info about a channel: channels.getFullChannel
- Get highscores of a game sent using an inline bot: messages.getInlineGameHighScores
- Get highscores of a game: messages.getGameHighScores
- Get inactive channels and supergroups: channels.getInactiveChannels
- Get info about channels/supergroups: channels.getChannels
- Get info about a channel/supergroup participant: channels.getParticipant
- Get info about a t.me link: help.getDeepLinkInfo
- Get info about a certain wallpaper: account.getWallPaper
- Get info about a credit card: payments.getBankCardData
- Get info about a stickerset: messages.getStickerSet
- Get info about an emoji keyword localization: messages.getEmojiKeywordsLanguages
- Get info about multiple wallpapers: account.getMultiWallPapers
- Get information about a language in a localization pack: langpack.getLanguage
- Get information about all languages in a localization pack: langpack.getLanguages
- Get installed mask stickers: messages.getMaskStickers
- Get installed themes: account.getThemes
- Get link and embed info of a message in a channel/supergroup: channels.exportMessageLink
- Get live location history of a certain user: messages.getRecentLocations
- Get localization pack strings: langpack.getLangPack
- Get localized emoji keywords: messages.getEmojiKeywords
- Get localized name of the telegram support user: help.getSupportName
- Get logged-in sessions: account.getAuthorizations
- Get media autodownload settings: account.getAutoDownloadSettings
- Get message ranges for saving the user’s chat history: messages.getSplitRanges
- Get more info about a Seamless Telegram Login authorization request, for more info click here »: messages.requestUrlAuth
- Get most used peers: contacts.getTopPeers
- Get new updates: updates.getDifference
- Get new strings in languagepack: langpack.getDifference
- Get payment receipt: payments.getPaymentReceipt
- Get peer settings: messages.getPeerSettings
- Get phone call configuration to be passed to libtgvoip’s shared config: phone.getCallConfig
- Get pinned dialogs: messages.getPinnedDialogs
- Get poll results for non-anonymous polls: messages.getPollVotes
- Get poll results: messages.getPollResults
- Get preview of webpage: messages.getWebPagePreview
- Get privacy settings of current account: account.getPrivacy
- Get private info associated to the password info (recovery email, telegram passport info & so on): account.getPasswordSettings
- Get recent stickers: messages.getRecentStickers
- Get recently used t.me links: help.getRecentMeUrls
- Get saved GIFs: messages.getSavedGifs
- Get saved Telegram Passport document, for more info see the passport docs »: account.getSecureValue
- Get saved payment information: payments.getSavedInfo
- Get scheduled messages: messages.getScheduledHistory
- Get scheduled messages: messages.getScheduledMessages
- Get sensitive content settings: account.getContentSettings
- Get stickers attached to a photo or video: messages.getAttachedStickers
- Get stickers by emoji: messages.getStickers
- Get strings from a language pack: langpack.getStrings
- Get temporary payment password: account.getTmpPassword
- Get the admin log of a channel/supergroup: channels.getAdminLog
- Get the number of results that would be found by a messages.search call with the same parameters: messages.getSearchCounters
- Get the participants of a supergroup/channel: channels.getParticipants
- Get theme information: account.getTheme
- Get unread messages where we were mentioned: messages.getUnreadMentions
- Get web login widget authorizations: account.getWebAuthorizations
- Gets back found messages: messages.search
- Gets back the conversation history with one interlocutor / within a chat: messages.getHistory
- Gets current notification settings for a given user/group, from all users/all groups: account.getNotifySettings
- Hide MTProxy/Public Service Announcement information: help.hidePromoData
- Hide/unhide message history for new channel/supergroup users: channels.togglePreHistoryHidden
- If the peer settings of a new user allow us to add him as contact, add that user as contact: contacts.acceptContact
- If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, the bot will receive an updateBotShippingQuery update. Use this method to reply to shipping queries: messages.setBotShippingResults
- Import a chat invite and join a private chat/supergroup/channel: messages.importChatInvite
- Imports contacts: saves a full list on the server, adds already registered contacts to the contact list, returns added contacts and their info: contacts.importContacts
- Informs the server about the number of pending bot updates if they haven’t been processed for a long time; for bots only: help.setBotUpdatesStatus
- Initialize connection: initConnection
- Install a stickerset: messages.installStickerSet
- Install a theme: account.installTheme
- Install wallpaper: account.installWallPaper
- Install/uninstall wallpaper: account.saveWallPaper
- Installs a previously uploaded photo as a profile photo: photos.updateProfilePhoto
- Internal use: help.editUserInfo
- Internal use: help.getUserInfo
- Intialize account takeout session: account.initTakeoutSession
- Invite users to a channel/supergroup: channels.inviteToChannel
- Invoke a method within a takeout session: invokeWithTakeout
- Invoke a request without subscribing the used connection for updates (this is enabled by default for file queries): invokeWithoutUpdates
- Invoke the specified query using the specified API layer: invokeWithLayer
- Invoke with the given message range: invokeWithMessagesRange
- Invokes a query after a successfull completion of previous queries: invokeAfterMsgs
- Invokes a query after successfull completion of one of the previous queries: invokeAfterMsg
- Join a channel/supergroup: channels.joinChannel
- Leave a channel/supergroup: channels.leaveChannel
- Load channel statistics graph asynchronously: stats.loadAsyncGraph
- Log out an active authorized session by its hash: account.resetAuthorization
- Log out an active web telegram login session: account.resetWebAuthorization
- Login as a bot: auth.importBotAuthorization
- Login using a redirected login token, generated in case of DC mismatch during QR code login: auth.importLoginToken
- Logs in a user using a key transmitted from his native data-centre: auth.importAuthorization
- Logs out the user: auth.logOut
- Look for updates of telegram’s terms of service: help.getTermsOfServiceUpdate
- Make a user admin in a legacy group: messages.editChatAdmin
- Manually mark dialog as unread: messages.markDialogUnread
- Mark channel/supergroup history as read: channels.readHistory
- Mark channel/supergroup message contents as read: channels.readMessageContents
- Mark a sticker as favorite: messages.faveSticker
- Mark mentions as read: messages.readMentions
- Mark new featured stickers as read: messages.readFeaturedStickers
- Marks message history as read: messages.readHistory
- Marks message history within a secret chat as read: messages.readEncryptedHistory
- Method for fetching previously featured stickers: messages.getOldFeaturedStickers
- Modify the admin rights of a user in a supergroup/channel: channels.editAdmin
- Notifies the sender about the recipient having listened a voice message or watched a video: messages.readMessageContents
- Notify the other user in a private chat that a screenshot of the chat was taken: messages.sendScreenshotNotification
- Notify the user that the sent passport data contains some errors The user will not be able to re-submit their Passport data to you until the errors are fixed (the contents of the field for which you returned the error must change): users.setSecureValueErrors
- Obtain configuration for two-factor authorization with password: account.getPassword
- Once the user has confirmed their payment and shipping details, the bot receives an updateBotPrecheckoutQuery update. : messages.setBotPrecheckoutResults
- Optional: notify the server that the user is currently busy in a call: this will automatically refuse all incoming phone calls until the current phone call is ended: phone.receivedCall
- Pin a message: messages.updatePinnedMessage
- Pin/unpin a dialog: messages.toggleDialogPin
- Press an inline callback button and get a callback answer from the bot: messages.getBotCallbackAnswer
- Query an inline bot: messages.getInlineBotResults
- Rate a call: phone.setCallRating
- Refuse or end running call: phone.discardCall
- Register device to receive PUSH notifications: account.registerDevice
- Registers a validated phone number in the system: auth.signUp
- Remove a sticker from the set where it belongs, bots only. The sticker set must have been created by the bot: stickers.removeStickerFromSet
- Reorder folders: messages.updateDialogFiltersOrder
- Reorder installed stickersets: messages.reorderStickerSets
- Reorder pinned dialogs: messages.reorderPinnedDialogs
- Report a message in a chat for violation of telegram’s Terms of Service: messages.report
- Report a new incoming chat for spam, if the peer settings of the chat allow us to do that: messages.reportSpam
- Report a peer for violation of telegram’s Terms of Service: account.reportPeer
- Report a secret chat for spam: messages.reportEncryptedSpam
- Reports some messages from a user in a supergroup as spam; requires administrator rights in the supergroup: channels.reportSpam
- Request a reupload of a certain file to a CDN DC: upload.reuploadCdnFile
- Request recovery code of a 2FA password, only for accounts with a recovery email configured: auth.requestPasswordRecovery
- Resend the code to verify an email to use as 2FA recovery method: account.resendPasswordEmail
- Resend the login code via another medium, the phone code type is determined by the return value of the previous auth.sendCode/auth.resendCode: see login for more info: auth.resendCode
- Reset rating of top peer: contacts.resetTopPeerRating
- Reset all active web telegram login sessions: account.resetWebAuthorizations
- Reset the 2FA password using the recovery code sent using auth.requestPasswordRecovery: auth.recoverPassword
- Resets all notification settings from users and groups: account.resetNotifySettings
- Resolve a @username to get peer info: contacts.resolveUsername
- Returns URL with the chat statistics. Currently this method can be used only for channels: messages.getStatsURL
- Returns a Telegram Passport authorization form for sharing data with a service: account.getAuthorizationForm
- Returns a current state of updates: updates.getState
- Returns a list of available wallpapers: account.getWallPapers
- Returns an HTTP URL which can be used to automatically log in into translation platform and suggest new emoji replacements. The URL will be valid for 30 seconds after generation: messages.getEmojiURL
- Returns basic user info according to their identifiers: users.getUsers
- Returns chat basic info on their IDs: messages.getChats
- Returns configuration parameters for Diffie-Hellman key generation. Can also return a random sequence of bytes of required length: messages.getDhConfig
- Returns content of a whole file or its part: upload.getFile
- Returns content of an HTTP file or a part, by proxying the request through telegram: upload.getWebFile
- Returns current configuration, including data center configuration: help.getConfig
- Returns data for copying authorization to another data-centre: auth.exportAuthorization
- Returns extended user info by ID: users.getFullUser
- Returns full chat info according to its ID: messages.getFullChat
- Returns info on data centre nearest to the user: help.getNearestDc
- Returns information on update availability for the current application: help.getAppUpdate
- Returns list of chats with non-default notification settings: account.getNotifyExceptions
- Returns localized text of a text message with an invitation: help.getInviteText
- Returns the current user dialog list: messages.getDialogs
- Returns the current user’s contact list: contacts.getContacts
- Returns the difference between the current state of updates of a certain channel and transmitted: updates.getChannelDifference
- Returns the list of blocked users: contacts.getBlocked
- Returns the list of contact statuses: contacts.getStatuses
- Returns the list of messages by their IDs: messages.getMessages
- Returns the list of user photos: photos.getUserPhotos
- Returns the support user for the ‘ask a question’ feature: help.getSupport
- Returns users found by username substring: contacts.search
- Save a message draft associated to a chat: messages.saveDraft
- Save a theme: account.saveTheme
- Save get all message drafts: messages.getAllDrafts
- Saves a part of a large file (over 10Mb in size) to be later passed to one of the methods: upload.saveBigFilePart
- Saves a part of file for futher sending to one of the methods: upload.saveFilePart
- Saves logs of application on the server: help.saveAppLog
- Search for messages and peers globally: messages.searchGlobal
- Search for stickersets: messages.searchStickerSets
- Securely save Telegram Passport document, for more info see the passport docs »: account.saveSecureValue
- Send a media: messages.sendMedia
- Send a result obtained using messages.getInlineBotResults: messages.sendInlineBotResult
- Send an album of media: messages.sendMultiMedia
- Send compiled payment form: payments.sendPaymentForm
- Send confirmation code to cancel account deletion, for more info click here »: account.sendConfirmPhoneCode
- Send phone call debug data to server: phone.saveCallDebug
- Send scheduled messages right away: messages.sendScheduledMessages
- Send the verification code for login: auth.sendCode
- Send the verification email code for telegram passport: account.sendVerifyEmailCode
- Send the verification phone code for telegram passport: account.sendVerifyPhoneCode
- Send typing event by the current user to a secret chat: messages.setEncryptedTyping
- Sends a Telegram Passport authorization form, effectively sharing data with the service: account.acceptAuthorization
- Sends a current user typing event (see SendMessageAction for all event types) to a conversation partner or group: messages.setTyping
- Sends a custom request; for bots only: bots.sendCustomRequest
- Sends a message to a chat: messages.sendMessage
- Sends a message with a file attachment to a secret chat: messages.sendEncryptedFile
- Sends a request to start a secret chat to the user: messages.requestEncryption
- Sends a service message to a secret chat: messages.sendEncryptedService
- Sends a text message to a secret chat: messages.sendEncrypted
- Set a new 2FA password: account.updatePasswordSettings
- Set account self-destruction period: account.setAccountTTL
- Set bot command list: bots.setBotCommands
- Set sensitive content settings (for viewing or hiding NSFW content): account.setContentSettings
- Set stickerset thumbnail: stickers.setStickerSetThumb
- Set the callback answer to a user button press (bots only): messages.setBotCallbackAnswer
- Should be called after the user hides the report spam/add as contact bar of a new chat, effectively prevents the user from executing the actions specified in the peer’s settings: messages.hidePeerSettingsBar
- Signs in a user with a validated phone number: auth.signIn
- Start a conversation with a bot using a deep linking parameter: messages.startBot
- Start a telegram phone call: phone.requestCall
- Submit requested order information for validation: payments.validateRequestedInfo
- Terminates all user’s authorized sessions except for the current one: auth.resetAuthorizations
- Toggle contact sign up notifications: account.setContactSignUpNotification
- Toggle supergroup slow mode: if enabled, users will only be able to send one message every seconds seconds: channels.toggleSlowMode
- Transfer channel ownership: channels.editCreator
- Try logging to an account protected by a 2FA password: auth.checkPassword
- Turn a legacy group into a supergroup: messages.migrateChat
- Uninstall a stickerset: messages.uninstallStickerSet
- Update folder: messages.updateDialogFilter
- Update theme: account.updateTheme
- Updates current user profile photo: photos.uploadProfilePhoto
- Updates online user status: account.updateStatus
- Updates user profile: account.updateProfile
- Upload a file and associate it to a chat (without actually sending it to the chat): messages.uploadMedia
- Upload encrypted file and associate it to a secret chat: messages.uploadEncryptedFile
- Upload theme: account.uploadTheme
- Use this method to set the score of the specified user in a game sent as a normal message (bots only): messages.setGameScore
- Use this method to set the score of the specified user in a game sent as an inline message (bots only): messages.setInlineGameScore
- Use this to accept a Seamless Telegram Login authorization request, for more info click here »: messages.acceptUrlAuth
- Validates a username and checks availability: account.checkUsername
- Verify a new phone number to associate to the current account: account.sendChangePhoneCode
- Verify a phone number for telegram passport: account.verifyPhone
- Verify an email address for telegram passport: account.verifyEmail
- Verify an email to use as 2FA recovery method: account.confirmPasswordEmail
- Vote in a poll: messages.sendVote
- When client-side passcode lock feature is enabled, will not show message texts in incoming PUSH notifications: account.updateDeviceLocked
- Whether the user will receive notifications when contacts sign up: account.getContactSignUpNotification
- Complete phone call E2E encryption key exchange »: phone.confirmCall
- Peers
- Files
- Secret chats
- Entities (Markdown & HTML)
- reply_markup (keyboards & inline keyboards)
- bot API objects
- No result
- Queues
- Multiple method calls
- FULL API Documentation with descriptions
- Contributing
- Web templates for
$MadelineProto->start()
This site uses cookies, as described in the cookie policy. By clicking on "Accept" you consent to the use of cookies.