GigaChat API
Справочная документация по REST API нейросетевой модели GigaChat.
О стоимости и условиях использования GigaChat API вы можете узнать в разделе Тарифы и оплата.
Получение токена доступа и авторизация запросов
Запросы к GigaChat API передаются по адресу https://gigachat.devices.sberbank.ru/
и авторизуются с помощью токена доступа по протоколу OAuth 2.0.
Токен доступа передается в заголовке Authorization
:
curl -L -X GET 'https://gigachat.devices.sberbank.ru/api/v1/models' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <токен_доступа>'
Вы также можете передавать запросы к моделям в раннем доступе. Их возможности могут отличаться от моделей, доступных в промышленном контуре.
Для обращения к моделям в раннем доступе передавайте запросы по адресу https://gigachat-preview.devices.sberbank.ru/
.
Чтобы получить токен, отправьте запрос POST /api/v2/oauth:
curl -L -X POST 'https://ngw.devices.sberbank.ru:9443/api/v2/oauth' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json' \
-H 'RqUID: <идентификатор_запроса>' \
-H 'Authorization: Basic ключ_авторизации' \
--data-urlencode 'scope=GIGACHAT_API_PERS'
Где:
RqUID
— обязательный заголовок, в котором нужно передать уникальный идентификатор запроса в форматеuuid4
. Идентификатор нужно указать самостоятельно, для этого можно использовать стандартные библиотеки и классы для генерации UUID и GUID.Authorization
— обязательный заголовок, в котором нужно передать ключ авторизации — строку, полученную в результате кодирования в base64 идентификатора (Client ID) и клиентского ключа (Client Secret) API.scope
— обязательное поле в теле запроса, которое указывает к какой версии API выполняется запрос. Возможные значения:GIGACHAT_API_PERS
— доступ для физических лиц.GIGACHAT_API_B2B
— доступ для ИП и юридических лиц по платным пакетам.GIGACHAT_API_CORP
— доступ для ИП и юридических лиц по схеме pay-as-you-go.
При успешном выполнении запроса GigaChat API вернет токен доступа, который действует в течение 30 минут:
{
"access_token": "eyJhbGci3iJkaXIiLCJlbmMiOiJBMTI4R0NNIiwidHlwIjoiSldUIn0..Dx7iF7cCxL8SSTKx.Uu9bPK3tPe_crdhOJqU3fmgJo_Ffvt4UsbTG6Nn0CHghuZgA4mD9qiUiSVC--okoGFkjO77W.vjYrk3T7vGM6SoxytPkDJw",
"expires_at": 1679471442
}
Запросы на получение токена можно отправлять до 10 раз в секунду.
Как получить ключ авторизации и токен доступа Access token читайте в разделах Быстрый старт для физических лиц и Быстрый старт для ИП и юридических лиц.
Обращение к моделям в раннем доступе
Модели для генерации GigaChat регулярно обновляются и у них появляются новые возможности, например, вызов функций. В таких случаях новые версии моделей некоторое время доступны в раннем доступе.
Для обращения к таким моделям используйте адрес https://gigachat-preview.devices.sberbank.ru/
, а к названию модели, которое передается в поле model
, добавьте постфикс -preview
.
Подробнее — в разделе Модели GigaChat.
Authentication
- HTTP: Basic Auth
- HTTP: Bearer Auth
Базовая (Basic) аутентификация с помощью ключа авторизации — строки, полученной в результате кодирования в base64 идентификатора (Client ID) и клиентского ключа (Client Secret) API.
Ключ авторизации передается в заголовке Authorization
, в запросе на получение токена доступа.
Как получить ключ авторизации и токен доступа Access token читайте в разделах Быстрый старт для физических лиц и Быстрый старт для ИП и юридических лиц.
Security Scheme Type: | http |
---|---|
HTTP Authorization Scheme: | basic |
Аутентификация с помощью токена доступа Access token. Используется во всех запросах к GigaChat API, кроме запроса на получение токена доступа.
Security Scheme Type: | http |
---|---|
HTTP Authorization Scheme: | bearer |
Bearer format: | JWT |