summaryrefslogtreecommitdiffstats
path: root/routers/api/v1/api.go
diff options
context:
space:
mode:
authorJakobDev <jakobdev@gmx.de>2023-06-30 01:22:55 +0200
committerGitHub <noreply@github.com>2023-06-29 23:22:55 +0000
commit254a82842addb1475611789107c3720e37394879 (patch)
tree450449ee8e90da3bb1246918a424d211aa0a0115 /routers/api/v1/api.go
parent9fd63aaad1354cddd906a4b186b9f13dbbb83b86 (diff)
downloadgitea-254a82842addb1475611789107c3720e37394879.tar.gz
gitea-254a82842addb1475611789107c3720e37394879.zip
Add API for changing Avatars (#25369)
This adds an API for uploading and Deleting Avatars for of Users, Repos and Organisations. I'm not sure, if this should also be added to the Admin API. Resolves #25344 --------- Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: Giteabot <teabot@gitea.io>
Diffstat (limited to 'routers/api/v1/api.go')
-rw-r--r--routers/api/v1/api.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go
index 8b7f55976b..0e28bde683 100644
--- a/routers/api/v1/api.go
+++ b/routers/api/v1/api.go
@@ -899,6 +899,11 @@ func Routes() *web.Route {
Patch(bind(api.EditHookOption{}), user.EditHook).
Delete(user.DeleteHook)
}, reqWebhooksEnabled())
+
+ m.Group("/avatar", func() {
+ m.Post("", bind(api.UpdateUserAvatarOption{}), user.UpdateAvatar)
+ m.Delete("", user.DeleteAvatar)
+ }, reqToken())
}, tokenRequiresScopes(auth_model.AccessTokenScopeCategoryUser), reqToken())
// Repositories (requires repo scope, org scope)
@@ -1134,6 +1139,10 @@ func Routes() *web.Route {
m.Get("/languages", reqRepoReader(unit.TypeCode), repo.GetLanguages)
m.Get("/activities/feeds", repo.ListRepoActivityFeeds)
m.Get("/new_pin_allowed", repo.AreNewIssuePinsAllowed)
+ m.Group("/avatar", func() {
+ m.Post("", bind(api.UpdateRepoAvatarOption{}), repo.UpdateAvatar)
+ m.Delete("", repo.DeleteAvatar)
+ }, reqAdmin(), reqToken())
}, repoAssignment())
}, tokenRequiresScopes(auth_model.AccessTokenScopeCategoryRepository))
@@ -1314,6 +1323,10 @@ func Routes() *web.Route {
Patch(bind(api.EditHookOption{}), org.EditHook).
Delete(org.DeleteHook)
}, reqToken(), reqOrgOwnership(), reqWebhooksEnabled())
+ m.Group("/avatar", func() {
+ m.Post("", bind(api.UpdateUserAvatarOption{}), org.UpdateAvatar)
+ m.Delete("", org.DeleteAvatar)
+ }, reqToken(), reqOrgOwnership())
m.Get("/activities/feeds", org.ListOrgActivityFeeds)
}, tokenRequiresScopes(auth_model.AccessTokenScopeCategoryOrganization), orgAssignment(true))
m.Group("/teams/{teamid}", func() {