Содержание статьи
- Получить токен через приложение:
- Где взять access_token?
- ✅ Получение токена через собственное приложение.
- ✅ Получение токена через официальное приложение VK.
[статья обновлена 1 декабря 2020]
В последнее время появляется огромное количество онлайн-сервисов, компьютерных или мобильных приложений, скриптов, которые предназначены для ВКонтакте, но для их работы необходимо пройти авторизацию через access_token.
Некоторые сервисы предоставляют возможности получить ключ доступа, который необходим для авторизации. На это уходит несколько секунд. Но как быть, если вы загрузили скрипт, но необходимого access_token ключа нет?
Как создать public VK?
Краткая инструкция для получения токена сообщества
Заходим в настройки сообщества. (если у вас нет сообщества, значит его необходимо создать):
1. Работа с Api > 2. Получить ключ > 3. Скопируйте его (это ключ (токен) и есть access_token сообщества)
Вот и всё. А если же вам нужен токен пользователя, тогда вся необходимая информация находится ниже в статье.
Получить токен через приложение:
- через собственное приложение (создаёте сами)
- через официальное приложение (не своё)
Где взять access_token?
Сегодня мы разберем то, как авторизоваться в ВКонтакте, используя прямую ссылку API ВКонтакте (на базе протокола OAuth) или, как его еще называют, Implicit flow. Авторизация, если вы используете этот метод, производится через приложение Вк, которое указывается как ID. Сегодня такой метод считается самым безопасным. Вы можете натолкнуться на статьи, в которых рассказывается о методах получения access_token с использованием приложений, которые вызывают (и не зря!) подозрение. Но сегодня мы поговорим о том, как авторизоваться через официальные приложения ВКонтакте.
Секрет получения токена – в переходе по ссылке, в которой содержится ID определенного приложения ВКонтакте.
Ссылка может быть следующего вида:
https://oauth.vk.com/authorize?client_id=ID_ПРИЛОЖЕНИЯ&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_ENGINE=token
Если с этим разобрались, закономерно всплывает следующий вопрос: где взять эту самую ссылку?
Далее я расскажу о двух основных методах, которые позволят получить токен:
✅ Получение токена через собственное приложение.
- С использованием собственного приложения. Этот метод заведомо рассчитан на то, что у вас есть приложение собственной разработки. Если у вас его нет – самое время создать. Сделать это очень легко: достаточно перейти по ссылке vk.com/apps?act=manage и кликнуть на «Создать приложение».
Система попросит ввести название для приложения. Как пример, можете использовать «Получение access_token». Проверьте, если ли галочка «Standalone-приложение». Далее нажимайте на «Подключить приложение».
Чтобы подтвердить приложение, надо будет ввести код, который вам придет на указанный номер телефона. На этом этапе создания приложения можно зафиксировать мобильное устройство к странице Вк. Чтобы это сделать, надо кликнуть на «Привязать устройство». Можно и без привязки к аккаунту. Тогда просто необходимо перейти по ссылке «Подтвердить через SMS».
После того, как вы подтвердите регистрацию, откроется страница, на которой изложена информация о приложении, которое было создано. Нажмите на «Настройки», которые расположены в левом углу. Там расположен client_id – ID приложения ВКонтакте.
ID необходимо скопировать. Далее – вставьте в ссылку, заменив ID_ПРИЛОЖЕНИЯ. Получится как-то так:
https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_ENGINE=token
5563738 – это ID приложения, которое вы создали. У вас получится похожая комбинация. После того как создали приложение перейдем к самому вопросу как получить access_token.
✅ Получение токена через официальное приложение VK.
Метод отличается от того, который был описан ранее, лишь тем, что вам не нужно создавать собственное приложение. Используйте уже созданное. Ему можно стопроцентно доверять.
Метод будет рассматривать на примере ВКонтакте для Android. ID такой: 2890984. Именно эту комбинацию надо подставить в ссылку.
Получится следующее:
https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token
На этом заканчивается часть статьи, в которой мы рассмотрели варианты идентификации приложения, которые могут быть использованы для авторизации. Осталось коснуться всего лишь нескольких моментов:
✅ Права доступа:
- В примерах, которые описаны выше, параметр scope содержит многие названия разделов социальной сети ВКонтакте: audio, photos, notify, friends. Это те разделы, которые будут открыты для приложения. Аccess_token может быть использован по-разному. ID, который вы используете, принадлежит доверенному приложению. Именно поэтому вы можете создать access_token, у которого есть все права доступа. Он становится универсальным, так что может быть использован везде.
✅ access_token:
Последний вопрос, которого надо коснуться, так это то, как получить непосредственно сам ключ access_token. После того, как вы получите ссылку (использовав один из методов), надо будет перейти по ней, чтобы открыть право доступа.
Уже после этого в вашей адресной строке появится необходимый ключ. Он копируется вручную: после access_token= и перед &expires_in.
Ну и закончить стоит несколькими советами:
- Не передавайте ключ access_token посторонним лицам.
- Не стоит проходить авторизацию с использованием приложений, которые не вызывают доверия. Рекомендуется использовать только собственные или официальные.
- Удалите ключ после того, как вы его использовали. Если понадобится, вы всегда сможете создать новый.
- Все активные сеансы стоит завершить после того, как в них исчезнет необходимость. Это вы можете сделать через настройки безопасности аккаунта.
Вам может быть интересно:
Что разряжает аккумулятор вашего телефона
3 способа сохранить изображение с instagram
Как установить Linux. Пошаговая инструкция
На чтение 8 мин Просмотров 3.7к. Опубликовано 04.09.2021
Содержание
- Что такое токен?
- Как узнать токен?
- Код профиля
- Ключ доступа группы
- Ключ приложения
- ✅ Получение токена через собственное приложение.
- Можно ли узнать чужой код доступа?
- Как получить ключ доступа приложения
- Где взять access_token?
- Как получить ключ доступа сообщества
Что такое токен?
Токен (access_token) — это ключ или код доступа. Также это называется подпись, зашифрованная информация, секретный шифр.
Не путать с логином и / или паролем, это совершенно разные вещи.
Логин и пароль — это входные данные со страницы. Токен — это комбинация, которая разрешает или запрещает определенный набор действий.
Для чего нужен этот ключ? Что он открывает, подписывает и какую информацию хранит?
- Это ключ для доступа к методам API ВКонтакте;
- Методы API — это набор инструментов или действий, с помощью которых одна программа взаимодействует с другой;
Когда пользователь выполняет действие в ВК через вспомогательную утилиту, сервер его идентифицирует. Это сделано для того, чтобы определить техническое задание для этого приложения.
Например, пользователь входит в ВК через Kate Mobile. Если он заходит на страницу, сервер знает, является ли он хостом или гостем. Для последнего отображается только часть информации, ограниченная настройками конфиденциальности. Владелец имеет полный доступ. То есть как для скрытых фото, так и для личных данных и возможность выполнять любые настройки. Или пользователь хочет разместить что-то на стене. Сервер указывает, имеет ли эта программа доступ к этому действию. Если да, это позволяет вам публиковать сообщения, в противном случае возникает ошибка. Так далее
Как система проводит идентификацию? Прочтите подпись пользователя. Тот же знак. Это одна длинная строка из английских букв и цифр. Содержит полное имя человека и список разрешенных функций.
Если кто-то может распознать чужой токен, он может войти в ВК от имени его владельца. В результате вы получаете полный доступ к его способностям и силам.
Код может соответствовать как пользователю, так и сообществу или приложению (например, какой-то игре). Ключ доступа к группе создается в ее настройках. Приложения — в настройках программы. Пользователь: автоматически добавляется при входе человека в ВК.
Вот пример действия настраиваемого токена:
- Человек пытается получить доступ к какому-либо приложению через свою учетную запись ВКонтакте. Например, через альтернативного клиента;
- Вы можете разрешить или запретить доступ. В первом случае вы можете получить доступ к этой утилите через ВК. Кроме того, будет сгенерирован ключ, и при следующем входе в систему вам не нужно будет ничего разрешать. Во втором, n.
- Пользователь получает сообщение примерно следующего содержания: Приложение «N» требует доступа к следующим разделам вашей учетной записи ВКонтакте: Сообщения, Стена, Список контактов, Группы;
- просто ВКонтакте не позволит сторонней программе работать самостоятельно. Сделайте запрос, чтобы узнать больше о приложении;
Как узнать токен?
Давайте посмотрим, как узнать и где найти вашу страницу ВКонтакте и токен сообщества.
Код профиля
Вы должны понимать, что не на всех страницах есть токен. Это не аналог логина и пароля, поэтому, как правило, мало кому нужен. Если вы еще не сгенерировали ключи, следующие инструкции «наткнутся» на «Ошибка».
Итак, давайте рассмотрим, как узнать или где взять токен ВКонтакте вашей страницы (а не чужого):
Это делается прямо из браузера:
- Вставьте следующую ссылку в адресную строку: https://api.vk.com/oauth/token?grant_type=password & client_id = 2274003 & client_secret = hHbZxrka2uZ6jB1inYsH & username = & password=.
- Комбинация после «access_token =» и перед «& user_id» — token_access;
- Нажмите Enter;
- Скопируйте его или напишите на листе бумаги.
- Вместо «Имя пользователя» введите телефон, на который ведет ссылка на страницу, вместо «Пароль» — свой пароль.
Ключ доступа группы
Допустим, вы являетесь администратором определенного сообщества. Ранее вы подключили к нему сервис конструктора чат-ботов. Сгенерирован ключ доступа, который вы хотите просмотреть сейчас.
Где найти и как узнать токен группы ВК?
- Зайдите в свое сообщество;
- Нажмите на кнопку «Управление»;
- Зайдите в «Работа с API»;
- Готово, теперь вы понимаете, как найти токен группы ВК для бота. Таким же образом вы можете увидеть другие подписи.
- Щелкните. Затем подтвердите действие (код на телефоне), и комбинация станет полностью видна.
- Появится окно со скрытым списком ключей доступа. Рядом с каждым есть кнопка Показать»;
Ключ приложения
Рассмотрим, как узнать токен пользователя по идентификатору приложения, который он создал в ВК:
- Перейдите в раздел для создания приложений: https://vk.com/apps?act=manage;
Нажмите «Создать»;
- Выберите тип «Автономный», придумайте имя;
- Сохранить;
- Во втором поле сверху будет отображаться ключ доступа.
- Найдите «Настройки» в левом столбце»;
Чтобы включить приложение, вставьте ссылку в адресную строку браузера: https://oauth.vk.com/authorize?client_id=12345&scope=photos,audio,video,docs,notes,pages,stato,offerte,quande, панель инструментов, группы, электронные письма, уведомления, статистика, реклама, офлайн, документы, страницы, статистика, уведомления и response_type = token. Замените 12345 идентификатором вашего приложения.
После нажатия Enter появится окно с разрешениями, которые в случае подтверждения будут записаны в токен.
✅ Получение токена через собственное приложение.
- Используя собственное приложение. Этот метод предполагает, что у вас есть собственное приложение. Если у вас его нет, пора его создать. Сделать это очень просто: просто перейдите по ссылке vk.com/apps?act=manage и нажмите «Создать приложение».
Система попросит вас ввести имя для приложения. Например, вы можете использовать «Получить access_token». Проверьте, установлен ли флажок «Автономное приложение». Затем нажмите «Подключить приложение».
Для подтверждения заявки вам потребуется ввести код, который будет отправлен на указанный номер телефона. На этом этапе создания приложения вы можете закрепить мобильное устройство на странице ВКонтакте. Для этого нужно нажать на «Подключить устройство». Можно без подключения к учетной записи. Тогда вам просто нужно перейти по ссылке «Подтвердить через SMS».
После подтверждения регистрации откроется страница с информацией о созданном приложении. Нажмите «Настройки» в левом углу. Здесь client_id: ID приложения ВКонтакте.
Идентификатор необходимо скопировать. Далее: вставьте ссылку, заменив APPLICATION_ID. Получится примерно так:
https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token
5563738 — это созданный вами идентификатор приложения. У вас получится аналогичная комбинация. После создания приложения перейдем к вопросу, как получить access_token.
Можно ли узнать чужой код доступа?
Итак, вас интересует, как узнать токен другого человека, например друга в ВК. Мы уже писали в начале, это невозможно. По крайней мере, законным или официальным способом. Эта информация считается частной и надежно защищена системой безопасности социальной сети.
Если вы умеете взламывать, то вперед! Но вы должны понимать, что совершаете преступление. Со всеми вытекающими отсюда последствиями. В сети можно найти множество способов узнать токен ВКонтакте другого человека, как рабочих, так и неработающих. Мы против незаконных действий и поэтому не будем здесь ничего рекомендовать. Об этом они упомянули только для полноты картины.
Как получить ключ доступа приложения
- Перейдите в раздел управления приложениями: https://vk.com/apps?act=manage
- Собираем данные:
- Нажмите «Создать приложение”
Я выбрал «Сайт» в качестве платформы
- Заходим в «Настройки приложения», где видим ключ доступа к сервису
Где взять access_token?
Сегодня мы рассмотрим, как получить доступ к ВКонтакте по прямой ссылке на VK API (на основе протокола OAuth) или, как его еще называют, Implicit Stream. Авторизация, если вы используете этот метод, осуществляется через приложение ВКонтакте, именуемое ID. На сегодняшний день этот способ считается самым безопасным. Вы можете встретить статьи, в которых рассказывается о способах получения access_token с помощью приложений, вызывающих (и не зря!) Подозрительных. Но сегодня мы поговорим о том, как получить доступ через официальные приложения ВКонтакте.
Секрет получения токена заключается в переходе по ссылке, содержащей ID конкретного приложения ВКонтакте.
Ссылка может иметь следующий вид:
https://oauth.vk.com/authorize?client_id=ID_ПРИЛОЖЕНИЯ&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token
Если мы это поняли, возникает вопрос: где найти эту ссылку?
Далее я расскажу о двух основных методах, которые позволят вам получить токен:
Как получить ключ доступа сообщества
- Заходим в сообщество, администратором которого вы являетесь
- Зайдите в раздел «Управление”
- Перейдите в раздел «Работа с API”
- Нажмите на «Создать ключ» и выберите необходимые права доступа:
- Нажмите «Создать”
- Подтверждаем создание ключа:
- От выбранного типа подтверждения действия вы получите SMS или push-уведомление
- Ключ создан успешно
* Для работы с Callback API и Long Poll API используйте токен сообщества, который вы получили ранее.
Сегодня мы попробуем разобраться, можно ли узнать токен от ВК другого пользователя. Попутно, объясним, что это за штука такая и с чем ее едят.
Забегая вперед, сразу ответим, законных способов узнать токен чужого аккаунта ВК, нет. Разве что, вынудить человека вам его сообщить, открыто или хитростью.
Что такое токен?
Токен (access_token) – это ключ или код доступа. Еще, его называют подписью, зашифрованной информацией, секретным шифром.
Не путать с логином и/или паролем, это совершенно разные вещи.
Логин и пароль – это входные данные от страницы. Token – это комбинация, разрешающая или запрещающая определенный набор действий.
Для чего нужен этот ключ? Что он открывает, подписывает и какую информацию хранит?
- Это ключ доступа к API методам ВК;
- API методы – это набор инструментов или действий, с помощью которых одна программа взаимодействует с другой;
Каждый раз, когда пользователь через вспомогательную утилиту совершает в ВК какое-то действие, сервер идентифицирует его. Это делается с целью определить круг полномочий этого приложения.
Например, пользователь авторизовывается в ВК через Kate Mobile. Если он входит на страницу, сервер понимает, хозяин это или гость. Для последнего отображается лишь часть информации, ограниченная настройками приватности. У хозяина доступ полный. То есть, и к скрытым фоткам, и к личным данным, и возможность выполнить любые настройки. Или, пользователь хочет опубликовать что-то на стене. Сервер уточняет, есть ли у данной проги доступ на это действие. Если да, позволяет сделать пост, если нет, выдает ошибку. И т.д.
Каким образом система производит идентификацию? Она считывает подпись пользователя. Тот самый токен. Представляет собой уникальную длиннющую строку из английских букв и цифр. Она содержит ФИО человека и перечень разрешенных функций.
Если кому-то удастся узнать чужой токен, он сможет заходить в ВК от имени его владельца. Соответственно, получить полный доступ к его возможностям и полномочиям.
Код может соответствовать, как пользователю, так и сообществу или приложению (например, игре какой-нибудь). Ключ доступа группы создается в ее настройках. Приложения – в настройках программы. Пользователя – складывается автоматически, когда человек авторизовывается в ВК.
Вот пример действия пользовательского токена:
- Человек пытается зайти в какое-нибудь приложение через свой аккаунт в ВК. Например, через альтернативного клиента;
- Просто так ВКонтакте не позволит сторонней проге работать через себя. Он формирует запрос, с целью узнать приложение получше;
- Пользователь получает сообщение примерно такого содержания: Приложение «N» требует доступа к следующим разделам вашего аккаунта ВК: Сообщения, Стена, Список контактов, Группы;
- Вам остается разрешить доступ или запретить. В первом случае вы сможете зайти в данную утилиту через ВК. Более того, будет сформирован ключик, и при следующем входе ничего разрешать уже не придется. Во втором, нет.
Как узнать токен?
Давайте рассмотрим, как узнать и где найти токен своей страницы ВК и своего сообщества.
Код профиля
Вы должны понимать, токен есть не у каждой страницы. Он не является аналогом логина и пароля, поэтому, как правило, мало кому нужен. Если вы еще не генерировали ни одного ключа, инструкция ниже «споткнется» на «Error».
Итак, рассмотрим, как узнать или где взять токен ВК своей страницы (не чужой):
Это делается прямо из браузера:
- Вставьте в адресную строку следующую ссылку: https://api.vk.com/oauth/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username= &password=.
- Вместо «Username» впишите телефон, к которому привязана страница, вместо «Password» – ее пароль.
- Кликните по Enter;
- Комбинация после «access_token=» и до «&user_id» – и есть token_access;
- Скопируйте его или выпишите на листок бумаги.
Ключ доступа группы
Допустим, вы являетесь админом некоего сообщества. Ранее, вы подключили к нему сервис по созданию чат-ботов. Был сформирован ключ доступа, который сейчас вы хотите посмотреть.
Где взять и как узнать токен группы ВК?
- Зайдите в свое сообщество;
- Кликните по клавише «Управление»;
- Перейдите к пункту «Работа с API»;
- Появится окно со скрытым списком ключей доступа. Возле каждого есть клавиша «Показать»;
- Жмите. Далее, подтвердите действие (код на телефон) и комбинация станет видимой полностью.
- Готово, теперь вы разобрались, как узнать токен группы ВК для бота. Аналогично можно посмотреть и другие подписи.
Ключ приложения
Рассмотрим, как узнать токен пользователя по id созданного им приложения в ВК:
- Зайдите в раздел создания приложений: https://vk.com/apps?act=manage;
Нажмите «Создать»;
- Выберите тип «Standalone», придумайте название;
- Сохранитесь;
- Найдите в колонке слева пункт «Настройки»;
- Во втором поле сверху будет отображен ключ доступа.
Чтобы включить приложение, вставьте в адресную строку браузера ссылку: https://oauth.vk.com/authorize?client_id=12345&scope=photos,audio,video,docs,notes,pages,status,offers,questions,wall,groups,email,notifications,stats,ads,offline,docs,pages,stats,notifications&response_type=token. Вместо 12345 впишите ID приложения.
После нажатия Enter выйдет окно с разрешениями, которые, в случае подтверждения, запишутся на токен.
Можно ли узнать чужой код доступа?
Итак, вас интересует, как узнать токен другого человека, например, друга в ВК. Мы уже писали вначале, это невозможно. По крайней мере, законным или официальным путем. Данные сведения считаются закрытыми и надежно охраняются системой безопасности соцсети.
Если умеете взламывать, вперед! Но вы должны понимать, что идете на правонарушение. Со всеми вытекающими. В сети можно найти уйму способов узнать токен ВК другого человека, как рабочих, так и нет. Мы против неправомерных действий, а потому, ничего тут рекомендовать не станем. Упомянули же об этом лишь для полноты картины.
Что дает знание ключа?
Мы рассказали, как узнать свой токен ВК со страницы, и пояснили, что чужие ключи недоступны. Теперь поговорим о том, что же они «открывают».
Вы получите доступ к всем разрешениям данного пользователя, сообщества или приложения.
Например, вы завладели кодами, которые были выданы приложению «Гости ВК». Ему был разрешен доступ к списку контактов, фотографиям, и, например, личным данным хозяина страницы. Значит и вы теперь сможете посмотреть его друзей, альбомы и закрытые личные данные. Все остальное станется под запретом: сообщения не напишете, настройки не поменяете, ленту новостей не почитаете.
И т.д. Чем больше полномочий давал полученный код, тем больше теперь у вас возможностей. Получается, страница остается при своем владельце, но человек, который завладел ее кодами, тоже может на ней похозяйничать. В рамках дозволенного, конечно. Например, посмотреть или включиться в чужую беседу ВК, если удалось узнать токен, получится только если у последнего есть такое разрешение.
К слову, ни один токен ни дает узнать пароль, поэтому отжать аккаунт злоумышленники никак не сумеют.
Теперь вы знаете, где в ВК найти токены. Удалить их невероятно просто: завершите все сеансы на странице или смените пароль. Удалить ключи в сообществе можно через Управление – Работа с API – Удалить.
На этом у нас все. Удалось переварить? Перечитайте еще раз!
В этой статье мы не будем рассказывать, как писать сложные приложения и игры, а расскажем, как вытащить статистику, обращаясь к запросам API ВКонтакте на платформе ВК для разработчиков. В конце бонус для нетерпеливых – как собрать информацию в несколько кликов и без подключения API.
Содержание:
- Зачем нужно использовать API во ВКонтакте
- Как подключить API во ВКонтакте
- Как использовать API ВК
- Какие методы использовать для получения статистики
- Как получить статистику в 10 раз быстрее
У ВК есть многофункциональный и удобный API, который позволяет разработчикам выполнять самые разные действия. Раскрыть весь потенциал API стоит тем, кто хочет писать приложения и игры, использующие движок ВК. Придется тщательно изучить документацию ВК API, зачем нужно логирование API в ВК и многое другое.
Впрочем, пользоваться им сможет даже не специалист, если внимательно прочитает мою статью.
API – это посредник между разработчиком приложений и средой, с которой приложение будет взаимодействовать. С помощью API упрощается создание кода, так как можно использовать готовые формы или структуры для работы с уже имеющимися данными.
Чтобы пользоваться официальным API ВКонтакте, не нужно знать в подробностях, как устроена база ВК, из каких типов, таблиц, полей и структур она состоит. Об этом знает API. Пользователю достаточно знать команды и коды, которые он будет использовать в работе.
С помощью API можно выполнять огромное количество команд. Так как нам интересно управление аккаунтами ВКонтакте и получение информации о странице или группе, мы сконцентрируемся на этих задачах.
Что можно делать с помощью API:
- создавать приложения и игры – для продвижения бизнеса и повышения узнаваемости бренда;
- настраивать автоматический постинг – статей или ссылок в группе во ВКонтакте;
- получать расширенную информацию о пользователях – имя, телефон, приватность профиля, находится ли пользователь в черном списке, данные skype, livejournal и т. д. в профиле, количество фотоальбомов, фотографий, аудио, видеозаписей, друзей и т. д., адреса сайтов, указанных в профиле;
- получать информацию о записях на стене пользователя – комментарии, информацию о пользователях, которые лайкнули запись, записи со стен пользователей по их идентификаторам;
- получать информацию о друзьях пользователя – список id, список id друзей онлайн, список id общих друзей между парой пользователей;
- получать информацию о группах пользователя – список, информацию о группах по их идентификаторам, список участников групп;
- получать информацию об отметках геолокации пользователя – список отметок и информацию о местах;
- получать информацию о документах пользователя – список и информацию о документах пользователя или сообщества по id;
- получать информацию об одном или нескольких сообществах – количество подписок/отписок, позитивных/негативных действий и реакций, число просмотров и посетителей, охват, список участников сообщества, список приглашенных пользователей и т. д.
Это только часть действий с аккаунтами, группами, виджетами, приложениями, темами, списками и даже звонками, которые становятся доступны пользователю, который работает с API ВК.
Обратите внимание – API ВК работает примерно так же, как и обычная страница. Если у вас нет доступа к группе или странице, то и через API его не будет. Если информация в сообществе закрыта (как, например, о внесенных в бан пользователях), то и через API эту информацию вы не откроете.
Далее разберемся, как подключить API во ВКонтакте.
Как подключить API во ВКонтакте
На платформе ВКонтакте для разработчиков можно выполнять различные задачи. С помощью методов API можно получить много нужной информации через формы на странице каждого метода. Также можно автоматизировать различные процессы от имени пользователя, у которого есть сервисный ключ доступа (access_token).
Сервисный ключ используют для запросов, которые не требуют авторизации пользователя или сообщества, и для работы с открытыми методами, например users.get. Получить его можно несколькими способами, но мы разберемся, как это сделать, создав приложение во ВКонтакте.
Чтобы создать приложение, надо перейти на платформу для разработчиков, кликнув по кнопке «Разработчикам» на странице в ВК.
И нажать кнопку «Создать приложение».
Затем дать название новому приложению и выбрать платформу. Выбираем «Standalone -приложение», так как при регистрации этой платформы мы получим ключ, который необходим в большинстве методов. Затем нажать «Подключить приложение».
Во всплывающем окне «Подтверждение действия» необходимо привязать мобильное устройство к странице. Для этого нажмите «Привязать устройство» или «Подтвердить через телефон».
На вашем мобильном устройстве появится окно подтверждения. Нажмите «Получить код». Дождитесь смс-сообщения с кодом на привязанный к аккаунту номер телефона и введите его в поле подтверждения.
После подтверждения системой в десктопной версии откроется новое окно «Информация».
Так как эта операция не для развития приложения, а чтобы получить API токен ВК – выбираем вкладку «Настройки».
Во вкладке «Настройки» мы видим поля с ID приложения, «Защищенный ключ» и «Сервисный ключ доступа».
Именно «Сервисный ключ доступа» нам и нужен, это и есть access_token, который понадобится для выполнения каждого метода.
Нажимаем на глазок в конце поля, чтобы открыть и скопировать значение токена. На мобильное устройство придет push-уведомление, в котором нужно подтвердить действие. После подтверждения получаем строку из латинских букв и цифр, которая соответствует созданному приложению.
Сервисный ключ получен, стоит его сохранить. Чтобы дальше можно было работать с API ВКонтакте, нужно включить приложение. Для этого в строке «Состояние» выберите «Приложение включено и видно всем» и сохраните изменения.
Полученный ключ доступа скопируйте и сохраните так, чтобы при использовании очередного метода было удобно прикреплять его к каждому запросу к ВК API.
Во ВКонтакте можно даже без API запустить чат-бота или автоворонку. Так вы сможете привлечь новых клиентов и увеличить доход. Узнайте подробнее на курсе «Рассылки, чат-боты и автоворонки ВКонтакте». Вас научат автоматизировать продвижение бизнеса и разбираться в эффективных инструментах продаж во ВКонтакте. Программа состоит из 5 модулей и 8 практических занятий, на которых подробно разбирается каждый инструмент.
Как использовать API ВК
Какие возможности предоставляет API во ВКонтакте? Например, нам нужно собрать статистику страницы ВК – чтобы получить ее через API, необходимо перейти на платформу для разработчиков и выбрать необходимый метод.
Для примера возьмем популярный аккаунт. Открываем форму метода и вытаскиваем номера телефонов, указанные в информации аккаунтов подписчиков. Выполнить настройку API ВКонтакте с помощью формы методов несложно.
Метод Users
Статистику страницы ВК можно получить этим методом через API, с помощью сервисного ключа доступа, и выгрузить только общедоступные данные. Если номер телефона скрыт или не указан, строка будет пустой.
Для выбора метода переходим на платформу для разработчиков, выбираем вкладку «API» и внизу кликаем на «Методы API».
Далее листаем вниз до метода «Users».
Выбираем «getFollowers» для получения информации о подписанных на подопытный популярный аккаунт пользователях.
Затем заполняем форму метода:
- access_token – вставляем сервисный ключ доступа;
- user_id – числовой идентификатор аккаунта ВК, который мы взяли из адресной строки;
- offset – смещение (с какого по счету id выдать информацию), мы прописываем «0», чтобы получить информацию, начиная с первого пользователя;
- count – количество подписчиков, информацию о которых нужно получить;
- fields – объект, который необходимо получить, в нашем случае это «contacts»;
- name_case – падеж для склонения имени и фамилии пользователя, выбираем «nom» – именительный.
После заполнения всех полей нажимаем кнопку «Выполнить».
В процессе выполнения могут возникнуть системные ошибки, расшифровку которых можно посмотреть в списке кодов ошибок.
Если все заполнено правильно – получаем результат с ID страниц, телефонами, именами и фамилиями пользователей в указанном количестве.
Тем же способом в ВК методах API можем получить:
- bdate – дата рождения в формате D.M.YYYY или D.M, если год рождения скрыт (если дата рождения скрыта целиком, поле отсутствует в ответе);
- career – информация о карьере пользователя;
- city – информация о городе, указанном на странице пользователя (да, если он указал Нью-Йорк, он и будет вписан);
- connections – информация об указанных в профиле сервисах пользователя;
- counters – количество различных объектов у пользователя (фотоальбомы, аудиозаписи, видеозаписи и т. д.);
- domain – короткий адрес страницы;
- exports –внешние сервисы, в которые настроен экспорт из ВК;
- occupation – информация о текущем роде занятий пользователя.
Конечно, это далеко не все, что можно вытащить из ВК с помощью API. Подробный список объектов можно посмотреть в справочнике.
Метод Wall
С помощью этого метода можно получить список постов на стене пользователя или сообщества.
В список входят:
- текст поста;
- id пользователя, оставившего запись;
- количество лайков, комментариев и репостов;
- тип вложения – запись, картинка, видео или аудиозапись;
- подписан ли пользователь на сообщество.
Чтобы получить записи со стены сообщества или пользователя, переходим в метод wall.get и заполняем все необходимые поля:
- owner_id – id пользователя или сообщества, со стены которого необходимо получить записи;
- domain – короткий адрес пользователя или сообщества, можно найти в строке адреса;
- offset – смещение, то есть с какого по счету id выдать информацию;
- count – количество записей, которое необходимо получить, максимум 100;
- filter – типы записей на стене, которые необходимо получить (выберите команду, которая соответствует вашему запросу – отложенные записи, записи владельца стены, все записи на стене и т. д.);
- extended – при установке значения «1» в ответ будут добавлены дополнительные поля profiles и groups, содержащие информацию о пользователях и сообществах (по умолчанию значение «0»);
- fields – количество дополнительных полей для profiles и groups, которые необходимо получить (этот параметр работает только при extended= 1).
После заполнения всех полей нажимаем кнопку «Выполнить».
И получаем список постов со стены с нужной информацией.
Какие методы использовать для получения статистики
Далее мы расскажем об основных методах для получения статистики из сообществ ВКонтакте.
Некоторые методы не работают с сервисным ключом доступа. Пользователям, которым нужно собрать статистику сообщества, необходимо иметь ключ доступа пользователя, полученный через Implicit Flow.
Подробнее об этом читайте в Implicit Flow для получения ключа доступа пользователя.
Собрать активные Истории
Методом stories.get можно получить активные Истории пользователя или сообщества.
Заполните необходимые поля:
- owner_id – id пользователя, Истории которого необходимо получить;
- extended 1 – получать (значение 1) или нет (значение 0) дополнительную информацию о профилях пользователей;
- fields – количество дополнительных полей.
В ответе получаем количество активных Историй и объекты с публикациями. В зависимости от того, что указали в строке fields, по каждой Истории получаем ID пользователя, тип (фото или видео), число просмотров и ответов на нее.
Получить статистику сообщества
Методом stats.get можно экспортировать статистику сообщества или приложения.
Внесите значения в поля:
- group_id или app_id – id сообщества или приложения;
- date_from и date_to – начальная и конечная дата выводимой статистики в формате YYYY-MM-DD;
- timestamp_from и timestamp_to – начало и конец периода статистики в Unixtime (система описания моментов во времени, для вычисления нужно воспользоваться онлайн-конвертером Unixtime);
- interval – интервалы времени, за которые нужна статистика (возможные значения: day, week, month, year, all);
- intervals_count – количество интервалов времени;
- stats_groups – фильтр для получения данных по конкретному блоку статистики сообщества (возможные значения: visitors, reach, activity);
- версия – чтобы не было ошибок, выбираем 5.86.
При заполнении полей, отвечающих за дату, надо ввести значения (время в формате Unixtime) в полях timestamp_from и timestamp_to, т. к. параметры date_from и date_to устарели.
После успешного выполнения получим объект с данными статистики за указанный период: количество подписок и отписок, позитивных и негативных действий и реакций, число просмотров и посетителей, охват.
Как получить статистику в 10 раз быстрее
А теперь мы расскажем, как собрать статистику группы или аккаунта без знания API и в разы быстрее. Для этого потребуется DataFan – данные будут у вас на руках в несколько кликов.
Более того, с помощью сервиса аналитики вы сможете собирать информацию сразу из нескольких рекламных кабинетов и аккаунтов, например, из Яндекс.Метрики и аккаунта в ВК, и загружать ее в отчеты. Так сопоставлять данные будет намного удобнее и проще, а информация будет наглядно визуализирована.
Итак, разберемся, как вытащить данные.
Авторизуемся в DataFan. Если аккаунта еще нет, можно зарегистрироваться и использовать промокод SMP-BLOG. С промокодом можно бесплатно подключить 3 рекламных кабинета или аккаунта на месяц и собирать необходимые данные.
Подключаем источники, из которых нужно будет собирать данные. Например, чтобы подключить ВК, нужно:
- кликнуть на «Подключить паблик/РК»;
- VK ADS;
- «Подключить ВКонтакте»;
- предоставить разрешения DataFan.
После этого данные начнут собираться. Когда все будет готово, статистика будет доступна в дашборде. Его можно найти во вкладке «Панель управления».
После выгрузки данных с ними можно работать прямо в DataFan. Сервис автоматически будет формировать отчеты по сообществам и рекламным кабинетам. Можно воспользоваться шаблоном или собрать свой отчет из нужных данных. Все отчеты доступны на панели управления.
Например, если собрать отчет по сообществу ВКонтакте, можно получить 6 вкладок с данными по:
- соцдему – общая и детальная информация;
- вовлеченности;
- аудитории;
- охватам;
- статистике постов и Историй.
При этом отчет будет интерактивным – можно настраивать периоды времени, фильтровать и сортировать данные.
Больше о настройках DataFan мы писали в статьях:
- Как выгрузить из ВКонтакте данные статистики с помощью DataFan
- Как построить сквозную аналитику для таргетированной рекламы ВК с помощью DataFan
Мы разобрались, какие возможности предоставляет API ВКонтакте, зачем нужно использовать API и как его подключить. Изучили, что можно делать, если получить токен API, и описали некоторые методы, которые позволяют быстро достать нужные данные.
А главное – рассказали, как достать многие из этих данных, не пользуясь сложными методами API. С помощью DataFan можно быстро выгрузить всю необходимую информацию. А еще можно автоматизировать отчет, чтобы регулярно выгружались актуальные данные.
[статья обновлена 1 декабря 2020]
В последнее время появляется огромное количество онлайн-сервисов, компьютерных или мобильных приложений, скриптов, которые предназначены для ВКонтакте, но для их работы необходимо пройти авторизацию через access_token.
Некоторые сервисы предоставляют возможности получить ключ доступа, который необходим для авторизации. На это уходит несколько секунд. Но как быть, если вы загрузили скрипт, но необходимого access_token ключа нет?
Как создать public VK?
Краткая инструкция для получения токена сообщества
Заходим в настройки сообщества. (если у вас нет сообщества, значит его необходимо создать):
1. Работа с Api > 2. Получить ключ > 3. Скопируйте его (это ключ (токен) и есть access_token сообщества)
Вот и всё. А если же вам нужен токен пользователя, тогда вся необходимая информация находится ниже в статье.
Получить токен через приложение:
- через собственное приложение (создаёте сами)
- через официальное приложение (не своё)
Зачем нужен токен Вконтакте
access_token – это специальный ключ доступа, который работает на базе протокола авторизации OAuth 2.0 и генерируется с помощью логина и пароля пользователя. В отдельных случаях токен генерируется прямо в интерфейсе социальной сети, например для получения доступа к приложению или сообществу.
С помощью токена (access_token) вы можете использовать практически весь функционал социальной сети Вконтакте. Узнать полный список методов для работы с API Вконтакте вы можете по ссылке: https://vk.com/dev/methods
Существует несколько типов токенов:
- Ключ доступа пользователя – для доступа к функционалу пользователя
- Ключ доступа сообщества – для доступа к функционалу сообщества
- Ключ доступа приложения – для доступа к функционалу приложения
Что такое токен?
Токен (access_token) – это ключ или код доступа. Еще, его называют подписью, зашифрованной информацией, секретным шифром.
Не путать с логином и/или паролем, это совершенно разные вещи.
Логин и пароль – это входные данные от страницы. Token – это комбинация, разрешающая или запрещающая определенный набор действий.
Для чего нужен этот ключ? Что он открывает, подписывает и какую информацию хранит?
- Это ключ доступа к API методам ВК;
- API методы – это набор инструментов или действий, с помощью которых одна программа взаимодействует с другой;
Каждый раз, когда пользователь через вспомогательную утилиту совершает в ВК какое-то действие, сервер идентифицирует его. Это делается с целью определить круг полномочий этого приложения.
Например, пользователь авторизовывается в ВК через Kate Mobile. Если он входит на страницу, сервер понимает, хозяин это или гость. Для последнего отображается лишь часть информации, ограниченная настройками приватности. У хозяина доступ полный. То есть, и к скрытым фоткам, и к личным данным, и возможность выполнить любые настройки. Или, пользователь хочет опубликовать что-то на стене. Сервер уточняет, есть ли у данной проги доступ на это действие. Если да, позволяет сделать пост, если нет, выдает ошибку. И т.д.
Каким образом система производит идентификацию? Она считывает подпись пользователя. Тот самый токен. Представляет собой уникальную длиннющую строку из английских букв и цифр. Она содержит ФИО человека и перечень разрешенных функций.
Если кому-то удастся узнать чужой токен, он сможет заходить в ВК от имени его владельца. Соответственно, получить полный доступ к его возможностям и полномочиям.
Код может соответствовать, как пользователю, так и сообществу или приложению (например, игре какой-нибудь). Ключ доступа группы создается в ее настройках. Приложения – в настройках программы. Пользователя – складывается автоматически, когда человек авторизовывается в ВК.
Вот пример действия пользовательского токена:
- Человек пытается зайти в какое-нибудь приложение через свой аккаунт в ВК. Например, через альтернативного клиента;
- Просто так ВКонтакте не позволит сторонней проге работать через себя. Он формирует запрос, с целью узнать приложение получше;
- Пользователь получает сообщение примерно такого содержания: Приложение «N» требует доступа к следующим разделам вашего аккаунта ВК: Сообщения, Стена, Список контактов, Группы;
- Вам остается разрешить доступ или запретить. В первом случае вы сможете зайти в данную утилиту через ВК. Более того, будет сформирован ключик, и при следующем входе ничего разрешать уже не придется. Во втором, нет.
Как получить ключ доступа пользователя
Мы рассмотрим два способа получения токена (access_token) пользователя:
- С помощью логина и пароля
- С помощью логина, пароля и дфухфакторной авторизацией
Получение ключа доступа пользователя с помощью логина и пароля:
- Открываем ссылку: https://api.vk.com/oauth/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=НОМЕР-ТЕЛЕФОНА&password=МОЙ-ПАРОЛЬ (предварительно подставив свои данные в переменные username= и password=
- В окне вы увидите следующее сообщение:
- Вам необходимо перейти к адресной строке и скопировать ключ который находится после access_token= и до &user_id
Данный набор букв и цифр это и есть ваш ключ доступа пользователя (access_token).
Получение ключа доступа пользователя с помощью логина, пароля и двухфакторной авторизации:
- Открываем ссылку: https://api.vk.com/oauth/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=НОМЕР-ТЕЛЕФОНА&password=МОЙ-ПАРОЛЬ (предварительно подставив свои данные в переменные username= и password=
- В окне будет указана ссылка для перехода (redirect_uri):
- Переходи по ссылке и вводим код полученный в виде СМС или сообщения от администрации Вконтакте:
- В следующем окне вы увидите следующее сообщение:
- Вам необходимо перейти к адресной строке и скопировать ключ который находится после access_token= и до &user_id
Данный набор букв и цифр это и есть ваш ключ доступа пользователя (access_token).
Как будет проходить процесс
У нас будет подготовлена специальная ссылка для авторизации, работающая на основе официального API Вконтакте. В основе лежит протокол безопасной авторизации OAuth. Сам метод называется Implicit Flow.
Все что от нас потребуется, подставить в URL адрес id приложения. Также доступно редактирования разделов, к которым мы разрешаем доступ через создаваемый access_token.
По сути, мы сформируем готовый урл, и подставим id двух разных приложений. В этом будет заключаться разница. После этого осуществим переход по готовой ссылке, и получит ключ доступа.
Как получить ключ доступа сообщества
- Заходим в сообщество где вы являетесь администратором
- Переходим в раздел “Управление”
- Переходим в раздел “Работа с API”
- Нажимаем “Создать ключ” и выбираем необходимые права доступа:
- Нажимаем “Создать”
- От выбранного типа подтверждения действий вам придет СМС или push – уведомление
- Подтверждаем создание ключа:
- Ключ успешно создан
* Для работы с Callback API и Long Poll API используйте полученный ранее токен сообщества.
Ссылка для получения ключа
Вот готовый url адрес. Здесь нас, прежде всего, интересуют данные после знака =. В примере ниже там написано ID-Приложения. Мы, в свою очередь, подставим там конкретное число.
https://oauth.vk.com/authorize?client_id=ID-приложения&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token
Также обратите внимание на данные, после слова «scope». Здесь мы перечисляем разделы, к которым ключ откроет доступ. Для того чтобы запретить приложения доступ к разделу с нашими друзьями, уберите из ссылки текст «friends». Остальное по аналогии.
Теперь осталось только получить ID.
Как получить ключ доступа приложения
- Переходим в раздел управления приложениями: https://vk.com/apps?act=manage
- Нажимаем “Создать приложение”
- Заполняем данные:
- Переходим в “Настройки приложения” где видим сервисный ключ доступа
Мы рассмотрели самые популярные способы получения токена (access_token) для работы с API Вконтакте.
Если у вас возникнут трудности при получении токена для работы с API Вконтакте, пишите в комментариях или мне в телеграм.
Можно ли узнать чужой код доступа?
Итак, вас интересует, как узнать токен другого человека, например, друга в ВК. Мы уже писали вначале, это невозможно. По крайней мере, законным или официальным путем. Данные сведения считаются закрытыми и надежно охраняются системой безопасности соцсети.
Если умеете взламывать, вперед! Но вы должны понимать, что идете на правонарушение. Со всеми вытекающими. В сети можно найти уйму способов узнать токен ВК другого человека, как рабочих, так и нет. Мы против неправомерных действий, а потому, ничего тут рекомендовать не станем. Упомянули же об этом лишь для полноты картины.
Как узнать токен?
Давайте посмотрим, как узнать и где найти вашу страницу ВКонтакте и токен сообщества.
Код профиля
Вы должны понимать, что не на всех страницах есть токен. Это не аналог логина и пароля, поэтому, как правило, мало кому нужен. Если вы еще не сгенерировали ключи, следующие инструкции «наткнутся» на «Ошибка».
Итак, давайте рассмотрим, как узнать или где взять токен ВКонтакте вашей страницы (а не чужого):
Это делается прямо из браузера:
- Вставьте следующую ссылку в адресную строку: https://api.vk.com/oauth/token?grant_type=password & client_id = 2274003 & client_secret = hHbZxrka2uZ6jB1inYsH & username = & password=.
- Комбинация после «access_token =» и перед «& user_id» — token_access;
- Нажмите Enter;
- Скопируйте его или напишите на листе бумаги.
- Вместо «Имя пользователя» введите телефон, на который ведет ссылка на страницу, вместо «Пароль» — свой пароль.
Ключ доступа группы
Допустим, вы являетесь администратором определенного сообщества. Ранее вы подключили к нему сервис конструктора чат-ботов. Сгенерирован ключ доступа, который вы хотите просмотреть сейчас.
Где найти и как узнать токен группы ВК?
- Зайдите в свое сообщество;
- Нажмите на кнопку «Управление»;
- Зайдите в «Работа с API»;
- Готово, теперь вы понимаете, как найти токен группы ВК для бота. Таким же образом вы можете увидеть другие подписи.
- Щелкните. Затем подтвердите действие (код на телефоне), и комбинация станет полностью видна.
- Появится окно со скрытым списком ключей доступа. Рядом с каждым есть кнопка Показать»;
Ключ приложения
Рассмотрим, как узнать токен пользователя по идентификатору приложения, который он создал в ВК:
- Перейдите в раздел для создания приложений: https://vk.com/apps?act=manage; Нажмите «Создать»;
- Выберите тип «Автономный», придумайте имя;
- Сохранить;
- Во втором поле сверху будет отображаться ключ доступа.
- Найдите «Настройки» в левом столбце»;
Чтобы включить приложение, вставьте ссылку в адресную строку браузера: https://oauth.vk.com/authorize?client_id=12345&scope=photos,audio,video,docs,notes,pages,stato,offerte,quande, панель инструментов, группы, электронные письма, уведомления, статистика, реклама, офлайн, документы, страницы, статистика, уведомления и response_type = token. Замените 12345 идентификатором вашего приложения.
После нажатия Enter появится окно с разрешениями, которые в случае подтверждения будут записаны в токен.
Используя ID и secret_key из приложения получаем access_token
access_token
— строка из некоторого количества символов, которая будет отправляться с POST запросом для выполнения каких то функций. Собственно, к ней привязано, от имени какого пользователя будем действовать и что нам можно будет делать.
Для этого создаем на сайте страничку вот с таким кодом:
Push the button
$client_id
— собственно, ID нашего приложения из пункта 1.
$scope
— список прав, которые мы можем делать от имени нашего пользователя. Конктерно, для нашей задачи подходит именно такой: возможность доступа в любое время (offline), и доступ к сообщениям (messages). Если надо больше, полный список тут. Можно выставлять либо битовой маской, либо перечислить названия.
Далее, важный момент
: Заходим на нашу страничку с кнопкой, будучи залогованы в ВК под тем пользователем, от имени которого будем работать, и жамкаем по кнопочке. Появится подобный запрос:
Помимо пункта доступ к общей информации
, все остальные пункты будут соответствовать списку разрешений, которые были переданы в scope. Жмем далее и видим следующее:
Красным выделен acces_token, ради которого весь второй пункт и писался.
Создаём Standalone-приложение в ВК и получаем ID.
Для начала нам необходимо создать наше Standalone-приложение в ВК. Для этого переходим на страницу создания приложения. Вбиваем название приложения, выбираем платформу «Standalone-приложение» и нажимаем кнопку «Подключить приложение».
Всё, что необходимо от приложения, мы получили, не каких дополнительных настроек производить не нужно.