2.3 KiB
2.3 KiB
Gitea API Reference for Git Control
Base: {GiteaBaseUrl}/api/v1
Auth: Authorization: token {ApiToken}
Branch Protection
| Action | Method | Path |
|---|---|---|
| List | GET | /repos/{owner}/{repo}/branch_protections |
| Create | POST | /repos/{owner}/{repo}/branch_protections |
| Get | GET | /repos/{owner}/{repo}/branch_protections/{name} |
| Edit | PATCH | /repos/{owner}/{repo}/branch_protections/{name} |
| Delete | DELETE | /repos/{owner}/{repo}/branch_protections/{name} |
CreateBranchProtectionOption (POST body):
branch_name: pattern (e.g.uat,main)enable_push: false = no direct pushenable_merge_whitelist: true + empty lists = no one can mergemerge_whitelist_usernames: []merge_whitelist_teams: []
Organizations & Repositories
| Action | Method | Path | Note |
|---|---|---|---|
| List all orgs | GET | /admin/orgs |
Admin only |
| List org repos | GET | /orgs/{org}/repos |
Pagination: page, limit |
| List user repos | GET | /user/repos |
Current user |
| Search repos | GET | /repos/search |
q, page, limit |
Collaborators (User Repo Permissions)
| Action | Method | Path |
|---|---|---|
| List | GET | /repos/{owner}/{repo}/collaborators |
| Add/Update | PUT | /repos/{owner}/{repo}/collaborators/{username} |
| Remove | DELETE | /repos/{owner}/{repo}/collaborators/{username} |
| Check | GET | /repos/{owner}/{repo}/collaborators/{username} |
PUT body: {"permission": "read"|"write"|"admin"}
Organization Teams (Org-level Permissions)
| Action | Method | Path |
|---|---|---|
| List org teams | GET | /orgs/{org}/teams |
| List team repos | GET | /teams/{id}/repos |
| Add repo to team | PUT | /teams/{id}/repos/{org}/{repo} |
| Remove repo from team | DELETE | /teams/{id}/repos/{org}/{repo} |
| List team members | GET | /teams/{id}/members |
| Add member | PUT | /teams/{id}/members/{username} |
| Remove member | DELETE | /teams/{id}/members/{username} |
Team permission: permission = "none"|"read"|"write"|"admin"|"owner"
Branch Compare
| Action | Method | Path |
|---|---|---|
| Compare | GET | /repos/{owner}/{repo}/compare/{base}...{head} |
Returns commits in head that are not in base. Use base...head (three dots) format.