# Method: messages.search

Back to methods index

Gets back found messages

# Parameters:

Name Type Description Required
peer Username, chat ID, Update, Message or InputPeer User or chat, histories with which are searched, or (inputPeerEmpty) constructor for global search Optional
q string Text search request Yes
from_id Username, chat ID, Update, Message or InputPeer   Optional
top_msg_id int   Optional
filter MessagesFilter Filter to return only specified message types Optional
min_date int If a positive value was transferred, only messages with a sending date bigger than the transferred one will be returned Yes
max_date int If a positive value was transferred, only messages with a sending date smaller than the transferred one will be returned Yes
offset_id int Only return messages starting from the specified message ID Yes
add_offset int Additional offset Yes
limit int Number of results to return Yes
max_id int Maximum message ID to return Yes
min_id int Minimum message ID to return Yes
hash Array of int Hash Optional

# Return type: messages.Messages

# Can bots use this method: NO

# MadelineProto Example (now async for huge speed and parallelism!):

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->start();

$messages_Messages = $MadelineProto->messages->search(['peer' => InputPeer, 'q' => 'string', 'from_id' => InputPeer, 'top_msg_id' => int, 'filter' => MessagesFilter, 'min_date' => int, 'max_date' => int, 'offset_id' => int, 'add_offset' => int, 'limit' => int, 'max_id' => int, 'min_id' => int, 'hash' => [int, int], ]);

Or, if you’re into Lua:

messages_Messages = messages.search({peer=InputPeer, q='string', from_id=InputPeer, top_msg_id=int, filter=MessagesFilter, min_date=int, max_date=int, offset_id=int, add_offset=int, limit=int, max_id=int, min_id=int, hash={int}, })

# Errors

Code Type Description
400 CHANNEL_INVALID The provided channel is invalid
400 CHANNEL_PRIVATE You haven’t joined this channel/supergroup
400 CHAT_ADMIN_REQUIRED You must be an admin in this chat to do this
400 INPUT_CONSTRUCTOR_INVALID The provided constructor is invalid
400 INPUT_USER_DEACTIVATED The specified user was deleted
400 MSG_ID_INVALID Invalid message ID provided
400 PEER_ID_INVALID The provided peer id is invalid
400 PEER_ID_NOT_SUPPORTED The provided peer ID is not supported
400 SEARCH_QUERY_EMPTY The search query is empty
400 USER_ID_INVALID The provided user ID is invalid
406 AUTH_KEY_DUPLICATED An auth key with the same ID was already generated
-503 Timeout Timeout while fetching data
This site uses cookies, as described in the cookie policy. By clicking on "Accept" you consent to the use of cookies.