Методы для Настроек пользователя
Настройки
Описание структуры JSON-объекта, описывающего Oauth приложениe
Поле | Тип | Описание |
---|---|---|
id |
String | ID Oauth приложения |
name |
String | Название oauth приложения |
description |
String | Описание oauth приложения |
clientId |
String | ID клиента |
clientSecret |
String | Секрет клиента |
homepageUrl |
String | Домашняя страница |
authCallbackUrl |
String | URL обратного вызова авторизации |
standalone |
Boolean | Определяет, отсутствует ли у приложения серверная часть |
Добавление SSH ключа
POST /user/settings/add-ssh-key
Запрос добавляет SSH ключ.
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Передаваемый параметр | Тип | Описание |
---|---|---|
publicKey |
String | ssh ключ |
title |
String | Название для ssh ключа |
expiresAt |
String | Дата окончания действия ключа в формате ISO. Можно оставить пустым для создания ключа, не ограниченного по времени |
Пример JSON объекта
{
"publicKey" : "ssh-ed25519 AAAAC3NzaC1lZHRNRPTE5AAAAIDkxja/2VmTEsJDTtf3bI4XYDpb58fvKfSjy7/u8EZeI your_email@gitflic.ru",
"title": "Название ключа",
"expiresAt" : "2020-10-10T10:10:10Z"
}
Responses
STATUS 200
пример JSON:
Пример ответа
{
uuid:"089cdbe3-aaaa-aaaa-aaaa-b0edde8eda6d"
publicKey:"ssh-ed25519 AAAAC3NzaC1lZHRNRPTE5AAAAIDkxja/2VmTEsJDTtf3bI4XYDpb58fvKfSjy7/u8EZeI your_email@gitflic.ru"
title:"Название ключа"
expiresAt: "2020-10-10T10-10-10Z"
userUuid:"f1a94466-aaaa-aaaa-aaaa-744ec3bbd60c"
}
STATUS 403
- Нет прав для доступа.
STATUS 404
- Данные по запросу не найдены.
STATUS 422
- Данный ключ уже используется.
Изменение почты
PUT /user/change-email
Запрос изменяет почту.
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Параметр | Описание |
---|---|
email |
Новый e-mail пользователя |
Пример JSON объекта
{
"email": "email@local.ru",
}
Responses
STATUS 200
- Успешное изменение почты.
STATUS 403
- Нет прав для доступа.
STATUS 422
- Пользователь с такими данными уже существует или введены некорректные данные.
Изменение псевдонима пользователя
PUT /user/change-username
Запрос изменяет псевдоним пользователя.
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Параметр | Описание |
---|---|
username |
Новый псевдоним пользователя |
Пример JSON объекта
{
"username": "adminuser",
}
Responses
STATUS 200
- Успешное изменение псевдонима.
STATUS 403
- Нет прав для доступа.
STATUS 422
- Пользователь с такими данными уже существует или введены некорректные данные.
Изменение пароля пользователя
PUT /user/change-password
Запрос изменяет пароль .
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Параметр | Описание |
---|---|
oldPassword |
Старый пароль |
password |
Новый пароль пользователя |
passwordConfirm |
Подтверждение пароля |
Пример JSON объекта
{
"oldPassword" : "qwerty",
"password": "qwerty123",
"passwordConfirm" : "qwerty123"
}
Responses
STATUS 200
- Успешное изменение пароля.
STATUS 403
- Нет прав для доступа.
STATUS 422
- Пользователь с такими данными уже существует или введены некорректные данные.
Получение Oauth приложения
GET /user/settings/oauth/
Запрос возвращает список созданных Oauth приложений.
Responses
STATUS 200
пример JSON:
Пример ответа
{
"_embedded": {
"oauthModelList": [
{
"id": "a3df4564-xxxx-xxxx-xxxx-21e997dc7df5",
"name": "my Oauth",
"description": "для моих запросов",
"clientId": "7440f9e8-xxxx-xxxx-xxxx-7e918e72d250",
"clientSecret": "7f72e106-xxxx-xxxx-xxxx-657665db788e",
"homepageUrl": "https://gitflic.ru/settings/oauth/create",
"authCallbackUrl": "https://gitflic.ru/settings/oauth/create",
"standalone": false
}
]
},
"page": {
"size": 10,
"totalElements": 1,
"totalPages": 1,
"number": 0
}
}
STATUS 404
- Данные по запросу не найдены.
STATUS 422
- Не корректный запрос.
Получение Oauth приложения по id
GET /user/settings/oauth/{id}
Запрос возвращает Oauth приложение.
Переменная пути запроса | Тип | Описание |
---|---|---|
id |
String | ID приложения, который можно получить в URL на странице Oauth приложения или в ответе на другие методы |
Responses
STATUS 200
пример JSON:
Пример ответа
{
"id": "7f8933c7-aaaa-aaaa-aaaa-dbc99a7cd104",
"name": "Название",
"description": "Описание",
"clientId": "649947ce-aaaa-aaaa-aaaa-b4efb56bf198",
"clientSecret": "650e54fa-aaaa-aaaa-aaaa-de6665173bf0",
"homepageUrl": "https://example.com",
"authCallbackUrl": "https://example.com",
"standalone": false
}
STATUS 404
- Данные по запросу не найдены.
STATUS 422
- Не корректный запрос.
Создание Oauth приложения
POST /user/settings/oauth
Запрос создает и возвращает Oauth приложение.
Обратите внимание, что необходимо дополнительно зарегистрировать oauth-приложение, согласно инструкции
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Передаваемый параметр | Тип | Описание |
---|---|---|
name |
String | Название Oauth приложения |
description |
String | Описание |
homepageUrl |
String | Домашняя страница |
authCallbackUrl |
String | URL обратного вызова авторизации |
standalone |
Boolean | Приложение без серверной части |
Пример JSON объекта
{
"name" : "Название",
"description": "Описание",
"homepageUrl" : "https://example.com",
"authCallbackUrl" : "https://example.com",
"standalone" : false
}
Responses
STATUS 200
пример JSON:
Пример ответа
{
"id": "7f8933c7-aaaa-aaaa-aaaa-dbc99a7cd104",
"name": "Название",
"description": "Описание",
"clientId": "649947ce-aaaa-aaaa-aaaa-b4efb56bf198",
"clientSecret": "650e54fa-aaaa-aaaa-aaaa-de6665173bf0",
"homepageUrl": "https://example.com",
"authCallbackUrl": "https://example.com",
"standalone": false
}
STATUS 422
- Некорректный запрос.
Редактирование Oauth приложения
PUT /user/settings/oauth/{id}
Запрос редактирует и возвращает Oauth приложение.
Переменная пути запроса | Тип | Описание |
---|---|---|
id |
String | ID приложения, который можно получить в URL на странице Oauth приложения или в ответе на другие методы |
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Передаваемый параметр | Тип | Описание |
---|---|---|
name |
String | Название Oauth приложения |
description |
String | Описание |
homepageUrl |
String | Домашняя страница |
authCallbackUrl |
String | URL обратного вызова авторизации |
standalone |
Boolean | Приложение без серверной части |
Пример JSON объекта
{
"name" : "Название",
"description": "Описание",
"homepageUrl" : "https://example.com",
"authCallbackUrl" : "https://example.com",
"standalone" : false
}
Responses
STATUS 200
пример JSON:
Пример ответа
{
"id": "7f8933c7-aaaa-aaaa-aaaa-dbc99a7cd104",
"name": "Название",
"description": "Описание",
"clientId": "649947ce-aaaa-aaaa-aaaa-b4efb56bf198",
"clientSecret": "650e54fa-aaaa-aaaa-aaaa-de6665173bf0",
"homepageUrl": "https://example.com",
"authCallbackUrl": "https://example.com",
"standalone": false
}
STATUS 404
- Данные по запросу не найдены.
STATUS 422
- Не корректный запрос.
Удаление Oauth приложения
DELETE /user/settings/oauth/{id}
Запрос удаляет Oauth приложение.
Переменная пути запроса | Тип | Описание |
---|---|---|
id |
String | ID приложения, который можно получить в URL на странице Oauth приложения или в ответе на другие методы |
Responses
STATUS 200
- Успешное удаление Oauth приложения:
STATUS 404
- Данные по запросу не найдены.
Создание транспортного токена
POST /user/settings/transport-token/create
Запрос создает транспортный токен с указанным набором прав и возвращает его.
Request
Поддерживаемый формат JSON
Структура тела POST-запроса:
Передаваемый параметр | Тип | Описание |
---|---|---|
name |
String | Название транспортного токена |
scopes |
Set |
Массив с набором прав токена. Возможные значения: WRITE_REGISTRY и READ_REGISTRY |
Responses
STATUS 200
пример JSON:
Пример ответа
{
"token": "33695ba2-aaaa-aaaa-aaaa-f0167259f115",
"name": "Ключ из API",
"scopeSet": [
"WRITE_REGISTRY",
"READ_REGISTRY"
]
}
STATUS 403
- Нет прав для доступа.
STATUS 422
- Не корректный запрос.