Create a tag protections for a repository
const url = 'https://gitea.com/api/v1/repos/example/example/tag_protections';const options = { method: 'POST', headers: {Authorization: 'Basic <credentials>', 'Content-Type': 'application/json'}, body: '{"name_pattern":"example","whitelist_teams":["example"],"whitelist_usernames":["example"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://gitea.com/api/v1/repos/example/example/tag_protections \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: application/json' \ --data '{ "name_pattern": "example", "whitelist_teams": [ "example" ], "whitelist_usernames": [ "example" ] }'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Owner of the repo
Name of the repo
Request Body
Section titled “Request Body”CreateTagProtectionOption options for creating a tag protection
object
The pattern to match tag names for protection
List of team names allowed to create/delete protected tags
List of usernames allowed to create/delete protected tags
Examplegenerated
{ "name_pattern": "example", "whitelist_teams": [ "example" ], "whitelist_usernames": [ "example" ]}Responses
Section titled “Responses”TagProtection
TagProtection represents a tag protection
object
The date and time when the tag protection was created
The unique identifier of the tag protection
The pattern to match tag names for protection
The date and time when the tag protection was last updated
List of team names allowed to create/delete protected tags
List of usernames allowed to create/delete protected tags
Examplegenerated
{ "created_at": "2026-04-15T12:00:00Z", "id": 1, "name_pattern": "example", "updated_at": "2026-04-15T12:00:00Z", "whitelist_teams": [ "example" ], "whitelist_usernames": [ "example" ]}APIForbiddenError is a forbidden error response
Headers
Section titled “Headers”APINotFound is a not found empty response
APIValidationError is error format response related to input validation
Headers
Section titled “Headers”APIRepoArchivedError is an error that is raised when an archived repo should be modified