{ "consumes": [ "application/json", "text/plain" ], "produces": [ "application/json", "text/html" ], "schemes": [ "http", "https" ], "swagger": "2.0", "info": { "description": "This documentation describes the Gitea API.", "title": "Gitea API.", "license": { "name": "MIT", "url": "http://opensource.org/licenses/MIT" }, "version": "1.1.1" }, "basePath": "{{AppSubUrl}}/api/v1", "paths": { "/admin/orgs": { "get": { "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "List all organizations", "operationId": "adminGetAllOrgs", "parameters": [ { "type": "integer", "description": "page number of results to return (1-based)", "name": "page", "in": "query" }, { "type": "integer", "description": "page size of results, maximum page size is 50", "name": "limit", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/OrganizationList" }, "403": { "$ref": "#/responses/forbidden" } } } }, "/admin/users": { "get": { "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "List all users", "operationId": "adminGetAllUsers", "responses": { "200": { "$ref": "#/responses/UserList" }, "403": { "$ref": "#/responses/forbidden" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Create a user", "operationId": "adminCreateUser", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateUserOption" } } ], "responses": { "201": { "$ref": "#/responses/User" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/admin/users/{username}": { "delete": { "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Delete a user", "operationId": "adminDeleteUser", "parameters": [ { "type": "string", "description": "username of user to delete", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Edit an existing user", "operationId": "adminEditUser", "parameters": [ { "type": "string", "description": "username of user to edit", "name": "username", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditUserOption" } } ], "responses": { "200": { "$ref": "#/responses/User" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/admin/users/{username}/keys": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Add a public key on behalf of a user", "operationId": "adminCreatePublicKey", "parameters": [ { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true }, { "name": "key", "in": "body", "schema": { "$ref": "#/definitions/CreateKeyOption" } } ], "responses": { "201": { "$ref": "#/responses/PublicKey" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/admin/users/{username}/keys/{id}": { "delete": { "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Delete a user's public key", "operationId": "adminDeleteUserPublicKey", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the key to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "403": { "$ref": "#/responses/forbidden" }, "404": { "$ref": "#/responses/notFound" } } } }, "/admin/users/{username}/orgs": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Create an organization", "operationId": "adminCreateOrg", "parameters": [ { "type": "string", "description": "username of the user that will own the created organization", "name": "username", "in": "path", "required": true }, { "name": "organization", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateOrgOption" } } ], "responses": { "201": { "$ref": "#/responses/Organization" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/admin/users/{username}/repos": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "admin" ], "summary": "Create a repository on behalf a user", "operationId": "adminCreateRepo", "parameters": [ { "type": "string", "description": "username of the user. This user will own the created repository", "name": "username", "in": "path", "required": true }, { "name": "repository", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateRepoOption" } } ], "responses": { "201": { "$ref": "#/responses/Repository" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/markdown": { "post": { "consumes": [ "application/json" ], "produces": [ "text/html" ], "tags": [ "miscellaneous" ], "summary": "Render a markdown document as HTML", "operationId": "renderMarkdown", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/MarkdownOption" } } ], "responses": { "200": { "$ref": "#/responses/MarkdownRender" }, "422": { "$ref": "#/responses/validationError" } } } }, "/markdown/raw": { "post": { "consumes": [ "text/plain" ], "produces": [ "text/html" ], "tags": [ "miscellaneous" ], "summary": "Render raw markdown as HTML", "operationId": "renderMarkdownRaw", "parameters": [ { "description": "Request body to render", "name": "body", "in": "body", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "$ref": "#/responses/MarkdownRender" }, "422": { "$ref": "#/responses/validationError" } } } }, "/org/{org}/repos": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Create a repository in an organization", "operationId": "createOrgRepo", "parameters": [ { "type": "string", "description": "name of organization", "name": "org", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateRepoOption" } } ], "responses": { "201": { "$ref": "#/responses/Repository" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/orgs": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Create an organization", "operationId": "orgCreate", "parameters": [ { "name": "organization", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateOrgOption" } } ], "responses": { "201": { "$ref": "#/responses/Organization" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/orgs/{org}": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Get an organization", "operationId": "orgGet", "parameters": [ { "type": "string", "description": "name of the organization to get", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Organization" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Delete an organization", "operationId": "orgDelete", "parameters": [ { "type": "string", "description": "organization that is to be deleted", "name": "org", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Edit an organization", "operationId": "orgEdit", "parameters": [ { "type": "string", "description": "name of the organization to edit", "name": "org", "in": "path", "required": true }, { "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/EditOrgOption" } } ], "responses": { "200": { "$ref": "#/responses/Organization" } } } }, "/orgs/{org}/hooks": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List an organization's webhooks", "operationId": "orgListHooks", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/HookList" } } } }, "/orgs/{org}/hooks/": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Create a hook", "operationId": "orgCreateHook", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateHookOption" } } ], "responses": { "201": { "$ref": "#/responses/Hook" } } } }, "/orgs/{org}/hooks/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Get a hook", "operationId": "orgGetHook", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Hook" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Delete a hook", "operationId": "orgDeleteHook", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Update a hook", "operationId": "orgEditHook", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to update", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditHookOption" } } ], "responses": { "200": { "$ref": "#/responses/Hook" } } } }, "/orgs/{org}/members": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List an organization's members", "operationId": "orgListMembers", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/orgs/{org}/members/{username}": { "get": { "tags": [ "organization" ], "summary": "Check if a user is a member of an organization", "operationId": "orgIsMember", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "description": "user is a member" }, "404": { "description": "user is not a member" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Remove a member from an organization", "operationId": "orgDeleteMember", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "description": "member removed" } } } }, "/orgs/{org}/public_members": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List an organization's public members", "operationId": "orgListPublicMembers", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/orgs/{org}/public_members/{username}": { "get": { "tags": [ "organization" ], "summary": "Check if a user is a public member of an organization", "operationId": "orgIsPublicMember", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "description": "user is a public member" }, "404": { "description": "user is not a public member" } } }, "put": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Publicize a user's membership", "operationId": "orgPublicizeMember", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "description": "membership publicized" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Conceal a user's membership", "operationId": "orgConcealMember", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/orgs/{org}/repos": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List an organization's repos", "operationId": "orgListRepos", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/orgs/{org}/teams": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List an organization's teams", "operationId": "orgListTeams", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TeamList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Create a team", "operationId": "orgCreateTeam", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateTeamOption" } } ], "responses": { "201": { "$ref": "#/responses/Team" } } } }, "/orgs/{org}/teams/search": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Search for teams within an organization", "operationId": "teamSearch", "parameters": [ { "type": "string", "description": "name of the organization", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "keywords to search", "name": "q", "in": "query" }, { "type": "boolean", "description": "include search within team description (defaults to true)", "name": "include_desc", "in": "query" }, { "type": "integer", "description": "limit size of results", "name": "limit", "in": "query" }, { "type": "integer", "description": "page number of results to return (1-based)", "name": "page", "in": "query" } ], "responses": { "200": { "description": "SearchResults of a successful search", "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/Team" } }, "ok": { "type": "boolean" } } } } } } }, "/repos/migrate": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Migrate a remote git repository", "operationId": "repoMigrate", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/MigrateRepoForm" } } ], "responses": { "201": { "$ref": "#/responses/Repository" } } } }, "/repos/search": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Search for repositories", "operationId": "repoSearch", "parameters": [ { "type": "string", "description": "keyword", "name": "q", "in": "query" }, { "type": "boolean", "description": "Limit search to repositories with keyword as topic", "name": "topic", "in": "query" }, { "type": "boolean", "description": "include search of keyword within repository description", "name": "includeDesc", "in": "query" }, { "type": "integer", "format": "int64", "description": "search only for repos that the user with the given id owns or contributes to", "name": "uid", "in": "query" }, { "type": "integer", "format": "int64", "description": "search only for repos that the user with the given id has starred", "name": "starredBy", "in": "query" }, { "type": "boolean", "description": "include private repositories this user has access to (defaults to true)", "name": "private", "in": "query" }, { "type": "integer", "description": "page number of results to return (1-based)", "name": "page", "in": "query" }, { "type": "integer", "description": "page size of results, maximum page size is 50", "name": "limit", "in": "query" }, { "type": "string", "description": "type of repository to search for. Supported values are \"fork\", \"source\", \"mirror\" and \"collaborative\"", "name": "mode", "in": "query" }, { "type": "boolean", "description": "if `uid` is given, search only for repos that the user owns", "name": "exclusive", "in": "query" }, { "type": "string", "description": "sort repos by attribute. Supported values are \"alpha\", \"created\", \"updated\", \"size\", and \"id\". Default is \"alpha\"", "name": "sort", "in": "query" }, { "type": "string", "description": "sort order, either \"asc\" (ascending) or \"desc\" (descending). Default is \"asc\", ignored if \"sort\" is not specified.", "name": "order", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/SearchResults" }, "422": { "$ref": "#/responses/validationError" } } } }, "/repos/{owner}/{repo}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a repository", "operationId": "repoGet", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Repository" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a repository", "operationId": "repoDelete", "parameters": [ { "type": "string", "description": "owner of the repo to delete", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to delete", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "403": { "$ref": "#/responses/forbidden" } } }, "patch": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Edit a repository's properties. Only fields that are set will be changed.", "operationId": "repoEdit", "parameters": [ { "type": "string", "description": "owner of the repo to edit", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to edit", "name": "repo", "in": "path", "required": true }, { "description": "Properties of a repo that you can edit", "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditRepoOption" } } ], "responses": { "200": { "$ref": "#/responses/Repository" }, "403": { "$ref": "#/responses/forbidden" }, "422": { "$ref": "#/responses/validationError" } } } }, "/repos/{owner}/{repo}/archive/{archive}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get an archive of a repository", "operationId": "repoGetArchive", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "archive to download, consisting of a git reference and archive", "name": "archive", "in": "path", "required": true } ], "responses": { "200": { "description": "success" } } } }, "/repos/{owner}/{repo}/branches": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repository's branches", "operationId": "repoListBranches", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/BranchList" } } } }, "/repos/{owner}/{repo}/branches/{branch}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Retrieve a specific branch from a repository", "operationId": "repoGetBranch", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "branch to get", "name": "branch", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Branch" } } } }, "/repos/{owner}/{repo}/collaborators": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repository's collaborators", "operationId": "repoListCollaborators", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/repos/{owner}/{repo}/collaborators/{collaborator}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Check if a user is a collaborator of a repository", "operationId": "repoCheckCollaborator", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "username of the collaborator", "name": "collaborator", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/empty" } } }, "put": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Add a collaborator to a repository", "operationId": "repoAddCollaborator", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "username of the collaborator to add", "name": "collaborator", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/AddCollaboratorOption" } } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a collaborator from a repository", "operationId": "repoDeleteCollaborator", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "username of the collaborator to delete", "name": "collaborator", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/commits": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a list of all commits from a repository", "operationId": "repoGetAllCommits", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "SHA or branch to start listing commits from (usually 'master')", "name": "sha", "in": "query" }, { "type": "integer", "description": "page number of requested commits", "name": "page", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/CommitList" }, "404": { "$ref": "#/responses/notFound" }, "409": { "$ref": "#/responses/EmptyRepository" } } } }, "/repos/{owner}/{repo}/commits/{ref}/statuses": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a commit's combined status, by branch/tag/commit reference", "operationId": "repoGetCombinedStatusByRef", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "name of branch/tag/commit", "name": "ref", "in": "path", "required": true }, { "type": "integer", "description": "page number of results", "name": "page", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/Status" } } } }, "/repos/{owner}/{repo}/contents": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Gets the metadata of all the entries of the root dir", "operationId": "repoGetContentsList", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", "name": "ref", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/ContentsListResponse" } } } }, "/repos/{owner}/{repo}/contents/{filepath}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Gets the metadata and contents (if a file) of an entry in a repository, or a list of entries if a dir", "operationId": "repoGetContents", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "path of the dir, file, symlink or submodule in the repo", "name": "filepath", "in": "path", "required": true }, { "type": "string", "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", "name": "ref", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/ContentsResponse" } } }, "put": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Update a file in a repository", "operationId": "repoUpdateFile", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "path of the file to update", "name": "filepath", "in": "path", "required": true }, { "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/UpdateFileOptions" } } ], "responses": { "200": { "$ref": "#/responses/FileResponse" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a file in a repository", "operationId": "repoCreateFile", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "path of the file to create", "name": "filepath", "in": "path", "required": true }, { "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateFileOptions" } } ], "responses": { "201": { "$ref": "#/responses/FileResponse" } } }, "delete": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a file in a repository", "operationId": "repoDeleteFile", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "path of the file to delete", "name": "filepath", "in": "path", "required": true }, { "name": "body", "in": "body", "required": true, "schema": { "$ref": "#/definitions/DeleteFileOptions" } } ], "responses": { "200": { "$ref": "#/responses/FileDeleteResponse" } } } }, "/repos/{owner}/{repo}/editorconfig/{filepath}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get the EditorConfig definitions of a file in a repository", "operationId": "repoGetEditorConfig", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "filepath of file to get", "name": "filepath", "in": "path", "required": true } ], "responses": { "200": { "description": "success" } } } }, "/repos/{owner}/{repo}/forks": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repository's forks", "operationId": "listForks", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } }, "post": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Fork a repository", "operationId": "createFork", "parameters": [ { "type": "string", "description": "owner of the repo to fork", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to fork", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateForkOption" } } ], "responses": { "202": { "$ref": "#/responses/Repository" } } } }, "/repos/{owner}/{repo}/git/blobs/{sha}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Gets the blob of a repository.", "operationId": "GetBlob", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "sha of the commit", "name": "sha", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/GitBlobResponse" } } } }, "/repos/{owner}/{repo}/git/commits/{sha}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a single commit from a repository", "operationId": "repoGetSingleCommit", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "the commit hash", "name": "sha", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Commit" }, "404": { "$ref": "#/responses/notFound" } } } }, "/repos/{owner}/{repo}/git/refs": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get specified ref or filtered repository's refs", "operationId": "repoListAllGitRefs", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/ReferenceList" }, "404": { "$ref": "#/responses/notFound" } } } }, "/repos/{owner}/{repo}/git/refs/{ref}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get specified ref or filtered repository's refs", "operationId": "repoListGitRefs", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "part or full name of the ref", "name": "ref", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/ReferenceList" }, "404": { "$ref": "#/responses/notFound" } } } }, "/repos/{owner}/{repo}/git/tags/{sha}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Gets the tag object of an annotated tag (not lightweight tags)", "operationId": "GetTag", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "sha of the tag. The Git tags API only supports annotated tag objects, not lightweight tags.", "name": "sha", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/AnnotatedTag" } } } }, "/repos/{owner}/{repo}/git/trees/{sha}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Gets the tree of a repository.", "operationId": "GetTree", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "sha of the commit", "name": "sha", "in": "path", "required": true }, { "type": "boolean", "description": "show all directories and files", "name": "recursive", "in": "query" }, { "type": "integer", "description": "page number; the 'truncated' field in the response will be true if there are still more items after this page, false if the last page", "name": "page", "in": "query" }, { "type": "integer", "description": "number of items per page; default is 1000 or what is set in app.ini as DEFAULT_GIT_TREES_PER_PAGE", "name": "per_page", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/GitTreeResponse" } } } }, "/repos/{owner}/{repo}/hooks": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List the hooks in a repository", "operationId": "repoListHooks", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/HookList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a hook", "operationId": "repoCreateHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateHookOption" } } ], "responses": { "201": { "$ref": "#/responses/Hook" } } } }, "/repos/{owner}/{repo}/hooks/git": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List the Git hooks in a repository", "operationId": "repoListGitHooks", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/GitHookList" } } } }, "/repos/{owner}/{repo}/hooks/git/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a Git hook", "operationId": "repoGetGitHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "id of the hook to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/GitHook" }, "404": { "$ref": "#/responses/notFound" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a Git hook in a repository", "operationId": "repoDeleteGitHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "id of the hook to get", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/notFound" } } }, "patch": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Edit a Git hook in a repository", "operationId": "repoEditGitHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "id of the hook to get", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditGitHookOption" } } ], "responses": { "200": { "$ref": "#/responses/GitHook" }, "404": { "$ref": "#/responses/notFound" } } } }, "/repos/{owner}/{repo}/hooks/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a hook", "operationId": "repoGetHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Hook" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a hook in a repository", "operationId": "repoDeleteHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/notFound" } } }, "patch": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Edit a hook in a repository", "operationId": "repoEditHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the hook", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditHookOption" } } ], "responses": { "200": { "$ref": "#/responses/Hook" } } } }, "/repos/{owner}/{repo}/hooks/{id}/tests": { "post": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Test a push webhook", "operationId": "repoTestHook", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the hook to test", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/issues": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "List a repository's issues", "operationId": "issueListIssues", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "whether issue is open or closed", "name": "state", "in": "query" }, { "type": "string", "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded", "name": "labels", "in": "query" }, { "type": "integer", "description": "page number of requested issues", "name": "page", "in": "query" }, { "type": "string", "description": "search string", "name": "q", "in": "query" }, { "type": "string", "description": "filter by type (issues / pulls) if set", "name": "type", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/IssueList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Create an issue. If using deadline only the date will be taken into account, and time of day ignored.", "operationId": "issueCreateIssue", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateIssueOption" } } ], "responses": { "201": { "$ref": "#/responses/Issue" } } } }, "/repos/{owner}/{repo}/issues/comments": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "List all comments in a repository", "operationId": "issueGetRepoComments", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "if provided, only comments updated since the provided time are returned.", "name": "since", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/CommentList" } } } }, "/repos/{owner}/{repo}/issues/comments/{id}": { "delete": { "tags": [ "issue" ], "summary": "Delete a comment", "operationId": "issueDeleteComment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of comment to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Edit a comment", "operationId": "issueEditComment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the comment to edit", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditIssueCommentOption" } } ], "responses": { "200": { "$ref": "#/responses/Comment" } } } }, "/repos/{owner}/{repo}/issues/{id}/times": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "List an issue's tracked times", "operationId": "issueTrackedTimes", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TrackedTimeList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Add a tracked time to a issue", "operationId": "issueAddTime", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to add tracked time to", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/AddTimeOption" } } ], "responses": { "200": { "$ref": "#/responses/TrackedTime" }, "400": { "$ref": "#/responses/error" }, "403": { "$ref": "#/responses/error" } } } }, "/repos/{owner}/{repo}/issues/{index}": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get an issue", "operationId": "issueGetIssue", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to get", "name": "index", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Issue" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.", "operationId": "issueEditIssue", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to edit", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditIssueOption" } } ], "responses": { "201": { "$ref": "#/responses/Issue" } } } }, "/repos/{owner}/{repo}/issues/{index}/comments": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "List all comments on an issue", "operationId": "issueGetComments", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true }, { "type": "string", "description": "if provided, only comments updated since the specified time are returned.", "name": "since", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/CommentList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Add a comment to an issue", "operationId": "issueCreateComment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateIssueCommentOption" } } ], "responses": { "201": { "$ref": "#/responses/Comment" } } } }, "/repos/{owner}/{repo}/issues/{index}/comments/{id}": { "delete": { "tags": [ "issue" ], "summary": "Delete a comment", "operationId": "issueDeleteCommentDeprecated", "deprecated": true, "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "description": "this parameter is ignored", "name": "index", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of comment to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Edit a comment", "operationId": "issueEditCommentDeprecated", "deprecated": true, "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "description": "this parameter is ignored", "name": "index", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the comment to edit", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditIssueCommentOption" } } ], "responses": { "200": { "$ref": "#/responses/Comment" } } } }, "/repos/{owner}/{repo}/issues/{index}/deadline": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Set an issue deadline. If set to null, the deadline is deleted. If using deadline only the date will be taken into account, and time of day ignored.", "operationId": "issueEditIssueDeadline", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to create or update a deadline on", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditDeadlineOption" } } ], "responses": { "201": { "$ref": "#/responses/IssueDeadline" }, "403": { "description": "Not repo writer" }, "404": { "description": "Issue not found" } } } }, "/repos/{owner}/{repo}/issues/{index}/labels": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get an issue's labels", "operationId": "issueGetLabels", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/LabelList" }, "404": { "$ref": "#/responses/notFound" } } }, "put": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Replace an issue's labels", "operationId": "issueReplaceLabels", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/IssueLabelsOption" } } ], "responses": { "200": { "$ref": "#/responses/LabelList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Add a label to an issue", "operationId": "issueAddLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/IssueLabelsOption" } } ], "responses": { "200": { "$ref": "#/responses/LabelList" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Remove all labels from an issue", "operationId": "issueClearLabels", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/issues/{index}/labels/{id}": { "delete": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Remove a label from an issue", "operationId": "issueRemoveLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue", "name": "index", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the label to remove", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/issues/{index}/stopwatch/start": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Start stopwatch on an issue.", "operationId": "issueStartStopWatch", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to create the stopwatch on", "name": "index", "in": "path", "required": true } ], "responses": { "201": { "$ref": "#/responses/empty" }, "403": { "description": "Not repo writer, user does not have rights to toggle stopwatch" }, "404": { "description": "Issue not found" }, "409": { "description": "Cannot start a stopwatch again if it already exists" } } } }, "/repos/{owner}/{repo}/issues/{index}/stopwatch/stop": { "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Stop an issue's existing stopwatch.", "operationId": "issueStopWatch", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the issue to stop the stopwatch on", "name": "index", "in": "path", "required": true } ], "responses": { "201": { "$ref": "#/responses/empty" }, "403": { "description": "Not repo writer, user does not have rights to toggle stopwatch" }, "404": { "description": "Issue not found" }, "409": { "description": "Cannot stop a non existent stopwatch" } } } }, "/repos/{owner}/{repo}/keys": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repository's keys", "operationId": "repoListKeys", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "description": "the key_id to search for", "name": "key_id", "in": "query" }, { "type": "string", "description": "fingerprint of the key", "name": "fingerprint", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/DeployKeyList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Add a key to a repository", "operationId": "repoCreateKey", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateKeyOption" } } ], "responses": { "201": { "$ref": "#/responses/DeployKey" } } } }, "/repos/{owner}/{repo}/keys/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a repository's key by id", "operationId": "repoGetKey", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the key to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/DeployKey" } } }, "delete": { "tags": [ "repository" ], "summary": "Delete a key from a repository", "operationId": "repoDeleteKey", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the key to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/labels": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get all of a repository's labels", "operationId": "issueListLabels", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/LabelList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Create a label", "operationId": "issueCreateLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateLabelOption" } } ], "responses": { "201": { "$ref": "#/responses/Label" } } } }, "/repos/{owner}/{repo}/labels/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get a single label", "operationId": "issueGetLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the label to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Label" } } }, "delete": { "tags": [ "issue" ], "summary": "Delete a label", "operationId": "issueDeleteLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the label to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Update a label", "operationId": "issueEditLabel", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the label to edit", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditLabelOption" } } ], "responses": { "200": { "$ref": "#/responses/Label" } } } }, "/repos/{owner}/{repo}/milestones": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get all of a repository's opened milestones", "operationId": "issueGetMilestonesList", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "Milestone state, Recognised values are open, closed and all. Defaults to \"open\"", "name": "state", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/MilestoneList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Create a milestone", "operationId": "issueCreateMilestone", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateMilestoneOption" } } ], "responses": { "201": { "$ref": "#/responses/Milestone" } } } }, "/repos/{owner}/{repo}/milestones/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Get a milestone", "operationId": "issueGetMilestone", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the milestone", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Milestone" } } }, "delete": { "tags": [ "issue" ], "summary": "Delete a milestone", "operationId": "issueDeleteMilestone", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the milestone to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "issue" ], "summary": "Update a milestone", "operationId": "issueEditMilestone", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the milestone", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditMilestoneOption" } } ], "responses": { "200": { "$ref": "#/responses/Milestone" } } } }, "/repos/{owner}/{repo}/mirror-sync": { "post": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Sync a mirrored repository", "operationId": "repoMirrorSync", "parameters": [ { "type": "string", "description": "owner of the repo to sync", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to sync", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/pulls": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repo's pull requests", "operationId": "repoListPullRequests", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "description": "Page number", "name": "page", "in": "query" }, { "enum": [ "closed", "open", "all" ], "type": "string", "description": "State of pull request: open or closed (optional)", "name": "state", "in": "query" }, { "enum": [ "oldest", "recentupdate", "leastupdate", "mostcomment", "leastcomment", "priority" ], "type": "string", "description": "Type of sort", "name": "sort", "in": "query" }, { "type": "integer", "format": "int64", "description": "ID of the milestone", "name": "milestone", "in": "query" }, { "type": "array", "items": { "type": "integer", "format": "int64" }, "collectionFormat": "multi", "description": "Label IDs", "name": "labels", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/PullRequestList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a pull request", "operationId": "repoCreatePullRequest", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreatePullRequestOption" } } ], "responses": { "201": { "$ref": "#/responses/PullRequest" } } } }, "/repos/{owner}/{repo}/pulls/{index}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a pull request", "operationId": "repoGetPullRequest", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the pull request to get", "name": "index", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/PullRequest" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Update a pull request", "operationId": "repoEditPullRequest", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the pull request to edit", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditPullRequestOption" } } ], "responses": { "201": { "$ref": "#/responses/PullRequest" } } } }, "/repos/{owner}/{repo}/pulls/{index}/merge": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Check if a pull request has been merged", "operationId": "repoPullRequestIsMerged", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the pull request", "name": "index", "in": "path", "required": true } ], "responses": { "204": { "description": "pull request has been merged" }, "404": { "description": "pull request has not been merged" } } }, "post": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Merge a pull request", "operationId": "repoMergePullRequest", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "index of the pull request to merge", "name": "index", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/MergePullRequestOption" } } ], "responses": { "200": { "$ref": "#/responses/empty" }, "405": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/raw/{filepath}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a file from a repository", "operationId": "repoGetRawFile", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "filepath of the file to get", "name": "filepath", "in": "path", "required": true } ], "responses": { "200": { "description": "success" } } } }, "/repos/{owner}/{repo}/releases": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repo's releases", "operationId": "repoListReleases", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "description": "page wants to load", "name": "page", "in": "query" }, { "type": "integer", "description": "items count every page wants to load", "name": "per_page", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/ReleaseList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a release", "operationId": "repoCreateRelease", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateReleaseOption" } } ], "responses": { "201": { "$ref": "#/responses/Release" } } } }, "/repos/{owner}/{repo}/releases/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a release", "operationId": "repoGetRelease", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Release" } } }, "delete": { "tags": [ "repository" ], "summary": "Delete a release", "operationId": "repoDeleteRelease", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Update a release", "operationId": "repoEditRelease", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release to edit", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditReleaseOption" } } ], "responses": { "200": { "$ref": "#/responses/Release" } } } }, "/repos/{owner}/{repo}/releases/{id}/assets": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List release's attachments", "operationId": "repoListReleaseAttachments", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/AttachmentList" } } }, "post": { "consumes": [ "multipart/form-data" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a release attachment", "operationId": "repoCreateReleaseAttachment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "name of the attachment", "name": "name", "in": "query" }, { "type": "file", "description": "attachment to upload", "name": "attachment", "in": "formData", "required": true } ], "responses": { "201": { "$ref": "#/responses/Attachment" } } } }, "/repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a release attachment", "operationId": "repoGetReleaseAttachment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release", "name": "id", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the attachment to get", "name": "attachment_id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Attachment" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a release attachment", "operationId": "repoDeleteReleaseAttachment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release", "name": "id", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the attachment to delete", "name": "attachment_id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Edit a release attachment", "operationId": "repoEditReleaseAttachment", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the release", "name": "id", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "id of the attachment to edit", "name": "attachment_id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditAttachmentOptions" } } ], "responses": { "201": { "$ref": "#/responses/Attachment" } } } }, "/repos/{owner}/{repo}/stargazers": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repo's stargazers", "operationId": "repoListStargazers", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/repos/{owner}/{repo}/statuses/{sha}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a commit's statuses", "operationId": "repoListStatuses", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "sha of the commit", "name": "sha", "in": "path", "required": true }, { "type": "integer", "description": "page number of results", "name": "page", "in": "query" }, { "enum": [ "oldest", "recentupdate", "leastupdate", "leastindex", "highestindex" ], "type": "string", "description": "type of sort", "name": "sort", "in": "query" }, { "enum": [ "pending", "success", "error", "failure", "warning" ], "type": "string", "description": "type of state", "name": "state", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/StatusList" } } }, "post": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Create a commit status", "operationId": "repoCreateStatus", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "sha of the commit", "name": "sha", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateStatusOption" } } ], "responses": { "201": { "$ref": "#/responses/Status" } } } }, "/repos/{owner}/{repo}/subscribers": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repo's watchers", "operationId": "repoListSubscribers", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/repos/{owner}/{repo}/subscription": { "get": { "tags": [ "repository" ], "summary": "Check if the current user is watching a repo", "operationId": "userCurrentCheckSubscription", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/WatchInfo" } } }, "put": { "tags": [ "repository" ], "summary": "Watch a repo", "operationId": "userCurrentPutSubscription", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/WatchInfo" } } }, "delete": { "tags": [ "repository" ], "summary": "Unwatch a repo", "operationId": "userCurrentDeleteSubscription", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/tags": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repository's tags", "operationId": "repoListTags", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TagList" } } } }, "/repos/{owner}/{repo}/times": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "List a repo's tracked times", "operationId": "repoTrackedTimes", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TrackedTimeList" } } } }, "/repos/{owner}/{repo}/times/{user}": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List a user's tracked times in a repo", "operationId": "userTrackedTimes", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "username of user", "name": "user", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TrackedTimeList" } } } }, "/repos/{owner}/{repo}/topics": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get list of topics that a repository has", "operationId": "repoListTopics", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/TopicNames" } } }, "put": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Replace list of topics for a repository", "operationId": "repoUpdateTopics", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/RepoTopicOptions" } } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repos/{owner}/{repo}/topics/{topic}": { "put": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Add a topic to a repository", "operationId": "repoAddTopíc", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "name of the topic to add", "name": "topic", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Delete a topic from a repository", "operationId": "repoDeleteTopic", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true }, { "type": "string", "description": "name of the topic to delete", "name": "topic", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/repositories/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "Get a repository by id", "operationId": "repoGetByID", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the repo to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Repository" } } } }, "/teams/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Get a team", "operationId": "orgGetTeam", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/Team" } } }, "delete": { "tags": [ "organization" ], "summary": "Delete a team", "operationId": "orgDeleteTeam", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "description": "team deleted" } } }, "patch": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Edit a team", "operationId": "orgEditTeam", "parameters": [ { "type": "integer", "description": "id of the team to edit", "name": "id", "in": "path", "required": true }, { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/EditTeamOption" } } ], "responses": { "200": { "$ref": "#/responses/Team" } } } }, "/teams/{id}/members": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List a team's members", "operationId": "orgListTeamMembers", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/teams/{id}/members/{username}": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List a particular member of team", "operationId": "orgListTeamMember", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "username of the member to list", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/User" } } }, "put": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Add a team member", "operationId": "orgAddTeamMember", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "username of the user to add", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Remove a team member", "operationId": "orgRemoveTeamMember", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "username of the user to remove", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/teams/{id}/repos": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List a team's repos", "operationId": "orgListTeamRepos", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/teams/{id}/repos/{org}/{repo}": { "put": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Add a repository to a team", "operationId": "orgAddTeamRepository", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "organization that owns the repo to add", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to add", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "description": "This does not delete the repository, it only removes the repository from the team.", "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "Remove a repository from a team", "operationId": "orgRemoveTeamRepository", "parameters": [ { "type": "integer", "format": "int64", "description": "id of the team", "name": "id", "in": "path", "required": true }, { "type": "string", "description": "organization that owns the repo to remove", "name": "org", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to remove", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/topics/search": { "get": { "produces": [ "application/json" ], "tags": [ "repository" ], "summary": "search topics via keyword", "operationId": "topicSearch", "parameters": [ { "type": "string", "description": "keywords to search", "name": "q", "in": "query", "required": true } ], "responses": { "200": { "$ref": "#/responses/TopicListResponse" } } } }, "/user": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Get the authenticated user", "operationId": "userGetCurrent", "responses": { "200": { "$ref": "#/responses/User" } } } }, "/user/emails": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the authenticated user's email addresses", "operationId": "userListEmails", "responses": { "200": { "$ref": "#/responses/EmailList" } } }, "post": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Add email addresses", "operationId": "userAddEmail", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateEmailOption" } } ], "responses": { "201": { "$ref": "#/responses/EmailList" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Delete email addresses", "operationId": "userDeleteEmail", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/DeleteEmailOption" } } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/user/followers": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the authenticated user's followers", "operationId": "userCurrentListFollowers", "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/user/following": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the users that the authenticated user is following", "operationId": "userCurrentListFollowing", "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/user/following/{username}": { "get": { "tags": [ "user" ], "summary": "Check whether a user is followed by the authenticated user", "operationId": "userCurrentCheckFollowing", "parameters": [ { "type": "string", "description": "username of followed user", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/notFound" } } }, "put": { "tags": [ "user" ], "summary": "Follow a user", "operationId": "userCurrentPutFollow", "parameters": [ { "type": "string", "description": "username of user to follow", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "tags": [ "user" ], "summary": "Unfollow a user", "operationId": "userCurrentDeleteFollow", "parameters": [ { "type": "string", "description": "username of user to unfollow", "name": "username", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/user/gpg_keys": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the authenticated user's GPG keys", "operationId": "userCurrentListGPGKeys", "responses": { "200": { "$ref": "#/responses/GPGKeyList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Create a GPG key", "operationId": "userCurrentPostGPGKey", "parameters": [ { "name": "Form", "in": "body", "schema": { "$ref": "#/definitions/CreateGPGKeyOption" } } ], "responses": { "201": { "$ref": "#/responses/GPGKey" }, "422": { "$ref": "#/responses/validationError" } } } }, "/user/gpg_keys/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Get a GPG key", "operationId": "userCurrentGetGPGKey", "parameters": [ { "type": "integer", "format": "int64", "description": "id of key to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/GPGKey" }, "404": { "$ref": "#/responses/notFound" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Remove a GPG key", "operationId": "userCurrentDeleteGPGKey", "parameters": [ { "type": "integer", "format": "int64", "description": "id of key to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "403": { "$ref": "#/responses/forbidden" } } } }, "/user/keys": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the authenticated user's public keys", "operationId": "userCurrentListKeys", "parameters": [ { "type": "string", "description": "fingerprint of the key", "name": "fingerprint", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/PublicKeyList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Create a public key", "operationId": "userCurrentPostKey", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateKeyOption" } } ], "responses": { "201": { "$ref": "#/responses/PublicKey" }, "422": { "$ref": "#/responses/validationError" } } } }, "/user/keys/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Get a public key", "operationId": "userCurrentGetKey", "parameters": [ { "type": "integer", "format": "int64", "description": "id of key to get", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/PublicKey" }, "404": { "$ref": "#/responses/notFound" } } }, "delete": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Delete a public key", "operationId": "userCurrentDeleteKey", "parameters": [ { "type": "integer", "format": "int64", "description": "id of key to delete", "name": "id", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "403": { "$ref": "#/responses/forbidden" }, "404": { "$ref": "#/responses/notFound" } } } }, "/user/orgs": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List the current user's organizations", "operationId": "orgListCurrentUserOrgs", "responses": { "200": { "$ref": "#/responses/OrganizationList" } } } }, "/user/repos": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the repos that the authenticated user owns or has access to", "operationId": "userCurrentListRepos", "responses": { "200": { "$ref": "#/responses/RepositoryList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "repository", "user" ], "summary": "Create a repository", "operationId": "createCurrentUserRepo", "parameters": [ { "name": "body", "in": "body", "schema": { "$ref": "#/definitions/CreateRepoOption" } } ], "responses": { "201": { "$ref": "#/responses/Repository" }, "409": { "description": "The repository with the same name already exists." }, "422": { "$ref": "#/responses/validationError" } } } }, "/user/starred": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "The repos that the authenticated user has starred", "operationId": "userCurrentListStarred", "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/user/starred/{owner}/{repo}": { "get": { "tags": [ "user" ], "summary": "Whether the authenticated is starring the repo", "operationId": "userCurrentCheckStarring", "parameters": [ { "type": "string", "description": "owner of the repo", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/notFound" } } }, "put": { "tags": [ "user" ], "summary": "Star the given repo", "operationId": "userCurrentPutStar", "parameters": [ { "type": "string", "description": "owner of the repo to star", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to star", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } }, "delete": { "tags": [ "user" ], "summary": "Unstar the given repo", "operationId": "userCurrentDeleteStar", "parameters": [ { "type": "string", "description": "owner of the repo to unstar", "name": "owner", "in": "path", "required": true }, { "type": "string", "description": "name of the repo to unstar", "name": "repo", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/user/subscriptions": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List repositories watched by the authenticated user", "operationId": "userCurrentListSubscriptions", "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/user/teams": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List all the teams a user belongs to", "operationId": "userListTeams", "responses": { "200": { "$ref": "#/responses/TeamList" } } } }, "/user/times": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the current user's tracked times", "operationId": "userCurrentTrackedTimes", "responses": { "200": { "$ref": "#/responses/TrackedTimeList" } } } }, "/users/search": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Search for users", "operationId": "userSearch", "parameters": [ { "type": "string", "description": "keyword", "name": "q", "in": "query" }, { "type": "integer", "format": "int64", "description": "ID of the user to search for", "name": "uid", "in": "query" }, { "type": "integer", "description": "maximum number of users to return", "name": "limit", "in": "query" } ], "responses": { "200": { "description": "SearchResults of a successful search", "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/User" } }, "ok": { "type": "boolean" } } } } } } }, "/users/{follower}/following/{followee}": { "get": { "tags": [ "user" ], "summary": "Check if one user is following another user", "operationId": "userCheckFollowing", "parameters": [ { "type": "string", "description": "username of following user", "name": "follower", "in": "path", "required": true }, { "type": "string", "description": "username of followed user", "name": "followee", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" }, "404": { "$ref": "#/responses/notFound" } } } }, "/users/{username}": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Get a user", "operationId": "userGet", "parameters": [ { "type": "string", "description": "username of user to get", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/User" }, "404": { "$ref": "#/responses/notFound" } } } }, "/users/{username}/followers": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the given user's followers", "operationId": "userListFollowers", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/users/{username}/following": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the users that the given user is following", "operationId": "userListFollowing", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserList" } } } }, "/users/{username}/gpg_keys": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the given user's GPG keys", "operationId": "userListGPGKeys", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/GPGKeyList" } } } }, "/users/{username}/heatmap": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Get a user's heatmap", "operationId": "userGetHeatmapData", "parameters": [ { "type": "string", "description": "username of user to get", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/UserHeatmapData" }, "404": { "$ref": "#/responses/notFound" } } } }, "/users/{username}/keys": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the given user's public keys", "operationId": "userListKeys", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true }, { "type": "string", "description": "fingerprint of the key", "name": "fingerprint", "in": "query" } ], "responses": { "200": { "$ref": "#/responses/PublicKeyList" } } } }, "/users/{username}/orgs": { "get": { "produces": [ "application/json" ], "tags": [ "organization" ], "summary": "List a user's organizations", "operationId": "orgListUserOrgs", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/OrganizationList" } } } }, "/users/{username}/repos": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the repos owned by the given user", "operationId": "userListRepos", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/users/{username}/starred": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "The repos that the given user has starred", "operationId": "userListStarred", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/users/{username}/subscriptions": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the repositories watched by a user", "operationId": "userListSubscriptions", "parameters": [ { "type": "string", "description": "username of the user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/RepositoryList" } } } }, "/users/{username}/tokens": { "get": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "List the authenticated user's access tokens", "operationId": "userGetTokens", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true } ], "responses": { "200": { "$ref": "#/responses/AccessTokenList" } } }, "post": { "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "user" ], "summary": "Create an access token", "operationId": "userCreateToken", "parameters": [ { "type": "string", "x-go-name": "Name", "description": "username of user", "name": "username", "in": "path", "required": true }, { "name": "accessToken", "in": "body", "schema": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string" } } } } ], "responses": { "200": { "$ref": "#/responses/AccessToken" } } } }, "/users/{username}/tokens/{token}": { "delete": { "produces": [ "application/json" ], "tags": [ "user" ], "summary": "delete an access token", "operationId": "userDeleteAccessToken", "parameters": [ { "type": "string", "description": "username of user", "name": "username", "in": "path", "required": true }, { "type": "integer", "format": "int64", "description": "token to be deleted", "name": "token", "in": "path", "required": true } ], "responses": { "204": { "$ref": "#/responses/empty" } } } }, "/version": { "get": { "produces": [ "application/json" ], "tags": [ "miscellaneous" ], "summary": "Returns the version of the Gitea application", "operationId": "getVersion", "responses": { "200": { "$ref": "#/responses/ServerVersion" } } } } }, "definitions": { "APIError": { "description": "APIError is an api error with a message", "type": "object", "properties": { "message": { "type": "string", "x-go-name": "Message" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "AccessToken": { "type": "object", "title": "AccessToken represents an API access token.", "properties": { "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "type": "string", "x-go-name": "Name" }, "sha1": { "type": "string", "x-go-name": "Token" }, "token_last_eight": { "type": "string", "x-go-name": "TokenLastEight" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "AddCollaboratorOption": { "description": "AddCollaboratorOption options when adding a user as a collaborator of a repository", "type": "object", "properties": { "permission": { "type": "string", "x-go-name": "Permission" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "AddTimeOption": { "description": "AddTimeOption options for adding time to an issue", "type": "object", "required": [ "time" ], "properties": { "time": { "description": "time in seconds", "type": "integer", "format": "int64", "x-go-name": "Time" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "AnnotatedTag": { "description": "AnnotatedTag represents an annotated tag", "type": "object", "properties": { "message": { "type": "string", "x-go-name": "Message" }, "object": { "$ref": "#/definitions/AnnotatedTagObject" }, "sha": { "type": "string", "x-go-name": "SHA" }, "tag": { "type": "string", "x-go-name": "Tag" }, "tagger": { "$ref": "#/definitions/CommitUser" }, "url": { "type": "string", "x-go-name": "URL" }, "verification": { "$ref": "#/definitions/PayloadCommitVerification" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "AnnotatedTagObject": { "description": "AnnotatedTagObject contains meta information of the tag object", "type": "object", "properties": { "sha": { "type": "string", "x-go-name": "SHA" }, "type": { "type": "string", "x-go-name": "Type" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Attachment": { "description": "Attachment a generic attachment", "type": "object", "properties": { "browser_download_url": { "type": "string", "x-go-name": "DownloadURL" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "download_count": { "type": "integer", "format": "int64", "x-go-name": "DownloadCount" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "type": "string", "x-go-name": "Name" }, "size": { "type": "integer", "format": "int64", "x-go-name": "Size" }, "uuid": { "type": "string", "x-go-name": "UUID" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Branch": { "description": "Branch represents a repository branch", "type": "object", "properties": { "commit": { "$ref": "#/definitions/PayloadCommit" }, "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Comment": { "description": "Comment represents a comment on a commit or issue", "type": "object", "properties": { "body": { "type": "string", "x-go-name": "Body" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "issue_url": { "type": "string", "x-go-name": "IssueURL" }, "original_author": { "type": "string", "x-go-name": "OriginalAuthor" }, "original_author_id": { "type": "integer", "format": "int64", "x-go-name": "OriginalAuthorID" }, "pull_request_url": { "type": "string", "x-go-name": "PRURL" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "user": { "$ref": "#/definitions/User" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Commit": { "type": "object", "title": "Commit contains information generated from a Git commit.", "properties": { "author": { "$ref": "#/definitions/User" }, "commit": { "$ref": "#/definitions/RepoCommit" }, "committer": { "$ref": "#/definitions/User" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "parents": { "type": "array", "items": { "$ref": "#/definitions/CommitMeta" }, "x-go-name": "Parents" }, "sha": { "type": "string", "x-go-name": "SHA" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CommitMeta": { "type": "object", "title": "CommitMeta contains meta information of a commit in terms of API.", "properties": { "sha": { "type": "string", "x-go-name": "SHA" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CommitUser": { "type": "object", "title": "CommitUser contains information of a user in the context of a commit.", "properties": { "date": { "type": "string", "x-go-name": "Date" }, "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "ContentsResponse": { "description": "ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content", "type": "object", "properties": { "_links": { "$ref": "#/definitions/FileLinksResponse" }, "content": { "description": "`content` is populated when `type` is `file`, otherwise null", "type": "string", "x-go-name": "Content" }, "download_url": { "type": "string", "x-go-name": "DownloadURL" }, "encoding": { "description": "`encoding` is populated when `type` is `file`, otherwise null", "type": "string", "x-go-name": "Encoding" }, "git_url": { "type": "string", "x-go-name": "GitURL" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "name": { "type": "string", "x-go-name": "Name" }, "path": { "type": "string", "x-go-name": "Path" }, "sha": { "type": "string", "x-go-name": "SHA" }, "size": { "type": "integer", "format": "int64", "x-go-name": "Size" }, "submodule_git_url": { "description": "`submodule_git_url` is populated when `type` is `submodule`, otherwise null", "type": "string", "x-go-name": "SubmoduleGitURL" }, "target": { "description": "`target` is populated when `type` is `symlink`, otherwise null", "type": "string", "x-go-name": "Target" }, "type": { "description": "`type` will be `file`, `dir`, `symlink`, or `submodule`", "type": "string", "x-go-name": "Type" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateEmailOption": { "description": "CreateEmailOption options when creating email addresses", "type": "object", "properties": { "emails": { "description": "email addresses to add", "type": "array", "items": { "type": "string" }, "x-go-name": "Emails" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateFileOptions": { "description": "CreateFileOptions options for creating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", "type": "object", "required": [ "content" ], "properties": { "author": { "$ref": "#/definitions/Identity" }, "branch": { "description": "branch (optional) to base this file from. if not given, the default branch is used", "type": "string", "x-go-name": "BranchName" }, "committer": { "$ref": "#/definitions/Identity" }, "content": { "description": "content must be base64 encoded", "type": "string", "x-go-name": "Content" }, "message": { "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", "type": "string", "x-go-name": "Message" }, "new_branch": { "description": "new_branch (optional) will make a new branch from `branch` before creating the file", "type": "string", "x-go-name": "NewBranchName" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateForkOption": { "description": "CreateForkOption options for creating a fork", "type": "object", "properties": { "organization": { "description": "organization name, if forking into an organization", "type": "string", "x-go-name": "Organization" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateGPGKeyOption": { "description": "CreateGPGKeyOption options create user GPG key", "type": "object", "required": [ "armored_public_key" ], "properties": { "armored_public_key": { "description": "An armored GPG key to add", "type": "string", "uniqueItems": true, "x-go-name": "ArmoredKey" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateHookOption": { "description": "CreateHookOption options when create a hook", "type": "object", "required": [ "type", "config" ], "properties": { "active": { "type": "boolean", "default": false, "x-go-name": "Active" }, "branch_filter": { "type": "string", "x-go-name": "BranchFilter" }, "config": { "type": "object", "additionalProperties": { "type": "string" }, "x-go-name": "Config" }, "events": { "type": "array", "items": { "type": "string" }, "x-go-name": "Events" }, "type": { "type": "string", "enum": [ "gitea", "gogs", "slack", "discord" ], "x-go-name": "Type" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateIssueCommentOption": { "description": "CreateIssueCommentOption options for creating a comment on an issue", "type": "object", "required": [ "body" ], "properties": { "body": { "type": "string", "x-go-name": "Body" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateIssueOption": { "description": "CreateIssueOption options to create one issue", "type": "object", "required": [ "title" ], "properties": { "assignee": { "description": "username of assignee", "type": "string", "x-go-name": "Assignee" }, "assignees": { "type": "array", "items": { "type": "string" }, "x-go-name": "Assignees" }, "body": { "type": "string", "x-go-name": "Body" }, "closed": { "type": "boolean", "x-go-name": "Closed" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "labels": { "description": "list of label ids", "type": "array", "items": { "type": "integer", "format": "int64" }, "x-go-name": "Labels" }, "milestone": { "description": "milestone id", "type": "integer", "format": "int64", "x-go-name": "Milestone" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateKeyOption": { "description": "CreateKeyOption options when creating a key", "type": "object", "required": [ "title", "key" ], "properties": { "key": { "description": "An armored SSH key to add", "type": "string", "uniqueItems": true, "x-go-name": "Key" }, "read_only": { "description": "Describe if the key has only read access or read/write", "type": "boolean", "x-go-name": "ReadOnly" }, "title": { "description": "Title of the key to add", "type": "string", "uniqueItems": true, "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateLabelOption": { "description": "CreateLabelOption options for creating a label", "type": "object", "required": [ "name", "color" ], "properties": { "color": { "type": "string", "x-go-name": "Color", "example": "#00aabb" }, "description": { "type": "string", "x-go-name": "Description" }, "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateMilestoneOption": { "description": "CreateMilestoneOption options for creating a milestone", "type": "object", "properties": { "description": { "type": "string", "x-go-name": "Description" }, "due_on": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateOrgOption": { "description": "CreateOrgOption options for creating an organization", "type": "object", "required": [ "username" ], "properties": { "description": { "type": "string", "x-go-name": "Description" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "location": { "type": "string", "x-go-name": "Location" }, "repo_admin_change_team_access": { "type": "boolean", "x-go-name": "RepoAdminChangeTeamAccess" }, "username": { "type": "string", "x-go-name": "UserName" }, "visibility": { "description": "possible values are `public` (default), `limited` or `private`", "type": "string", "enum": [ "public", "limited", "private" ], "x-go-name": "Visibility" }, "website": { "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreatePullRequestOption": { "description": "CreatePullRequestOption options when creating a pull request", "type": "object", "properties": { "assignee": { "type": "string", "x-go-name": "Assignee" }, "assignees": { "type": "array", "items": { "type": "string" }, "x-go-name": "Assignees" }, "base": { "type": "string", "x-go-name": "Base" }, "body": { "type": "string", "x-go-name": "Body" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "head": { "type": "string", "x-go-name": "Head" }, "labels": { "type": "array", "items": { "type": "integer", "format": "int64" }, "x-go-name": "Labels" }, "milestone": { "type": "integer", "format": "int64", "x-go-name": "Milestone" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateReleaseOption": { "description": "CreateReleaseOption options when creating a release", "type": "object", "required": [ "tag_name" ], "properties": { "body": { "type": "string", "x-go-name": "Note" }, "draft": { "type": "boolean", "x-go-name": "IsDraft" }, "name": { "type": "string", "x-go-name": "Title" }, "prerelease": { "type": "boolean", "x-go-name": "IsPrerelease" }, "tag_name": { "type": "string", "x-go-name": "TagName" }, "target_commitish": { "type": "string", "x-go-name": "Target" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateRepoOption": { "description": "CreateRepoOption options when creating repository", "type": "object", "required": [ "name" ], "properties": { "auto_init": { "description": "Whether the repository should be auto-intialized?", "type": "boolean", "x-go-name": "AutoInit" }, "description": { "description": "Description of the repository to create", "type": "string", "x-go-name": "Description" }, "gitignores": { "description": "Gitignores to use", "type": "string", "x-go-name": "Gitignores" }, "issue_labels": { "description": "Issue Label set to use", "type": "string", "x-go-name": "IssueLabels" }, "license": { "description": "License to use", "type": "string", "x-go-name": "License" }, "name": { "description": "Name of the repository to create", "type": "string", "uniqueItems": true, "x-go-name": "Name" }, "private": { "description": "Whether the repository is private", "type": "boolean", "x-go-name": "Private" }, "readme": { "description": "Readme of the repository to create", "type": "string", "x-go-name": "Readme" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateStatusOption": { "description": "CreateStatusOption holds the information needed to create a new Status for a Commit", "type": "object", "properties": { "context": { "type": "string", "x-go-name": "Context" }, "description": { "type": "string", "x-go-name": "Description" }, "state": { "$ref": "#/definitions/StatusState" }, "target_url": { "type": "string", "x-go-name": "TargetURL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateTeamOption": { "description": "CreateTeamOption options for creating a team", "type": "object", "required": [ "name" ], "properties": { "description": { "type": "string", "x-go-name": "Description" }, "name": { "type": "string", "x-go-name": "Name" }, "permission": { "type": "string", "enum": [ "read", "write", "admin" ], "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.ext_wiki" ] } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "CreateUserOption": { "description": "CreateUserOption create user options", "type": "object", "required": [ "username", "email", "password" ], "properties": { "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "login_name": { "type": "string", "x-go-name": "LoginName" }, "must_change_password": { "type": "boolean", "x-go-name": "MustChangePassword" }, "password": { "type": "string", "x-go-name": "Password" }, "send_notify": { "type": "boolean", "x-go-name": "SendNotify" }, "source_id": { "type": "integer", "format": "int64", "x-go-name": "SourceID" }, "username": { "type": "string", "x-go-name": "Username" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "DeleteEmailOption": { "description": "DeleteEmailOption options when deleting email addresses", "type": "object", "properties": { "emails": { "description": "email addresses to delete", "type": "array", "items": { "type": "string" }, "x-go-name": "Emails" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "DeleteFileOptions": { "description": "DeleteFileOptions options for deleting files (used for other File structs below)\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", "type": "object", "required": [ "sha" ], "properties": { "author": { "$ref": "#/definitions/Identity" }, "branch": { "description": "branch (optional) to base this file from. if not given, the default branch is used", "type": "string", "x-go-name": "BranchName" }, "committer": { "$ref": "#/definitions/Identity" }, "message": { "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", "type": "string", "x-go-name": "Message" }, "new_branch": { "description": "new_branch (optional) will make a new branch from `branch` before creating the file", "type": "string", "x-go-name": "NewBranchName" }, "sha": { "description": "sha is the SHA for the file that already exists", "type": "string", "x-go-name": "SHA" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "DeployKey": { "description": "DeployKey a deploy key", "type": "object", "properties": { "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "fingerprint": { "type": "string", "x-go-name": "Fingerprint" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "key": { "type": "string", "x-go-name": "Key" }, "key_id": { "type": "integer", "format": "int64", "x-go-name": "KeyID" }, "read_only": { "type": "boolean", "x-go-name": "ReadOnly" }, "repository": { "$ref": "#/definitions/Repository" }, "title": { "type": "string", "x-go-name": "Title" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditAttachmentOptions": { "description": "EditAttachmentOptions options for editing attachments", "type": "object", "properties": { "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditDeadlineOption": { "description": "EditDeadlineOption options for creating a deadline", "type": "object", "required": [ "due_date" ], "properties": { "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditGitHookOption": { "description": "EditGitHookOption options when modifying one Git hook", "type": "object", "properties": { "content": { "type": "string", "x-go-name": "Content" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditHookOption": { "description": "EditHookOption options when modify one hook", "type": "object", "properties": { "active": { "type": "boolean", "x-go-name": "Active" }, "branch_filter": { "type": "string", "x-go-name": "BranchFilter" }, "config": { "type": "object", "additionalProperties": { "type": "string" }, "x-go-name": "Config" }, "events": { "type": "array", "items": { "type": "string" }, "x-go-name": "Events" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditIssueCommentOption": { "description": "EditIssueCommentOption options for editing a comment", "type": "object", "required": [ "body" ], "properties": { "body": { "type": "string", "x-go-name": "Body" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditIssueOption": { "description": "EditIssueOption options for editing an issue", "type": "object", "properties": { "assignee": { "type": "string", "x-go-name": "Assignee" }, "assignees": { "type": "array", "items": { "type": "string" }, "x-go-name": "Assignees" }, "body": { "type": "string", "x-go-name": "Body" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "milestone": { "type": "integer", "format": "int64", "x-go-name": "Milestone" }, "state": { "type": "string", "x-go-name": "State" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditLabelOption": { "description": "EditLabelOption options for editing a label", "type": "object", "properties": { "color": { "type": "string", "x-go-name": "Color" }, "description": { "type": "string", "x-go-name": "Description" }, "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditMilestoneOption": { "description": "EditMilestoneOption options for editing a milestone", "type": "object", "properties": { "description": { "type": "string", "x-go-name": "Description" }, "due_on": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "state": { "type": "string", "x-go-name": "State" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditOrgOption": { "description": "EditOrgOption options for editing an organization", "type": "object", "properties": { "description": { "type": "string", "x-go-name": "Description" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "location": { "type": "string", "x-go-name": "Location" }, "repo_admin_change_team_access": { "type": "boolean", "x-go-name": "RepoAdminChangeTeamAccess" }, "visibility": { "description": "possible values are `public`, `limited` or `private`", "type": "string", "enum": [ "public", "limited", "private" ], "x-go-name": "Visibility" }, "website": { "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditPullRequestOption": { "description": "EditPullRequestOption options when modify pull request", "type": "object", "properties": { "assignee": { "type": "string", "x-go-name": "Assignee" }, "assignees": { "type": "array", "items": { "type": "string" }, "x-go-name": "Assignees" }, "body": { "type": "string", "x-go-name": "Body" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "labels": { "type": "array", "items": { "type": "integer", "format": "int64" }, "x-go-name": "Labels" }, "milestone": { "type": "integer", "format": "int64", "x-go-name": "Milestone" }, "state": { "type": "string", "x-go-name": "State" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditReleaseOption": { "description": "EditReleaseOption options when editing a release", "type": "object", "properties": { "body": { "type": "string", "x-go-name": "Note" }, "draft": { "type": "boolean", "x-go-name": "IsDraft" }, "name": { "type": "string", "x-go-name": "Title" }, "prerelease": { "type": "boolean", "x-go-name": "IsPrerelease" }, "tag_name": { "type": "string", "x-go-name": "TagName" }, "target_commitish": { "type": "string", "x-go-name": "Target" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditRepoOption": { "description": "EditRepoOption options when editing a repository's properties", "type": "object", "properties": { "allow_merge_commits": { "description": "either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits. `has_pull_requests` must be `true`.", "type": "boolean", "x-go-name": "AllowMerge" }, "allow_rebase": { "description": "either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging. `has_pull_requests` must be `true`.", "type": "boolean", "x-go-name": "AllowRebase" }, "allow_rebase_explicit": { "description": "either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits. `has_pull_requests` must be `true`.", "type": "boolean", "x-go-name": "AllowRebaseMerge" }, "allow_squash_merge": { "description": "either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging. `has_pull_requests` must be `true`.", "type": "boolean", "x-go-name": "AllowSquash" }, "archived": { "description": "set to `true` to archive this repository.", "type": "boolean", "x-go-name": "Archived" }, "default_branch": { "description": "sets the default branch for this repository.", "type": "string", "x-go-name": "DefaultBranch" }, "description": { "description": "a short description of the repository.", "type": "string", "x-go-name": "Description" }, "external_tracker": { "$ref": "#/definitions/ExternalTracker" }, "external_wiki": { "$ref": "#/definitions/ExternalWiki" }, "has_issues": { "description": "either `true` to enable issues for this repository or `false` to disable them.", "type": "boolean", "x-go-name": "HasIssues" }, "has_pull_requests": { "description": "either `true` to allow pull requests, or `false` to prevent pull request.", "type": "boolean", "x-go-name": "HasPullRequests" }, "has_wiki": { "description": "either `true` to enable the wiki for this repository or `false` to disable it.", "type": "boolean", "x-go-name": "HasWiki" }, "ignore_whitespace_conflicts": { "description": "either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. `has_pull_requests` must be `true`.", "type": "boolean", "x-go-name": "IgnoreWhitespaceConflicts" }, "internal_tracker": { "$ref": "#/definitions/InternalTracker" }, "name": { "description": "name of the repository", "type": "string", "uniqueItems": true, "x-go-name": "Name" }, "private": { "description": "either `true` to make the repository private or `false` to make it public.\nNote: you will get a 422 error if the organization restricts changing repository visibility to organization\nowners and a non-owner tries to change the value of private.", "type": "boolean", "x-go-name": "Private" }, "website": { "description": "a URL with more information about the repository.", "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditTeamOption": { "description": "EditTeamOption options for editing a team", "type": "object", "required": [ "name" ], "properties": { "description": { "type": "string", "x-go-name": "Description" }, "name": { "type": "string", "x-go-name": "Name" }, "permission": { "type": "string", "enum": [ "read", "write", "admin" ], "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.ext_wiki" ] } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "EditUserOption": { "description": "EditUserOption edit user options", "type": "object", "required": [ "email" ], "properties": { "active": { "type": "boolean", "x-go-name": "Active" }, "admin": { "type": "boolean", "x-go-name": "Admin" }, "allow_create_organization": { "type": "boolean", "x-go-name": "AllowCreateOrganization" }, "allow_git_hook": { "type": "boolean", "x-go-name": "AllowGitHook" }, "allow_import_local": { "type": "boolean", "x-go-name": "AllowImportLocal" }, "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "location": { "type": "string", "x-go-name": "Location" }, "login_name": { "type": "string", "x-go-name": "LoginName" }, "max_repo_creation": { "type": "integer", "format": "int64", "x-go-name": "MaxRepoCreation" }, "must_change_password": { "type": "boolean", "x-go-name": "MustChangePassword" }, "password": { "type": "string", "x-go-name": "Password" }, "prohibit_login": { "type": "boolean", "x-go-name": "ProhibitLogin" }, "source_id": { "type": "integer", "format": "int64", "x-go-name": "SourceID" }, "website": { "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Email": { "description": "Email an email address belonging to a user", "type": "object", "properties": { "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "primary": { "type": "boolean", "x-go-name": "Primary" }, "verified": { "type": "boolean", "x-go-name": "Verified" } }, "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_style": { "description": "External Issue Tracker Number Format, either `numeric` or `alphanumeric`", "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" }, "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" }, "FileCommitResponse": { "type": "object", "title": "FileCommitResponse contains information generated from a Git commit for a repo's file.", "properties": { "author": { "$ref": "#/definitions/CommitUser" }, "committer": { "$ref": "#/definitions/CommitUser" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "message": { "type": "string", "x-go-name": "Message" }, "parents": { "type": "array", "items": { "$ref": "#/definitions/CommitMeta" }, "x-go-name": "Parents" }, "sha": { "type": "string", "x-go-name": "SHA" }, "tree": { "$ref": "#/definitions/CommitMeta" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "FileDeleteResponse": { "description": "FileDeleteResponse contains information about a repo's file that was deleted", "type": "object", "properties": { "commit": { "$ref": "#/definitions/FileCommitResponse" }, "content": { "type": "object", "x-go-name": "Content" }, "verification": { "$ref": "#/definitions/PayloadCommitVerification" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "FileLinksResponse": { "description": "FileLinksResponse contains the links for a repo's file", "type": "object", "properties": { "git": { "type": "string", "x-go-name": "GitURL" }, "html": { "type": "string", "x-go-name": "HTMLURL" }, "self": { "type": "string", "x-go-name": "Self" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "FileResponse": { "description": "FileResponse contains information about a repo's file", "type": "object", "properties": { "commit": { "$ref": "#/definitions/FileCommitResponse" }, "content": { "$ref": "#/definitions/ContentsResponse" }, "verification": { "$ref": "#/definitions/PayloadCommitVerification" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GPGKey": { "description": "GPGKey a user GPG key to sign commit and tag in repository", "type": "object", "properties": { "can_certify": { "type": "boolean", "x-go-name": "CanCertify" }, "can_encrypt_comms": { "type": "boolean", "x-go-name": "CanEncryptComms" }, "can_encrypt_storage": { "type": "boolean", "x-go-name": "CanEncryptStorage" }, "can_sign": { "type": "boolean", "x-go-name": "CanSign" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "emails": { "type": "array", "items": { "$ref": "#/definitions/GPGKeyEmail" }, "x-go-name": "Emails" }, "expires_at": { "type": "string", "format": "date-time", "x-go-name": "Expires" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "key_id": { "type": "string", "x-go-name": "KeyID" }, "primary_key_id": { "type": "string", "x-go-name": "PrimaryKeyID" }, "public_key": { "type": "string", "x-go-name": "PublicKey" }, "subkeys": { "type": "array", "items": { "$ref": "#/definitions/GPGKey" }, "x-go-name": "SubsKey" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GPGKeyEmail": { "description": "GPGKeyEmail an email attached to a GPGKey", "type": "object", "properties": { "email": { "type": "string", "x-go-name": "Email" }, "verified": { "type": "boolean", "x-go-name": "Verified" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GitBlobResponse": { "description": "GitBlobResponse represents a git blob", "type": "object", "properties": { "content": { "type": "string", "x-go-name": "Content" }, "encoding": { "type": "string", "x-go-name": "Encoding" }, "sha": { "type": "string", "x-go-name": "SHA" }, "size": { "type": "integer", "format": "int64", "x-go-name": "Size" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GitEntry": { "description": "GitEntry represents a git tree", "type": "object", "properties": { "mode": { "type": "string", "x-go-name": "Mode" }, "path": { "type": "string", "x-go-name": "Path" }, "sha": { "type": "string", "x-go-name": "SHA" }, "size": { "type": "integer", "format": "int64", "x-go-name": "Size" }, "type": { "type": "string", "x-go-name": "Type" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GitHook": { "description": "GitHook represents a Git repository hook", "type": "object", "properties": { "content": { "type": "string", "x-go-name": "Content" }, "is_active": { "type": "boolean", "x-go-name": "IsActive" }, "name": { "type": "string", "x-go-name": "Name" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GitObject": { "type": "object", "title": "GitObject represents a Git object.", "properties": { "sha": { "type": "string", "x-go-name": "SHA" }, "type": { "type": "string", "x-go-name": "Type" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "GitTreeResponse": { "description": "GitTreeResponse returns a git tree", "type": "object", "properties": { "page": { "type": "integer", "format": "int64", "x-go-name": "Page" }, "sha": { "type": "string", "x-go-name": "SHA" }, "total_count": { "type": "integer", "format": "int64", "x-go-name": "TotalCount" }, "tree": { "type": "array", "items": { "$ref": "#/definitions/GitEntry" }, "x-go-name": "Entries" }, "truncated": { "type": "boolean", "x-go-name": "Truncated" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Hook": { "description": "Hook a hook is a web hook when one repository changed", "type": "object", "properties": { "active": { "type": "boolean", "x-go-name": "Active" }, "config": { "type": "object", "additionalProperties": { "type": "string" }, "x-go-name": "Config" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "events": { "type": "array", "items": { "type": "string" }, "x-go-name": "Events" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "type": { "type": "string", "x-go-name": "Type" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Identity": { "description": "Identity for a person's identity like an author or committer", "type": "object", "properties": { "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "name": { "type": "string", "x-go-name": "Name" } }, "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" }, "Issue": { "description": "Issue represents an issue in a repository", "type": "object", "properties": { "assignee": { "$ref": "#/definitions/User" }, "assignees": { "type": "array", "items": { "$ref": "#/definitions/User" }, "x-go-name": "Assignees" }, "body": { "type": "string", "x-go-name": "Body" }, "closed_at": { "type": "string", "format": "date-time", "x-go-name": "Closed" }, "comments": { "type": "integer", "format": "int64", "x-go-name": "Comments" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "labels": { "type": "array", "items": { "$ref": "#/definitions/Label" }, "x-go-name": "Labels" }, "milestone": { "$ref": "#/definitions/Milestone" }, "number": { "type": "integer", "format": "int64", "x-go-name": "Index" }, "original_author": { "type": "string", "x-go-name": "OriginalAuthor" }, "original_author_id": { "type": "integer", "format": "int64", "x-go-name": "OriginalAuthorID" }, "pull_request": { "$ref": "#/definitions/PullRequestMeta" }, "state": { "$ref": "#/definitions/StateType" }, "title": { "type": "string", "x-go-name": "Title" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "url": { "type": "string", "x-go-name": "URL" }, "user": { "$ref": "#/definitions/User" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "IssueDeadline": { "description": "IssueDeadline represents an issue deadline", "type": "object", "properties": { "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "IssueLabelsOption": { "description": "IssueLabelsOption a collection of labels", "type": "object", "properties": { "labels": { "description": "list of label IDs", "type": "array", "items": { "type": "integer", "format": "int64" }, "x-go-name": "Labels" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Label": { "description": "Label a label to an issue or a pr", "type": "object", "properties": { "color": { "type": "string", "x-go-name": "Color", "example": "00aabb" }, "description": { "type": "string", "x-go-name": "Description" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "type": "string", "x-go-name": "Name" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "MarkdownOption": { "description": "MarkdownOption markdown options", "type": "object", "properties": { "Context": { "description": "Context to render\n\nin: body", "type": "string" }, "Mode": { "description": "Mode to render\n\nin: body", "type": "string" }, "Text": { "description": "Text markdown to render\n\nin: body", "type": "string" }, "Wiki": { "description": "Is it a wiki page ?\n\nin: body", "type": "boolean" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "MergePullRequestOption": { "description": "MergePullRequestForm form for merging Pull Request", "type": "object", "required": [ "Do" ], "properties": { "Do": { "type": "string", "enum": [ "merge", "rebase", "rebase-merge", "squash" ] }, "MergeMessageField": { "type": "string" }, "MergeTitleField": { "type": "string" } }, "x-go-name": "MergePullRequestForm", "x-go-package": "code.gitea.io/gitea/modules/auth" }, "MigrateRepoForm": { "description": "MigrateRepoForm form for migrating repository", "type": "object", "required": [ "clone_addr", "uid", "repo_name" ], "properties": { "auth_password": { "type": "string", "x-go-name": "AuthPassword" }, "auth_username": { "type": "string", "x-go-name": "AuthUsername" }, "clone_addr": { "type": "string", "x-go-name": "CloneAddr" }, "description": { "type": "string", "x-go-name": "Description" }, "issues": { "type": "boolean", "x-go-name": "Issues" }, "labels": { "type": "boolean", "x-go-name": "Labels" }, "milestones": { "type": "boolean", "x-go-name": "Milestones" }, "mirror": { "type": "boolean", "x-go-name": "Mirror" }, "private": { "type": "boolean", "x-go-name": "Private" }, "pull_requests": { "type": "boolean", "x-go-name": "PullRequests" }, "releases": { "type": "boolean", "x-go-name": "Releases" }, "repo_name": { "type": "string", "x-go-name": "RepoName" }, "uid": { "type": "integer", "format": "int64", "x-go-name": "UID" }, "wiki": { "type": "boolean", "x-go-name": "Wiki" } }, "x-go-package": "code.gitea.io/gitea/modules/auth" }, "Milestone": { "description": "Milestone milestone is a collection of issues on one repository", "type": "object", "properties": { "closed_at": { "type": "string", "format": "date-time", "x-go-name": "Closed" }, "closed_issues": { "type": "integer", "format": "int64", "x-go-name": "ClosedIssues" }, "description": { "type": "string", "x-go-name": "Description" }, "due_on": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "open_issues": { "type": "integer", "format": "int64", "x-go-name": "OpenIssues" }, "state": { "$ref": "#/definitions/StateType" }, "title": { "type": "string", "x-go-name": "Title" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Organization": { "description": "Organization represents an organization", "type": "object", "properties": { "avatar_url": { "type": "string", "x-go-name": "AvatarURL" }, "description": { "type": "string", "x-go-name": "Description" }, "full_name": { "type": "string", "x-go-name": "FullName" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "location": { "type": "string", "x-go-name": "Location" }, "repo_admin_change_team_access": { "type": "boolean", "x-go-name": "RepoAdminChangeTeamAccess" }, "username": { "type": "string", "x-go-name": "UserName" }, "visibility": { "type": "string", "x-go-name": "Visibility" }, "website": { "type": "string", "x-go-name": "Website" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PRBranchInfo": { "description": "PRBranchInfo information about a branch", "type": "object", "properties": { "label": { "type": "string", "x-go-name": "Name" }, "ref": { "type": "string", "x-go-name": "Ref" }, "repo": { "$ref": "#/definitions/Repository" }, "repo_id": { "type": "integer", "format": "int64", "x-go-name": "RepoID" }, "sha": { "type": "string", "x-go-name": "Sha" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PayloadCommit": { "description": "PayloadCommit represents a commit", "type": "object", "properties": { "added": { "type": "array", "items": { "type": "string" }, "x-go-name": "Added" }, "author": { "$ref": "#/definitions/PayloadUser" }, "committer": { "$ref": "#/definitions/PayloadUser" }, "id": { "description": "sha1 hash of the commit", "type": "string", "x-go-name": "ID" }, "message": { "type": "string", "x-go-name": "Message" }, "modified": { "type": "array", "items": { "type": "string" }, "x-go-name": "Modified" }, "removed": { "type": "array", "items": { "type": "string" }, "x-go-name": "Removed" }, "timestamp": { "type": "string", "format": "date-time", "x-go-name": "Timestamp" }, "url": { "type": "string", "x-go-name": "URL" }, "verification": { "$ref": "#/definitions/PayloadCommitVerification" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PayloadCommitVerification": { "description": "PayloadCommitVerification represents the GPG verification of a commit", "type": "object", "properties": { "payload": { "type": "string", "x-go-name": "Payload" }, "reason": { "type": "string", "x-go-name": "Reason" }, "signature": { "type": "string", "x-go-name": "Signature" }, "verified": { "type": "boolean", "x-go-name": "Verified" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PayloadUser": { "description": "PayloadUser represents the author or committer of a commit", "type": "object", "properties": { "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "name": { "description": "Full name of the commit author", "type": "string", "x-go-name": "Name" }, "username": { "type": "string", "x-go-name": "UserName" } }, "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" }, "PublicKey": { "description": "PublicKey publickey is a user key to push code to repository", "type": "object", "properties": { "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "fingerprint": { "type": "string", "x-go-name": "Fingerprint" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "key": { "type": "string", "x-go-name": "Key" }, "key_type": { "type": "string", "x-go-name": "KeyType" }, "read_only": { "type": "boolean", "x-go-name": "ReadOnly" }, "title": { "type": "string", "x-go-name": "Title" }, "url": { "type": "string", "x-go-name": "URL" }, "user": { "$ref": "#/definitions/User" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PullRequest": { "description": "PullRequest represents a pull request", "type": "object", "properties": { "assignee": { "$ref": "#/definitions/User" }, "assignees": { "type": "array", "items": { "$ref": "#/definitions/User" }, "x-go-name": "Assignees" }, "base": { "$ref": "#/definitions/PRBranchInfo" }, "body": { "type": "string", "x-go-name": "Body" }, "closed_at": { "type": "string", "format": "date-time", "x-go-name": "Closed" }, "comments": { "type": "integer", "format": "int64", "x-go-name": "Comments" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "diff_url": { "type": "string", "x-go-name": "DiffURL" }, "due_date": { "type": "string", "format": "date-time", "x-go-name": "Deadline" }, "head": { "$ref": "#/definitions/PRBranchInfo" }, "html_url": { "type": "string", "x-go-name": "HTMLURL" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "labels": { "type": "array", "items": { "$ref": "#/definitions/Label" }, "x-go-name": "Labels" }, "merge_base": { "type": "string", "x-go-name": "MergeBase" }, "merge_commit_sha": { "type": "string", "x-go-name": "MergedCommitID" }, "mergeable": { "type": "boolean", "x-go-name": "Mergeable" }, "merged": { "type": "boolean", "x-go-name": "HasMerged" }, "merged_at": { "type": "string", "format": "date-time", "x-go-name": "Merged" }, "merged_by": { "$ref": "#/definitions/User" }, "milestone": { "$ref": "#/definitions/Milestone" }, "number": { "type": "integer", "format": "int64", "x-go-name": "Index" }, "patch_url": { "type": "string", "x-go-name": "PatchURL" }, "state": { "$ref": "#/definitions/StateType" }, "title": { "type": "string", "x-go-name": "Title" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "url": { "type": "string", "x-go-name": "URL" }, "user": { "$ref": "#/definitions/User" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "PullRequestMeta": { "description": "PullRequestMeta PR info if an issue is a PR", "type": "object", "properties": { "merged": { "type": "boolean", "x-go-name": "HasMerged" }, "merged_at": { "type": "string", "format": "date-time", "x-go-name": "Merged" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Reference": { "type": "object", "title": "Reference represents a Git reference.", "properties": { "object": { "$ref": "#/definitions/GitObject" }, "ref": { "type": "string", "x-go-name": "Ref" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Release": { "description": "Release represents a repository release", "type": "object", "properties": { "assets": { "type": "array", "items": { "$ref": "#/definitions/Attachment" }, "x-go-name": "Attachments" }, "author": { "$ref": "#/definitions/User" }, "body": { "type": "string", "x-go-name": "Note" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "CreatedAt" }, "draft": { "type": "boolean", "x-go-name": "IsDraft" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "type": "string", "x-go-name": "Title" }, "prerelease": { "type": "boolean", "x-go-name": "IsPrerelease" }, "published_at": { "type": "string", "format": "date-time", "x-go-name": "PublishedAt" }, "tag_name": { "type": "string", "x-go-name": "TagName" }, "tarball_url": { "type": "string", "x-go-name": "TarURL" }, "target_commitish": { "type": "string", "x-go-name": "Target" }, "url": { "type": "string", "x-go-name": "URL" }, "zipball_url": { "type": "string", "x-go-name": "ZipURL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "RepoCommit": { "type": "object", "title": "RepoCommit contains information of a commit in the context of a repository.", "properties": { "author": { "$ref": "#/definitions/CommitUser" }, "committer": { "$ref": "#/definitions/CommitUser" }, "message": { "type": "string", "x-go-name": "Message" }, "tree": { "$ref": "#/definitions/CommitMeta" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "RepoTopicOptions": { "description": "RepoTopicOptions a collection of repo topic names", "type": "object", "properties": { "topics": { "description": "list of topic names", "type": "array", "items": { "type": "string" }, "x-go-name": "Topics" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Repository": { "description": "Repository represents a repository", "type": "object", "properties": { "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_squash_merge": { "type": "boolean", "x-go-name": "AllowSquash" }, "archived": { "type": "boolean", "x-go-name": "Archived" }, "avatar_url": { "type": "string", "x-go-name": "AvatarURL" }, "clone_url": { "type": "string", "x-go-name": "CloneURL" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "default_branch": { "type": "string", "x-go-name": "DefaultBranch" }, "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_issues": { "type": "boolean", "x-go-name": "HasIssues" }, "has_pull_requests": { "type": "boolean", "x-go-name": "HasPullRequests" }, "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_tracker": { "$ref": "#/definitions/InternalTracker" }, "mirror": { "type": "boolean", "x-go-name": "Mirror" }, "name": { "type": "string", "x-go-name": "Name" }, "open_issues_count": { "type": "integer", "format": "int64", "x-go-name": "OpenIssues" }, "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" }, "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" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "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" }, "SearchResults": { "description": "SearchResults results of a successful search", "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/definitions/Repository" }, "x-go-name": "Data" }, "ok": { "type": "boolean", "x-go-name": "OK" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "ServerVersion": { "description": "ServerVersion wraps the version of the server", "type": "object", "properties": { "version": { "type": "string", "x-go-name": "Version" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "StateType": { "description": "StateType issue state type", "type": "string", "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Status": { "description": "Status holds a single Status of a single Commit", "type": "object", "properties": { "context": { "type": "string", "x-go-name": "Context" }, "created_at": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "creator": { "$ref": "#/definitions/User" }, "description": { "type": "string", "x-go-name": "Description" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "status": { "$ref": "#/definitions/StatusState" }, "target_url": { "type": "string", "x-go-name": "TargetURL" }, "updated_at": { "type": "string", "format": "date-time", "x-go-name": "Updated" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "StatusState": { "description": "StatusState holds the state of a Status\nIt can be \"pending\", \"success\", \"error\", \"failure\", and \"warning\"", "type": "string", "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Tag": { "description": "Tag represents a repository tag", "type": "object", "properties": { "commit": { "$ref": "#/definitions/CommitMeta" }, "id": { "type": "string", "x-go-name": "ID" }, "name": { "type": "string", "x-go-name": "Name" }, "tarball_url": { "type": "string", "x-go-name": "TarballURL" }, "zipball_url": { "type": "string", "x-go-name": "ZipballURL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "Team": { "description": "Team represents a team in an organization", "type": "object", "properties": { "description": { "type": "string", "x-go-name": "Description" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "name": { "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.ext_wiki" ] } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "TimeStamp": { "description": "TimeStamp defines a timestamp", "type": "integer", "format": "int64", "x-go-package": "code.gitea.io/gitea/modules/timeutil" }, "TopicName": { "description": "TopicName a list of repo topic names", "type": "object", "properties": { "topics": { "type": "array", "items": { "type": "string" }, "x-go-name": "TopicNames" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "TopicResponse": { "description": "TopicResponse for returning topics", "type": "object", "properties": { "created": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "repo_count": { "type": "integer", "format": "int64", "x-go-name": "RepoCount" }, "topic_name": { "type": "string", "x-go-name": "Name" }, "updated": { "type": "string", "format": "date-time", "x-go-name": "Updated" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "TrackedTime": { "description": "TrackedTime worked time for an issue / pr", "type": "object", "properties": { "created": { "type": "string", "format": "date-time", "x-go-name": "Created" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "issue_id": { "type": "integer", "format": "int64", "x-go-name": "IssueID" }, "time": { "description": "Time in seconds", "type": "integer", "format": "int64", "x-go-name": "Time" }, "user_id": { "type": "integer", "format": "int64", "x-go-name": "UserID" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "UpdateFileOptions": { "description": "UpdateFileOptions options for updating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", "type": "object", "required": [ "sha", "content" ], "properties": { "author": { "$ref": "#/definitions/Identity" }, "branch": { "description": "branch (optional) to base this file from. if not given, the default branch is used", "type": "string", "x-go-name": "BranchName" }, "committer": { "$ref": "#/definitions/Identity" }, "content": { "description": "content must be base64 encoded", "type": "string", "x-go-name": "Content" }, "from_path": { "description": "from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL", "type": "string", "x-go-name": "FromPath" }, "message": { "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", "type": "string", "x-go-name": "Message" }, "new_branch": { "description": "new_branch (optional) will make a new branch from `branch` before creating the file", "type": "string", "x-go-name": "NewBranchName" }, "sha": { "description": "sha is the SHA for the file that already exists", "type": "string", "x-go-name": "SHA" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "User": { "description": "User represents a user", "type": "object", "properties": { "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" }, "email": { "type": "string", "format": "email", "x-go-name": "Email" }, "full_name": { "description": "the user's full name", "type": "string", "x-go-name": "FullName" }, "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" }, "login": { "description": "the user's username", "type": "string", "x-go-name": "UserName" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" }, "UserHeatmapData": { "description": "UserHeatmapData represents the data needed to create a heatmap", "type": "object", "properties": { "contributions": { "type": "integer", "format": "int64", "x-go-name": "Contributions" }, "timestamp": { "$ref": "#/definitions/TimeStamp" } }, "x-go-package": "code.gitea.io/gitea/models" }, "WatchInfo": { "description": "WatchInfo represents an API watch status of one repository", "type": "object", "properties": { "created_at": { "type": "string", "format": "date-time", "x-go-name": "CreatedAt" }, "ignored": { "type": "boolean", "x-go-name": "Ignored" }, "reason": { "type": "object", "x-go-name": "Reason" }, "repository_url": { "type": "string", "x-go-name": "RepositoryURL" }, "subscribed": { "type": "boolean", "x-go-name": "Subscribed" }, "url": { "type": "string", "x-go-name": "URL" } }, "x-go-package": "code.gitea.io/gitea/modules/structs" } }, "responses": { "AccessToken": { "description": "AccessToken represents an API access token.", "headers": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string" }, "sha1": { "type": "string" }, "token_last_eight": { "type": "string" } } }, "AccessTokenList": { "description": "AccessTokenList represents a list of API access token.", "schema": { "type": "array", "items": { "$ref": "#/definitions/AccessToken" } } }, "AnnotatedTag": { "description": "AnnotatedTag", "schema": { "$ref": "#/definitions/AnnotatedTag" } }, "Attachment": { "description": "Attachment", "schema": { "$ref": "#/definitions/Attachment" } }, "AttachmentList": { "description": "AttachmentList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Attachment" } } }, "Branch": { "description": "Branch", "schema": { "$ref": "#/definitions/Branch" } }, "BranchList": { "description": "BranchList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Branch" } } }, "Comment": { "description": "Comment", "schema": { "$ref": "#/definitions/Comment" } }, "CommentList": { "description": "CommentList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Comment" } } }, "Commit": { "description": "Commit", "schema": { "$ref": "#/definitions/Commit" } }, "CommitList": { "description": "CommitList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Commit" } }, "headers": { "X-HasMore": { "type": "boolean", "description": "True if there is another page" }, "X-Page": { "type": "integer", "format": "int64", "description": "The current page" }, "X-PageCount": { "type": "integer", "format": "int64", "description": "Total number of pages" }, "X-PerPage": { "type": "integer", "format": "int64", "description": "Commits per page" }, "X-Total": { "type": "integer", "format": "int64", "description": "Total commit count" } } }, "ContentsListResponse": { "description": "ContentsListResponse", "schema": { "type": "array", "items": { "$ref": "#/definitions/ContentsResponse" } } }, "ContentsResponse": { "description": "ContentsResponse", "schema": { "$ref": "#/definitions/ContentsResponse" } }, "DeployKey": { "description": "DeployKey", "schema": { "$ref": "#/definitions/DeployKey" } }, "DeployKeyList": { "description": "DeployKeyList", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeployKey" } } }, "EmailList": { "description": "EmailList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Email" } } }, "EmptyRepository": { "description": "EmptyRepository", "schema": { "$ref": "#/definitions/APIError" } }, "FileDeleteResponse": { "description": "FileDeleteResponse", "schema": { "$ref": "#/definitions/FileDeleteResponse" } }, "FileResponse": { "description": "FileResponse", "schema": { "$ref": "#/definitions/FileResponse" } }, "GPGKey": { "description": "GPGKey", "schema": { "$ref": "#/definitions/GPGKey" } }, "GPGKeyList": { "description": "GPGKeyList", "schema": { "type": "array", "items": { "$ref": "#/definitions/GPGKey" } } }, "GitBlobResponse": { "description": "GitBlobResponse", "schema": { "$ref": "#/definitions/GitBlobResponse" } }, "GitHook": { "description": "GitHook", "schema": { "$ref": "#/definitions/GitHook" } }, "GitHookList": { "description": "GitHookList", "schema": { "type": "array", "items": { "$ref": "#/definitions/GitHook" } } }, "GitTreeResponse": { "description": "GitTreeResponse", "schema": { "$ref": "#/definitions/GitTreeResponse" } }, "Hook": { "description": "Hook", "schema": { "$ref": "#/definitions/Hook" } }, "HookList": { "description": "HookList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Hook" } } }, "Issue": { "description": "Issue", "schema": { "$ref": "#/definitions/Issue" } }, "IssueDeadline": { "description": "IssueDeadline", "schema": { "$ref": "#/definitions/IssueDeadline" } }, "IssueList": { "description": "IssueList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Issue" } } }, "Label": { "description": "Label", "schema": { "$ref": "#/definitions/Label" } }, "LabelList": { "description": "LabelList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Label" } } }, "MarkdownRender": { "description": "MarkdownRender is a rendered markdown document", "schema": { "type": "string" } }, "Milestone": { "description": "Milestone", "schema": { "$ref": "#/definitions/Milestone" } }, "MilestoneList": { "description": "MilestoneList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Milestone" } } }, "Organization": { "description": "Organization", "schema": { "$ref": "#/definitions/Organization" } }, "OrganizationList": { "description": "OrganizationList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Organization" } } }, "PublicKey": { "description": "PublicKey", "schema": { "$ref": "#/definitions/PublicKey" } }, "PublicKeyList": { "description": "PublicKeyList", "schema": { "type": "array", "items": { "$ref": "#/definitions/PublicKey" } } }, "PullRequest": { "description": "PullRequest", "schema": { "$ref": "#/definitions/PullRequest" } }, "PullRequestList": { "description": "PullRequestList", "schema": { "type": "array", "items": { "$ref": "#/definitions/PullRequest" } } }, "Reference": { "description": "Reference", "schema": { "$ref": "#/definitions/Reference" } }, "ReferenceList": { "description": "ReferenceList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Reference" } } }, "Release": { "description": "Release", "schema": { "$ref": "#/definitions/Release" } }, "ReleaseList": { "description": "ReleaseList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Release" } } }, "Repository": { "description": "Repository", "schema": { "$ref": "#/definitions/Repository" } }, "RepositoryList": { "description": "RepositoryList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Repository" } } }, "SearchResults": { "description": "SearchResults", "schema": { "$ref": "#/definitions/SearchResults" } }, "ServerVersion": { "description": "ServerVersion", "schema": { "$ref": "#/definitions/ServerVersion" } }, "Status": { "description": "Status", "schema": { "$ref": "#/definitions/Status" } }, "StatusList": { "description": "StatusList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Status" } } }, "Tag": { "description": "Tag", "schema": { "$ref": "#/definitions/Tag" } }, "TagList": { "description": "TagList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Tag" } } }, "Team": { "description": "Team", "schema": { "$ref": "#/definitions/Team" } }, "TeamList": { "description": "TeamList", "schema": { "type": "array", "items": { "$ref": "#/definitions/Team" } } }, "TopicListResponse": { "description": "TopicListResponse", "schema": { "type": "array", "items": { "$ref": "#/definitions/TopicResponse" } } }, "TopicNames": { "description": "TopicNames", "schema": { "$ref": "#/definitions/TopicName" } }, "TrackedTime": { "description": "TrackedTime", "schema": { "$ref": "#/definitions/TrackedTime" } }, "TrackedTimeList": { "description": "TrackedTimeList", "schema": { "type": "array", "items": { "$ref": "#/definitions/TrackedTime" } } }, "User": { "description": "User", "schema": { "$ref": "#/definitions/User" } }, "UserHeatmapData": { "description": "UserHeatmapData", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserHeatmapData" } } }, "UserList": { "description": "UserList", "schema": { "type": "array", "items": { "$ref": "#/definitions/User" } } }, "WatchInfo": { "description": "WatchInfo", "schema": { "$ref": "#/definitions/WatchInfo" } }, "empty": { "description": "APIEmpty is an empty response" }, "error": { "description": "APIError is error format response", "headers": { "message": { "type": "string" }, "url": { "type": "string" } } }, "forbidden": { "description": "APIForbiddenError is a forbidden error response", "headers": { "message": { "type": "string" }, "url": { "type": "string" } } }, "notFound": { "description": "APINotFound is a not found empty response" }, "parameterBodies": { "description": "parameterBodies", "schema": { "$ref": "#/definitions/RepoTopicOptions" } }, "redirect": { "description": "APIRedirect is a redirect response" }, "validationError": { "description": "APIValidationError is error format response related to input validation", "headers": { "message": { "type": "string" }, "url": { "type": "string" } } } }, "securityDefinitions": { "AccessToken": { "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" }, "Token": { "type": "apiKey", "name": "token", "in": "query" } }, "security": [ { "BasicAuth": [] }, { "Token": [] }, { "AccessToken": [] }, { "AuthorizationHeaderToken": [] }, { "SudoParam": [] }, { "SudoHeader": [] } ] }