{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/gitea/main/json-schema/gitea-rest-api-package-schema.json", "title": "Package", "description": "Package represents a package", "type": "object", "properties": { "created_at": { "type": "string", "format": "date-time", "x-go-name": "CreatedAt" }, "creator": { "$ref": "#/$defs/User" }, "html_url": { "description": "The HTML URL to view the package", "type": "string", "x-go-name": "HTMLURL" }, "id": { "description": "The unique identifier of the package", "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "description": "The name of the package", "type": "string", "x-go-name": "Name" }, "owner": { "$ref": "#/$defs/User" }, "repository": { "$ref": "#/$defs/Repository" }, "type": { "description": "The type of the package (e.g., npm, maven, docker)", "type": "string", "x-go-name": "Type" }, "version": { "description": "The version of the package", "type": "string", "x-go-name": "Version" } }, "x-go-package": "code.gitea.io/gitea/modules/structs", "$defs": { "Team": { "description": "Team represents a team in an organization", "type": "object", "properties": { "can_create_org_repo": { "description": "Whether the team can create repositories in the organization", "type": "boolean", "x-go-name": "CanCreateOrgRepo" }, "description": { "description": "The description of the team", "type": "string", "x-go-name": "Description" }, "id": { "description": "The unique identifier of the team", "type": "integer", "format": "int64", "x-go-name": "ID" }, "includes_all_repositories": { "description": "Whether the team has access to all repositories in the organization", "type": "boolean", "x-go-name": "IncludesAllRepositories" }, "name": { "description": "The name of the team", "type": "string", "x-go-name": "Name" }, "organization": { "$ref": "#/$defs/Organization" }, "permission": { "type": "string", "enum": [ "none", "read", "write", "admin", "owner" ], "x-go-name": "Permission" }, "units": { "type": "array", "items": { "type": "string" }, "x-go-name": "Units", "example": [ "repo.code", "repo.issues", "repo.ext_issues", "repo.wiki", "repo.pulls", "repo.releases", "repo.projects", "repo.ext_wiki" ] }, "units_map": { "type": "object", "additionalProperties": { "type": "string" }, "x-go-name": "UnitsMap", "example": { "repo.code": "read", "repo.ext_issues": "none", "repo.ext_wiki": "none", "repo.issues": "write", "repo.projects": "none", "repo.pulls": "owner", "repo.releases": "none", "repo.wiki": "admin" } } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "User": { "description": "User represents a user", "type": "object", "properties": { "active": { "description": "Is user active", "type": "boolean", "x-go-name": "IsActive" }, "avatar_url": { "description": "URL to the user's avatar", "type": "string", "x-go-name": "AvatarURL" }, "created": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "description": { "description": "the user's description", "type": "string", "x-go-name": "Description" }, "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "followers_count": { "description": "user counts", "type": "integer", "format": "int64", "x-go-name": "Followers" }, "following_count": { "type": "integer", "format": "int64", "x-go-name": "Following" }, "full_name": { "description": "the user's full name", "type": "string", "x-go-name": "FullName" }, "html_url": { "description": "URL to the user's gitea page", "type": "string", "x-go-name": "HTMLURL" }, "id": { "description": "the user's id", "type": "integer", "format": "int64", "x-go-name": "ID" }, "is_admin": { "description": "Is the user an administrator", "type": "boolean", "x-go-name": "IsAdmin" }, "language": { "description": "User locale", "type": "string", "x-go-name": "Language" }, "last_login": { "type": "string", "format": "date-time", "x-go-name": "LastLogin" }, "location": { "description": "the user's location", "type": "string", "x-go-name": "Location" }, "login": { "description": "login of the user, same as `username`", "type": "string", "x-go-name": "UserName" }, "login_name": { "description": "identifier of the user, provided by the external authenticator (if configured)", "type": "string", "default": "empty", "x-go-name": "LoginName" }, "prohibit_login": { "description": "Is user login prohibited", "type": "boolean", "x-go-name": "ProhibitLogin" }, "restricted": { "description": "Is user restricted", "type": "boolean", "x-go-name": "Restricted" }, "source_id": { "description": "The ID of the user's Authentication Source", "type": "integer", "format": "int64", "x-go-name": "SourceID" }, "starred_repos_count": { "type": "integer", "format": "int64", "x-go-name": "StarredRepos" }, "visibility": { "description": "User visibility level option: public, limited, private", "type": "string", "x-go-name": "Visibility" }, "website": { "description": "the user's website", "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "RepoTransfer": { "description": "RepoTransfer represents a pending repo transfer", "type": "object", "properties": { "doer": { "$ref": "#/$defs/User" }, "recipient": { "$ref": "#/$defs/User" }, "teams": { "type": "array", "items": { "$ref": "#/$defs/Team" }, "x-go-name": "Teams" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Organization": { "description": "Organization represents an organization", "type": "object", "properties": { "avatar_url": { "description": "The URL of the organization's avatar", "type": "string", "x-go-name": "AvatarURL" }, "description": { "description": "The description of the organization", "type": "string", "x-go-name": "Description" }, "email": { "description": "The email address of the organization", "type": "string", "x-go-name": "Email" }, "full_name": { "description": "The full display name of the organization", "type": "string", "x-go-name": "FullName" }, "id": { "description": "The unique identifier of the organization", "type": "integer", "format": "int64", "x-go-name": "ID" }, "location": { "description": "The location of the organization", "type": "string", "x-go-name": "Location" }, "name": { "description": "The name of the organization", "type": "string", "x-go-name": "Name" }, "repo_admin_change_team_access": { "description": "Whether repository administrators can change team access", "type": "boolean", "x-go-name": "RepoAdminChangeTeamAccess" }, "username": { "description": "username of the organization\ndeprecated", "type": "string", "x-go-name": "UserName" }, "visibility": { "description": "The visibility level of the organization (public, limited, private)", "type": "string", "x-go-name": "Visibility" }, "website": { "description": "The website URL of the organization", "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "InternalTracker": { "description": "InternalTracker represents settings for internal tracker", "type": "object", "properties": { "allow_only_contributors_to_track_time": { "description": "Let only contributors track time (Built-in issue tracker)", "type": "boolean", "x-go-name": "AllowOnlyContributorsToTrackTime" }, "enable_issue_dependencies": { "description": "Enable dependencies for issues and pull requests (Built-in issue tracker)", "type": "boolean", "x-go-name": "EnableIssueDependencies" }, "enable_time_tracker": { "description": "Enable time tracking (Built-in issue tracker)", "type": "boolean", "x-go-name": "EnableTimeTracker" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Repository": { "description": "Repository represents a repository", "type": "object", "properties": { "allow_fast_forward_only_merge": { "type": "boolean", "x-go-name": "AllowFastForwardOnly" }, "allow_manual_merge": { "type": "boolean", "x-go-name": "AllowManualMerge" }, "allow_merge_commits": { "type": "boolean", "x-go-name": "AllowMerge" }, "allow_rebase": { "type": "boolean", "x-go-name": "AllowRebase" }, "allow_rebase_explicit": { "type": "boolean", "x-go-name": "AllowRebaseMerge" }, "allow_rebase_update": { "type": "boolean", "x-go-name": "AllowRebaseUpdate" }, "allow_squash_merge": { "type": "boolean", "x-go-name": "AllowSquash" }, "archived": { "type": "boolean", "x-go-name": "Archived" }, "archived_at": { "type": "string", "format": "date-time", "x-go-name": "ArchivedAt" }, "autodetect_manual_merge": { "type": "boolean", "x-go-name": "AutodetectManualMerge" }, "avatar_url": { "type": "string", "x-go-name": "AvatarURL" }, "branch_count": { "type": "integer", "format": "int64", "x-go-name": "BranchCount" }, "clone_url": { "type": "string", "x-go-name": "CloneURL" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "default_allow_maintainer_edit": { "type": "boolean", "x-go-name": "DefaultAllowMaintainerEdit" }, "default_branch": { "type": "string", "x-go-name": "DefaultBranch" }, "default_delete_branch_after_merge": { "type": "boolean", "x-go-name": "DefaultDeleteBranchAfterMerge" }, "default_merge_style": { "type": "string", "x-go-name": "DefaultMergeStyle" }, "default_target_branch": { "type": "string", "x-go-name": "DefaultTargetBranch" }, "description": { "type": "string", "x-go-name": "Description" }, "empty": { "type": "boolean", "x-go-name": "Empty" }, "external_tracker": { "$ref": "#/$defs/ExternalTracker" }, "external_wiki": { "$ref": "#/$defs/ExternalWiki" }, "fork": { "type": "boolean", "x-go-name": "Fork" }, "forks_count": { "type": "integer", "format": "int64", "x-go-name": "Forks" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "has_actions": { "type": "boolean", "x-go-name": "HasActions" }, "has_code": { "type": "boolean", "x-go-name": "HasCode" }, "has_issues": { "type": "boolean", "x-go-name": "HasIssues" }, "has_packages": { "type": "boolean", "x-go-name": "HasPackages" }, "has_projects": { "type": "boolean", "x-go-name": "HasProjects" }, "has_pull_requests": { "type": "boolean", "x-go-name": "HasPullRequests" }, "has_releases": { "type": "boolean", "x-go-name": "HasReleases" }, "has_wiki": { "type": "boolean", "x-go-name": "HasWiki" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "ignore_whitespace_conflicts": { "type": "boolean", "x-go-name": "IgnoreWhitespaceConflicts" }, "internal": { "type": "boolean", "x-go-name": "Internal" }, "internal_tracker": { "$ref": "#/$defs/InternalTracker" }, "language": { "type": "string", "x-go-name": "Language" }, "languages_url": { "type": "string", "x-go-name": "LanguagesURL" }, "licenses": { "type": "array", "items": { "type": "string" }, "x-go-name": "Licenses" }, "link": { "type": "string", "x-go-name": "Link" }, "mirror": { "type": "boolean", "x-go-name": "Mirror" }, "mirror_interval": { "type": "string", "x-go-name": "MirrorInterval" }, "mirror_updated": { "type": "string", "format": "date-time", "x-go-name": "MirrorUpdated" }, "name": { "type": "string", "x-go-name": "Name" }, "object_format_name": { "description": "ObjectFormatName of the underlying git repository", "type": "string", "enum": [ "sha1", "sha256" ], "x-go-name": "ObjectFormatName" }, "open_issues_count": { "type": "integer", "format": "int64", "x-go-name": "OpenIssues" }, "open_pr_counter": { "type": "integer", "format": "int64", "x-go-name": "OpenPulls" }, "original_url": { "type": "string", "x-go-name": "OriginalURL" }, "owner": { "$ref": "#/$defs/User" }, "parent": { "$ref": "#/$defs/Repository" }, "permissions": { "$ref": "#/$defs/Permission" }, "private": { "type": "boolean", "x-go-name": "Private" }, "projects_mode": { "type": "string", "x-go-name": "ProjectsMode" }, "release_counter": { "type": "integer", "format": "int64", "x-go-name": "Releases" }, "repo_transfer": { "$ref": "#/$defs/RepoTransfer" }, "size": { "type": "integer", "format": "int64", "x-go-name": "Size" }, "ssh_url": { "type": "string", "x-go-name": "SSHURL" }, "stars_count": { "type": "integer", "format": "int64", "x-go-name": "Stars" }, "template": { "type": "boolean", "x-go-name": "Template" }, "topics": { "type": "array", "items": { "type": "string" }, "x-go-name": "Topics" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "url": { "type": "string", "x-go-name": "URL" }, "watchers_count": { "type": "integer", "format": "int64", "x-go-name": "Watchers" }, "website": { "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "ExternalTracker": { "description": "ExternalTracker represents settings for external tracker", "type": "object", "properties": { "external_tracker_format": { "description": "External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.", "type": "string", "x-go-name": "ExternalTrackerFormat" }, "external_tracker_regexp_pattern": { "description": "External Issue Tracker issue regular expression", "type": "string", "x-go-name": "ExternalTrackerRegexpPattern" }, "external_tracker_style": { "description": "External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp`", "type": "string", "x-go-name": "ExternalTrackerStyle" }, "external_tracker_url": { "description": "URL of external issue tracker.", "type": "string", "x-go-name": "ExternalTrackerURL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Permission": { "description": "Permission represents a set of permissions", "type": "object", "properties": { "admin": { "type": "boolean", "x-go-name": "Admin" }, "pull": { "type": "boolean", "x-go-name": "Pull" }, "push": { "type": "boolean", "x-go-name": "Push" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "ExternalWiki": { "description": "ExternalWiki represents setting for external wiki", "type": "object", "properties": { "external_wiki_url": { "description": "URL of external wiki.", "type": "string", "x-go-name": "ExternalWikiURL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" } } }