swagger: '2.0' info: description: This documentation describes the Gitea API. title: Gitea admin user API license: name: MIT url: http://opensource.org/licenses/MIT version: 1.27.0+dev-89-gf52b6f3315 basePath: /api/v1 schemes: - https - http consumes: - application/json produces: - application/json security: - BasicAuth: [] - Token: [] - AccessToken: [] - AuthorizationHeaderToken: [] - SudoParam: [] - SudoHeader: [] - TOTPHeader: [] tags: - name: user paths: /user: get: produces: - application/json tags: - user summary: Get the authenticated user operationId: userGetCurrent responses: '200': $ref: '#/responses/User' /user/actions/jobs: get: produces: - application/json tags: - user summary: Get workflow jobs operationId: getUserWorkflowJobs parameters: - type: string description: workflow status (pending, queued, in_progress, failure, success, skipped) name: status in: query - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/WorkflowJobsList' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/actions/runners: get: produces: - application/json tags: - user summary: Get user-level runners operationId: getUserRunners parameters: - type: boolean description: filter by disabled status (true or false) name: disabled in: query responses: '200': $ref: '#/responses/RunnerList' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/actions/runners/registration-token: post: produces: - application/json tags: - user summary: Get a user's actions runner registration token operationId: userCreateRunnerRegistrationToken responses: '200': $ref: '#/responses/RegistrationToken' /user/actions/runners/{runner_id}: get: produces: - application/json tags: - user summary: Get a user-level runner operationId: getUserRunner parameters: - type: string description: id of the runner name: runner_id in: path required: true responses: '200': $ref: '#/responses/Runner' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' delete: produces: - application/json tags: - user summary: Delete a user-level runner operationId: deleteUserRunner parameters: - type: string description: id of the runner name: runner_id in: path required: true responses: '204': description: runner has been deleted '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' patch: consumes: - application/json produces: - application/json tags: - user summary: Update a user-level runner operationId: updateUserRunner parameters: - type: string description: id of the runner name: runner_id in: path required: true - name: body in: body schema: $ref: '#/definitions/EditActionRunnerOption' responses: '200': $ref: '#/responses/Runner' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' '422': $ref: '#/responses/validationError' /user/actions/runs: get: produces: - application/json tags: - user summary: Get workflow runs operationId: getUserWorkflowRuns parameters: - type: string description: workflow event name name: event in: query - type: string description: workflow branch name: branch in: query - type: string description: workflow status (pending, queued, in_progress, failure, success, skipped) name: status in: query - type: string description: triggered by user name: actor in: query - type: string description: triggering sha of the workflow run name: head_sha in: query - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/WorkflowRunsList' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/actions/secrets/{secretname}: put: consumes: - application/json produces: - application/json tags: - user summary: Create or Update a secret value in a user scope operationId: updateUserSecret parameters: - type: string description: name of the secret name: secretname in: path required: true - name: body in: body schema: $ref: '#/definitions/CreateOrUpdateSecretOption' responses: '201': description: response when creating a secret '204': description: response when updating a secret '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' delete: consumes: - application/json produces: - application/json tags: - user summary: Delete a secret in a user scope operationId: deleteUserSecret parameters: - type: string description: name of the secret name: secretname in: path required: true responses: '204': description: delete one secret of the user '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/actions/variables: get: produces: - application/json tags: - user summary: Get the user-level list of variables which is created by current doer operationId: getUserVariablesList parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/VariableList' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/actions/variables/{variablename}: get: produces: - application/json tags: - user summary: Get a user-level variable which is created by current doer operationId: getUserVariable parameters: - type: string description: name of the variable name: variablename in: path required: true responses: '200': $ref: '#/responses/ActionVariable' '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' put: consumes: - application/json produces: - application/json tags: - user summary: Update a user-level variable which is created by current doer operationId: updateUserVariable parameters: - type: string description: name of the variable name: variablename in: path required: true - name: body in: body schema: $ref: '#/definitions/UpdateVariableOption' responses: '201': description: response when updating a variable '204': description: response when updating a variable '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' post: consumes: - application/json produces: - application/json tags: - user summary: Create a user-level variable operationId: createUserVariable parameters: - type: string description: name of the variable name: variablename in: path required: true - name: body in: body schema: $ref: '#/definitions/CreateVariableOption' responses: '201': description: successfully created the user-level variable '400': $ref: '#/responses/error' '409': description: variable name already exists. delete: produces: - application/json tags: - user summary: Delete a user-level variable which is created by current doer operationId: deleteUserVariable parameters: - type: string description: name of the variable name: variablename in: path required: true responses: '201': description: response when deleting a variable '204': description: response when deleting a variable '400': $ref: '#/responses/error' '404': $ref: '#/responses/notFound' /user/applications/oauth2: get: produces: - application/json tags: - user summary: List the authenticated user's oauth2 applications operationId: userGetOauth2Application parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/OAuth2ApplicationList' post: produces: - application/json tags: - user summary: creates a new OAuth2 application operationId: userCreateOAuth2Application parameters: - name: body in: body required: true schema: $ref: '#/definitions/CreateOAuth2ApplicationOptions' responses: '201': $ref: '#/responses/OAuth2Application' '400': $ref: '#/responses/error' /user/applications/oauth2/{id}: get: produces: - application/json tags: - user summary: get an OAuth2 Application operationId: userGetOAuth2Application parameters: - type: integer format: int64 description: Application ID to be found name: id in: path required: true responses: '200': $ref: '#/responses/OAuth2Application' '404': $ref: '#/responses/notFound' delete: produces: - application/json tags: - user summary: delete an OAuth2 Application operationId: userDeleteOAuth2Application parameters: - type: integer format: int64 description: token to be deleted name: id in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' patch: produces: - application/json tags: - user summary: update an OAuth2 Application, this includes regenerating the client secret operationId: userUpdateOAuth2Application parameters: - type: integer format: int64 description: application to be updated name: id in: path required: true - name: body in: body required: true schema: $ref: '#/definitions/CreateOAuth2ApplicationOptions' responses: '200': $ref: '#/responses/OAuth2Application' '404': $ref: '#/responses/notFound' /user/avatar: post: produces: - application/json tags: - user summary: Update Avatar operationId: userUpdateAvatar parameters: - name: body in: body schema: $ref: '#/definitions/UpdateUserAvatarOption' responses: '204': $ref: '#/responses/empty' delete: produces: - application/json tags: - user summary: Delete Avatar operationId: userDeleteAvatar responses: '204': $ref: '#/responses/empty' /user/blocks: get: produces: - application/json tags: - user summary: List users blocked by the authenticated user operationId: userListBlocks parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/UserList' /user/blocks/{username}: get: tags: - user summary: Check if a user is blocked by the authenticated user operationId: userCheckUserBlock parameters: - type: string description: username of the user to check name: username in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' put: tags: - user summary: Block a user operationId: userBlockUser parameters: - type: string description: username of the user to block name: username in: path required: true - type: string description: optional note for the block name: note in: query responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' '422': $ref: '#/responses/validationError' delete: tags: - user summary: Unblock a user operationId: userUnblockUser parameters: - type: string description: username of the user to unblock name: username in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' '422': $ref: '#/responses/validationError' /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' '422': $ref: '#/responses/validationError' 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' '404': $ref: '#/responses/notFound' /user/followers: get: produces: - application/json tags: - user summary: List the authenticated user's followers operationId: userCurrentListFollowers parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/UserList' /user/following: get: produces: - application/json tags: - user summary: List the users that the authenticated user is following operationId: userCurrentListFollowing parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/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 the user to check for authenticated followers 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 the user to follow name: username in: path required: true responses: '204': $ref: '#/responses/empty' '403': $ref: '#/responses/forbidden' '404': $ref: '#/responses/notFound' delete: tags: - user summary: Unfollow a user operationId: userCurrentDeleteFollow parameters: - type: string description: username of the user to unfollow name: username in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /user/gpg_key_token: get: produces: - text/plain tags: - user summary: Get a Token to verify operationId: getVerificationToken responses: '200': $ref: '#/responses/string' '404': $ref: '#/responses/notFound' /user/gpg_key_verify: post: consumes: - application/json produces: - application/json tags: - user summary: Verify a GPG key operationId: userVerifyGPGKey responses: '201': $ref: '#/responses/GPGKey' '404': $ref: '#/responses/notFound' '422': $ref: '#/responses/validationError' /user/gpg_keys: get: produces: - application/json tags: - user summary: List the authenticated user's GPG keys operationId: userCurrentListGPGKeys parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/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' '404': $ref: '#/responses/notFound' '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' '404': $ref: '#/responses/notFound' /user/hooks: get: produces: - application/json tags: - user summary: List the authenticated user's webhooks operationId: userListHooks parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/HookList' post: consumes: - application/json produces: - application/json tags: - user summary: Create a hook operationId: userCreateHook parameters: - name: body in: body required: true schema: $ref: '#/definitions/CreateHookOption' responses: '201': $ref: '#/responses/Hook' /user/hooks/{id}: get: produces: - application/json tags: - user summary: Get a hook operationId: userGetHook parameters: - 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: - user summary: Delete a hook operationId: userDeleteHook parameters: - 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: - user summary: Update a hook operationId: userEditHook parameters: - 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' /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 - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/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/repos: get: produces: - application/json tags: - user summary: List the repos that the authenticated user owns operationId: userCurrentListRepos parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' post: consumes: - application/json produces: - application/json tags: - user summary: Create a repository operationId: createCurrentUserRepo parameters: - name: body in: body schema: $ref: '#/definitions/CreateRepoOption' responses: '201': $ref: '#/responses/Repository' '400': $ref: '#/responses/error' '409': description: The repository with the same name already exists. '422': $ref: '#/responses/validationError' /user/settings: get: produces: - application/json tags: - user summary: Get user settings operationId: getUserSettings responses: '200': $ref: '#/responses/UserSettings' patch: produces: - application/json tags: - user summary: Update user settings operationId: updateUserSettings parameters: - name: body in: body schema: $ref: '#/definitions/UserSettingsOptions' responses: '200': $ref: '#/responses/UserSettings' /user/starred: get: produces: - application/json tags: - user summary: The repos that the authenticated user has starred operationId: userCurrentListStarred parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' '403': $ref: '#/responses/forbidden' /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' '403': $ref: '#/responses/forbidden' '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' '403': $ref: '#/responses/forbidden' '404': $ref: '#/responses/notFound' 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' '403': $ref: '#/responses/forbidden' '404': $ref: '#/responses/notFound' /user/stopwatches: get: consumes: - application/json produces: - application/json tags: - user summary: Get list of all existing stopwatches operationId: userGetStopWatches parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/StopWatchList' /user/subscriptions: get: produces: - application/json tags: - user summary: List repositories watched by the authenticated user operationId: userCurrentListSubscriptions parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' /user/teams: get: produces: - application/json tags: - user summary: List all the teams a user belongs to operationId: userListTeams parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/TeamList' /user/times: get: produces: - application/json tags: - user summary: List the current user's tracked times operationId: userCurrentTrackedTimes parameters: - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query - type: string format: date-time description: Only show times updated after the given time. This is a timestamp in RFC 3339 format name: since in: query - type: string format: date-time description: Only show times updated before the given time. This is a timestamp in RFC 3339 format name: before in: query 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: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': description: SearchResults of a successful search schema: type: object properties: data: type: array items: $ref: '#/definitions/User' ok: type: boolean /users/{username}: get: produces: - application/json tags: - user summary: Get a user operationId: userGet parameters: - type: string description: username of the user whose data is to be listed name: username in: path required: true responses: '200': $ref: '#/responses/User' '404': $ref: '#/responses/notFound' /users/{username}/activities/feeds: get: produces: - application/json tags: - user summary: List a user's activity feeds operationId: userListActivityFeeds parameters: - type: string description: username of the user whose activity feeds are to be listed name: username in: path required: true - type: boolean description: if true, only show actions performed by the requested user name: only-performed-by in: query - type: string format: date description: the date of the activities to be found name: date in: query - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/ActivityFeedsList' '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 the user whose followers are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/UserList' '404': $ref: '#/responses/notFound' /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 the user whose followed users are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/UserList' '404': $ref: '#/responses/notFound' /users/{username}/following/{target}: get: tags: - user summary: Check if one user is following another user operationId: userCheckFollowing parameters: - type: string description: username of the following user name: username in: path required: true - type: string description: username of the followed user name: target in: path required: true responses: '204': $ref: '#/responses/empty' '404': $ref: '#/responses/notFound' /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 the user whose GPG key list is to be obtained name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/GPGKeyList' '404': $ref: '#/responses/notFound' /users/{username}/heatmap: get: produces: - application/json tags: - user summary: Get a user's heatmap operationId: userGetHeatmapData parameters: - type: string description: username of the user whose heatmap is to be obtained 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 the user whose public keys are to be listed name: username in: path required: true - type: string description: fingerprint of the key name: fingerprint in: query - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/PublicKeyList' '404': $ref: '#/responses/notFound' /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 the user whose owned repos are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' '404': $ref: '#/responses/notFound' /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 the user whose starred repos are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' '403': $ref: '#/responses/forbidden' '404': $ref: '#/responses/notFound' /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 whose watched repos are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/RepositoryList' '404': $ref: '#/responses/notFound' /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 to user whose access tokens are to be listed name: username in: path required: true - type: integer description: page number of results to return (1-based) name: page in: query - type: integer description: page size of results name: limit in: query responses: '200': $ref: '#/responses/AccessTokenList' '403': $ref: '#/responses/forbidden' post: consumes: - application/json produces: - application/json tags: - user summary: Create an access token operationId: userCreateToken parameters: - type: string description: username of the user whose token is to be created name: username in: path required: true - name: body in: body schema: $ref: '#/definitions/CreateAccessTokenOption' responses: '201': $ref: '#/responses/AccessToken' '400': $ref: '#/responses/error' '403': $ref: '#/responses/forbidden' /users/{username}/tokens/{token}: delete: produces: - application/json tags: - user summary: delete an access token operationId: userDeleteAccessToken parameters: - type: string description: username of the user whose token is to be deleted name: username in: path required: true - type: string description: token to be deleted, identified by ID and if not available by name name: token in: path required: true responses: '204': $ref: '#/responses/empty' '403': $ref: '#/responses/forbidden' '404': $ref: '#/responses/notFound' '422': $ref: '#/responses/error' definitions: RepositoryMeta: description: RepositoryMeta basic repository information type: object properties: full_name: type: string x-go-name: FullName id: type: integer format: int64 x-go-name: ID name: type: string x-go-name: Name owner: type: string x-go-name: Owner x-go-package: code.gitea.io/gitea/modules/structs User: description: User represents a user type: object properties: active: description: Is user active type: boolean x-go-name: IsActive avatar_url: description: URL to the user's avatar type: string x-go-name: AvatarURL created: type: string format: date-time x-go-name: Created description: description: the user's description type: string x-go-name: Description email: type: string format: email x-go-name: Email followers_count: description: user counts type: integer format: int64 x-go-name: Followers following_count: type: integer format: int64 x-go-name: Following full_name: description: the user's full name type: string x-go-name: FullName html_url: description: URL to the user's gitea page type: string x-go-name: HTMLURL id: description: the user's id type: integer format: int64 x-go-name: ID is_admin: description: Is the user an administrator type: boolean x-go-name: IsAdmin language: description: User locale type: string x-go-name: Language last_login: type: string format: date-time x-go-name: LastLogin location: description: the user's location type: string x-go-name: Location login: description: login of the user, same as `username` type: string x-go-name: UserName login_name: description: identifier of the user, provided by the external authenticator (if configured) type: string default: empty x-go-name: LoginName prohibit_login: description: Is user login prohibited type: boolean x-go-name: ProhibitLogin restricted: description: Is user restricted type: boolean x-go-name: Restricted source_id: description: The ID of the user's Authentication Source type: integer format: int64 x-go-name: SourceID starred_repos_count: type: integer format: int64 x-go-name: StarredRepos visibility: description: 'User visibility level option: public, limited, private' type: string x-go-name: Visibility website: description: the user's website type: string x-go-name: Website x-go-package: code.gitea.io/gitea/modules/structs CreateOAuth2ApplicationOptions: description: CreateOAuth2ApplicationOptions holds options to create an oauth2 application type: object properties: confidential_client: description: Whether the client is confidential type: boolean x-go-name: ConfidentialClient name: description: The name of the OAuth2 application type: string x-go-name: Name redirect_uris: description: The list of allowed redirect URIs type: array items: type: string x-go-name: RedirectURIs skip_secondary_authorization: description: Whether to skip secondary authorization type: boolean x-go-name: SkipSecondaryAuthorization x-go-package: code.gitea.io/gitea/modules/structs Issue: description: Issue represents an issue in a repository type: object properties: assets: type: array items: $ref: '#/definitions/Attachment' x-go-name: Attachments 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 content_version: description: The version of the issue content for optimistic locking type: integer format: int64 x-go-name: ContentVersion created_at: type: string format: date-time x-go-name: Created due_date: type: string format: date-time x-go-name: Deadline html_url: type: string x-go-name: HTMLURL id: type: integer format: int64 x-go-name: ID is_locked: type: boolean x-go-name: IsLocked 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 pin_order: type: integer format: int64 x-go-name: PinOrder pull_request: $ref: '#/definitions/PullRequestMeta' ref: type: string x-go-name: Ref repository: $ref: '#/definitions/RepositoryMeta' state: type: string enum: - open - closed x-go-enum-desc: 'open StateOpen StateOpen pr is opened closed StateClosed StateClosed pr is closed' x-go-name: State time_estimate: type: integer format: int64 x-go-name: TimeEstimate 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 ActionWorkflowStep: description: ActionWorkflowStep represents a step of a WorkflowJob type: object properties: completed_at: type: string format: date-time x-go-name: CompletedAt conclusion: type: string x-go-name: Conclusion name: type: string x-go-name: Name number: type: integer format: int64 x-go-name: Number started_at: type: string format: date-time x-go-name: StartedAt status: type: string x-go-name: Status x-go-package: code.gitea.io/gitea/modules/structs ActionWorkflowJob: description: ActionWorkflowJob represents a WorkflowJob type: object properties: completed_at: type: string format: date-time x-go-name: CompletedAt conclusion: type: string x-go-name: Conclusion created_at: type: string format: date-time x-go-name: CreatedAt head_branch: type: string x-go-name: HeadBranch head_sha: type: string x-go-name: HeadSha html_url: type: string x-go-name: HTMLURL id: type: integer format: int64 x-go-name: ID labels: type: array items: type: string x-go-name: Labels name: type: string x-go-name: Name run_attempt: type: integer format: int64 x-go-name: RunAttempt run_id: type: integer format: int64 x-go-name: RunID run_url: type: string x-go-name: RunURL runner_id: type: integer format: int64 x-go-name: RunnerID runner_name: type: string x-go-name: RunnerName started_at: type: string format: date-time x-go-name: StartedAt status: type: string x-go-name: Status steps: type: array items: $ref: '#/definitions/ActionWorkflowStep' x-go-name: Steps url: type: string x-go-name: URL 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 TimeStamp: description: TimeStamp defines a timestamp type: integer format: int64 x-go-package: code.gitea.io/gitea/modules/timeutil Attachment: description: Attachment a generic attachment type: object properties: browser_download_url: description: DownloadURL is the URL to download the attachment type: string x-go-name: DownloadURL created_at: type: string format: date-time x-go-name: Created download_count: description: DownloadCount is the number of times the attachment has been downloaded type: integer format: int64 x-go-name: DownloadCount id: description: ID is the unique identifier for the attachment type: integer format: int64 x-go-name: ID name: description: Name is the filename of the attachment type: string x-go-name: Name size: description: Size is the file size in bytes type: integer format: int64 x-go-name: Size uuid: description: UUID is the unique identifier for the attachment file type: string x-go-name: UUID 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-initialized? type: boolean x-go-name: AutoInit default_branch: description: DefaultBranch of the repository (used when initializes and in template) type: string x-go-name: DefaultBranch 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: 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 object_format_name: description: ObjectFormatName of the underlying git repository, empty string for default (sha1) type: string enum: - sha1 - sha256 x-go-name: ObjectFormatName 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 template: description: Whether the repository is template type: boolean x-go-name: Template trust_model: description: TrustModel of the repository type: string enum: - default - collaborator - committer - collaboratorcommitter x-go-name: TrustModel x-go-package: code.gitea.io/gitea/modules/structs EditActionRunnerOption: type: object title: EditActionRunnerOption represents the editable fields for a runner. required: - disabled properties: disabled: type: boolean x-go-name: Disabled x-go-package: code.gitea.io/gitea/modules/structs ActionRunnersResponse: description: ActionRunnersResponse returns Runners type: object properties: runners: type: array items: $ref: '#/definitions/ActionRunner' x-go-name: Entries total_count: type: integer format: int64 x-go-name: TotalCount 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: description: Fingerprint is the key's fingerprint type: string x-go-name: Fingerprint id: description: ID is the unique identifier for the public key type: integer format: int64 x-go-name: ID key: description: Key contains the actual SSH public key content type: string x-go-name: Key key_type: description: KeyType indicates the type of the SSH key type: string x-go-name: KeyType last_used_at: description: Updated is the time when the key was last used type: string format: date-time x-go-name: Updated read_only: description: ReadOnly indicates if the key has read-only access type: boolean x-go-name: ReadOnly title: description: Title is the human-readable name for the key type: string x-go-name: Title url: description: URL is the API URL for this key type: string x-go-name: URL user: $ref: '#/definitions/User' x-go-package: code.gitea.io/gitea/modules/structs CreateVariableOption: description: CreateVariableOption the option when creating variable type: object required: - value properties: description: description: Description of the variable to create type: string x-go-name: Description value: description: Value of the variable to create type: string x-go-name: Value 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: description: Whether this is the primary email address type: boolean x-go-name: Primary user_id: description: The unique identifier of the user who owns this email type: integer format: int64 x-go-name: UserID username: description: username of the user type: string x-go-name: UserName verified: description: Whether the email address has been verified type: boolean x-go-name: Verified x-go-package: code.gitea.io/gitea/modules/structs ActionRunnerLabel: description: ActionRunnerLabel represents a Runner Label type: object properties: id: type: integer format: int64 x-go-name: ID name: type: string x-go-name: Name type: type: string x-go-name: Type x-go-package: code.gitea.io/gitea/modules/structs UserSettings: description: UserSettings represents user settings type: object properties: description: type: string x-go-name: Description diff_view_style: type: string x-go-name: DiffViewStyle full_name: type: string x-go-name: FullName hide_activity: type: boolean x-go-name: HideActivity hide_email: description: Privacy type: boolean x-go-name: HideEmail language: type: string x-go-name: Language location: type: string x-go-name: Location theme: type: string x-go-name: Theme website: type: string x-go-name: Website 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: description: ID is the unique identifier for the tracked time entry type: integer format: int64 x-go-name: ID issue: $ref: '#/definitions/Issue' issue_id: description: deprecated (only for backwards compatibility) type: integer format: int64 x-go-name: IssueID time: description: Time in seconds type: integer format: int64 x-go-name: Time user_id: description: deprecated (only for backwards compatibility) type: integer format: int64 x-go-name: UserID user_name: description: username of the user type: string x-go-name: UserName x-go-package: code.gitea.io/gitea/modules/structs 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: description: ClosedIssues is the number of closed issues in this milestone type: integer format: int64 x-go-name: ClosedIssues created_at: type: string format: date-time x-go-name: Created description: description: Description provides details about the milestone type: string x-go-name: Description due_on: type: string format: date-time x-go-name: Deadline id: description: ID is the unique identifier for the milestone type: integer format: int64 x-go-name: ID open_issues: description: OpenIssues is the number of open issues in this milestone type: integer format: int64 x-go-name: OpenIssues state: description: 'State indicates if the milestone is open or closed open StateOpen StateOpen pr is opened closed StateClosed StateClosed pr is closed' type: string enum: - open - closed x-go-enum-desc: 'open StateOpen StateOpen pr is opened closed StateClosed StateClosed pr is closed' x-go-name: State title: description: Title is the title of the milestone type: string x-go-name: Title updated_at: type: string format: date-time x-go-name: Updated 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 armored_signature: description: An optional armored signature for the GPG key type: string x-go-name: Signature x-go-package: code.gitea.io/gitea/modules/structs ActionWorkflowRunsResponse: description: ActionWorkflowRunsResponse returns ActionWorkflowRuns type: object properties: total_count: type: integer format: int64 x-go-name: TotalCount workflow_runs: type: array items: $ref: '#/definitions/ActionWorkflowRun' x-go-name: Entries 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 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 ActionRunner: description: ActionRunner represents a Runner type: object properties: busy: type: boolean x-go-name: Busy disabled: type: boolean x-go-name: Disabled ephemeral: type: boolean x-go-name: Ephemeral id: type: integer format: int64 x-go-name: ID labels: type: array items: $ref: '#/definitions/ActionRunnerLabel' x-go-name: Labels name: type: string x-go-name: Name status: type: string x-go-name: Status 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 authorization_header: description: Authorization header to include in webhook requests type: string x-go-name: AuthorizationHeader branch_filter: description: Branch filter pattern to determine which branches trigger the webhook type: string x-go-name: BranchFilter config: $ref: '#/definitions/CreateHookOptionConfig' events: description: List of events that will trigger this webhook type: array items: type: string x-go-name: Events name: description: Optional human-readable name for the webhook type: string x-go-name: Name type: type: string enum: - dingtalk - discord - gitea - gogs - msteams - slack - telegram - feishu - wechatwork - packagist x-go-name: Type 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 GPGKeyEmail: description: GPGKeyEmail an email attached to a GPGKey type: object properties: email: description: The email address associated with the GPG key type: string x-go-name: Email verified: description: Whether the email address has been verified type: boolean x-go-name: Verified 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: description: Whether the webhook is active and will be triggered type: boolean x-go-name: Active authorization_header: description: Authorization header to include in webhook requests type: string x-go-name: AuthorizationHeader branch_filter: description: Branch filter pattern to determine which branches trigger the webhook type: string x-go-name: BranchFilter config: description: Configuration settings for the webhook type: object additionalProperties: type: string x-go-name: Config created_at: type: string format: date-time x-go-name: Created events: description: List of events that trigger this webhook type: array items: type: string x-go-name: Events id: description: The unique identifier of the webhook type: integer format: int64 x-go-name: ID name: description: Optional human-readable name for the webhook type: string x-go-name: Name type: description: The type of the webhook (e.g., gitea, slack, discord) 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 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 UpdateUserAvatarOption: description: UpdateUserAvatarUserOption options when updating the user avatar type: object properties: image: description: image must be base64 encoded type: string x-go-name: Image x-go-package: code.gitea.io/gitea/modules/structs Activity: type: object properties: act_user: $ref: '#/definitions/User' act_user_id: description: The ID of the user who performed the action type: integer format: int64 x-go-name: ActUserID comment: $ref: '#/definitions/Comment' comment_id: description: The ID of the comment associated with the activity (if applicable) type: integer format: int64 x-go-name: CommentID content: description: Additional content or details about the activity type: string x-go-name: Content created: description: The date and time when the activity occurred type: string format: date-time x-go-name: Created id: description: The unique identifier of the activity type: integer format: int64 x-go-name: ID is_private: description: Whether this activity is from a private repository type: boolean x-go-name: IsPrivate op_type: description: the type of action type: string enum: - create_repo - rename_repo - star_repo - watch_repo - commit_repo - create_issue - create_pull_request - transfer_repo - push_tag - comment_issue - merge_pull_request - close_issue - reopen_issue - close_pull_request - reopen_pull_request - delete_tag - delete_branch - mirror_sync_push - mirror_sync_create - mirror_sync_delete - approve_pull_request - reject_pull_request - comment_pull - publish_release - pull_review_dismissed - pull_request_ready_for_review - auto_merge_pull_request x-go-name: OpType ref_name: description: The name of the git reference (branch/tag) associated with the activity type: string x-go-name: RefName repo: $ref: '#/definitions/Repository' repo_id: description: The ID of the repository associated with the activity type: integer format: int64 x-go-name: RepoID user_id: description: The ID of the user who receives/sees this activity type: integer format: int64 x-go-name: UserID x-go-package: code.gitea.io/gitea/modules/structs CreateAccessTokenOption: description: CreateAccessTokenOption options when create access token type: object required: - name properties: name: type: string x-go-name: Name scopes: type: array items: type: string x-go-name: Scopes example: - all - read:activitypub - read:issue - write:misc - read:notification - read:organization - read:package - read:repository - read:user x-go-package: code.gitea.io/gitea/modules/structs ActionVariable: description: ActionVariable return value of the query API type: object properties: data: description: the value of the variable type: string x-go-name: Data description: description: the description of the variable type: string x-go-name: Description name: description: the name of the variable type: string x-go-name: Name owner_id: description: the owner to which the variable belongs type: integer format: int64 x-go-name: OwnerID repo_id: description: the repository to which the variable belongs type: integer format: int64 x-go-name: RepoID 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 GPGKey: description: GPGKey a user GPG key to sign commit and tag in repository type: object properties: can_certify: description: Whether the key can be used for certification type: boolean x-go-name: CanCertify can_encrypt_comms: description: Whether the key can be used for encrypting communications type: boolean x-go-name: CanEncryptComms can_encrypt_storage: description: Whether the key can be used for encrypting storage type: boolean x-go-name: CanEncryptStorage can_sign: description: Whether the key can be used for signing type: boolean x-go-name: CanSign created_at: type: string format: date-time x-go-name: Created emails: description: List of email addresses associated with this GPG key type: array items: $ref: '#/definitions/GPGKeyEmail' x-go-name: Emails expires_at: type: string format: date-time x-go-name: Expires id: description: The unique identifier of the GPG key type: integer format: int64 x-go-name: ID key_id: description: The key ID of the GPG key type: string x-go-name: KeyID primary_key_id: description: The primary key ID of the GPG key type: string x-go-name: PrimaryKeyID public_key: description: The public key content in armored format type: string x-go-name: PublicKey subkeys: description: List of subkeys of this GPG key type: array items: $ref: '#/definitions/GPGKey' x-go-name: SubsKey verified: description: Whether the GPG key has been verified type: boolean x-go-name: Verified x-go-package: code.gitea.io/gitea/modules/structs CreateHookOptionConfig: description: 'CreateHookOptionConfig has all config options in it required are "content_type" and "url" Required' type: object additionalProperties: type: string x-go-package: code.gitea.io/gitea/modules/structs ActionWorkflowRun: description: ActionWorkflowRun represents a WorkflowRun type: object properties: actor: $ref: '#/definitions/User' completed_at: type: string format: date-time x-go-name: CompletedAt conclusion: type: string x-go-name: Conclusion display_title: type: string x-go-name: DisplayTitle event: type: string x-go-name: Event head_branch: type: string x-go-name: HeadBranch head_repository: $ref: '#/definitions/Repository' head_sha: type: string x-go-name: HeadSha html_url: type: string x-go-name: HTMLURL id: type: integer format: int64 x-go-name: ID path: type: string x-go-name: Path repository: $ref: '#/definitions/Repository' repository_id: type: integer format: int64 x-go-name: RepositoryID run_attempt: type: integer format: int64 x-go-name: RunAttempt run_number: type: integer format: int64 x-go-name: RunNumber started_at: type: string format: date-time x-go-name: StartedAt status: type: string x-go-name: Status trigger_actor: $ref: '#/definitions/User' url: type: string x-go-name: URL x-go-package: code.gitea.io/gitea/modules/structs StopWatch: description: StopWatch represent a running stopwatch type: object properties: created: type: string format: date-time x-go-name: Created duration: description: Duration is a human-readable duration string type: string x-go-name: Duration issue_index: description: IssueIndex is the index number of the associated issue type: integer format: int64 x-go-name: IssueIndex issue_title: description: IssueTitle is the title of the associated issue type: string x-go-name: IssueTitle repo_name: description: RepoName is the name of the repository type: string x-go-name: RepoName repo_owner_name: description: RepoOwnerName is the name of the repository owner type: string x-go-name: RepoOwnerName seconds: description: Seconds is the total elapsed time in seconds type: integer format: int64 x-go-name: Seconds x-go-package: code.gitea.io/gitea/modules/structs ExternalTracker: description: ExternalTracker represents settings for external tracker type: object properties: external_tracker_format: description: External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index. type: string x-go-name: ExternalTrackerFormat external_tracker_regexp_pattern: description: External Issue Tracker issue regular expression type: string x-go-name: ExternalTrackerRegexpPattern external_tracker_style: description: External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp` type: string x-go-name: ExternalTrackerStyle external_tracker_url: description: URL of external issue tracker. type: string x-go-name: ExternalTrackerURL x-go-package: code.gitea.io/gitea/modules/structs Repository: description: Repository represents a repository type: object properties: allow_fast_forward_only_merge: type: boolean x-go-name: AllowFastForwardOnly allow_manual_merge: type: boolean x-go-name: AllowManualMerge allow_merge_commits: type: boolean x-go-name: AllowMerge allow_rebase: type: boolean x-go-name: AllowRebase allow_rebase_explicit: type: boolean x-go-name: AllowRebaseMerge allow_rebase_update: type: boolean x-go-name: AllowRebaseUpdate allow_squash_merge: type: boolean x-go-name: AllowSquash archived: type: boolean x-go-name: Archived archived_at: type: string format: date-time x-go-name: ArchivedAt autodetect_manual_merge: type: boolean x-go-name: AutodetectManualMerge avatar_url: type: string x-go-name: AvatarURL branch_count: type: integer format: int64 x-go-name: BranchCount clone_url: type: string x-go-name: CloneURL created_at: type: string format: date-time x-go-name: Created default_allow_maintainer_edit: type: boolean x-go-name: DefaultAllowMaintainerEdit default_branch: type: string x-go-name: DefaultBranch default_delete_branch_after_merge: type: boolean x-go-name: DefaultDeleteBranchAfterMerge default_merge_style: type: string x-go-name: DefaultMergeStyle default_target_branch: type: string x-go-name: DefaultTargetBranch description: type: string x-go-name: Description empty: type: boolean x-go-name: Empty external_tracker: $ref: '#/definitions/ExternalTracker' external_wiki: $ref: '#/definitions/ExternalWiki' fork: type: boolean x-go-name: Fork forks_count: type: integer format: int64 x-go-name: Forks full_name: type: string x-go-name: FullName has_actions: type: boolean x-go-name: HasActions has_code: type: boolean x-go-name: HasCode has_issues: type: boolean x-go-name: HasIssues has_packages: type: boolean x-go-name: HasPackages has_projects: type: boolean x-go-name: HasProjects has_pull_requests: type: boolean x-go-name: HasPullRequests has_releases: type: boolean x-go-name: HasReleases has_wiki: type: boolean x-go-name: HasWiki html_url: type: string x-go-name: HTMLURL id: type: integer format: int64 x-go-name: ID ignore_whitespace_conflicts: type: boolean x-go-name: IgnoreWhitespaceConflicts internal: type: boolean x-go-name: Internal internal_tracker: $ref: '#/definitions/InternalTracker' language: type: string x-go-name: Language languages_url: type: string x-go-name: LanguagesURL licenses: type: array items: type: string x-go-name: Licenses link: type: string x-go-name: Link mirror: type: boolean x-go-name: Mirror mirror_interval: type: string x-go-name: MirrorInterval mirror_updated: type: string format: date-time x-go-name: MirrorUpdated name: type: string x-go-name: Name object_format_name: description: ObjectFormatName of the underlying git repository type: string enum: - sha1 - sha256 x-go-name: ObjectFormatName open_issues_count: type: integer format: int64 x-go-name: OpenIssues open_pr_counter: type: integer format: int64 x-go-name: OpenPulls original_url: type: string x-go-name: OriginalURL owner: $ref: '#/definitions/User' parent: $ref: '#/definitions/Repository' permissions: $ref: '#/definitions/Permission' private: type: boolean x-go-name: Private projects_mode: type: string x-go-name: ProjectsMode release_counter: type: integer format: int64 x-go-name: Releases repo_transfer: $ref: '#/definitions/RepoTransfer' size: type: integer format: int64 x-go-name: Size ssh_url: type: string x-go-name: SSHURL stars_count: type: integer format: int64 x-go-name: Stars template: type: boolean x-go-name: Template topics: type: array items: type: string x-go-name: Topics updated_at: type: string format: date-time x-go-name: Updated url: type: string x-go-name: URL watchers_count: type: integer format: int64 x-go-name: Watchers website: type: string x-go-name: Website x-go-package: code.gitea.io/gitea/modules/structs Comment: description: Comment represents a comment on a commit or issue type: object properties: assets: description: Attachments contains files attached to the comment type: array items: $ref: '#/definitions/Attachment' x-go-name: Attachments body: description: Body contains the comment text content type: string x-go-name: Body created_at: type: string format: date-time x-go-name: Created html_url: description: HTMLURL is the web URL for viewing the comment type: string x-go-name: HTMLURL id: description: ID is the unique identifier for the comment type: integer format: int64 x-go-name: ID issue_url: description: IssueURL is the API URL for the issue type: string x-go-name: IssueURL original_author: description: OriginalAuthor is the original author name (for imported comments) type: string x-go-name: OriginalAuthor original_author_id: description: OriginalAuthorID is the original author ID (for imported comments) type: integer format: int64 x-go-name: OriginalAuthorID pull_request_url: description: PRURL is the API URL for the pull request (if applicable) 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 Label: description: Label a label to an issue or a pr type: object properties: color: type: string x-go-name: Color example: 00aabb description: description: Description provides additional context about the label's purpose type: string x-go-name: Description exclusive: type: boolean x-go-name: Exclusive example: false id: description: ID is the unique identifier for the label type: integer format: int64 x-go-name: ID is_archived: type: boolean x-go-name: IsArchived example: false name: description: Name is the display name of the label type: string x-go-name: Name url: description: URL is the API endpoint for accessing this label type: string x-go-name: URL x-go-package: code.gitea.io/gitea/modules/structs CreateOrUpdateSecretOption: description: CreateOrUpdateSecretOption options when creating or updating secret type: object required: - data properties: data: description: Data of the secret to update type: string x-go-name: Data description: description: Description of the secret to update type: string x-go-name: Description x-go-package: code.gitea.io/gitea/modules/structs UpdateVariableOption: description: UpdateVariableOption the option when updating variable type: object required: - value properties: description: description: Description of the variable to update type: string x-go-name: Description name: description: New name for the variable. If the field is empty, the variable name won't be updated. type: string x-go-name: Name value: description: Value of the variable to update type: string x-go-name: Value x-go-package: code.gitea.io/gitea/modules/structs OAuth2Application: type: object title: OAuth2Application represents an OAuth2 application. properties: client_id: description: The client ID of the OAuth2 application type: string x-go-name: ClientID client_secret: description: The client secret of the OAuth2 application type: string x-go-name: ClientSecret confidential_client: description: Whether the client is confidential type: boolean x-go-name: ConfidentialClient created: description: The timestamp when the application was created type: string format: date-time x-go-name: Created id: description: The unique identifier of the OAuth2 application type: integer format: int64 x-go-name: ID name: description: The name of the OAuth2 application type: string x-go-name: Name redirect_uris: description: The list of allowed redirect URIs type: array items: type: string x-go-name: RedirectURIs skip_secondary_authorization: description: Whether to skip secondary authorization type: boolean x-go-name: SkipSecondaryAuthorization x-go-package: code.gitea.io/gitea/modules/structs ActionWorkflowJobsResponse: description: ActionWorkflowJobsResponse returns ActionWorkflowJobs type: object properties: jobs: type: array items: $ref: '#/definitions/ActionWorkflowJob' x-go-name: Entries total_count: type: integer format: int64 x-go-name: TotalCount x-go-package: code.gitea.io/gitea/modules/structs UserSettingsOptions: description: UserSettingsOptions represents options to change user settings type: object properties: description: type: string x-go-name: Description diff_view_style: type: string x-go-name: DiffViewStyle full_name: type: string x-go-name: FullName hide_activity: type: boolean x-go-name: HideActivity hide_email: description: Privacy type: boolean x-go-name: HideEmail language: type: string x-go-name: Language location: type: string x-go-name: Location theme: type: string x-go-name: Theme website: type: string x-go-name: Website x-go-package: code.gitea.io/gitea/modules/structs RepoTransfer: description: RepoTransfer represents a pending repo transfer type: object properties: doer: $ref: '#/definitions/User' recipient: $ref: '#/definitions/User' teams: type: array items: $ref: '#/definitions/Team' x-go-name: Teams x-go-package: code.gitea.io/gitea/modules/structs Team: description: Team represents a team in an organization type: object properties: can_create_org_repo: description: Whether the team can create repositories in the organization type: boolean x-go-name: CanCreateOrgRepo description: description: The description of the team type: string x-go-name: Description id: description: The unique identifier of the team type: integer format: int64 x-go-name: ID includes_all_repositories: description: Whether the team has access to all repositories in the organization type: boolean x-go-name: IncludesAllRepositories name: description: The name of the team type: string x-go-name: Name organization: $ref: '#/definitions/Organization' permission: type: string enum: - none - read - write - admin - owner x-go-name: Permission units: type: array items: type: string x-go-name: Units example: - repo.code - repo.issues - repo.ext_issues - repo.wiki - repo.pulls - repo.releases - repo.projects - repo.ext_wiki units_map: type: object additionalProperties: type: string x-go-name: UnitsMap example: repo.code: read repo.ext_issues: none repo.ext_wiki: none repo.issues: write repo.projects: none repo.pulls: owner repo.releases: none repo.wiki: admin x-go-package: code.gitea.io/gitea/modules/structs PullRequestMeta: description: PullRequestMeta PR info if an issue is a PR type: object properties: draft: type: boolean x-go-name: IsWorkInProgress html_url: type: string x-go-name: HTMLURL 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 AccessToken: type: object title: AccessToken represents an API access token. properties: created_at: description: The timestamp when the token was created type: string format: date-time x-go-name: Created id: description: The unique identifier of the access token type: integer format: int64 x-go-name: ID last_used_at: description: The timestamp when the token was last used type: string format: date-time x-go-name: Updated name: description: The name of the access token type: string x-go-name: Name scopes: description: The scopes granted to this access token type: array items: type: string x-go-name: Scopes sha1: description: The SHA1 hash of the access token type: string x-go-name: Token token_last_eight: description: The last eight characters of the token type: string x-go-name: TokenLastEight x-go-package: code.gitea.io/gitea/modules/structs Organization: description: Organization represents an organization type: object properties: avatar_url: description: The URL of the organization's avatar type: string x-go-name: AvatarURL description: description: The description of the organization type: string x-go-name: Description email: description: The email address of the organization type: string x-go-name: Email full_name: description: The full display name of the organization type: string x-go-name: FullName id: description: The unique identifier of the organization type: integer format: int64 x-go-name: ID location: description: The location of the organization type: string x-go-name: Location name: description: The name of the organization type: string x-go-name: Name repo_admin_change_team_access: description: Whether repository administrators can change team access type: boolean x-go-name: RepoAdminChangeTeamAccess username: description: 'username of the organization deprecated' type: string x-go-name: UserName visibility: description: The visibility level of the organization (public, limited, private) type: string x-go-name: Visibility website: description: The website URL of the organization type: string x-go-name: Website x-go-package: code.gitea.io/gitea/modules/structs EditHookOption: description: EditHookOption options when modify one hook type: object properties: active: description: Whether the webhook is active and will be triggered type: boolean x-go-name: Active authorization_header: description: Authorization header to include in webhook requests type: string x-go-name: AuthorizationHeader branch_filter: description: Branch filter pattern to determine which branches trigger the webhook type: string x-go-name: BranchFilter config: description: Configuration settings for the webhook type: object additionalProperties: type: string x-go-name: Config events: description: List of events that trigger this webhook type: array items: type: string x-go-name: Events name: description: Optional human-readable name type: string x-go-name: Name 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/activities responses: RepositoryList: description: RepositoryList schema: type: array items: $ref: '#/definitions/Repository' WorkflowRunsList: description: WorkflowRunsList schema: $ref: '#/definitions/ActionWorkflowRunsResponse' ActionVariable: description: ActionVariable schema: $ref: '#/definitions/ActionVariable' Repository: description: Repository schema: $ref: '#/definitions/Repository' AccessTokenList: description: AccessTokenList represents a list of API access token. schema: type: array items: $ref: '#/definitions/AccessToken' GPGKey: description: GPGKey schema: $ref: '#/definitions/GPGKey' error: description: APIError is error format response headers: message: type: string url: type: string VariableList: description: VariableList schema: type: array items: $ref: '#/definitions/ActionVariable' TrackedTimeList: description: TrackedTimeList schema: type: array items: $ref: '#/definitions/TrackedTime' HookList: description: HookList schema: type: array items: $ref: '#/definitions/Hook' OAuth2Application: description: OAuth2Application schema: $ref: '#/definitions/OAuth2Application' TeamList: description: TeamList schema: type: array items: $ref: '#/definitions/Team' EmailList: description: EmailList schema: type: array items: $ref: '#/definitions/Email' Runner: description: Runner schema: $ref: '#/definitions/ActionRunner' Hook: description: Hook schema: $ref: '#/definitions/Hook' AccessToken: description: AccessToken represents an API access token. schema: $ref: '#/definitions/AccessToken' notFound: description: APINotFound is a not found empty response UserSettings: description: UserSettings schema: type: array items: $ref: '#/definitions/UserSettings' StopWatchList: description: StopWatchList schema: type: array items: $ref: '#/definitions/StopWatch' UserHeatmapData: description: UserHeatmapData schema: type: array items: $ref: '#/definitions/UserHeatmapData' PublicKeyList: description: PublicKeyList schema: type: array items: $ref: '#/definitions/PublicKey' forbidden: description: APIForbiddenError is a forbidden error response headers: message: type: string url: type: string PublicKey: description: PublicKey schema: $ref: '#/definitions/PublicKey' GPGKeyList: description: GPGKeyList schema: type: array items: $ref: '#/definitions/GPGKey' OAuth2ApplicationList: description: OAuth2ApplicationList represents a list of OAuth2 applications. schema: type: array items: $ref: '#/definitions/OAuth2Application' validationError: description: APIValidationError is error format response related to input validation headers: message: type: string url: type: string RegistrationToken: description: RegistrationToken is response related to registration token headers: token: type: string RunnerList: description: RunnerList schema: $ref: '#/definitions/ActionRunnersResponse' WorkflowJobsList: description: WorkflowJobsList schema: $ref: '#/definitions/ActionWorkflowJobsResponse' empty: description: APIEmpty is an empty response User: description: User schema: $ref: '#/definitions/User' UserList: description: UserList schema: type: array items: $ref: '#/definitions/User' ActivityFeedsList: description: ActivityFeedsList schema: type: array items: $ref: '#/definitions/Activity' string: description: APIString is a string response schema: type: string securityDefinitions: AccessToken: description: This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead. type: apiKey name: access_token in: query AuthorizationHeaderToken: description: API tokens must be prepended with "token" followed by a space. type: apiKey name: Authorization in: header BasicAuth: type: basic SudoHeader: description: Sudo API request as the user provided as the key. Admin privileges are required. type: apiKey name: Sudo in: header SudoParam: description: Sudo API request as the user provided as the key. Admin privileges are required. type: apiKey name: sudo in: query TOTPHeader: description: Must be used in combination with BasicAuth if two-factor authentication is enabled. type: apiKey name: X-GITEA-OTP in: header Token: description: This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead. type: apiKey name: token in: query