Pull to refresh

Undocumented endpoint или попытки борьбы с имитацией активности «пользователя»?

Level of difficultyMedium
Reading time1 min
Views3.5K
Актуальность

Стоит учитывать, что данная статья актуальна для v=5.92. За последующие изменения работы VK API автор ответственности не несет.

В процессе изучения возможностей VK API столкнулся с, казалось бы, нелогичной вещью: обыкновенный пользователь имеет возможность добавить репост в отложенные записи:

При это в документации API про это ни слова:

Обращение в службу поддержки ВКонтакте

По секрету скажу, что поддержка ВКонтакте также утверждает об отсутствии такой возможности с помощью использования методов API.

... или прикидываются?

Тогда было принято решение посмотреть, что из себя представляет запрос при отправке репоста в отложенные записи:

И что же вы видим? Некий параметр postpone с параметром удивительно похожим на Unix Timestamp.

Проверяем... и правда, дата та, которую мы указывали во времени публикации:

НО не все так просто, потому что при следующем коде:

delay_repost = vk_api.wall.repost(object=f'wall{-7486164_1052}', postpone=1735637040)

получает следующий ответ:

VkAPIError: 100. One of the parameters specified was missing or invalid.

Тут на помощь пришла смекалка. Ведь в методе wall.post был требуемый параметр, но назывался он иначе:

Меняем название параметра на publish_date:

delay_repost = vk_api.wall.repost(object=f'wall{-7486164_1052}', publish_date=1735637040)

Запись добавлена в отложенные и будет опубликована в указанные дату и время.

Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
Total votes 5: ↑3 and ↓2+1
Comments10

Articles