docs: Upgrade to swagger UI 4.1.0 (#319)

* docs: update swagger docs

Signed-off-by: “seriouszyx” <seriouszyx@foxmail.com>

* docs: upgrade to Swagger UI 4.1.0

Signed-off-by: “seriouszyx” <seriouszyx@foxmail.com>
This commit is contained in:
Yixiang Zhao 2021-11-09 19:00:02 +08:00 committed by GitHub
parent 54ef2ec09f
commit 1c2e9064fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 846 additions and 361 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 445 B

After

Width:  |  Height:  |  Size: 665 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 628 B

View File

@ -1,93 +1,60 @@
<!-- HTML for static distribution bundle build --> <!-- HTML for static distribution bundle build -->
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Swagger UI</title> <title>Swagger UI</title>
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="./swagger-ui.css" />
<link rel="stylesheet" type="text/css" href="./swagger-ui.css" > <link rel="icon" type="image/png" href="./favicon-32x32.png" sizes="32x32" />
<link rel="icon" type="image/png" href="./favicon-32x32.png" sizes="32x32" /> <link rel="icon" type="image/png" href="./favicon-16x16.png" sizes="16x16" />
<link rel="icon" type="image/png" href="./favicon-16x16.png" sizes="16x16" /> <style>
<style> html
html {
{
box-sizing: border-box; box-sizing: border-box;
overflow: -moz-scrollbars-vertical; overflow: -moz-scrollbars-vertical;
overflow-y: scroll; overflow-y: scroll;
} }
*,
*:before, *,
*:after *:before,
{ *:after
{
box-sizing: inherit; box-sizing: inherit;
} }
body { body
margin:0; {
background: #fafafa; margin:0;
} background: #fafafa;
</style> }
</head> </style>
</head>
<body> <body>
<div id="swagger-ui"></div>
<svg xmlns="http://www.w3.org/2000/svg" style="position:absolute;width:0;height:0"> <script src="./swagger-ui-bundle.js" charset="UTF-8"> </script>
<defs> <script src="./swagger-ui-standalone-preset.js" charset="UTF-8"> </script>
<symbol viewBox="0 0 20 20" id="unlocked"> <script>
<path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path> window.onload = function() {
</symbol> // Begin Swagger UI call region
const ui = SwaggerUIBundle({
<symbol viewBox="0 0 20 20" id="locked"> url: "swagger.json",
<path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"/> dom_id: '#swagger-ui',
</symbol> deepLinking: true,
presets: [
<symbol viewBox="0 0 20 20" id="close"> SwaggerUIBundle.presets.apis,
<path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"/> SwaggerUIStandalonePreset
</symbol> ],
plugins: [
<symbol viewBox="0 0 20 20" id="large-arrow"> SwaggerUIBundle.plugins.DownloadUrl
<path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"/> ],
</symbol> layout: "StandaloneLayout"
});
<symbol viewBox="0 0 20 20" id="large-arrow-down"> // End Swagger UI call region
<path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"/>
</symbol>
<symbol viewBox="0 0 24 24" id="jump-to">
<path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z"/>
</symbol>
<symbol viewBox="0 0 24 24" id="expand">
<path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"/>
</symbol>
</defs>
</svg>
<div id="swagger-ui"></div>
<script src="./swagger-ui-bundle.js"> </script>
<script src="./swagger-ui-standalone-preset.js"> </script>
<script>
window.onload = function() {
// Build a system
const ui = SwaggerUIBundle({
url: "swagger.json",
dom_id: '#swagger-ui',
presets: [
SwaggerUIBundle.presets.apis,
SwaggerUIStandalonePreset
],
plugins: [
SwaggerUIBundle.plugins.DownloadUrl
],
layout: "StandaloneLayout"
})
window.ui = ui
}
</script>
</body>
window.ui = ui;
};
</script>
</body>
</html> </html>

View File

@ -1,28 +1,38 @@
<!doctype html> <!doctype html>
<html lang="en-US"> <html lang="en-US">
<body onload="run()"> <head>
</body> <title>Swagger UI: OAuth2 Redirect</title>
</html> </head>
<body>
<script> <script>
'use strict'; 'use strict';
function run () { function run () {
var oauth2 = window.opener.swaggerUIRedirectOauth2; var oauth2 = window.opener.swaggerUIRedirectOauth2;
var sentState = oauth2.state; var sentState = oauth2.state;
var redirectUrl = oauth2.redirectUrl;
var isValid, qp, arr; var isValid, qp, arr;
qp = (window.location.hash || location.search).substring(1); if (/code|token|error/.test(window.location.hash)) {
qp = window.location.hash.substring(1);
} else {
qp = location.search.substring(1);
}
arr = qp.split("&") arr = qp.split("&");
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';}) arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';});
qp = qp ? JSON.parse('{' + arr.join() + '}', qp = qp ? JSON.parse('{' + arr.join() + '}',
function (key, value) { function (key, value) {
return key === "" ? value : decodeURIComponent(value) return key === "" ? value : decodeURIComponent(value);
} }
) : {} ) : {};
isValid = qp.state === sentState isValid = qp.state === sentState;
if (oauth2.auth.schema.get("flow") === "accessCode" && !oauth2.auth.code) { if ((
oauth2.auth.schema.get("flow") === "accessCode" ||
oauth2.auth.schema.get("flow") === "authorizationCode" ||
oauth2.auth.schema.get("flow") === "authorization_code"
) && !oauth2.auth.code) {
if (!isValid) { if (!isValid) {
oauth2.errCb({ oauth2.errCb({
authId: oauth2.auth.name, authId: oauth2.auth.name,
@ -35,19 +45,31 @@
if (qp.code) { if (qp.code) {
delete oauth2.state; delete oauth2.state;
oauth2.auth.code = qp.code; oauth2.auth.code = qp.code;
oauth2.callback(oauth2.auth); oauth2.callback({auth: oauth2.auth, redirectUrl: redirectUrl});
} else { } else {
let oauthErrorMsg;
if (qp.error) {
oauthErrorMsg = "["+qp.error+"]: " +
(qp.error_description ? qp.error_description+ ". " : "no accessCode received from the server. ") +
(qp.error_uri ? "More info: "+qp.error_uri : "");
}
oauth2.errCb({ oauth2.errCb({
authId: oauth2.auth.name, authId: oauth2.auth.name,
source: "auth", source: "auth",
level: "error", level: "error",
message: "Authorization failed: no accessCode received from the server" message: oauthErrorMsg || "[Authorization failed]: no accessCode received from the server"
}); });
} }
} else { } else {
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid}); oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid, redirectUrl: redirectUrl});
} }
window.close(); window.close();
} }
window.addEventListener('DOMContentLoaded', function () {
run();
});
</script> </script>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -150,6 +150,118 @@
} }
} }
}, },
"/api/add-webhook": {
"post": {
"tags": [
"api"
],
"description": "add webhook",
"operationId": "ApiController.AddWebhook",
"parameters": [
{
"in": "body",
"name": "body",
"description": "The details of the webhook",
"required": true,
"schema": {
"$ref": "#/definitions/object.Webhook"
}
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/controllers.Response"
}
}
}
}
},
"/api/api/send-email": {
"post": {
"tags": [
"api"
],
"description": "This API is not for Casdoor frontend to call, it is for Casdoor SDKs.",
"operationId": "ApiController.SendEmail",
"parameters": [
{
"in": "query",
"name": "clientId",
"description": "The clientId of the application",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "clientSecret",
"description": "The clientSecret of the application",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "body",
"description": "Details of the email request",
"required": true,
"schema": {
"$ref": "#/definitions/emailForm"
}
}
],
"responses": {
"200": {
"description": "object",
"schema": {
"$ref": "#/definitions/Response"
}
}
}
}
},
"/api/api/send-sms": {
"post": {
"tags": [
"api"
],
"description": "This API is not for Casdoor frontend to call, it is for Casdoor SDKs.",
"operationId": "ApiController.SendSms",
"parameters": [
{
"in": "query",
"name": "clientId",
"description": "The clientId of the application",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "clientSecret",
"description": "The clientSecret of the application",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "body",
"description": "Details of the sms request",
"required": true,
"schema": {
"$ref": "#/definitions/smsForm"
}
}
],
"responses": {
"200": {
"description": "object",
"schema": {
"$ref": "#/definitions/Response"
}
}
}
}
},
"/api/delete-application": { "/api/delete-application": {
"post": { "post": {
"tags": [ "tags": [
@ -290,6 +402,34 @@
} }
} }
}, },
"/api/delete-webhook": {
"post": {
"tags": [
"api"
],
"description": "delete webhook",
"operationId": "ApiController.DeleteWebhook",
"parameters": [
{
"in": "body",
"name": "body",
"description": "The details of the webhook",
"required": true,
"schema": {
"$ref": "#/definitions/object.Webhook"
}
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/controllers.Response"
}
}
}
}
},
"/api/get-account": { "/api/get-account": {
"get": { "get": {
"tags": [ "tags": [
@ -362,32 +502,6 @@
} }
} }
}, },
"/api/get-default-application": {
"get": {
"tags": [
"api"
],
"description": "get the detail of the default application",
"operationId": "ApiController.GetDefaultApplication",
"parameters": [
{
"in": "query",
"name": "owner",
"description": "The owner of the application.",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/object.Application"
}
}
}
}
},
"/api/get-email-and-phone": { "/api/get-email-and-phone": {
"post": { "post": {
"tags": [ "tags": [
@ -558,6 +672,22 @@
], ],
"description": "get all records", "description": "get all records",
"operationId": "ApiController.GetRecords", "operationId": "ApiController.GetRecords",
"parameters": [
{
"in": "query",
"name": "pageSize",
"description": "The size of each page",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "p",
"description": "The number of the page",
"required": true,
"type": "string"
}
],
"responses": { "responses": {
"200": { "200": {
"description": "The Response object", "description": "The Response object",
@ -642,6 +772,20 @@
"description": "The owner of tokens", "description": "The owner of tokens",
"required": true, "required": true,
"type": "string" "type": "string"
},
{
"in": "query",
"name": "pageSize",
"description": "The size of each page",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "p",
"description": "The number of the page",
"required": true,
"type": "string"
} }
], ],
"responses": { "responses": {
@ -683,6 +827,32 @@
} }
} }
}, },
"/api/get-user-application": {
"get": {
"tags": [
"api"
],
"description": "get the detail of the user's application",
"operationId": "ApiController.GetUserApplication",
"parameters": [
{
"in": "query",
"name": "id",
"description": "The id of the user",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/object.Application"
}
}
}
}
},
"/api/get-users": { "/api/get-users": {
"get": { "get": {
"tags": [ "tags": [
@ -711,6 +881,61 @@
} }
} }
}, },
"/api/get-webhook": {
"get": {
"tags": [
"api"
],
"description": "get webhook",
"operationId": "ApiController.GetWebhook",
"parameters": [
{
"in": "query",
"name": "id",
"description": "The id of the webhook",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/object.Webhook"
}
}
}
}
},
"/api/get-webhooks": {
"get": {
"tags": [
"api"
],
"description": "get webhooks",
"operationId": "ApiController.GetWebhooks",
"parameters": [
{
"in": "query",
"name": "owner",
"description": "The owner of webhooks",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/object.Webhook"
}
}
}
}
}
},
"/api/login": { "/api/login": {
"post": { "post": {
"tags": [ "tags": [
@ -751,34 +976,95 @@
"tags": [ "tags": [
"api" "api"
], ],
"description": "get oAuth token", "description": "get OAuth access token",
"operationId": "ApiController.GetOAuthToken", "operationId": "ApiController.GetOAuthToken",
"parameters": [ "parameters": [
{ {
"in": "query", "in": "query",
"name": "grant_type", "name": "grant_type",
"description": "oAuth grant type", "description": "OAuth grant type",
"required": true, "required": true,
"type": "string" "type": "string"
}, },
{ {
"in": "query", "in": "query",
"name": "client_id", "name": "client_id",
"description": "oAuth client id", "description": "OAuth client id",
"required": true, "required": true,
"type": "string" "type": "string"
}, },
{ {
"in": "query", "in": "query",
"name": "client_secret", "name": "client_secret",
"description": "oAuth client secret", "description": "OAuth client secret",
"required": true, "required": true,
"type": "string" "type": "string"
}, },
{ {
"in": "query", "in": "query",
"name": "code", "name": "code",
"description": "oAuth code", "description": "OAuth code",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "The Response object",
"schema": {
"$ref": "#/definitions/object.TokenWrapper"
}
}
}
}
},
"/api/login/oauth/code": {
"post": {
"tags": [
"api"
],
"description": "get OAuth code",
"operationId": "ApiController.GetOAuthCode",
"parameters": [
{
"in": "query",
"name": "user_id",
"description": "The id of user",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "client_id",
"description": "OAuth client id",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "response_type",
"description": "OAuth response type",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "redirect_uri",
"description": "OAuth redirect URI",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "scope",
"description": "OAuth scope",
"required": true,
"type": "string"
},
{
"in": "query",
"name": "state",
"description": "OAuth state",
"required": true, "required": true,
"type": "string" "type": "string"
} }
@ -1117,27 +1403,29 @@
} }
} }
}, },
"/api/upload-avatar": { "/api/update-webhook": {
"post": { "post": {
"tags": [ "tags": [
"api" "api"
], ],
"description": "upload avatar", "description": "update webhook",
"operationId": "ApiController.UploadAvatar", "operationId": "ApiController.UpdateWebhook",
"parameters": [ "parameters": [
{ {
"in": "formData", "in": "query",
"name": "avatarfile", "name": "id",
"description": "The base64 encode of avatarfile", "description": "The id of the webhook",
"required": true, "required": true,
"type": "string" "type": "string"
}, },
{ {
"in": "formData", "in": "body",
"name": "password", "name": "body",
"description": "The password", "description": "The details of the webhook",
"required": true, "required": true,
"type": "string" "schema": {
"$ref": "#/definitions/object.Webhook"
}
} }
], ],
"responses": { "responses": {
@ -1152,11 +1440,11 @@
} }
}, },
"definitions": { "definitions": {
"1671.0xc00044ab10.false": { "1773.0xc000093bf0.false": {
"title": "false", "title": "false",
"type": "object" "type": "object"
}, },
"1705.0xc00044ab40.false": { "1808.0xc000093c20.false": {
"title": "false", "title": "false",
"type": "object" "type": "object"
}, },
@ -1164,15 +1452,19 @@
"title": "RequestForm", "title": "RequestForm",
"type": "object" "type": "object"
}, },
"Response": {
"title": "Response",
"type": "object"
},
"controllers.Response": { "controllers.Response": {
"title": "Response", "title": "Response",
"type": "object", "type": "object",
"properties": { "properties": {
"data": { "data": {
"$ref": "#/definitions/1671.0xc00044ab10.false" "$ref": "#/definitions/1773.0xc000093bf0.false"
}, },
"data2": { "data2": {
"$ref": "#/definitions/1705.0xc00044ab40.false" "$ref": "#/definitions/1808.0xc000093c20.false"
}, },
"msg": { "msg": {
"type": "string" "type": "string"
@ -1187,10 +1479,10 @@
"type": "object", "type": "object",
"properties": { "properties": {
"data": { "data": {
"$ref": "#/definitions/1671.0xc00044ab10.false" "$ref": "#/definitions/1773.0xc000093bf0.false"
}, },
"data2": { "data2": {
"$ref": "#/definitions/1705.0xc00044ab40.false" "$ref": "#/definitions/1808.0xc000093c20.false"
}, },
"msg": { "msg": {
"type": "string" "type": "string"
@ -1200,6 +1492,10 @@
} }
} }
}, },
"emailForm": {
"title": "emailForm",
"type": "object"
},
"object.Application": { "object.Application": {
"title": "Application", "title": "Application",
"type": "object", "type": "object",
@ -1265,9 +1561,15 @@
"type": "string" "type": "string"
} }
}, },
"signinHtml": {
"type": "string"
},
"signinUrl": { "signinUrl": {
"type": "string" "type": "string"
}, },
"signupHtml": {
"type": "string"
},
"signupItems": { "signupItems": {
"type": "array", "type": "array",
"items": { "items": {
@ -1276,6 +1578,9 @@
}, },
"signupUrl": { "signupUrl": {
"type": "string" "type": "string"
},
"termsOfUse": {
"type": "string"
} }
} }
}, },
@ -1292,9 +1597,15 @@
"displayName": { "displayName": {
"type": "string" "type": "string"
}, },
"enableSoftDeletion": {
"type": "boolean"
},
"favicon": { "favicon": {
"type": "string" "type": "string"
}, },
"masterPassword": {
"type": "string"
},
"name": { "name": {
"type": "string" "type": "string"
}, },
@ -1322,6 +1633,9 @@
"appId": { "appId": {
"type": "string" "type": "string"
}, },
"bucket": {
"type": "string"
},
"category": { "category": {
"type": "string" "type": "string"
}, },
@ -1340,9 +1654,18 @@
"displayName": { "displayName": {
"type": "string" "type": "string"
}, },
"domain": {
"type": "string"
},
"endpoint": {
"type": "string"
},
"host": { "host": {
"type": "string" "type": "string"
}, },
"method": {
"type": "string"
},
"name": { "name": {
"type": "string" "type": "string"
}, },
@ -1402,16 +1725,7 @@
}, },
"object.Records": { "object.Records": {
"title": "Records", "title": "Records",
"type": "object", "type": "object"
"properties": {
"Record": {
"$ref": "#/definitions/util.Record"
},
"id": {
"type": "integer",
"format": "int64"
}
}
}, },
"object.SignupItem": { "object.SignupItem": {
"title": "SignupItem", "title": "SignupItem",
@ -1509,6 +1823,9 @@
"avatar": { "avatar": {
"type": "string" "type": "string"
}, },
"bio": {
"type": "string"
},
"createdTime": { "createdTime": {
"type": "string" "type": "string"
}, },
@ -1530,27 +1847,51 @@
"github": { "github": {
"type": "string" "type": "string"
}, },
"gitlab": {
"type": "string"
},
"google": { "google": {
"type": "string" "type": "string"
}, },
"hash": { "hash": {
"type": "string" "type": "string"
}, },
"homepage": {
"type": "string"
},
"id": { "id": {
"type": "string" "type": "string"
}, },
"isAdmin": { "isAdmin": {
"type": "boolean" "type": "boolean"
}, },
"isDeleted": {
"type": "boolean"
},
"isForbidden": { "isForbidden": {
"type": "boolean" "type": "boolean"
}, },
"isGlobalAdmin": { "isGlobalAdmin": {
"type": "boolean" "type": "boolean"
}, },
"isOnline": {
"type": "boolean"
},
"language": { "language": {
"type": "string" "type": "string"
}, },
"lark": {
"type": "string"
},
"ldap": {
"type": "string"
},
"linkedin": {
"type": "string"
},
"location": {
"type": "string"
},
"name": { "name": {
"type": "string" "type": "string"
}, },
@ -1560,6 +1901,12 @@
"password": { "password": {
"type": "string" "type": "string"
}, },
"passwordSalt": {
"type": "string"
},
"permanentAvatar": {
"type": "string"
},
"phone": { "phone": {
"type": "string" "type": "string"
}, },
@ -1574,6 +1921,13 @@
"qq": { "qq": {
"type": "string" "type": "string"
}, },
"ranking": {
"type": "integer",
"format": "int64"
},
"region": {
"type": "string"
},
"score": { "score": {
"type": "integer", "type": "integer",
"format": "int64" "format": "int64"
@ -1584,6 +1938,9 @@
"tag": { "tag": {
"type": "string" "type": "string"
}, },
"title": {
"type": "string"
},
"type": { "type": {
"type": "string" "type": "string"
}, },
@ -1593,34 +1950,47 @@
"wechat": { "wechat": {
"type": "string" "type": "string"
}, },
"wecom": {
"type": "string"
},
"weibo": { "weibo": {
"type": "string" "type": "string"
} }
} }
}, },
"util.Record": { "object.Webhook": {
"title": "Record", "title": "Webhook",
"type": "object", "type": "object",
"properties": { "properties": {
"ip": { "contentType": {
"type": "string"
},
"createdTime": {
"type": "string"
},
"events": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string" "type": "string"
}, },
"organization": { "organization": {
"type": "string" "type": "string"
}, },
"requestTime": { "owner": {
"type": "string" "type": "string"
}, },
"requestUri": { "url": {
"type": "string"
},
"urlpath": {
"type": "string"
},
"username": {
"type": "string" "type": "string"
} }
} }
},
"smsForm": {
"title": "smsForm",
"type": "object"
} }
} }
} }

View File

@ -97,6 +97,82 @@ paths:
description: The Response object description: The Response object
schema: schema:
$ref: '#/definitions/controllers.Response' $ref: '#/definitions/controllers.Response'
/api/add-webhook:
post:
tags:
- api
description: add webhook
operationId: ApiController.AddWebhook
parameters:
- in: body
name: body
description: The details of the webhook
required: true
schema:
$ref: '#/definitions/object.Webhook'
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/controllers.Response'
/api/api/send-email:
post:
tags:
- api
description: This API is not for Casdoor frontend to call, it is for Casdoor
SDKs.
operationId: ApiController.SendEmail
parameters:
- in: query
name: clientId
description: The clientId of the application
required: true
type: string
- in: query
name: clientSecret
description: The clientSecret of the application
required: true
type: string
- in: body
name: body
description: Details of the email request
required: true
schema:
$ref: '#/definitions/emailForm'
responses:
"200":
description: object
schema:
$ref: '#/definitions/Response'
/api/api/send-sms:
post:
tags:
- api
description: This API is not for Casdoor frontend to call, it is for Casdoor
SDKs.
operationId: ApiController.SendSms
parameters:
- in: query
name: clientId
description: The clientId of the application
required: true
type: string
- in: query
name: clientSecret
description: The clientSecret of the application
required: true
type: string
- in: body
name: body
description: Details of the sms request
required: true
schema:
$ref: '#/definitions/smsForm'
responses:
"200":
description: object
schema:
$ref: '#/definitions/Response'
/api/delete-application: /api/delete-application:
post: post:
tags: tags:
@ -187,6 +263,24 @@ paths:
description: The Response object description: The Response object
schema: schema:
$ref: '#/definitions/controllers.Response' $ref: '#/definitions/controllers.Response'
/api/delete-webhook:
post:
tags:
- api
description: delete webhook
operationId: ApiController.DeleteWebhook
parameters:
- in: body
name: body
description: The details of the webhook
required: true
schema:
$ref: '#/definitions/object.Webhook'
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/controllers.Response'
/api/get-account: /api/get-account:
get: get:
tags: tags:
@ -234,23 +328,6 @@ paths:
type: array type: array
items: items:
$ref: '#/definitions/object.Application' $ref: '#/definitions/object.Application'
/api/get-default-application:
get:
tags:
- api
description: get the detail of the default application
operationId: ApiController.GetDefaultApplication
parameters:
- in: query
name: owner
description: The owner of the application.
required: true
type: string
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/object.Application'
/api/get-email-and-phone: /api/get-email-and-phone:
post: post:
tags: tags:
@ -364,6 +441,17 @@ paths:
- api - api
description: get all records description: get all records
operationId: ApiController.GetRecords operationId: ApiController.GetRecords
parameters:
- in: query
name: pageSize
description: The size of each page
required: true
type: string
- in: query
name: p
description: The number of the page
required: true
type: string
responses: responses:
"200": "200":
description: The Response object description: The Response object
@ -420,6 +508,16 @@ paths:
description: The owner of tokens description: The owner of tokens
required: true required: true
type: string type: string
- in: query
name: pageSize
description: The size of each page
required: true
type: string
- in: query
name: p
description: The number of the page
required: true
type: string
responses: responses:
"200": "200":
description: The Response object description: The Response object
@ -444,6 +542,23 @@ paths:
description: The Response object description: The Response object
schema: schema:
$ref: '#/definitions/object.User' $ref: '#/definitions/object.User'
/api/get-user-application:
get:
tags:
- api
description: get the detail of the user's application
operationId: ApiController.GetUserApplication
parameters:
- in: query
name: id
description: The id of the user
required: true
type: string
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/object.Application'
/api/get-users: /api/get-users:
get: get:
tags: tags:
@ -462,6 +577,42 @@ paths:
type: array type: array
items: items:
$ref: '#/definitions/object.User' $ref: '#/definitions/object.User'
/api/get-webhook:
get:
tags:
- api
description: get webhook
operationId: ApiController.GetWebhook
parameters:
- in: query
name: id
description: The id of the webhook
required: true
type: string
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/object.Webhook'
/api/get-webhooks:
get:
tags:
- api
description: get webhooks
operationId: ApiController.GetWebhooks
parameters:
- in: query
name: owner
description: The owner of webhooks
required: true
type: string
responses:
"200":
description: The Response object
schema:
type: array
items:
$ref: '#/definitions/object.Webhook'
/api/login: /api/login:
post: post:
tags: tags:
@ -489,27 +640,69 @@ paths:
post: post:
tags: tags:
- api - api
description: get oAuth token description: get OAuth access token
operationId: ApiController.GetOAuthToken operationId: ApiController.GetOAuthToken
parameters: parameters:
- in: query - in: query
name: grant_type name: grant_type
description: oAuth grant type description: OAuth grant type
required: true required: true
type: string type: string
- in: query - in: query
name: client_id name: client_id
description: oAuth client id description: OAuth client id
required: true required: true
type: string type: string
- in: query - in: query
name: client_secret name: client_secret
description: oAuth client secret description: OAuth client secret
required: true required: true
type: string type: string
- in: query - in: query
name: code name: code
description: oAuth code description: OAuth code
required: true
type: string
responses:
"200":
description: The Response object
schema:
$ref: '#/definitions/object.TokenWrapper'
/api/login/oauth/code:
post:
tags:
- api
description: get OAuth code
operationId: ApiController.GetOAuthCode
parameters:
- in: query
name: user_id
description: The id of user
required: true
type: string
- in: query
name: client_id
description: OAuth client id
required: true
type: string
- in: query
name: response_type
description: OAuth response type
required: true
type: string
- in: query
name: redirect_uri
description: OAuth redirect URI
required: true
type: string
- in: query
name: scope
description: OAuth scope
required: true
type: string
- in: query
name: state
description: OAuth state
required: true required: true
type: string type: string
responses: responses:
@ -733,46 +926,50 @@ paths:
description: The Response object description: The Response object
schema: schema:
$ref: '#/definitions/controllers.Response' $ref: '#/definitions/controllers.Response'
/api/upload-avatar: /api/update-webhook:
post: post:
tags: tags:
- api - api
description: upload avatar description: update webhook
operationId: ApiController.UploadAvatar operationId: ApiController.UpdateWebhook
parameters: parameters:
- in: formData - in: query
name: avatarfile name: id
description: The base64 encode of avatarfile description: The id of the webhook
required: true required: true
type: string type: string
- in: formData - in: body
name: password name: body
description: The password description: The details of the webhook
required: true required: true
type: string schema:
$ref: '#/definitions/object.Webhook'
responses: responses:
"200": "200":
description: The Response object description: The Response object
schema: schema:
$ref: '#/definitions/controllers.Response' $ref: '#/definitions/controllers.Response'
definitions: definitions:
1671.0xc00044ab10.false: 1773.0xc000093bf0.false:
title: "false" title: "false"
type: object type: object
1705.0xc00044ab40.false: 1808.0xc000093c20.false:
title: "false" title: "false"
type: object type: object
RequestForm: RequestForm:
title: RequestForm title: RequestForm
type: object type: object
Response:
title: Response
type: object
controllers.Response: controllers.Response:
title: Response title: Response
type: object type: object
properties: properties:
data: data:
$ref: '#/definitions/1671.0xc00044ab10.false' $ref: '#/definitions/1773.0xc000093bf0.false'
data2: data2:
$ref: '#/definitions/1705.0xc00044ab40.false' $ref: '#/definitions/1808.0xc000093c20.false'
msg: msg:
type: string type: string
status: status:
@ -782,13 +979,16 @@ definitions:
type: object type: object
properties: properties:
data: data:
$ref: '#/definitions/1671.0xc00044ab10.false' $ref: '#/definitions/1773.0xc000093bf0.false'
data2: data2:
$ref: '#/definitions/1705.0xc00044ab40.false' $ref: '#/definitions/1808.0xc000093c20.false'
msg: msg:
type: string type: string
status: status:
type: string type: string
emailForm:
title: emailForm
type: object
object.Application: object.Application:
title: Application title: Application
type: object type: object
@ -834,14 +1034,20 @@ definitions:
type: array type: array
items: items:
type: string type: string
signinHtml:
type: string
signinUrl: signinUrl:
type: string type: string
signupHtml:
type: string
signupItems: signupItems:
type: array type: array
items: items:
$ref: '#/definitions/object.SignupItem' $ref: '#/definitions/object.SignupItem'
signupUrl: signupUrl:
type: string type: string
termsOfUse:
type: string
object.Organization: object.Organization:
title: Organization title: Organization
type: object type: object
@ -852,8 +1058,12 @@ definitions:
type: string type: string
displayName: displayName:
type: string type: string
enableSoftDeletion:
type: boolean
favicon: favicon:
type: string type: string
masterPassword:
type: string
name: name:
type: string type: string
owner: owner:
@ -872,6 +1082,8 @@ definitions:
properties: properties:
appId: appId:
type: string type: string
bucket:
type: string
category: category:
type: string type: string
clientId: clientId:
@ -884,8 +1096,14 @@ definitions:
type: string type: string
displayName: displayName:
type: string type: string
domain:
type: string
endpoint:
type: string
host: host:
type: string type: string
method:
type: string
name: name:
type: string type: string
owner: owner:
@ -926,12 +1144,6 @@ definitions:
object.Records: object.Records:
title: Records title: Records
type: object type: object
properties:
Record:
$ref: '#/definitions/util.Record'
id:
type: integer
format: int64
object.SignupItem: object.SignupItem:
title: SignupItem title: SignupItem
type: object type: object
@ -998,6 +1210,8 @@ definitions:
type: string type: string
avatar: avatar:
type: string type: string
bio:
type: string
createdTime: createdTime:
type: string type: string
dingtalk: dingtalk:
@ -1012,26 +1226,46 @@ definitions:
type: string type: string
github: github:
type: string type: string
gitlab:
type: string
google: google:
type: string type: string
hash: hash:
type: string type: string
homepage:
type: string
id: id:
type: string type: string
isAdmin: isAdmin:
type: boolean type: boolean
isDeleted:
type: boolean
isForbidden: isForbidden:
type: boolean type: boolean
isGlobalAdmin: isGlobalAdmin:
type: boolean type: boolean
isOnline:
type: boolean
language: language:
type: string type: string
lark:
type: string
ldap:
type: string
linkedin:
type: string
location:
type: string
name: name:
type: string type: string
owner: owner:
type: string type: string
password: password:
type: string type: string
passwordSalt:
type: string
permanentAvatar:
type: string
phone: phone:
type: string type: string
preHash: preHash:
@ -1041,6 +1275,11 @@ definitions:
type: string type: string
qq: qq:
type: string type: string
ranking:
type: integer
format: int64
region:
type: string
score: score:
type: integer type: integer
format: int64 format: int64
@ -1048,27 +1287,38 @@ definitions:
type: string type: string
tag: tag:
type: string type: string
title:
type: string
type: type:
type: string type: string
updatedTime: updatedTime:
type: string type: string
wechat: wechat:
type: string type: string
wecom:
type: string
weibo: weibo:
type: string type: string
util.Record: object.Webhook:
title: Record title: Webhook
type: object type: object
properties: properties:
ip: contentType:
type: string
createdTime:
type: string
events:
type: array
items:
type: string
name:
type: string type: string
organization: organization:
type: string type: string
requestTime: owner:
type: string type: string
requestUri: url:
type: string
urlpath:
type: string
username:
type: string type: string
smsForm:
title: smsForm
type: object