[GET] Запрос авторизации
Описание запроса
Endpoint: https://{instance}/oauth2/authorize
Метод: GET
Описание: запускает процесс авторизации для получения кода авторизации.
- none
- login
- consent
Пример запроса
Приложение перенаправляет пользователя на URL авторизации сервера:
GET https://login.softline.com/oauth2/authorize?response_type=code&client_id=e7f2a45b-3198-4d0c-b2e9-c9dbbe2595e3&scope=auth.data.personal.get&redirect_uri=https://localhost/auth/callback
В этом примере передаются следующие параметры:
- response_type - тип ожидаемого ответа, должен быть code.
- client_id - идентификатор клиентского приложения, полученный у команды разработки Softline ID
- scope - перечень запрашиваемых прав доступа, в примере указан auth.data.personal.get. См. также перечень всех доступных прав доступов (scopes).
- redirect_uri - URI для перенаправления после успешной авторизации, в примере указан как https://localhost/auth/callback. Необходимо указывать разрешенный адрес, который вы передали команде разработки Softline ID при создании клиентской oauth-учетной записи (см. перечень необходимых данных).
- Дополнительно: Запрос может содержать promt (см. описание значений и сценарии использования).
Ответ на запрос
Положительный ответ
Если авторизация прошла успешно, пользователь будет перенаправлен на redirect_uri с кодом авторизации в параметре code.
Пример положительного ответа
Если redirect_uri равен "https://localhost/auth/callback", то пользователь будет перенаправлен на: https://localhost/auth/callback?code=[тут будет код].
Возможные ошибки
Неверно указано значение client_id
В ответе придет ошибка следующего вида:
{
"error":"invalid_client",
"error_description":"Client authentication failed",
"message":"Client authentication failed"
}
Решение: необходимо указать корректный client_id, полученный у команды разработки Softline ID.
Пустое значение client_id
В ответе придет ошибка 400 следующего вида:
{
"error": "unsupported_grant_type",
"error_description": "The authorization grant type is not supported by the authorization server.",
"hint": "Check that all required parameters have been provided",
"message": "The authorization grant type is not supported by the authorization server."
}
Решение: необходимо указать корректный client_id, полученный у команды разработки Softline ID.
Неверно указан/пустое значение response_type
В ответе придет ошибка 400 следующего вида:
{
"error": "unsupported_grant_type",
"error_description": "The authorization grant type is not supported by the authorization server.",
"hint": "Check that all required parameters have been provided",
"message": "The authorization grant type is not supported by the authorization server."
}
Решение: указать у response_type значение = code.
Неверно указано значение redirect_uri
В ответе придет ошибка 401 следующего вида:
{
"error": "invalid_client",
"error_description": "Client authentication failed",
"message": "Client authentication failed"
}
Решение: необходимо указать корректное значение redirect_uri, т.е. один разрешенный callback-адрес из перечня URL перенаправления, который вы передали команде разработки Softline ID. Если у вас несколько разрешенных callback-адресов, то каждый передавать в отдельном запросе авторизации.