Open API
Команда «ВКонтакте» так и не ушла на выходные, чтобы вслед за Merchant API успеть запустить еще один важный сервис для разработчиков — Open API. Благодаря VK Open API, любые внешние сайты теперь имеют возможность производить у себя авторизацию наших пользователей.

Вместе с авторизацией разработчики получают доступ ко всем остальным методам API по работе с фотографиями, аудиозаписями, видеороликами, объявлениями (на них можно будет заработать) и многим другим. Список методов постоянно обновляется. Универсальный метод Execute, например, позволяет запускать последовательность других методов, сохраняя и фильтруя промежуточные результаты. Весь список методов можно найти в нашей официальной группе.
Пример работы VK Open API смотрите на сайте durov.at, который является внешним для «ВКонтакте». В качестве примера мы вывели только тех друзей, которые уже пользовались авторизацией на этом сайте:
Разработчики имеют возможность не только использовать фотографии из «ВКонтакте», но и хранить у нас изображения более высокого качества, чем позволяет наш собственный загрузчик. То есть каждый желающий может, например, построить отдельный фотосервис с авторизацией «ВК». Подробная информация о подключении находится здесь.
В комментариях появились вопросы о выводе денег из системы «ВК». Юридическим лицам деньги с рублевого счета мы переводим без комиссии. Физические лица, конечно же, тоже смогут выводить их из системы. Предполагаемая комиссия, которую будет забирать банк, составляет от 0 до 0,7%. Переговоры с потенциальными партнерами все еще продолжаются. О результатах мы обязательно сообщим в нашем блоге.
Хорошей всем недели.

Вместе с авторизацией разработчики получают доступ ко всем остальным методам API по работе с фотографиями, аудиозаписями, видеороликами, объявлениями (на них можно будет заработать) и многим другим. Список методов постоянно обновляется. Универсальный метод Execute, например, позволяет запускать последовательность других методов, сохраняя и фильтруя промежуточные результаты. Весь список методов можно найти в нашей официальной группе.
Пример работы VK Open API смотрите на сайте durov.at, который является внешним для «ВКонтакте». В качестве примера мы вывели только тех друзей, которые уже пользовались авторизацией на этом сайте:
Разработчики имеют возможность не только использовать фотографии из «ВКонтакте», но и хранить у нас изображения более высокого качества, чем позволяет наш собственный загрузчик. То есть каждый желающий может, например, построить отдельный фотосервис с авторизацией «ВК». Подробная информация о подключении находится здесь.
Дополнение к посту про Merchant API
В комментариях появились вопросы о выводе денег из системы «ВК». Юридическим лицам деньги с рублевого счета мы переводим без комиссии. Физические лица, конечно же, тоже смогут выводить их из системы. Предполагаемая комиссия, которую будет забирать банк, составляет от 0 до 0,7%. Переговоры с потенциальными партнерами все еще продолжаются. О результатах мы обязательно сообщим в нашем блоге.
Хорошей всем недели.
комментарии (312)
(а) Facebook двигается в Россию
(b) у Facebook есть отличные механизмы социализации сайта
И хоть я и зареган на фейсбуке, но туда почти не захожу, потому как там нет моих знакомых, друзей. Что мне там делать?
А на вконтакте есть друзья и знакомые с которыми я периодически общаюсь. В случае если большинство моих друзей будут на фейсбуке — то и я мигрирую туда, забив на контакт (ну может только торрент трекером буду пользоваться и музыку изредка скачивать), но тем не менее.
И думаю что я не одинок. Следовательно один юзер перешедший на фейсбук может перетянуть за собой 10 своих друзей. И поэтому вконтакт «стремится к совершенству». Ведь если не будет разницы в возможностях, то почти никто не будет регится ещё и в фейсбуке — одной соц сети более чем достаточно.
Ты только посчитай, сколько сил и времени надо потратить, чтобы перетащить нужных друзей на другую площадку, перезалить все свои фотки, инфу о себе, а это придется сделать и твоим друзьям. Чего только стоит личная переписка, комментарии к фоткам. Не каждый просто так захочет от нее избавится. Поэтому даже если контент и запретят, никуда народ не пойдет.
затем стали решать следующие задачи — 3 месяца поработали, оттестировали и объявили новые возможности )
Помните бренд «Давыдов»? Возможно тут и так будет ;)
Про «якобы прототип» очень смешно прозвучало.
Ну а что смешного?=) Вы не подумайте — мне совершенно пофиг, но как говориться: не пойман — не вор)
Ворье ворьем, блин.
То что видно — это ТУПОЕ повторение функционала! И разговор За «свой твиттер» — та же политика ВОРЬЯ!
Но поскольку вместо OpenID я получил очередное «что-нибудь свое», то хотел бы хотя бы ознакомиться и посмотреть, чем же все-таки вконтактовцев не устраивают существующие решения.
Я лишь написал чего я жду и никак не дождусь от вконтакта. Писать для него приложения мне не интересно. Мне интересно решить проблему с OpenID-авторизацией на своих сайтах в рунете. Больше мне от вконтакта ничего не нужно.
Или кнопки «яндекс, gmail, ЖЖ»? В этом случае добавление кнопки «вконтакте» мало что изменит.
А большая часть посетителей, вполне возможно, просто не знают, что такое OpenID и что они могут им пользоваться.
как то вконтактовую под
делку можно совместить с openID? уж больно не хочется еще коду дописывать в модуль авторизации/регистрацииНо если они реализуют хотя бы простой openid из разряда вернуть identifier и name то уже неплохо. Пусть даже 1.0.
То есть для регистрации по openid на многих сайтах оно не подойдет.
Не разовая аутентификация и перенос данных пользователя себе в базу, а полный интерфейс работы с учетными записями (профилями) вконтакте. Поэтому база регистраций на конкретном сайте просто отпадает за ненадобностью, остаётся только привязка конкретного контента сайта к учетным идентификаторам пользователей.
как долго будет поддерживаться это супер-опен-api? 3-6 месяцев?
PS: было durov.ru, теперь durov.at дашешь новое api на каждый домен первого уровня!
Но когда каждый известный веб-сайт начинает выдумывать «что-нибудь свое» для открытой авторизации, которое далеко не всегда лучше уже существующих решений, то сводится на нет сама идея открытой авторизации. Если у каждого социального сервиса с кучей юзеров будет свой православный способ авторизации их юзеров на сторонних сайтах — лишается смысла первоначальная идея о едином входе на эти сторонние сайты.
Свое-то пожалуйста. Свои процессоры или что еще, но это «свое» должно быть совместимо с существующими стандартами. Иначе у каждого будет свой интернет, «своя» VISA и каждый будет жить в своем собственном мирке без связи с другими мирками.
Понимаю, что «после боя шашкой не машут» и переписывать готовый велосипед вряд ли кто-то возьмётся, но мне, например, кажется, что обеспечить своё API поддержкой OpenId — мысль здравая(хотя она не будет так монетизироваться, да) — те, кому нужен только OpenId — получат его, а остальные — получат нечто большее.
Вряд ли кто-то из крупных проектов(та же ЖЖ-шечка, например) решит прикрутить к себе это: одно дело — открытый стандарт, другое — разработка конкурентов.
Как некоторый аналог gravatar.
Я недавно писал приложение для управления списком внешних людей (предположим, кандидатов на должность X).
Возможность автоматически подгрузить их фотографии по адресам электоронной почты была бы очень кстати.
А то не хотелось бы оставить мыло где то, а тут твою фотку сразу спалили ^_^
То есть если доверяете какому-то месту настолько, чтобы оставить там email, в принципе фото (которое в контакте можно найти по имени) не должно быть проблемой.
Email по API получить нельзя, но я говорю об обратной ситуации — получить ограниченную информацию по email.
А вот неожиданно засветившаяся фотка на сайте где просто оставил комментарий, как то не особо приятно.
Прекрасно же!
Но за что же их банили?
И зачем тег «Павел Дуров» к каждой записи? Корпоративное требование?
как ничего не делают — «А что это вы такие отсталые?»
как что-то сделали — «Что-то вы забегали в последнее время»
Делать на базе нынешнего функционала конечно вам оптимально, но неудобно для разработчиков.
Трудно искать комментарии, документацию по методам, всякие tips & hacks. Короче, хотелось бы, чтобы весь сайт с API полноценно индексировался всеми поисковими системами. А потому было бы логично, если ваш API такой Open, всё-таки приоткрыть его.
Это было бы правильно, это сделает вас открытее и удобнее.
Кроме того, не хочется смешивать работу (изучение API и пр) и личную жизнь (друзья, фотки и т.п.), а потому отделение документации на другой сайт мне кажется очень отличная и хорошая идея.
Буду очень благодарен если вы её реализуете.
Я говорю о всех инструментах, что предоставляются разработчикам.
писец друзья мало того что ваша «платежная система» даже работает без https так еще один велосипед… мда
Лично я уже завтра попробую поэкспериментировать с Open API.
я пробовал его, когда он появился. правда, общаться регулярно не с кем — можем попробовать с вами xmpp://lekseys@facebook.com
То есть я пишу человеку, получаю ответы… один, второй, третий… после некоторого порога мне перестают приходить сообщения. При этом человек мне пишет, но я ничего не получаю. Он же мои сообщения видит все.
Если оба используют XMPP, то вроде бы все стабильно, но я это тестил всего раз, потому что как-то контакты в основном используют сайт.
А, да. Если параллельно открыт сайт и XMPP-клиент, фейсбуку вообще рвет крышу. Появляются всякие пустые диалоги, уведомления непонятно о чем и т.д.
veterrr это ты?
даже в яру нет этих проблем (браузер-клиент, одновременный запуск нескольких клиентов), откуда им быть в фейсбуке…
получается, что был у них один допиливатель и он ушел.
developers.facebook.com/news.php?blog=1&story=361
www.facebook.com/sitetour/chat.php
P.S.Но больше всего после прочтения статьи был шокирован, увидев, что Павел Дуров сменил фотографию в своем профиле. Жду в качестве следующего шага видеообращение к хабрапользователям.
В принципе, я ожидал подобного, ну и уже с радостью __приостанавливаю внедрение Facebook Connect__ и принимаю решение в сторону контактовского Open API. И небезосновательно: база пользователей-то больше. И вот фейсбук в пролете. У них ставка на разработчиков, насколько могу судить по их круглому столу на последней встрече.
Спор о стандартах здесь неуместен. Вон, в W3C стандарты разрабатывают сообща все производители браузеров. А тут предлагают использовать чужие готовые решения. Бред.
Почему бы не вытащить документацию наружу, как у того же фейсбука?
Или это всего лишь такая модная позиция разработчиков «я никогда не опущусь до того, чтобы зарегистироваться в богомерзком ВКонтактике, даже если буду заниматься проектами под него»?
var el = document.createElement("script");
el.charset = "windows-1251";
// ...
при использовании джавасрипта.
это вот конкретно кнопочка, или там весь openapi в виндузёвой кодировке?
а флэшово/жаваскриптовый апи (котрый с api.vkontakte.ru)?
Проверил в линухе и висте — в ФФ 3.5.9 не работает, а в ИЕ 6, ИЕ 7, ФФ 3.6.3 — работает. Или это у меня аддон какой-нить конфликтует? (правда разница между версиями только во флэшготе)
С одной стороны — логично, не умножать сущностей.
С другой стороны — возможно, здесь умножение сущностей как раз необходимо. Это несложно понять, хотя бы попытавшись придумать название приложению. «Приложение для работы с сайтом *.*»?..)))
«Immediately after registration, you will receive an identification number for your site.»…
Подозреваю что это оно.
Но: «As soon as the project is ready and approved by Pavel Durov, the founder of User API, other users will be authorized to use your site.»
Так что через приложение — в тестовых целях, а для использования на сайте — через userapi.com
чтож вы мучаетесь то с английским
Нужно именно приложение создавать, User API ни при чём.
Обычные пользователи-то, в отличие от интернет-гиков, не смотрят на поддержку OpenID или там XMPP — они сидят там, где у них много друзей, таких же обычных, где у них уже куча фоток, привычный интерфейс и всё такое.
С чего бы им на новый паровоз заскакивать?
пс. сегодня ещё заметил залив видео в 720п, выбор при просмотре в плеере 720/480/320/240 качество даёт выбрать, вместо SD/HD что было раньше.
своё при заливке выдавало только 480
Почитал комментарии ниже и понял что всё не так.
На лицо положил ладонь, потерял веру в человечество и приобрёл веру в то что в России самые успешные велосипедные магнаты.
Как в анекдоте: На презентации OpenAPI-аутентификации ВКонтакте, после того как стало ясно что это не OpenID, парализованный мальчик встал и вышел.
Посмотрим, может контакт сделает, тем более все козыри у него…
Нашли менеджеры чем гордиться.
С другой стороны, странно, что никто не обращает внимания на то, какие возможности уже сейчас предоставляет Open API Контакта по сравнению с привычными системами авторизации.
Я, правда, не специалист ни в OpenID, ни OAuth — пусть меня поправят если ошибаюсь, но разве в этих системах есть возможность узнавать, например, список друзей пользователя, получать доступ к его фотоальбомам и фотографиям (в том числе загружать новые), аудиозаписям, видео и т.д.?
Мне кажется, говорить об изобретении велосипеда тут несколько неуместно. Сравнение с созданием автомобиля на фоне существующих велосипедов, конечно, выглядит преувеличенным, но на мой взгляд — подходит всё-таки больше.
Впрочем, я думаю технология используемуя «Вконтакте» на применение его на сайтах не повлияет. Надеюсь в безопасности своего подхода они уверены.
Думаю, было бы неплохо, если бы причина выбора того варианта, который мы теперь имеем, была раскрыта в одном из следующих постов этого блога.
Ну — не всё же пустые комнаты офиса показывать, в самом-то деле.
Им за это спасибо, кстати.
ru.wikipedia.org/wiki/OpenID#Simple_Registration_Extension
а что должно случиться для того, чтобы произошел редизайн? Или вот эти МОИ фотографии, МОИ сообщения, МОИ новости, МОИ МОИ МОИ так и будут украсой рунета?
Ведь интересно на каких технологиях такие нагрузки держатся. Вряд ли ограничено репликацией MySQL и мемкешем?
но банальный reply to в ветке обсуждений — хотя наверное это очень трудоемкая задача и требует как минимум пары лет работы без выходных…
все знают что ВК многим нужен ради пиратского контента (разного). И вы в том числе знаете, что пиратский контент привлекает ещё пользователей.
Эти отмазки типа «да, это серьезная проблема, мы пытаемся решить но людей маловато» очень смешно выглядят.
Теперь внимание, вопрос: при том, что количество пользователей у вас заявлено как пол_страны, как при этом вас не берут за яйца за то, что вы предоставляете половине страны хренову тучу пиратского контента? когда айфолдер и торрентс прикрывают за гораздо меньшие провинности?
Компания, владеющая вконтакте, насколько я знаю, зарегестрирована на Британских Виргинских Островах. А Британские Виргинские Острова, как вы, наверное, уже поняли, находятся вне зоны российской юрисдикции. :)
что то мне подсказывает, что ВК тоже :)
> При размещении приложений на сайте ВКонтакте запрещается:
> 4. Принимать оплату услуг в приложении отличными от внутренней валюты ВКонтакте способами, в том числе на сторонних сайтах.
O rly? Означает ли это, что нет смысла внедрять OpenAPI на сайтах, принимающих платежи по картам, яд и тд?
З.Ы. Есть желающие/могущие это сделать?
В документации, кстати, тоже много ошибок. Короче, очень-очень сыро…
Можно только найти место, куда можно пожаловаться, чтобы делегирование этих доменов прекратили. Это же по идее наказуемо.
Может организовать вКонтакте группу, которая будет принимать заявки от пользователей, с жалобами на подобные домена?
Все равно на сайте vkontakte.ru пароль вводить придется
Но в чем отличие от авторизации по OpenID? Точно также показывается форма для логина на сайт провайдера.
В чем разница между «увести пароль при авторизации через openapi» и «увести пароль при авторизации через openid»?
Разница в аудитории пользователей, OpenID — юзеры, это уже продвинутые, в определенном смысле, пользователи, и не поведутся если им подставят провайдера авторизации. А юзеры OpenAPI — в большинстве неопытные и малоопытные, чтобы с первого раза определить где подстава, а где нет. Если выше перечисленные доводы вас не убеждают, разрешите отклониться, а то я уже повторяюсь.
т.е. у вас есть домен www.mydomain.com, в настройках ВК для вашего сайта прописываете полный URL к скрипту. А в hosts у себя на машине — 127.0.0.1 www.mydomain.com, и настраиваете ServerName в своем Apache на www.mydomain.com
Скажите, вы планируете выпустить действительно стоящий iPhone клиент для VK? Просто смотрю на VK Pro и мне грустно, а предыдущий ваш клиент был, мягко скажем, сыроват, хотя в сравнении с нынешним VK Pro он был очень даже хорош. Глядя на конкурентов из facebook хочется чтобы вы как минимум их догнали и перегнали в этом плане.
Спасибо :).
WordPress, Joomla, Bitrix, phpBB, IP.Board, VBulletin… Ждут же!
403 Forbidden
nginx/0.7.59
А ссылка вида:
https://vkontakte.ru/login.php?app=ID&layout=openapi&channel=https%3A%2F%2Fdomain.ru%2Fxd_receiver.html
Притом что без https, все работает.
403 Forbidden
nginx/0.7.59
Это временные проблемы надеюсь?
OpenID провайдер на основе ВКонтакте
vkontakte.ru/topic-1_21972169?offset=423#offset=423
Как обычно — ни ответа, ни привета.
Это ошибка в Open API.
Я вывожу сообщение с просьбой аутентифицироваться ещё раз, тогда проходит без проблем.
гавно«сырое» API…1) При клике у себя на сайте на иконку VK происходит редирект: vkontakte.ru/auth.php?app_id=123456&callback_url={УРЛ НА МОЕМ САЙТЕ}
2) Если пользователь подтвердил свое согласие, то VK пересылает его на callback_url добавляя параметр userid и токен. Callback_url можно передавать в параметре запроса как у Facebook, но при этом надо сверять домен в настройках приложения и callback_url, либо добавить параметр callback_url в настройки приложения, как сделано у twitter.
3) По адресу callback_url я на своем сайте подписываю запрос с помощью полученного token'а и secret, отправляю его вам на php api и могу вытащить инфу о пользователе c полученным userid и добавить ее в БД у себя.
4) Если человек отказал в доступе, то отправляем на callback_url и добаляем параметр &error=auth