Для авторизации вашего клиентского приложения необходимо завести клиентский ID. Понадобится адрес сайта, куда будет осуществляться перенаправление после успешной авторизации. Далее в качестве примера показана работа клиента для localhost.
1. Вызываете методом GET:
https://nature.mipt.ru/api/oauth/authorize?response_type=code&state=auth&client_id=1&redirect_uri=http://localhost
В случае, если пользователь не авторизован, ему будет предложено ввести логин и пароль.
2. Далее произойдет редирект на страницу вашей системы:
http://localhost/?code=dde66b6d52e2c31c2337e5892dec1047d1f91335f7c6233c625cf30a34175b0f&state=auth
3. Запоминаете {code}
и получаете токен:
https://nature.mipt.ru/api/oauth/get-token
POST:
* client_id=1
* code=dde66b6d52e2c31c2337e5892dec1047d1f91335f7c6233c625cf30a34175b0f
* client_secret=chsSDvsdSDvctf3
* redirect_uri=http://localhost
* grant_type=authorization_code
То же с помощью cURL:
curl -i "https://nature.mipt.ru/api/oauth/get-token" \
-d "client_id=1&code=dde66b6d52e2c31c2337e5892dec1047d1f91335f7c6233c625cf30a34175b0f&client_secret=chsSDvsdSDvctf3&redirect_uri=http://localhost&grant_type=authorization_code"
4. Получаете {access_token}
:
{"user_id":"3","access_token":"Mi0zLTAwYTZhMDllN2NjNzJlZDk1NTg5NTJmYjE0OGJhZmYyMmYwZTMyODFmM2ExMjc2OTZhMzY1ZDdlMTM3ZGMxMmM=","expires_in":0}
5. Вызываете нужный метод, добавив заголовок Authorization: Bearer {access_token}
:
curl -i "https://nature.mipt.ru/api/oauth/get-token-id" \
-H "Authorization: Bearer MS0xLWMzNWJhNzU3Y2FjNGZmYmE0YjcxMGNhMWI3ODRlZGQzMTNlNDE5MDQ1N2RiMGJjZWMzMWQ3NDg3ZjA2NWE4YzY="
Читайте далее / API: Получение данных