messages.search

Gets back found messages

Example

const {Api, TelegramClient} = require('telegram');
const {StringSession} = require('telegram/sessions');

const session = new StringSession('');
const client = new TelegramClient(session, apiId, apiHash, {});

(async function run() {
    const result = await client.invoke(new Api.messages.search({
        peer: new Api.InputPeer({...}),
        q: 'random string here',
        fromId: new Api.InputPeer({...}),
        topMsgId: 4881049,
        filter: new Api.MessagesFilter({...}),
        minDate: 7108524,
        maxDate: 3588179,
        offsetId: 840380,
        addOffset: 3671533,
        limit: 6577178,
        maxId: 7375544,
        minId: 9351693,
        hash: 7383860,
        }));
    console.log(result); // prints the result
})();

TL schema

messages.messages#8c718e87 messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.messagesSlice#3a54685e flags:# inexact:flags.1?true count:int next_rate:flags.0?int offset_id_offset:flags.2?int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.channelMessages#64479808 flags:# inexact:flags.1?true pts:int count:int offset_id_offset:flags.2?int messages:Vector<Message> chats:Vector<Chat> users:Vector<User> = messages.Messages;
messages.messagesNotModified#74535f21 count:int = messages.Messages;
---functions---
messages.search#c352eec flags:# peer:InputPeer q:string from_id:flags.0?InputPeer top_msg_id:flags.1?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 = messages.Messages;

Parameters

Name

Type

Description

flags

peer

User or chat, histories with which are searched, or (inputPeerEmpty) constructor for global search

q

Text search request

from_id

Only return messages sent by the specified user ID

top_msg_id

filter

Filter to return only specified message types

min_date

If a positive value was transferred, only messages with a sending date bigger than the transferred one will be returned

max_date

If a positive value was transferred, only messages with a sending date smaller than the transferred one will be returned

offset_id

Only return messages starting from the specified message ID

add_offset

limit

max_id

min_id

hash

Result

messages.Messages

Possible 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

Can bots use this methd ?

yes

An empty constructor, no user or chat is defined.

Telegram allows commenting on a channel post or on a generic supergroup message, thanks to message threads.

How to fetch results from large lists of objects.

Last updated