Globally search for posts from public channels » (including those we aren't a member of) containing either a specific hashtag, or a full text query.Exactly one of query and hashtag must be set.
API section: Working with messages
channels.searchPosts#f2c4f24d flags:# hashtag:flags.0?string query:flags.1?string offset_rate:int offset_peer:InputPeer offset_id:int limit:int allow_paid_stars:flags.2?long = messages.Messages;
| Name | Type | Description |
|---|---|---|
| flags | # | Bit mask: a field written flags.N?T is present only when bit N is set. |
| hashtag | flags.0?string | |
| query | flags.1?string | Search query. |
| offset_rate | int | |
| offset_peer | InputPeer | Peer to continue the selection from. |
| offset_id | int | Identifier to continue the selection from. |
| limit | int | Maximum number of records to return. |
| allow_paid_stars | flags.2?long |
This method has no errors of its own: it either answers or fails on the shared checks below.
| Code | Type | What it means |
|---|---|---|
| 401 | AUTH_KEY_UNREGISTERED |
The server does not know this session: the key was revoked, expired, or the call was made before authorisation. |
| 401 | API_ID_INVALID |
This api_id was never issued or has been blocked. Keys come from my.ansible.su. |
| 400 | CONNECTION_LAYER_INVALID |
The client did not declare a layer, or declared one the server does not know. |
| 420 | FLOOD_WAIT_X |
Too often. Do not retry for X seconds — the number arrives in the error text. |
| 500 | INTERNAL |
A failure on our side. The request may be retried; if it keeps failing, it is a bug of ours. |