Сообщения
Методы для работы с личными сообщениями и диалогами
POST
messages.send
Отправка личного сообщения пользователю.
Параметры:
user_id
— ID получателя
peer_id
— ID диалога (альтернатива user_id)
domain
— Короткий адрес пользователя
message
*
— Текст сообщения
attachment
— Вложения (photo, video и т.д.)
user_ids
— Список ID для массовой рассылки
Пример:
POST /method/messages.send.json
user_id=123&message=Привет!
Ответ:
1234 // ID отправленного сообщения
GET
messages.getHistory
Получение истории сообщений с пользователем.
Параметры:
user_id
— ID пользователя
peer_id
— ID диалога
offset
— Смещение (по умолчанию 0)
count
— Количество сообщений (по умолчанию 20, макс. 200)
start_message_id
— ID сообщения, с которого начать выборку
rev
— 1 - вернуть в обратном порядке
extended
— 1 - вернуть информацию о пользователях
Пример:
GET /method/messages.getHistory.json?user_id=123&count=20
Ответ:
{
"count": 20,
"items": [{
"id": 1234,
"user_id": 123,
"from_id": 456,
"date": 1609459200,
"read_state": 1,
"out": 0,
"text": "Привет!",
"body": "Привет!"
}]
}
GET
messages.getConversations
Получение списка диалогов пользователя.
Параметры:
offset
— Смещение (по умолчанию 0)
count
— Количество диалогов (по умолчанию 20)
filter
— Фильтр: "all" (по умолчанию)
extended
— 1 - вернуть информацию о пользователях
Пример:
GET /method/messages.getConversations.json?count=10&extended=1
Ответ:
{
"count": 10,
"items": [{
"conversation": {
"peer": {
"id": 123,
"type": "user",
"local_id": 123
},
"can_write": { "allowed": true }
},
"last_message": { ... }
}],
"profiles": [ ... ]
}
GET
messages.getById
Получение сообщений по их ID.
Параметры:
message_ids
*
— ID сообщений через запятую
preview_length
— Длина превью текста (0 = полный текст)
Пример:
GET /method/messages.getById.json?message_ids=123,456,789
POST
messages.delete
Удаление сообщений.
Параметры:
message_ids
*
— ID сообщений через запятую
spam
— 1 - пометить как спам
delete_for_all
— 1 - удалить для всех
Пример:
POST /method/messages.delete.json?message_ids=123,456
POST
messages.edit
Редактирование отправленного сообщения.
Параметры:
message_id
*
— ID сообщения
message
— Новый текст сообщения
attachment
— Новые вложения
Пример:
POST /method/messages.edit.json?message_id=123&message=Исправленный текст
GET
messages.getLongPollServer
Получение данных для подключения к Long Poll серверу (получение событий в реальном времени).
Параметры:
need_pts
— 1 - вернуть поле pts
lp_version
— Версия Long Poll (3 по умолчанию)
Ответ:
{
"key": "abc123...",
"server": "https://vsetke.fun/nim123",
"ts": 1609459200
}