---
title: Methods
description: What do you want to do?
image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
---
# What do you want to do?
[Go back to API documentation index](..)
[Go to the old code-version method index](api_README.md)
* [Logout](https://docs.madelineproto.xyz/logout.html)
* [Login](https://docs.madelineproto.xyz/docs/LOGIN.html)
* [Change 2FA password](https://docs.madelineproto.xyz/update_2fa.html)
* [Get all chats, broadcast a message to all chats](https://docs.madelineproto.xyz/docs/DIALOGS.html)
* [Get the full participant list of a channel/group/supergroup](https://docs.madelineproto.xyz/get_pwr_chat.html)
* [Get full info about a user/chat/supergroup/channel](https://docs.madelineproto.xyz/get_full_info.html)
* [Get info about a user/chat/supergroup/channel](https://docs.madelineproto.xyz/get_info.html)
* [Get info about the currently logged-in user](https://docs.madelineproto.xyz/get_self.html)
* [Upload or download files up to 1.5 GB](https://docs.madelineproto.xyz/docs/FILES.html)
* [Make a phone call and play a song](https://docs.madelineproto.xyz/docs/CALLS.html)
* [Create a secret chat bot](https://docs.madelineproto.xyz/docs/SECRET_CHATS.html)
* Add a sticker set: messages.installStickerSet
* Add a sticker to recent stickers: messages.saveRecentSticker
* Add a user to a normal chat (use channels->inviteToChannel for supergroups): messages.addChatUser
* Add phone number as contact: contacts.importContacts
* Add users to channel/supergroup: channels.inviteToChannel
* Allow or disallow any user to invite users to this channel/supergroup: channels.toggleInvites
* Block a user: contacts.block
* Bots only: send payment form: payments.sendPaymentForm
* Bots only: set precheckout results: messages.setBotPrecheckoutResults
* Bots only: set shipping results: messages.setBotShippingResults
* Bots only: set the callback answer (after a button was clicked): messages.setBotCallbackAnswer
* Bots only: set the results of an inline query: messages.setInlineBotResults
* Call inline bot: messages.getInlineBotResults
* Change notification settings: account.updateNotifySettings
* Change the phone number associated to this account: account.changePhone
* Change the phone number: account.sendChangePhoneCode
* Change the profile photo: photos.updateProfilePhoto
* Change typing status: messages.setTyping
* Check if about to edit a message or a media caption: messages.getMessageEditData
* Check if an invitation link is valid: messages.checkChatInvite
* Check if this phone number is registered on telegram: auth.checkPhone
* Check if this username is available: account.checkUsername
* Check if this username is free and can be assigned to a channel/supergroup: channels.checkUsername
* Clear all recent stickers: messages.clearRecentStickers
* Clear saved payments info: payments.clearSavedInfo
* Confirm this phone number is associated to this account, obtain phone_code_hash from sendConfirmPhoneCode: account.confirmPhone
* Convert chat to supergroup: messages.migrateChat
* Create a chat (not supergroup): messages.createChat
* Create channel/supergroup: channels.createChannel
* Delete a certain session: account.resetAuthorization
* Delete a channel/supergroup: channels.deleteChannel
* Delete a contact: contacts.deleteContact
* Delete a user from a chat (not supergroup): messages.deleteChatUser
* Delete all logged-in sessions.: auth.resetAuthorizations
* Delete all messages of a user in a channel/supergroup: channels.deleteUserHistory
* Delete all temporary authorization keys except the ones provided: auth.dropTempAuthKeys
* Delete channel/supergroup messages: channels.deleteMessages
* Delete chat history: messages.deleteHistory
* Delete messages: messages.deleteMessages
* Delete multiple contacts: contacts.deleteContacts
* Delete profile photos: photos.deletePhotos
* Delete this account: account.deleteAccount
* Destroy current authorization key: destroy_auth_key
* Destroy the current MTProto session: destroy_session
* Disable all notifications for a certain period: account.updateDeviceLocked
* Do not send answer to provided request: rpc_drop_answer
* Download a file through telegram: upload.getWebFile
* Edit a message: messages.editMessage
* Edit a sent inline message: messages.editInlineBotMessage
* Edit admin permissions of a user in a channel/supergroup: channels.editAdmin
* Edit admin permissions: messages.editChatAdmin
* Edit the about text of a channel/supergroup: channels.editAbout
* Edit the photo of a normal chat (not supergroup): messages.editChatPhoto
* Edit the photo of a supergroup/channel: channels.editPhoto
* Edit the title of a normal chat (not supergroup): messages.editChatTitle
* Edit the title of a supergroup/channel: channels.editTitle
* Enable all users are admins in normal groups (not supergroups): messages.toggleChatAdmins
* Export chat invite : messages.exportChatInvite
* Export contact as card: contacts.exportCard
* Export the invite link of a channel: channels.exportInvite
* Forward message: messages.forwardMessage
* Forward messages: messages.forwardMessages
* Get CDN configuration: help.getCdnConfig
* Get a stickerset: messages.getStickerSet
* Get account TTL: account.getAccountTTL
* Get all archived stickers: messages.getArchivedStickers
* Get all chats (not supergroups or channels): messages.getAllChats
* Get all contacts: contacts.getContacts
* Get all logged-in authorizations: account.getAuthorizations
* Get all message drafts: messages.getAllDrafts
* Get all stickerpacks: messages.getAllStickers
* Get all supergroups/channels where you're admin: channels.getAdminedPublicChannels
* Get and increase message views: messages.getMessagesViews
* Get blocked users: contacts.getBlocked
* Get call configuration: phone.getCallConfig
* Get channel/supergroup messages: channels.getMessages
* Get channel/supergroup participants (you should use `$MadelineProto->get_pwr_chat($id)` instead): channels.getParticipants
* Get chats in common with a user: messages.getCommonChats
* Get dialog info of peers: messages.getPeerDialogs
* Get document by SHA256 hash: messages.getDocumentByHash
* Get featured stickers: messages.getFeaturedStickers
* Get future salts: get_future_salts
* Get high scores of a game sent in an inline message: messages.getInlineGameHighScores
* Get high scores of a game: messages.getGameHighScores
* Get info about a certain channel/supergroup participant: channels.getParticipant
* Get info about app updates: help.getAppUpdate
* Get info about chats: messages.getChats
* Get info about multiple channels/supergroups: channels.getChannels
* Get info about users: users.getUsers
* Get info of support user: help.getSupport
* Get invitation text: help.getInviteText
* Get masks: messages.getMaskStickers
* Get messages: messages.getMessages
* Get most used chats: contacts.getTopPeers
* Get nearest datacenter: help.getNearestDc
* Get notification settings: account.getNotifySettings
* Get online status of all users: contacts.getStatuses
* Get payment form: payments.getPaymentForm
* Get payment receipt: payments.getPaymentReceipt
* Get pinned dialogs: messages.getPinnedDialogs
* Get previous messages of a group: messages.getHistory
* Get privacy settings: account.getPrivacy
* Get recent stickers: messages.getRecentStickers
* Get saved gifs: messages.getSavedGifs
* Get saved payments info: payments.getSavedInfo
* Get server configuration: help.getConfig
* Get stickers attachable to images: messages.getAttachedStickers
* Get temporary password for buying products through bots: account.getTmpPassword
* Get terms of service: help.getTermsOfService
* Get the callback answer of a bot (after clicking a button): messages.getBotCallbackAnswer
* Get the changelog of this app: help.getAppChangelog
* Get the current 2FA settings: account.getPasswordSettings
* Get the current password: account.getPassword
* Get the link of a message in a channel: channels.exportMessageLink
* Get the profile photos of a user: photos.getUserPhotos
* Get the settings of apeer: messages.getPeerSettings
* Get webpage preview: messages.getWebPage
* Get webpage preview: messages.getWebPagePreview
* Gets list of chats: you should use $MadelineProto->get_dialogs() instead: https://docs.madelineproto.xyz/docs/DIALOGS.html: messages.getDialogs
* Global message search: messages.searchGlobal
* Hide report spam popup: messages.hideReportSpam
* Import card as contact: contacts.importCard
* Import chat invite: messages.importChatInvite
* Initializes connection and save information on the user's device and application.: initConnection
* Invalidate sent phone code: auth.cancelCode
* Invite friends to telegram!: auth.sendInvites
* Invoke this method with layer X: invokeWithLayer
* Invoke with method without returning updates in the socket: invokeWithoutUpdates
* Invokes a query after successfull completion of one of the previous queries.: invokeAfterMsg
* Join a channel/supergroup: channels.joinChannel
* Kick user from channel: channels.kickFromChannel
* Leave a channel/supergroup: channels.leaveChannel
* Log data for developer of this app: help.saveAppLog
* Mark channel/supergroup history as read: channels.readHistory
* Mark message as read: messages.readMessageContents
* Mark messages as read in secret chats: messages.readEncryptedHistory
* Mark messages as read: messages.readHistory
* Mark messages as read: messages.receivedMessages
* Mark new featured stickers as read: messages.readFeaturedStickers
* Notify server that you received a call (server will refuse all incoming calls until the current call is over): phone.receivedCall
* Pin or unpin dialog: messages.toggleDialogPin
* Pings the server and causes disconection if the same method is not called within ping_disconnect_delay: ping_delay_disconnect
* Pings the server: ping
* Register device for push notifications: account.registerDevice
* Remove a sticker set: messages.uninstallStickerSet
* Reorder pinned dialogs: messages.reorderPinnedDialogs
* Reorder sticker sets: messages.reorderStickerSets
* Report a message in a supergroup/channel for spam: channels.reportSpam
* Report a peer for spam: messages.reportSpam
* Report for spam a secret chat: messages.reportEncryptedSpam
* Report for spam: account.reportPeer
* Requests Diffie-hellman parameters for key exchange: req_DH_params
* Requests PQ for factorization: req_pq
* Resend the SMS verification code: auth.resendCode
* Reset all notification settings: account.resetNotifySettings
* Reset top peer rating for a certain category/peer: contacts.resetTopPeerRating
* Result type returned by a current query.: invokeAfterMsgs
* Returns a list of available wallpapers.: account.getWallPapers
* Save a GIF: messages.saveGif
* Save a message draft: messages.saveDraft
* Save call debugging info: phone.saveCallDebug
* Save developer info for telegram contest: contest.saveDeveloperInfo
* Search contacts: contacts.search
* Search gifs: messages.searchGifs
* Search peers or messages: messages.search
* Send a custom request to the bot API: bots.sendCustomRequest
* Send a file to a secret chat: messages.sendEncryptedFile
* Send a media: messages.sendMedia
* Send a message: messages.sendMessage
* Send a service message to a secret chat: messages.sendEncryptedService
* Send an email to recover the 2FA password: auth.requestPasswordRecovery
* Send confirmation phone code: account.sendConfirmPhoneCode
* Send inline bot result obtained with messages.getInlineBotResults to the chat: messages.sendInlineBotResult
* Send message to secret chat: messages.sendEncrypted
* Send typing notification to secret chat: messages.setEncryptedTyping
* Send webhook request via bot API: bots.answerWebhookJSONQuery
* Set account TTL: account.setAccountTTL
* Set phone call rating: phone.setCallRating
* Set privacy settings: account.setPrivacy
* Set the game score of an inline message: messages.setInlineGameScore
* Set the game score: messages.setGameScore
* Set the pinned message of a channel/supergroup: channels.updatePinnedMessage
* Set the update status of webhook: help.setBotUpdatesStatus
* Sets client diffie-hellman parameters: set_client_DH_params
* Start a bot: messages.startBot
* Stop sending PUSH notifications to app: account.unregisterDevice
* Toggle channel signatures: channels.toggleSignatures
* Unblock a user: contacts.unblock
* Update online status: account.updateStatus
* Update profile info: account.updateProfile
* Update the username of a supergroup/channel: channels.updateUsername
* Update this user's username: account.updateUsername
* Upload profile photo: photos.uploadProfilePhoto
* Use phone_login instead: auth.sendCode
* Use the code that was emailed to you after running $MadelineProto->auth->requestPasswordRecovery to login to your account: auth.recoverPassword
* Validate requested payment info: payments.validateRequestedInfo
* You cannot use this method directly, instead modify the PFS and default_temp_auth_key_expires_in settings, see https://docs.madelineproto.xyz/docs/SETTINGS.html for more info: auth.bindTempAuthKey
* You cannot use this method directly, instead use $MadelineProto->get_dh_config();: messages.getDhConfig
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling secret chats: messages.acceptEncryption
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling secret chats: messages.discardEncryption
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling secret chats: messages.requestEncryption
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling updates: updates.getChannelDifference
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling updates: updates.getDifference
* You cannot use this method directly, see https://docs.madelineproto.xyz for more info on handling updates: updates.getState
* You cannot use this method directly, see https://docs.madelineproto.xyz#calls for more info on handling calls: phone.acceptCall
* You cannot use this method directly, see https://docs.madelineproto.xyz#calls for more info on handling calls: phone.confirmCall
* You cannot use this method directly, see https://docs.madelineproto.xyz#calls for more info on handling calls: phone.discardCall
* You cannot use this method directly, see https://docs.madelineproto.xyz#calls for more info on handling calls: phone.requestCall
* You cannot use this method directly, use $MadelineProto->export_authorization() instead, see https://docs.madelineproto.xyz/docs/LOGIN.html: auth.exportAuthorization
* You cannot use this method directly, use $MadelineProto->import_authorization($authorization) instead, see https://docs.madelineproto.xyz/docs/LOGIN.html: auth.importAuthorization
* You cannot use this method directly, use the bot_login method instead (see https://docs.madelineproto.xyz for more info): auth.importBotAuthorization
* You cannot use this method directly, use the complete_2fa_login method instead (see https://docs.madelineproto.xyz for more info): auth.checkPassword
* You cannot use this method directly, use the complete_phone_login method instead (see https://docs.madelineproto.xyz for more info): auth.signIn
* You cannot use this method directly, use the complete_signup method instead (see https://docs.madelineproto.xyz for more info): auth.signUp
* You cannot use this method directly, use the get_pwr_chat, get_info, get_full_info methods instead (see https://docs.madelineproto.xyz for more info): channels.getFullChannel
* You cannot use this method directly, use the get_pwr_chat, get_info, get_full_info methods instead (see https://docs.madelineproto.xyz for more info): messages.getFullChat
* You cannot use this method directly, use the get_pwr_chat, get_info, get_full_info methods instead (see https://docs.madelineproto.xyz for more info): users.getFullUser
* You cannot use this method directly, use the logout method instead (see https://docs.madelineproto.xyz for more info): auth.logOut
* You cannot use this method directly, use the resolve_username, get_pwr_chat, get_info, get_full_info methods instead (see https://docs.madelineproto.xyz for more info): contacts.resolveUsername
* You cannot use this method directly, use the upload, download_to_stream, download_to_file, download_to_dir methods instead; see https://docs.madelineproto.xyz for more info: upload.getCdnFile
* You cannot use this method directly, use the upload, download_to_stream, download_to_file, download_to_dir methods instead; see https://docs.madelineproto.xyz for more info: upload.getFile
* You cannot use this method directly, use the upload, download_to_stream, download_to_file, download_to_dir methods instead; see https://docs.madelineproto.xyz for more info: upload.reuploadCdnFile
* You cannot use this method directly, use the upload, download_to_stream, download_to_file, download_to_dir methods instead; see https://docs.madelineproto.xyz for more info: upload.saveBigFilePart
* You cannot use this method directly, use the upload, download_to_stream, download_to_file, download_to_dir methods instead; see https://docs.madelineproto.xyz for more info: upload.saveFilePart
* You cannot use this method directly: messages.receivedQueue
* You cannot use this method directly; use $MadelineProto->update_2fa($params), instead (see https://docs.madelineproto.xyz for more info): account.updatePasswordSettings