swagger: '2.0' info: description: This documentation describes the Gitea API. title: Gitea admin package API license: name: MIT url: http://opensource.org/licenses/MIT version: 1.27.0+dev-89-gf52b6f3315 basePath: /api/v1 schemes: - https - http consumes: - application/json produces: - application/json security: - BasicAuth: [] - Token: [] - AccessToken: [] - AuthorizationHeaderToken: [] - SudoParam: [] - SudoHeader: [] - TOTPHeader: [] tags: - name: package paths: /packages/{owner}: get: produces: - application/json tags: - package summary: Gets all packages of an owner operationId: listPackages parameters: - type: string description: owner of the packages name: owner in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query - enum: - alpine - cargo - chef - composer - conan - conda - container - cran - debian - generic - go - helm - maven - npm - nuget - pub - pypi - rpm - rubygems - swift - terraform - vagrant type: string description: package type filter name: type in: query - type: string description: name filter name: q in: query responses: '200': $ref: '#/responses/PackageList' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}: get: produces: - application/json tags: - package summary: Gets all versions of a package operationId: listPackageVersions parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/PackageList' '404': $ref: '#/responses/notFound' delete: tags: - package summary: Delete a package operationId: deletePackage parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}/-/latest: get: produces: - application/json tags: - package summary: Gets the latest version of a package operationId: getLatestPackageVersion parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true responses: '200': $ref: '#/responses/Package' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}/-/link/{repo_name}: post: tags: - package summary: Link a package to a repository operationId: linkPackage parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true - type: string description: name of the repository to link. name: repo_name in: path required: true responses: '201': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}/-/unlink: post: tags: - package summary: Unlink a package from a repository operationId: unlinkPackage parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true responses: '201': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}/{version}: get: produces: - application/json tags: - package summary: Gets a package operationId: getPackage parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true - type: string description: version of the package name: version in: path required: true responses: '200': $ref: '#/responses/Package' '404': $ref: '#/responses/notFound' delete: tags: - package summary: Delete a package version operationId: deletePackageVersion parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true - type: string description: version of the package name: version in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /packages/{owner}/{type}/{name}/{version}/files: get: produces: - application/json tags: - package summary: Gets all files of a package operationId: listPackageFiles parameters: - type: string description: owner of the package name: owner in: path required: true - type: string description: type of the package name: type in: path required: true - type: string description: name of the package name: name in: path required: true - type: string description: version of the package name: version in: path required: true responses: '200': $ref: '#/responses/PackageFileList' '404': $ref: '#/responses/notFound' definitions: 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 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 deprecated' 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 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: '#/definitions/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 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 RepoTransfer: description: RepoTransfer represents a pending repo transfer type: object properties: doer: $ref: '#/definitions/User' recipient: $ref: '#/definitions/User' teams: type: array items: $ref: '#/definitions/Team' x-go-name: Teams 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 Package: description: Package represents a package type: object properties: created_at: type: string format: date-time x-go-name: CreatedAt creator: $ref: '#/definitions/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: '#/definitions/User' repository: $ref: '#/definitions/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 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: '#/definitions/ExternalTracker' external_wiki: $ref: '#/definitions/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: '#/definitions/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: '#/definitions/User' parent: $ref: '#/definitions/Repository' permissions: $ref: '#/definitions/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: '#/definitions/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 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 PackageFile: description: PackageFile represents a package file type: object properties: id: description: The unique identifier of the package file type: integer format: int64 x-go-name: ID md5: description: The MD5 hash of the package file type: string x-go-name: HashMD5 name: description: The name of the package file type: string x-go-name: Name sha1: description: The SHA1 hash of the package file type: string x-go-name: HashSHA1 sha256: description: The SHA256 hash of the package file type: string x-go-name: HashSHA256 sha512: description: The SHA512 hash of the package file type: string x-go-name: HashSHA512 size: description: The size of the package file in bytes type: integer format: int64 x-go-name: Size 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 responses: PackageList: description: PackageList schema: type: array items: $ref: '#/definitions/Package' empty: description: APIEmpty is an empty response Package: description: Package schema: $ref: '#/definitions/Package' notFound: description: APINotFound is a not found empty response PackageFileList: description: PackageFileList schema: type: array items: $ref: '#/definitions/PackageFile' securityDefinitions: AccessToken: description: This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead. type: apiKey name: access_token in: query AuthorizationHeaderToken: description: API tokens must be prepended with "token" followed by a space. type: apiKey name: Authorization in: header BasicAuth: type: basic SudoHeader: description: Sudo API request as the user provided as the key. Admin privileges are required. type: apiKey name: Sudo in: header SudoParam: description: Sudo API request as the user provided as the key. Admin privileges are required. type: apiKey name: sudo in: query TOTPHeader: description: Must be used in combination with BasicAuth if two-factor authentication is enabled. type: apiKey name: X-GITEA-OTP in: header Token: description: This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead. type: apiKey name: token in: query