Search for messages and peers globally

messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.messagesSlice#c8edce1e flags:# inexact:flags.1?true count:int next_rate:flags.0?int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.channelMessages#99262e37 flags:# inexact:flags.1?true pts:int count:int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.messagesNotModified#74535f21 count:int = messages.Messages;
messages.searchGlobal#bf7225a4 flags:# folder_id:flags.0?int q:string offset_rate:int offset_peer:InputPeer offset_id:int limit:int = messages.Messages;


Name Type Description
flags # Flags, see TL conditional fields
folder_id flags.0?int Peer folder ID, for more info click here
q string Query
offset_rate int Initially 0, then set to the next_rate parameter of messages.messagesSlice
offset_peer InputPeer Offsets for pagination, for more info click here
offset_id int Offsets for pagination, for more info click here
limit int Offsets for pagination, for more info click here



Possible errors

Code Type Description
400 SEARCH_QUERY_EMPTY The search query is empty

Related pages


Telegram allows placing chats into folders, based on their type, mute status, or other custom criteria, thanks to folder blacklists and whitelists.


Incomplete list of messages and auxiliary data.

Pagination in the API

How to fetch results from large lists of objects.