@@ -553,6 +553,8 @@ DEFAULT_INTERVAL = 8h | |||
MIN_INTERVAL = 10m | |||
[api] | |||
; Enables /api/swagger, /api/v1/swagger etc. endpoints. True or false; default is true. | |||
ENABLE_SWAGGER_ENDPOINT = true | |||
; Max number of items will response in a page | |||
MAX_RESPONSE_ITEMS = 50 | |||
@@ -243,6 +243,7 @@ func Contexter() macaron.Handler { | |||
ctx.Data["ShowRegistrationButton"] = setting.Service.ShowRegistrationButton | |||
ctx.Data["ShowFooterBranding"] = setting.ShowFooterBranding | |||
ctx.Data["ShowFooterVersion"] = setting.ShowFooterVersion | |||
ctx.Data["EnableSwaggerEndpoint"] = setting.API.EnableSwaggerEndpoint | |||
ctx.Data["EnableOpenIDSignIn"] = setting.Service.EnableOpenIDSignIn | |||
c.Map(ctx) |
@@ -515,9 +515,11 @@ var ( | |||
// API settings | |||
API = struct { | |||
MaxResponseItems int | |||
EnableSwaggerEndpoint bool | |||
MaxResponseItems int | |||
}{ | |||
MaxResponseItems: 50, | |||
EnableSwaggerEndpoint: true, | |||
MaxResponseItems: 50, | |||
} | |||
// I18n settings |
@@ -50,6 +50,7 @@ import ( | |||
"code.gitea.io/gitea/models" | |||
"code.gitea.io/gitea/modules/auth" | |||
"code.gitea.io/gitea/modules/context" | |||
"code.gitea.io/gitea/modules/setting" | |||
"code.gitea.io/gitea/routers/api/v1/admin" | |||
"code.gitea.io/gitea/routers/api/v1/misc" | |||
"code.gitea.io/gitea/routers/api/v1/org" | |||
@@ -277,11 +278,15 @@ func mustAllowPulls(ctx *context.Context) { | |||
func RegisterRoutes(m *macaron.Macaron) { | |||
bind := binding.Bind | |||
m.Get("/swagger", misc.Swagger) //Render V1 by default | |||
if setting.API.EnableSwaggerEndpoint { | |||
m.Get("/swagger", misc.Swagger) //Render V1 by default | |||
} | |||
m.Group("/v1", func() { | |||
// Miscellaneous | |||
m.Get("/swagger", misc.Swagger) | |||
if setting.API.EnableSwaggerEndpoint { | |||
m.Get("/swagger", misc.Swagger) | |||
} | |||
m.Get("/version", misc.Version) | |||
m.Post("/markdown", bind(api.MarkdownOption{}), misc.Markdown) | |||
m.Post("/markdown/raw", misc.MarkdownRaw) |
@@ -29,7 +29,7 @@ | |||
</div> | |||
</div> | |||
<a href="{{AppSubUrl}}/vendor/librejs.html" data-jslicense="1">JavaScript licenses</a> | |||
<a href="{{AppSubUrl}}/api/swagger">API</a> | |||
{{if .EnableSwaggerEndpoint}}<a href="{{AppSubUrl}}/api/swagger">API</a>{{end}} | |||
<a target="_blank" rel="noopener" href="https://gitea.io">{{.i18n.Tr "website"}}</a> | |||
{{if (or .ShowFooterVersion .PageIsAdmin)}}<span class="version">{{GoVer}}</span>{{end}} | |||
</div> |