Основы взаимодействия

Виды API

Взаимодействие приложения с Платформой возможно средствами серверного API и JS API. С помощью методов JS API реализован биллинг и отсылка сообщений. Средствами серверного API реализован остальной функционал взаимодействия сервера и приложения: получение данных анкет, работа с изображениями, гео-данными и т. п.

Подробную информацию о JS API можно посмотреть в разделе JS API.
Подробную информацию о серверном API можно посмотреть в разделе Серверный API.

Адрес шлюза

api.aplatform.ru

Основные параметры запуска приложения

Параметры передаются в flashVars или в GET параметрах приложения.
  • oid — это id анкеты пользователя, запустившего приложение.
  • sid — id пользовательской сессии для осуществления запросов к API
  • partner_url — домен текущего партнера
  • fav_id — не обязательный параметр, это id пользователя, cо страницы «избранных приложений» которого пользователь запустил приложение
  • auth_key — это ключ, необходимый для аутентификации пользователя на стороннем сервере (сервере приложения). С помощью ключа осуществляется проверка верности $app_id и $oid.
  • extra — необязательный параметр, в котором могут передаваться дополнительные данные.

Алгоритм формирования auth_key

ksort($params);
$result = '';
foreach ($params as $key => $value){
$result .= "$key=$value";
}
return md5($result . $secret_key);

При каждом запуске приложения для верной аутентификации пользователя проверяйте соответствие oid и auth_key, а также правильность остальных параметров.

Уровни доступа

Важной особенностью API Wamba является разделение методов по уровням доступа к данным пользователя. Поскольку приложение может получить доступ не только к «открытым» сведениям, но и к личной информации — такой, как контакты и количество сообщений пользователя — мы уделяем особое внимание проверке санкционированности доступа.

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

  • 0 - Без доступа к API
    Приложения, не работающие с информацией о пользователях Wamba.
  • 1 - Общий доступ
    Позволяет приложению получить открытую информацию о пользователе: заполненные поля анкеты, список флагов, записи дневника, объявления на «Попутчиках» и т.п.
  • 2 - Общий доступ + Доступ к информации о тех, кто просматривал анкету пользователя
    Позволяет приложению проверить, установлено ли оно у пользователя, сделать запись на доске достижений, а также проверить список посетителей анкеты запустившего приложение пользователя. Для работы методов этой группы необходима передача sid.
  • 3 - Общий доступ + Права на доступ к контактам пользователя
    Позволяет приложению получить доступ к контактам пользователя, а также отсылать сообщения от его имени. Для работы методов этой группы необходима передача sid.
  • 4 - Общий доступ + Права на доступ к нотификации
    Позволяет отсылать пользователям сообщения от имени пользователя «Менеджер приложений»

Обратите внимание: все методы вне зависимости от уровня доступа делятся на те, для работы которых необходима передача sid, и те, которые работают без sid. По сути это означает, что часть методов может вызываться приложением только при наличии авторизованного пользователя. Рекомендуем отдельно обращать внимание на обязательность этого параметра, указанную в информации о каждом методе.

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