OAuth

Позволяет установить кнопку "Войти через Senler" на сайте разработчика для получения API - ключа, который позволит выполнять API - запросы в Senler

Для включения данной опции нужно поставить галочку "Авторизация на стороннем сайте (OAuth)" в настройках приложения:

Мы используем открытый протокол OAuth 2.0. При этом пользователь не передает логин и пароль приложению, поэтому его аккаунт не может быть скомпрометирован.

Вы можете получить ключ для работы с API методами сообщества

Используйте Authorization Code Flow для вызова методов API Senler с серверной части вашего приложения (например, из PHP).

Необходимо перенаправить браузер пользователя по адресу

Открытие диалога авторизации

get
Query parameters
group_idinteger · int64Required

идентификатор сообщества Senler

client_idstringRequired

id приложения

statestringRequired

произвольная строка

redirect_uristringRequired

callback url из настроек приложения

vk_group_idinteger · int64Optional

будет показано одно сообщество в личном кабинете

Responses
200
Диалоговое окно выбора сообществ
get
GET /cabinet/OAuth2authorize HTTP/1.1
Host: senler.ru
Accept: */*

No content

Пример запроса:

https://senler.ru/cabinet/OAuth2authorize?group_id=342173client_id=1&redirect_uri=https://mysite.ru/test_callback.php&state=63edf60ef1837b36ca611328

Если пользователь не вошел на сайт, то в диалоговом окне ему будет предложено ввести свой логин и пароль.

Если не задан group_id , то в диалоговом окне ему будет предложено выбрать сообщество куда установить приложение.

Получение code

После успешной авторизации приложения браузер пользователя будет перенаправлен по адресу redirect_uri, указанному при открытии диалога авторизации. При этом код для получения ключа доступа code будет передан как GET-параметр:

REDIRECT_URI?code=7a6fa4dff77a228eeda56603b8f53806c883f011c40b72630bb50df056f6479e52a

Параметр code может быть использован в течение 2.5 часа для получения ключа доступа к API access_token с вашего сервера.

Получение access_token

Для получения access_token необходимо выполнить запрос с вашего сервера на:

Получение access_token

get
Query parameters
client_idstringRequired

идентификатор вашего приложения

client_secretstringRequired

защищенный ключ вашего приложения (указан в настройках приложения)

redirect_uristringRequired

URL, который использовался при получении code на первом этапе авторизации. Должен быть аналогичен переданному при авторизации

codestringRequired

временный код, полученный после прохождения авторизации

Responses
200
successful operation
application/json
get
GET /ajax/cabinet/OAuth2token HTTP/1.1
Host: senler.ru
Accept: */*
200

successful operation

{
  "success": true,
  "access_token": "f16bf6069c353f0e9eec6a134450bb19b3df2626fd8d1c52"
}

Пример запроса:

https://senler.ru/ajax/cabinet/OAuth2token?client_id=1&client_secret=6a5220b486f038d681d68599a68f6ac4470cd563&redirect_uri=http://mysite.ru&code=3e46f5ad365f8ae443c516642ffbfef3a9e1e859

В результате выполнения данного запроса ваш сервер получит вновь созданный access_token. Токен бессрочный.

{
  "access_token": "533bacf01e11f55b536a565b57531ac114461ae8736d6506a3",
  "success": "true"
}