aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/web.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/cmd/web.go b/cmd/web.go
index 74cfb75a..acc5cc8f 100644
--- a/cmd/web.go
+++ b/cmd/web.go
@@ -145,6 +145,7 @@ func runWeb(*cli.Context) {
ignSignInAndCsrf := middleware.Toggle(&middleware.ToggleOptions{DisableCsrf: true})
reqSignOut := middleware.Toggle(&middleware.ToggleOptions{SignOutRequire: true})
+ bind := binding.Bind
bindIgnErr := binding.BindIgnErr
// Routers.
@@ -158,6 +159,7 @@ func runWeb(*cli.Context) {
}, reqSignIn)
// API.
+ // FIXME: custom form error response.
m.Group("/api", func() {
m.Group("/v1", func() {
// Miscellaneous.
@@ -170,14 +172,15 @@ func runWeb(*cli.Context) {
})
// Repositories.
- m.Get("/user/repos", v1.ListMyRepos)
+ m.Get("/user/repos", middleware.ApiReqToken(), v1.ListMyRepos)
m.Group("/repos", func() {
m.Get("/search", v1.SearchRepos)
m.Post("/migrate", bindIgnErr(auth.MigrateRepoForm{}), v1.Migrate)
m.Group("/:username/:reponame", func() {
- m.Combo("/hooks").Get(v1.ListRepoHooks)
- }, middleware.ApiRepoAssignment())
+ m.Combo("/hooks").Get(v1.ListRepoHooks).Post(bind(v1.CreateRepoHookForm{}), v1.CreateRepoHook)
+ m.Patch("/hooks/:id:int", bind(v1.EditRepoHookForm{}), v1.EditRepoHook)
+ }, middleware.ApiRepoAssignment(), middleware.ApiReqToken())
})
m.Any("/*", func(ctx *middleware.Context) {