Сервиc получения токена авторизации
Обновлено 23 декабря 2022
Токен доступа нужен приложению партнера для авторизации вызова открытых API Банка.
Получение токена доступа выполняется с помощью API Получение токена OAUTH. Перед тем, как использовать сервисы API, необходимо отправить запрос на формирование токена авторизации.
После успешного формирования токена в ответном сообщении будет возвращен идентификатор токена, который необходимо указывать в заголовке Authorization в каждом запросе к API.
Токен нужно получать для каждого нового запроса к API. Срок жизни токена составляет 60 сек.
Описание атрибутов запроса
Параметры | Описание |
---|---|
Authorization (header) | Параметры доступа. Строка вида "Ваsic" + пробел + <client_id>:<client_secret> . Комбинацию <client_id>:<client_secret> необходимо передавать в кодировке base64. Пример: Basic NjY2MjQ5ZjctMmRiMS00YWM5LTk0ZjgtMTk1Y2M3OWMyNWUzOkcwblU1bVgz |
RqUID (header) | Уникальный идентификатор сообщения, pattern=([0-9] | [a-f] | [A-F]){32}, переданный во входящем сообщении. Необходим для журналирования входящих вызовов и удобства разбора инцидентов. Чтобы обеспечить уникальность, можно использовать стандартные библиотеки и классы для генерации UUID/GUID (https://ru.wikipedia.org/wiki/UUID), убрав из результата разделители «-» |
grant_type (query) | Способ получения доступа (тип разрешения). Необходимо использовать значение client_credentials |
scope (query) | Область видимости (scope), которая предоставляется Клиенту Необходимо передать значение, разрешенной области видимости. В зависимости от характера запроса используются: scope = https://api.sberbank.ru/sberconnect |
Пример запроса
Тип запроса POST
POST https://api.sberbank.ru:8443/prod/tokens/v2/oauth
POST data:
grant_type=client_credentials&scope=https%3A%2F%2Fapi.sberbank.ru%2Fsberconnect
Connection: keep-alive
RqUID: dc514340692c8e36a909c83ddbb95bd8
Authorization: Basic NjlhMDc3MTQtOWE1My00YjkyLWI1YmMtNDk1ZjFlMTliZWEyOjcyYWM0NThjLTNlN2YtNDJlYy05YzBjLWFiNjFjYjdkNzI1MQ==
Content-Length: 79
Host: api.sberbank.ru:8443
User-Agent: Apache-HttpClient/4.5.10 (Java/11.0.8)
Пример ответа
{"access_token":"c36aa7ee-698e-4ace-a3cb-b0eeed6f29e7","expires_in":"864000","scope":"https://api.sberbank.ru/sberconnect","session_state":"a484c119-52a5-4058-9801-9ca02c8ee9d2","token_type":"bearer"}
HTTP/1.1 200 OK
Server: nginx/1.20.1
Date: Mon, 03 Oct 2022 14:25:18 GMT
Content-Type: application/json
Content-Length: 200
Connection: keep-alive
Cache-Control: no-store
Set-Cookie: KC_RESTART=; Version=1; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Max-Age=0; Path=/auth/realms/master/; HttpOnly
RqUid: dc514340692c8e36a909c83ddbb95bd8
Pragma: no-cache
Accept-Ranges: bytes