OpenAPI для корпоративной версии
Интерфейс авторизации
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /user/login | POST | application/x-www-form-urlencoded |
| Имя параметра | Тип | Обязательно | Описание |
|---|
| username | string | Да | Имя пользователя |
| password | string | Да | Пароль |
- При обращении к интерфейсу авторизации можно получить токен.
- Все остальные API (за исключением интерфейса авторизации) требуют аутентификации.
- Для аутентификации в заголовке запроса необходимо указать поле Authorization, значение которого — токен.
Создание источника данных
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /datasource/add | POST | application/json |
json{
"note": "local",
"name": "local-mysql",
"detail": {
"type": "mysql",
"url": "jdbc:mysql://localhost:3306/test?useSSL=false&characterEncoding=UTF-8&serverTimezone=GMT%2B8",
"username": "root",
"password": "root",
"edit_password": true,
"driver": "com.mysql.cj.jdbc.Driver",
"druidProperties": "druid.testWhileIdle=true\ndruid.breakAfterAcquireFailure=true\ndruid.connectionErrorRetryAttempts=3",
"tableSql": "show tables"
},
"type": "jdbc"
}
Удаление источника данных
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /datasource/delete/ | POST | application/x-www-form-urlencoded |
Создание группы
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /group/create | POST | application/x-www-form-urlencoded |
| Имя параметра | Тип | Обязательно | Описание |
|---|
| name | string | Да | Название группы |
Удаление группы
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /group/delete/ | POST | application/x-www-form-urlencoded |
Создание API
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /apiConfig/add | POST | application/json |
json{
"note": "Запрос данных о студентах",
"cachePlugin": {
"pluginType": 1
},
"access": 1,
"paramsJson": [
{
"name": "id",
"type": "bigint",
"note": "Идентификатор студента"
}
],
"taskJson": [
{
"taskType": 1,
"sqlList": [
{
"sqlText": "select * from student where id = #{id}"
}
],
"transaction": 0,
"datasourceId": "5iaIut1Z"
}
],
"paramRules": [
{
"apiId": "J3z0SP59",
"script": "id > 0",
"type": "JavaScript",
"message": "Идентификатор должен быть положительным числом"
}
],
"groupId": "leqbGt5S",
"globalTransformPlugin": {
"pluginType": 3
},
"path": "student/all",
"name": "Запрос данных",
"alarmPlugins": [
{
"pluginType": 2
}
],
"transformScript": {
"type": "JavaScript"
},
"contentType": "application/x-www-form-urlencoded",
"jsonParam": "{}"
}
Изменение API
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /apiConfig/update | POST | application/json |
json{
"note": "Запрос данных о студентах",
"cachePlugin": {
"pluginType": 1,
"apiId": "J3z0SP59"
},
"access": 1,
"paramsJson": [
{
"note": "Идентификатор студента",
"name": "id",
"type": "bigint"
}
],
"taskJson": [
{
"taskType": 1,
"sqlList": [
{
"sqlText": "select * from student where id = #{id}"
}
],
"transaction": 0,
"datasourceId": "5iaIut1Z"
}
],
"paramRules": [
{
"id": 1,
"apiId": "J3z0SP59",
"script": "id > 0",
"type": "JavaScript",
"message": "Идентификатор должен быть положительным числом"
}
],
"groupId": "leqbGt5S",
"globalTransformPlugin": {
"pluginType": 3,
"apiId": "J3z0SP59"
},
"path": "student/all",
"name": "Запрос данных",
"alarmPlugins": [
{
"pluginType": 2,
"apiId": "J3z0SP59"
}
],
"transformScript": {
"apiId": "J3z0SP59",
"type": "JavaScript"
},
"id": "J3z0SP59",
"contentType": "application/x-www-form-urlencoded"
}
Публикация API
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /apiConfig/online/ | POST | application/x-www-form-urlencoded |
Деактивация API
| Адрес интерфейса | Метод запроса | Content-Type |
|---|
| /apiConfig/offline/ | POST | application/x-www-form-urlencoded |