Войти

Посты

Методы группы «MAX: посты». Справа — пример запроса и ответа для каждого.

Посты канала

GET/v1/max/channels/{channel}/posts/
1 единицас тарифа «API.Max Старт»: «Тесту» посты закрыты

Посты открытого канала, новые сверху, страницами до 100 (по умолчанию 50); ссылка на следующую страницу — в поле next. Фильтры: from и to — период по московскому времени включительно, is_ad — только рекламные (true) или без рекламы (false). Открыто с тарифа «API.Max Старт»; у закрытого канала — 403 closed_channel, у группового чата — 404 (сообщения чатов мы не собираем), у удалённого или недоступного в MAX канала — 404.

Параметры

Имя параметраГдеОписание
channel обязателен
строка
путьНомер канала в datool.ru или публичное имя (с @ или без)
cursor
строка
запросКурсор следующей страницы — берите готовую ссылку из поля next
from
дата
запросС этого дня (по Москве)
is_ad
да / нет
запросТолько рекламные (true) или без рекламы (false)
limit
число
запросСтрок на странице: 1–100, по умолчанию 50
to
дата
запросПо этот день включительно (по Москве)

Поля ответа

ПолеТипОписание
resultsсписокПосты этой страницы, новые сверху
results[].idчислоНомер поста в datool.ru — по нему /v1/max/posts/{id}/
results[].channelчислоНомер канала в datool.ru
results[].external_idчислоНомер поста в канале MAX
results[].urlстрока или nullСсылка на пост в MAX или null
results[].published_atдата и времяВремя публикации (ISO 8601, по Москве, +03:00)
results[].edited_atдата и время или nullКогда заметили правку текста (ISO 8601, по Москве) или null
results[].textстрокаТекст поста без разметки (может быть пустым — пост из одних вложений)
results[].viewsчисло или nullПросмотры на момент последнего чтения или null
results[].reactions_countчисло или nullРеакций всего или null (ещё не прочитаны)
results[].reactionsобъектРеакции по эмодзи: {"👍": 12}
results[].is_adда / нетРекламный пост: есть маркировка erid, пометка «Реклама» или ссылка наружу с призывом купить или перейти (отмечается автоматически)
results[].forwarded_fromобъект или nullИсточник репоста или null
results[].mediaсписокВложения в порядке поста
results[].page_urlстрокаСтраница поста на max.datool.ru
nextстрока или nullАдрес следующей страницы или null

Ошибки

КодcodeКогда
400ошибки полейНеверный параметр или поле тела: ошибка приходит у имени поля, например {"channels": ["Номера каналов через запятую."]}.
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredПосты закрыты на тарифе «API.Max Тест» — нужен «API.Max Старт».
403closed_channelКанал закрытый: через API у него только карточка.
404not_foundНет объекта с таким номером или именем, или он вам не виден.
404not_foundГрупповой чат: сообщения чатов не собираются.
429rate_limited / quota_exceeded / throttledСлишком часто (больше запросов в секунду, чем по тарифу) или запросы за период закончились; сколько ждать — в заголовке Retry-After.
503timeoutЗапрос к базе не уложился в 5 секунд — повторите позже или сузьте выборку.

Пост

GET/v1/max/posts/{id}/
1 единицас тарифа «API.Max Старт»: «Тесту» посты закрыты

Один пост открытого канала по номеру datool.ru: текст, время публикации и правки, просмотры, реакции по эмодзи, признак рекламы, источник репоста и вложения. Пост закрытого, удалённого или недоступного в MAX канала и группового чата — 404, как несуществующий. Открыто с тарифа «API.Max Старт».

Параметры

Имя параметраГдеОписание
id обязателен
число
путьНомер поста в datool.ru

Поля ответа

ПолеТипОписание
idчислоНомер поста в datool.ru — по нему /v1/max/posts/{id}/
channelчислоНомер канала в datool.ru
external_idчислоНомер поста в канале MAX
urlстрока или nullСсылка на пост в MAX или null
published_atдата и времяВремя публикации (ISO 8601, по Москве, +03:00)
edited_atдата и время или nullКогда заметили правку текста (ISO 8601, по Москве) или null
textстрокаТекст поста без разметки (может быть пустым — пост из одних вложений)
viewsчисло или nullПросмотры на момент последнего чтения или null
reactions_countчисло или nullРеакций всего или null (ещё не прочитаны)
reactionsобъектРеакции по эмодзи: {"👍": 12}
is_adда / нетРекламный пост: есть маркировка erid, пометка «Реклама» или ссылка наружу с призывом купить или перейти (отмечается автоматически)
forwarded_fromобъект или nullИсточник репоста или null
forwarded_from.titleстрокаНазвание источника, как его дал MAX
forwarded_from.linkстрокаСсылка на источник или пусто
forwarded_from.channelчисло или nullНомер канала в datool.ru или null
mediaсписокВложения в порядке поста
media[].kindстрокаimage, video, audio, file, link, poll, sticker, location, contact
media[].positionчислоПорядок вложения в посте, с 0
media[].widthчисло или nullШирина картинки или видео в пикселях или null
media[].heightчисло или nullВысота картинки или видео в пикселях или null
media[].durationчисло или nullДлительность видео или аудио в секундах или null
media[].previewстрока или nullПревью — наша копия через CDN media.datool.ru или null (копии нет)
page_urlстрокаСтраница поста на max.datool.ru

Ошибки

КодcodeКогда
401not_authenticated / authentication_failedНет ключа, ключ неверный или отозван, участник приостановлен или организация ключа в архиве.
403tariff_requiredПосты закрыты на тарифе «API.Max Тест» — нужен «API.Max Старт».
404not_foundНет объекта с таким номером или именем, или он вам не виден.
429rate_limited / quota_exceeded / throttledСлишком часто (больше запросов в секунду, чем по тарифу) или запросы за период закончились; сколько ждать — в заголовке Retry-After.
503timeoutЗапрос к базе не уложился в 5 секунд — повторите позже или сузьте выборку.

Формат ошибок, заголовки лимитов и что делать при каждой — в статье «Ошибки».

Страница полезна?

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти