gitdataai/openapi.json
2026-04-14 19:02:01 +08:00

41489 lines
970 KiB
JSON

{
"openapi": "3.1.0",
"info": {
"title": "api",
"description": "",
"license": {
"name": ""
},
"version": "0.2.9"
},
"paths": {
"/api/agents/capabilities": {
"post": {
"tags": [
"Agent"
],
"operationId": "model_capability_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateModelCapabilityRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelCapabilityResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
}
}
}
},
"/api/agents/capabilities/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_capability_get",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelCapabilityResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "model_capability_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "model_capability_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateModelCapabilityRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelCapabilityResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/code-review/{namespace}/{repo}": {
"post": {
"tags": [
"Agent"
],
"operationId": "trigger_code_review",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TriggerCodeReviewRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "AI code review triggered",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TriggerCodeReviewResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Repository or PR not found"
}
}
}
},
"/api/agents/models": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_list",
"parameters": [
{
"name": "provider_id",
"in": "query",
"required": false,
"schema": {
"type": [
"string",
"null"
]
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ModelResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"Agent"
],
"operationId": "model_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateModelRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/models/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_get",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "model_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "model_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateModelRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/parameters": {
"post": {
"tags": [
"Agent"
],
"operationId": "model_parameter_profile_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateModelParameterProfileRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelParameterProfileResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
}
}
}
},
"/api/agents/parameters/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_parameter_profile_get",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelParameterProfileResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "model_parameter_profile_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "model_parameter_profile_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateModelParameterProfileRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelParameterProfileResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/pr-description/{namespace}/{repo}": {
"post": {
"tags": [
"Agent"
],
"operationId": "generate_pr_description",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GeneratePrDescriptionRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "AI-generated PR description",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GeneratePrDescriptionResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Repository or PR not found"
}
}
}
},
"/api/agents/pricing": {
"post": {
"tags": [
"Agent"
],
"operationId": "model_pricing_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateModelPricingRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelPricingResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
}
}
}
},
"/api/agents/pricing/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_pricing_get",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelPricingResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "model_pricing_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "model_pricing_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateModelPricingRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelPricingResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/providers": {
"get": {
"tags": [
"Agent"
],
"operationId": "provider_list",
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProviderResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"Agent"
],
"operationId": "provider_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateProviderRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProviderResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
}
}
}
},
"/api/agents/providers/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "provider_get",
"parameters": [
{
"name": "id",
"in": "path",
"description": "Provider UUID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProviderResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "provider_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "provider_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateProviderRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProviderResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/versions": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_version_list",
"parameters": [
{
"name": "model_id",
"in": "query",
"required": false,
"schema": {
"type": [
"string",
"null"
]
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ModelVersionResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"Agent"
],
"operationId": "model_version_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateModelVersionRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelVersionResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
}
}
}
},
"/api/agents/versions/{id}": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_version_get",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelVersionResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": ""
}
}
},
"delete": {
"tags": [
"Agent"
],
"operationId": "model_version_delete",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
},
"patch": {
"tags": [
"Agent"
],
"operationId": "model_version_update",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateModelVersionRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelVersionResponse"
}
}
}
},
"401": {
"description": ""
},
"403": {
"description": ""
},
"404": {
"description": ""
}
}
}
},
"/api/agents/versions/{model_version_id}/capabilities": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_capability_list",
"parameters": [
{
"name": "model_version_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ModelCapabilityResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/agents/versions/{model_version_id}/parameters": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_parameter_profile_list",
"parameters": [
{
"name": "model_version_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ModelParameterProfileResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/agents/versions/{model_version_id}/pricing": {
"get": {
"tags": [
"Agent"
],
"operationId": "model_pricing_list",
"parameters": [
{
"name": "model_version_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ModelPricingResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/auth/2fa/disable": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_2fa_disable",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Disable2FAParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "2FA disabled"
},
"400": {
"description": "2FA not enabled or invalid code/password"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error"
}
}
}
},
"/api/auth/2fa/enable": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_2fa_enable",
"responses": {
"200": {
"description": "2FA setup initiated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Enable2FAResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"409": {
"description": "2FA already enabled"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/api/auth/2fa/status": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_2fa_status",
"responses": {
"200": {
"description": "2FA status",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Get2FAStatusResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error"
}
}
}
},
"/api/auth/2fa/verify": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_2fa_verify",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Verify2FAParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "2FA verified and enabled"
},
"400": {
"description": "2FA not set up"
},
"401": {
"description": "Unauthorized or invalid code"
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error"
}
}
}
},
"/api/auth/captcha": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_auth_captcha",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CaptchaQuery"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Captcha generated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CaptchaResponse"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/email": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_email_get",
"responses": {
"200": {
"description": "Current email address",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_EmailResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/auth/email/change": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_email_change",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EmailChangeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Verification email sent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"401": {
"description": "Unauthorized or invalid password"
},
"409": {
"description": "Email already in use"
}
}
}
},
"/api/auth/email/verify": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_email_verify",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EmailVerifyRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Email updated successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"400": {
"description": "Invalid or expired token"
}
}
}
},
"/api/auth/login": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_auth_login",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LoginParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Login successful",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"401": {
"description": "Invalid credentials",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"428": {
"description": "Two-factor authentication required",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/logout": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_auth_logout",
"responses": {
"200": {
"description": "Logout successful",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/me": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_auth_me",
"responses": {
"200": {
"description": "Current user info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ContextMe"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/password/change": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_user_change_password",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChangePasswordParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Password changed successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"401": {
"description": "Unauthorized or invalid password",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/password/reset": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_user_request_password_reset",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResetPasswordParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Password reset email sent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "User not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/auth/register": {
"post": {
"tags": [
"Auth"
],
"operationId": "api_auth_register",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RegisterParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Registration successful",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"409": {
"description": "Username or email already exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/git/init": {
"post": {
"tags": [
"Git"
],
"operationId": "git_init_bare",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GitInitRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Bare repository initialized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_GitInitResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/git/is-repo/{path}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_is_repo",
"parameters": [
{
"name": "path",
"in": "path",
"description": "Repository path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if path is a repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_bool"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/git/open/{path}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_open",
"parameters": [
{
"name": "path",
"in": "path",
"description": "Repository path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Open repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_GitInitResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/git/open/{path}/workdir": {
"get": {
"tags": [
"Git"
],
"operationId": "git_open_workdir",
"parameters": [
{
"name": "path",
"in": "path",
"description": "Repository path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Open repository working directory",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_GitInitResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/issue/{project}/issues": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "state",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issues",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_create",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/summary": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_summary",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get issue summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_get",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_delete",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Issues"
],
"operationId": "issue_update",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/assignees": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_assignee_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue assignees",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_IssueAssigneeResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_assignee_add",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueAssignUserRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add assignee to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueAssigneeResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/assignees/{assignee_id}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_assignee_remove",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "assignee_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Remove assignee from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/close": {
"post": {
"tags": [
"Issues"
],
"operationId": "issue_close",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Close issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/comments": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_comment_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue comments",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueCommentListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_comment_create",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueCommentCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create issue comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/comments/{comment_id}": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_comment_get",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get issue comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_comment_delete",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete issue comment"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Issues"
],
"operationId": "issue_comment_update",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueCommentUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update issue comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/comments/{comment_id}/reactions": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_comment_reaction_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List comment reactions",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReactionListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_comment_reaction_add",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReactionAddRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add reaction to comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReactionResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/comments/{comment_id}/reactions/{reaction}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_comment_reaction_remove",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "reaction",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Remove reaction from comment"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/labels": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_label_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue labels",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_IssueLabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_label_add",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueAddLabelRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add label to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueLabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/labels/{label_id}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_label_remove",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Remove label from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/pulls": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_pull_request_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue pull requests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_IssuePullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_pull_request_link",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueLinkPullRequestRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Link pull request to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssuePullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/pulls/{repo_id}/{pr_number}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_pull_request_unlink",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "repo_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Unlink pull request from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/reactions": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_reaction_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue reactions",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReactionListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_reaction_add",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReactionAddRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add reaction to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReactionResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/reactions/{reaction}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_reaction_remove",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "reaction",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Remove reaction from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/reopen": {
"post": {
"tags": [
"Issues"
],
"operationId": "issue_reopen",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Reopen issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/repos": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_repo_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue repos",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_IssueRepoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "issue_repo_link",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IssueLinkRepoRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Link repo to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueRepoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/repos/{repo_id}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_repo_unlink",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "repo_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unlink repo from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/subscribe": {
"post": {
"tags": [
"Issues"
],
"operationId": "issue_subscribe",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Subscribe to issue",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IssueSubscriberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Issues"
],
"operationId": "issue_unsubscribe",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Unsubscribe from issue"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/issues/{number}/subscribers": {
"get": {
"tags": [
"Issues"
],
"operationId": "issue_subscriber_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List issue subscribers",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_IssueSubscriberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/labels": {
"get": {
"tags": [
"Issues"
],
"operationId": "label_list",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List labels",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_LabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Issues"
],
"operationId": "label_create",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateLabelRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create label",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_LabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/issue/{project}/labels/{label_id}": {
"delete": {
"tags": [
"Issues"
],
"operationId": "label_delete",
"parameters": [
{
"name": "project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete label"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/me/mentions": {
"get": {
"tags": [
"Room"
],
"operationId": "mention_list",
"parameters": [
{
"name": "limit",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List mentions",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_MentionNotificationResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/me/mentions/read-all": {
"post": {
"tags": [
"Room"
],
"operationId": "mention_read_all",
"responses": {
"200": {
"description": "Mark all mentions as read"
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/me/notifications": {
"get": {
"tags": [
"Room"
],
"operationId": "notification_list",
"parameters": [
{
"name": "only_unread",
"in": "query",
"required": false,
"schema": {
"type": "boolean"
}
},
{
"name": "archived",
"in": "query",
"required": false,
"schema": {
"type": "boolean"
}
},
{
"name": "limit",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List notifications",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_NotificationListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/me/notifications/read-all": {
"post": {
"tags": [
"Room"
],
"operationId": "notification_mark_all_read",
"responses": {
"200": {
"description": "Mark all notifications as read"
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/me/notifications/{notification_id}/archive": {
"post": {
"tags": [
"Room"
],
"operationId": "notification_archive",
"parameters": [
{
"name": "notification_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Archive notification"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/me/notifications/{notification_id}/read": {
"post": {
"tags": [
"Room"
],
"operationId": "notification_mark_read",
"parameters": [
{
"name": "notification_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Mark notification as read"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/project_room/{project_name}/room-categories": {
"get": {
"tags": [
"Room"
],
"operationId": "category_list",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List room categories",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomCategoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Room"
],
"operationId": "category_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomCategoryCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create room category",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomCategoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/project_room/{project_name}/rooms": {
"get": {
"tags": [
"Room"
],
"operationId": "room_list",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "only_public",
"in": "query",
"required": false,
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "List rooms",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Room"
],
"operationId": "room_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create room",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects": {
"post": {
"tags": [
"Project"
],
"operationId": "project_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectInitParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectInitResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/me/invitations": {
"get": {
"tags": [
"Project"
],
"operationId": "project_my_invitations",
"responses": {
"200": {
"description": "List my invitations",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_InvitationListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/me/join-requests": {
"get": {
"tags": [
"Project"
],
"operationId": "project_my_join_requests",
"responses": {
"200": {
"description": "List my join requests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_JoinRequestListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}": {
"get": {
"tags": [
"Project"
],
"operationId": "project_info",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get project info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectInfoRelational"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/activities": {
"get": {
"tags": [
"Project"
],
"operationId": "project_activities",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "event_type",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "start_date",
"in": "query",
"description": "ISO 8601 datetime, e.g. 2025-01-01T00:00:00Z",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "end_date",
"in": "query",
"description": "ISO 8601 datetime, e.g. 2025-12-31T23:59:59Z",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List project activities",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ActivityLogListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden — no access to this project"
},
"404": {
"description": "Project not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_log_activity",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivityLogParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Activity logged",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ActivityLogResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Project not found"
}
}
}
},
"/api/projects/{project_name}/audit-logs": {
"get": {
"tags": [
"Project"
],
"operationId": "project_audit_logs",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List project audit logs",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_AuditLogResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_log_audit",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuditLogParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Log project audit event",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_AuditLogResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/audit-logs/{log_id}": {
"get": {
"tags": [
"Project"
],
"operationId": "project_audit_log",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "log_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get project audit log",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_AuditLogResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/billing": {
"get": {
"tags": [
"Project"
],
"operationId": "project_billing",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get project billing",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectBillingCurrentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/billing/history": {
"get": {
"tags": [
"Project"
],
"operationId": "project_billing_history",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get project billing history",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectBillingHistoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/boards": {
"get": {
"tags": [
"Project"
],
"operationId": "board_list",
"parameters": [
{
"name": "project_name",
"in": "path",
"description": "Project name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List boards",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_BoardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "board_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateBoardParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create board",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BoardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/projects/{project_name}/boards/{board_id}": {
"get": {
"tags": [
"Project"
],
"operationId": "board_get",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "board_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Get board with columns and cards",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BoardWithColumnsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Project"
],
"operationId": "board_delete",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "board_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete board"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "board_update",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "board_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBoardParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update board",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BoardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/boards/{board_id}/columns": {
"post": {
"tags": [
"Project"
],
"operationId": "column_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "board_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateColumnParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create column",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ColumnResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Board not found"
}
}
}
},
"/api/projects/{project_name}/cards": {
"post": {
"tags": [
"Project"
],
"operationId": "card_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCardParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create card",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/projects/{project_name}/cards/{card_id}": {
"delete": {
"tags": [
"Project"
],
"operationId": "card_delete",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "card_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete card"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "card_update",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "card_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCardParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update card",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/cards/{card_id}/move": {
"post": {
"tags": [
"Project"
],
"operationId": "card_move",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "card_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MoveCardParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Move card",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CardResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/columns/{column_id}": {
"delete": {
"tags": [
"Project"
],
"operationId": "column_delete",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "column_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete column"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "column_update",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "column_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateColumnParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update column",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ColumnResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/invitations": {
"get": {
"tags": [
"Project"
],
"operationId": "project_invitations",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List project invitations",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_InvitationListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_invite_user",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InviteUserRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Invite user to project"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/invitations/accept": {
"post": {
"tags": [
"Project"
],
"operationId": "project_accept_invitation",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Accept project invitation"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/invitations/reject": {
"post": {
"tags": [
"Project"
],
"operationId": "project_reject_invitation",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Reject project invitation"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/invitations/{user_id}": {
"delete": {
"tags": [
"Project"
],
"operationId": "project_cancel_invitation",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Cancel project invitation"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/join-requests": {
"get": {
"tags": [
"Project"
],
"operationId": "project_join_requests",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "status",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List join requests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_JoinRequestListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_submit_join_request",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubmitJoinRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Submit join request"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/join-requests/{request_id}": {
"delete": {
"tags": [
"Project"
],
"operationId": "project_cancel_join_request",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "request_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Cancel join request"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "project_process_join_request",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "request_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessJoinRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Process join request"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/join-requests/{request_id}/answers": {
"get": {
"tags": [
"Project"
],
"operationId": "project_join_answers",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "request_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get join request answers",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_JoinAnswersListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_submit_join_answers",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "request_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnswerRequest"
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Submit join request answers"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/join-settings": {
"get": {
"tags": [
"Project"
],
"operationId": "project_join_settings",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get join settings",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_JoinSettingsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "project_update_join_settings",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateJoinSettingsRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update join settings",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_JoinSettingsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/labels": {
"get": {
"tags": [
"Project"
],
"operationId": "project_labels",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List project labels",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_LabelListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_create_label",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateLabelParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create project label",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_LabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/labels/{label_id}": {
"get": {
"tags": [
"Project"
],
"operationId": "project_get_label",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get project label",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_LabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Project"
],
"operationId": "project_delete_label",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete project label"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Project"
],
"operationId": "project_update_label",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateLabelParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update project label",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_LabelResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/like": {
"get": {
"tags": [
"Project"
],
"operationId": "project_is_like",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if user likes project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IsLikeResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_like",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Like project"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Project"
],
"operationId": "project_unlike",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unlike project"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/likes/count": {
"get": {
"tags": [
"Project"
],
"operationId": "project_likes_count",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get like count"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/likes/users": {
"get": {
"tags": [
"Project"
],
"operationId": "project_like_users",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List users who liked project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_LikeUserInfo"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/members": {
"get": {
"tags": [
"Project"
],
"operationId": "project_members",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List project members",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MemberListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/members/role": {
"patch": {
"tags": [
"Project"
],
"operationId": "project_update_member_role",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateMemberRoleRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update member role"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/members/{user_id}": {
"delete": {
"tags": [
"Project"
],
"operationId": "project_remove_member",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Remove member from project"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/repos": {
"get": {
"tags": [
"Project"
],
"operationId": "project_repos",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get project repositories",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectRepositoryPagination"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Project not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_repo_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectRepoCreateParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create a repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProjectRepoCreateResponse"
}
}
}
},
"400": {
"description": "Bad request"
},
"401": {
"description": "Unauthorized"
},
"409": {
"description": "Repository name already exists"
}
}
}
},
"/api/projects/{project_name}/settings/name": {
"patch": {
"tags": [
"Project"
],
"operationId": "project_exchange_name",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExchangeProjectName"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update project name"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/settings/title": {
"patch": {
"tags": [
"Project"
],
"operationId": "project_exchange_title",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExchangeProjectTitle"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update project title"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/settings/visibility": {
"patch": {
"tags": [
"Project"
],
"operationId": "project_exchange_visibility",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExchangeProjectVisibility"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update project visibility"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/skills": {
"get": {
"tags": [
"Skill"
],
"operationId": "skill_list",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List skills",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_SkillResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Project not found"
}
}
},
"post": {
"tags": [
"Skill"
],
"operationId": "skill_create",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateSkillRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create skill",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SkillResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"409": {
"description": "Skill already exists"
}
}
}
},
"/api/projects/{project_name}/skills/scan": {
"post": {
"tags": [
"Skill"
],
"operationId": "skill_scan",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Scan repos for skills",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ScanResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/projects/{project_name}/skills/{slug}": {
"get": {
"tags": [
"Skill"
],
"operationId": "skill_get",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get skill",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SkillResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Skill"
],
"operationId": "skill_delete",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete skill",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DeleteSkillResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Skill"
],
"operationId": "skill_update",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSkillRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update skill",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SkillResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/watch": {
"get": {
"tags": [
"Project"
],
"operationId": "project_is_watch",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if user watches project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_IsWatchResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Project"
],
"operationId": "project_watch",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Watch project"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Project"
],
"operationId": "project_unwatch",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unwatch project"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/watches/count": {
"get": {
"tags": [
"Project"
],
"operationId": "project_watches_count",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get watch count"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{project_name}/watches/users": {
"get": {
"tags": [
"Project"
],
"operationId": "project_watch_users",
"parameters": [
{
"name": "project_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List users watching project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_WatchUserInfo"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/projects/{source_project}/repos/{repo_name}/transfer": {
"post": {
"tags": [
"Project"
],
"operationId": "project_transfer_repo",
"parameters": [
{
"name": "source_project",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo_name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TransferRepoParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Transfer repo to another project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TransferRepoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "status",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List pull requests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PullRequestCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/summary": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_summary",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get pull request summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{number}": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete pull request"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PullRequestUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{number}/close": {
"post": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_close",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Close pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{number}/reopen": {
"post": {
"tags": [
"PullRequest"
],
"operationId": "pull_request_reopen",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Reopen pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PullRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/comments": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "path",
"in": "query",
"description": "Filter by file path",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "resolved",
"in": "query",
"description": "Filter by resolved status",
"required": false,
"schema": {
"type": "boolean"
}
},
{
"name": "file_only",
"in": "query",
"description": "Only inline comments (true) or only general comments (false)",
"required": false,
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "List pull request review comments",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewCommentCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create pull request review comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/comments/{comment_id}": {
"delete": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete pull request review comment"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewCommentUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update pull request review comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/comments/{comment_id}/replies": {
"post": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_reply",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewCommentReplyRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Reply to a comment",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/comments/{comment_id}/resolve": {
"put": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_resolve",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Mark comment as resolved",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"PullRequest"
],
"operationId": "review_comment_unresolve",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "comment_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Mark comment as unresolved",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewCommentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/commits": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "pr_commits_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"description": "Pull request number",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List commits in a pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PrCommitsListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/conflicts": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "merge_conflict_check",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Check merge conflicts",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MergeConflictResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/diff/side-by-side": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "pr_diff_side_by_side",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"description": "Pull request number",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Side-by-side diff for a pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SideBySideDiffResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/merge": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "merge_analysis",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get merge analysis",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MergeAnalysisResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"PullRequest"
],
"operationId": "merge_execute",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MergeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Execute merge",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MergeResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
},
"409": {
"description": "Conflict"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/merge/abort": {
"post": {
"tags": [
"PullRequest"
],
"operationId": "merge_abort",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Abort merge"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/merge/in_progress": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "merge_is_in_progress",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Check if merge is in progress"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/review-requests": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "review_request_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List review requests for a pull request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewRequestListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"PullRequest"
],
"operationId": "review_request_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewRequestCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create or update a review request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/review-requests/{reviewer}": {
"delete": {
"tags": [
"PullRequest"
],
"operationId": "review_request_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "reviewer",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete (cancel) a review request"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/review-requests/{reviewer}/dismiss": {
"post": {
"tags": [
"PullRequest"
],
"operationId": "review_request_dismiss",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "reviewer",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Dismiss a review request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewRequestResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/reviews": {
"get": {
"tags": [
"PullRequest"
],
"operationId": "review_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List pull request reviews",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"PullRequest"
],
"operationId": "review_submit",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewSubmitRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Submit pull request review",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"PullRequest"
],
"operationId": "review_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReviewUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update pull request review",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ReviewResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repo_pr/{namespace}/{repo}/pulls/{pr_number}/reviews/{reviewer_id}": {
"delete": {
"tags": [
"PullRequest"
],
"operationId": "review_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "reviewer_id",
"in": "path",
"description": "Reviewer UUID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete pull request review"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repos/{namespace}/{repo}/branch-protections": {
"get": {
"tags": [
"Git"
],
"operationId": "branch_protection_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List branch protection rules",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_BranchProtectionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "branch_protection_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchProtectionCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create a branch protection rule",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchProtectionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/branch-protections/check-approvals": {
"get": {
"tags": [
"Git"
],
"operationId": "branch_protection_check_approvals",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "pr_number",
"in": "query",
"description": "Pull request number",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Check approval count against branch protection",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApprovalCheckResult"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/branch-protections/{id}": {
"get": {
"tags": [
"Git"
],
"operationId": "branch_protection_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "path",
"description": "Rule id",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get a branch protection rule",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchProtectionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "branch_protection_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "path",
"description": "Rule id",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete a branch protection rule"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"patch": {
"tags": [
"Git"
],
"operationId": "branch_protection_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "path",
"description": "Rule id",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchProtectionUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update a branch protection rule",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchProtectionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_update_repo",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GitUpdateRepoRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update repository settings"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "format",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "prefix",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "max_depth",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "path_filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get archive",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive/cached": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive_cached",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "format",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "prefix",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "max_depth",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "path_filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if archive is cached",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveCachedResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive/invalidate": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive_invalidate",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "format",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "prefix",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "max_depth",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "path_filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Invalidate archive cache",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveInvalidateResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive/invalidate/{commit_oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive_invalidate_all",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Invalidate all archive caches for commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveInvalidateAllResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive/list": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "format",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "prefix",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "max_depth",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "path_filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List archive entries",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveListResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/archive/summary": {
"get": {
"tags": [
"Git"
],
"operationId": "git_archive_summary",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "format",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "prefix",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "max_depth",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "path_filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get archive summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ArchiveSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blame/{commit_oid}/{tail:.*}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blame_file",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit_oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "tail",
"in": "path",
"description": "File path within the repository",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BlameHunkResponse"
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob": {
"post": {
"tags": [
"Git"
],
"operationId": "git_blob_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BlobCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create blob",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobCreateResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob/{oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blob_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Blob object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get blob info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob/{oid}/content": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blob_content",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Blob object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get blob content",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobContentResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob/{oid}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blob_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Blob object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check blob exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob/{oid}/is-binary": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blob_is_binary",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Blob object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if blob is binary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobIsBinaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/blob/{oid}/size": {
"get": {
"tags": [
"Git"
],
"operationId": "git_blob_size",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Blob object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get blob size",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BlobSizeResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List branches",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "git_branch_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/current": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_current",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get current branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/diff": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_diff",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get branch diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchDiffResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/fast-forward/{target}": {
"post": {
"tags": [
"Git"
],
"operationId": "git_branch_fast_forward",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "target",
"in": "path",
"description": "Target branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Fast-forward branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchFastForwardResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/is-ancestor": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_is_ancestor",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if branch is ancestor",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchIsAncestorResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/is-conflicted": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_is_conflicted",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if branch has conflicts",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchIsConflictedResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/is-detached": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_is_detached",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if HEAD is detached",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchIsDetachedResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/is-merged": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_is_merged",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if branch is merged",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchIsMergedResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/merge-base": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_merge_base",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get merge base",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchMergeBaseResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/move": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_branch_move",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchMoveRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Move branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/remote/{name}": {
"delete": {
"tags": [
"Git"
],
"operationId": "git_branch_delete_remote",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Remote branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete remote branch"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/rename": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_branch_rename",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchRenameRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Rename branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/summary": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_summary",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get branch summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/upstream": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_branch_set_upstream",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchSetUpstreamRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Set upstream branch"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/{name}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_branch_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete branch"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/{name}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check branch exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/{name}/is-head": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_is_head",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if branch is HEAD",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchIsHeadResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/{name}/tracking-difference": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_tracking_difference",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tracking difference",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchTrackingDiffResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/branches/{name}/upstream": {
"get": {
"tags": [
"Git"
],
"operationId": "git_branch_upstream",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Branch name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get upstream branch",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_BranchInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_log",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "rev",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "Get commit log (paginated)",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitLogResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "git_commit_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitCreateResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/branches": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_branches",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit branches",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitBranchesResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit count",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/graph": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_graph",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit graph",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitGraphResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/graph-react": {
"get": {
"tags": [
"Git"
],
"summary": "Returns commit graph data enriched with full commit metadata (author, timestamp,\nparents, lane_index) for use with @gitgraph/react on the frontend.",
"operationId": "git_commit_graph_react",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit graph for gitgraph-react",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitGraphReactResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/reflog": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_reflog",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit reflog",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_CommitReflogEntryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/resolve": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_resolve_rev",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Resolve revision to commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/tags": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_tags",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit tags",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitTagsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/walk": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_walk",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Walk commits",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit metadata",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/amend": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_commit_amend",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitAmendRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Amend commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/ancestors": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_ancestors",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit ancestors",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/author": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_author",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit author",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitAuthorResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/cherry-pick": {
"post": {
"tags": [
"Git"
],
"operationId": "git_commit_cherry_pick",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitCherryPickRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Cherry-pick commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/cherry-pick/abort": {
"post": {
"tags": [
"Git"
],
"operationId": "git_commit_cherry_pick_abort",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitCherryPickAbortRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Abort cherry-pick",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_bool"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/descendants": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_descendants",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit descendants",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if commit exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/first-parent": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_first_parent",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit first parent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Option_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/is-commit": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_is_commit",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if object is a commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitIsCommitResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/is-merge": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_is_merge",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if commit is a merge",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitIsMergeResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/is-tip": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_is_tip",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if commit is a tip",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitIsTipResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/message": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_message",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMessageResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/parent-count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_parent_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit parent count",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitParentCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/parent-ids": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_parent_ids",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit parent IDs",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitParentIdsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/parent/{index}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_parent",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "index",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit parent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/ref-count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_ref_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit ref count",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitRefCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/refs": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_refs",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit refs",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_CommitRefInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/revert": {
"post": {
"tags": [
"Git"
],
"operationId": "git_commit_revert",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitRevertRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Revert commit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitMetaResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/revert/abort": {
"post": {
"tags": [
"Git"
],
"operationId": "git_commit_revert_abort",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommitRevertAbortRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Abort revert",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_bool"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/short-id": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_short_id",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit short ID",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitShortIdResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/summary": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_summary",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/commits/{oid}/tree-id": {
"get": {
"tags": [
"Git"
],
"operationId": "git_commit_tree_id",
"parameters": [
{
"name": "namespace",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get commit tree ID",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_CommitTreeIdResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/config/entries": {
"get": {
"tags": [
"Git"
],
"operationId": "git_config_entries",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List repository config entries",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ConfigSnapshotResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/config/{key}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_config_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "Config key",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get repository config value",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"put": {
"tags": [
"Git"
],
"operationId": "git_config_set",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "Config key",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ConfigSetRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Set repository config value"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_config_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "Config key",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete repository config key"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/config/{key}/has": {
"get": {
"tags": [
"Git"
],
"operationId": "git_config_has",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "Config key",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if repository config key exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ConfigBoolResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/contributors": {
"get": {
"tags": [
"Git"
],
"operationId": "git_contributors",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List of contributors",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ContributorsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/description": {
"get": {
"tags": [
"Git"
],
"operationId": "git_description_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get repository description",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DescriptionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"put": {
"tags": [
"Git"
],
"operationId": "git_description_set",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DescriptionQuery"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Set repository description",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DescriptionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_description_reset",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Reset repository description",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DescriptionResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/description/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_description_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if repository description exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_tree_to_tree",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "old_tree",
"in": "query",
"description": "Old tree OID (commit or tree SHA)",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "new_tree",
"in": "query",
"description": "New tree OID (commit or tree SHA)",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Tree to tree diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffResultResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/commit/{commit}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_commit_to_workdir",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit",
"in": "path",
"description": "Commit identifier",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Commit to workdir diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffResultResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/commit/{commit}/index": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_commit_to_index",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit",
"in": "path",
"description": "Commit identifier",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Commit to index diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffResultResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/index": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_index_to_tree",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Index to tree diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffResultResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/patch-id": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_patch_id",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Patch ID",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffPatchIdResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/side-by-side": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_side_by_side",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Side-by-side diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SideBySideDiffResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/stats": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_stats",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Diff statistics",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffStatsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/diff/workdir": {
"get": {
"tags": [
"Git"
],
"operationId": "git_diff_workdir_to_index",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Workdir to index diff",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_DiffResultResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/abort": {
"post": {
"tags": [
"Git"
],
"operationId": "git_merge_abort",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Abort an in-progress merge"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/analysis/{ref_name}/{their_oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_merge_analysis_for_ref",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "ref_name",
"in": "path",
"description": "Reference name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "their_oid",
"in": "path",
"description": "The OID to analyze merge against",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Perform merge analysis for a specific ref",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MergeAnalysisResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/analysis/{their_oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_merge_analysis",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "their_oid",
"in": "path",
"description": "The OID to analyze merge against",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Perform merge analysis",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MergeAnalysisResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/base/{oid1}/{oid2}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_merge_base",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid1",
"in": "path",
"description": "First commit OID",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid2",
"in": "path",
"description": "Second commit OID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get merge base of two commits",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_String"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/commits": {
"post": {
"tags": [
"Git"
],
"operationId": "git_merge_commits",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MergeCommitsRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Merge commits"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/heads": {
"get": {
"tags": [
"Git"
],
"operationId": "git_mergehead_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List merge heads",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_MergeheadInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/in-progress": {
"get": {
"tags": [
"Git"
],
"operationId": "git_merge_is_in_progress",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if merge is in progress",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/is-conflicted": {
"get": {
"tags": [
"Git"
],
"operationId": "git_merge_is_conflicted",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if merge has conflicts",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/merge/trees": {
"post": {
"tags": [
"Git"
],
"operationId": "git_merge_trees",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MergeTreesRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Merge trees"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/readme": {
"get": {
"tags": [
"Git"
],
"operationId": "git_readme",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "ref",
"in": "query",
"description": "Git reference (branch, tag, commit). Defaults to HEAD.",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get README content",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_GitReadmeResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/refs": {
"get": {
"tags": [
"Git"
],
"operationId": "git_ref_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List of refs",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RefInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"put": {
"tags": [
"Git"
],
"operationId": "git_ref_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RefUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Ref updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefUpdateResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "git_ref_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RefCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Ref created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefUpdateResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/refs/rename": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_ref_rename",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Ref renamed",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/refs/{name}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_ref_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Ref name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Ref info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_ref_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Ref name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Ref deleted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefDeleteResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/refs/{name}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_ref_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Ref name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Ref exists check",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/refs/{name}/target": {
"get": {
"tags": [
"Git"
],
"operationId": "git_ref_target",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Ref name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Ref target",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RefTargetResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/star": {
"post": {
"tags": [
"Git"
],
"operationId": "git_star",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Star the repository"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_unstar",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unstar the repository"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/star/count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_star_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get star count for the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_StarCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/star/is-starred": {
"get": {
"tags": [
"Git"
],
"operationId": "git_is_starred",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if the current user has starred the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/star/users": {
"get": {
"tags": [
"Git"
],
"operationId": "git_star_user_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "Page number",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "per_page",
"in": "query",
"description": "Items per page",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List users who starred the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_StarUserListResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List all tags",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "git_tag_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create an annotated tag",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tag count",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/lightweight": {
"post": {
"tags": [
"Git"
],
"operationId": "git_tag_create_lightweight",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagCreateLightweightRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create a lightweight tag",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/message": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_tag_update_message",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagUpdateMessageRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update tag message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/names": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_list_names",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List all tag names",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_String"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/rename": {
"patch": {
"tags": [
"Git"
],
"operationId": "git_tag_rename",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagRenameQuery"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Rename a tag",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/summary": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_summary",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tag summary",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagSummaryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get a tag by name",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_tag_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete a tag"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if a tag exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}/is-annotated": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_is_annotated",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if a tag is annotated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagIsAnnotatedResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}/message": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_message",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tag message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagMessageResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}/tagger": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_tagger",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tag tagger info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagTaggerResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tags/{name}/target": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tag_target",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"description": "Tag name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tag target OID",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TagTargetResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/diff-stats": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_diffstats",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tree diff stats",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeDiffStatsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{commit}/commit-entry-by-path": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_entry_by_commit_path",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commit",
"in": "path",
"description": "Commit OID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tree entry by commit path",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeEntryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tree info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/entry-by-path": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_entry_by_path",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tree entry by path",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeEntryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/entry-count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_entry_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get tree entry count",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeEntryCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/entry/{index}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_entry",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "index",
"in": "path",
"description": "Entry index",
"required": true,
"schema": {
"type": "integer",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "Get tree entry by index",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeEntryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/exists": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_exists",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if tree exists",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeExistsResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/is-empty": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_is_empty",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if tree is empty",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_TreeIsEmptyResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/tree/{oid}/list": {
"get": {
"tags": [
"Git"
],
"operationId": "git_tree_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "oid",
"in": "path",
"description": "Tree object ID",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List tree entries",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_TreeEntryResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/watch": {
"post": {
"tags": [
"Git"
],
"operationId": "git_watch",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GitWatchRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Watch the repository"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_unwatch",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unwatch the repository"
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/watch/count": {
"get": {
"tags": [
"Git"
],
"operationId": "git_watch_count",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get watch count for the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WatchCountResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/watch/is-watched": {
"get": {
"tags": [
"Git"
],
"operationId": "git_is_watched",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if the current user is watching the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Value"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/watch/users": {
"get": {
"tags": [
"Git"
],
"operationId": "git_watch_user_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Project namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "Page number",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "per_page",
"in": "query",
"description": "Items per page",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "List users who are watching the repository",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WatchUserListResponse"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ApiError"
}
}
}
}
}
}
},
"/api/repos/{namespace}/{repo}/git/webhooks": {
"get": {
"tags": [
"Git"
],
"operationId": "git_webhook_list",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List webhooks",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WebhookListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Git"
],
"operationId": "git_webhook_create",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateWebhookParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create webhook",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WebhookResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/repos/{namespace}/{repo}/git/webhooks/{webhook_id}": {
"get": {
"tags": [
"Git"
],
"operationId": "git_webhook_get",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "webhook_id",
"in": "path",
"description": "Webhook ID",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get webhook",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WebhookResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Git"
],
"operationId": "git_webhook_delete",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "webhook_id",
"in": "path",
"description": "Webhook ID",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete webhook"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Git"
],
"operationId": "git_webhook_update",
"parameters": [
{
"name": "namespace",
"in": "path",
"description": "Repository namespace",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "repo",
"in": "path",
"description": "Repository name",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "webhook_id",
"in": "path",
"description": "Webhook ID",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateWebhookParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update webhook",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WebhookResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/room-categories/{category_id}": {
"delete": {
"tags": [
"Room"
],
"operationId": "category_delete",
"parameters": [
{
"name": "category_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete room category"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Room"
],
"operationId": "category_update",
"parameters": [
{
"name": "category_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomCategoryUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update room category",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomCategoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}": {
"get": {
"tags": [
"Room"
],
"operationId": "room_get",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Get room",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Room"
],
"operationId": "room_delete",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete room"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"Room"
],
"operationId": "room_update",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update room",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/ai": {
"get": {
"tags": [
"Room"
],
"operationId": "ai_list",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "List room AI configurations",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomAiResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"put": {
"tags": [
"Room"
],
"operationId": "ai_upsert",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomAiUpsertRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Upsert room AI configuration",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomAiResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/ai/{model_id}": {
"delete": {
"tags": [
"Room"
],
"operationId": "ai_delete",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "model_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Delete room AI configuration"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/members": {
"get": {
"tags": [
"Room"
],
"operationId": "member_list",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "List room members",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomMemberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Room"
],
"operationId": "member_add",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomMemberAddRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add room member",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMemberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/members/me/read-seq": {
"patch": {
"tags": [
"Room"
],
"operationId": "member_set_read_seq",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomMemberReadSeqRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Set member read sequence",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMemberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/members/{user_id}": {
"delete": {
"tags": [
"Room"
],
"operationId": "member_remove",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Remove room member"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/members/{user_id}/role": {
"patch": {
"tags": [
"Room"
],
"operationId": "member_update_role",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomMemberRoleUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update member role",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMemberResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages": {
"post": {
"tags": [
"Room"
],
"operationId": "message_create",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomMessageCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create room message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMessageResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages/search": {
"get": {
"tags": [
"Room"
],
"operationId": "message_search",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "q",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "limit",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "offset",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "Search messages",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MessageSearchResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages/{message_id}": {
"patch": {
"tags": [
"Room"
],
"operationId": "message_update",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "message_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomMessageUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update room message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMessageResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages/{message_id}/edit-history": {
"get": {
"tags": [
"Room"
],
"operationId": "message_edit_history",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "message_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Get message edit history",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_MessageEditHistoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages/{message_id}/pin": {
"post": {
"tags": [
"Room"
],
"operationId": "pin_add",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "message_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Add room pin",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomPinResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"Room"
],
"operationId": "pin_remove",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "message_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Remove room pin"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/messages/{message_id}/revoke": {
"post": {
"tags": [
"Room"
],
"operationId": "message_revoke",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "message_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Revoke room message",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMessageResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/pins": {
"get": {
"tags": [
"Room"
],
"operationId": "pin_list",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "List room pins",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomPinResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/threads": {
"get": {
"tags": [
"Room"
],
"operationId": "thread_list",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "List room threads",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_RoomThreadResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"post": {
"tags": [
"Room"
],
"operationId": "thread_create",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RoomThreadCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create room thread",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomThreadResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/rooms/{room_id}/threads/{thread_id}/messages": {
"get": {
"tags": [
"Room"
],
"operationId": "thread_messages",
"parameters": [
{
"name": "room_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "thread_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "before_seq",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "after_seq",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "limit",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List thread messages",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_RoomMessageListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/search": {
"get": {
"tags": [
"Search"
],
"operationId": "search",
"parameters": [
{
"name": "q",
"in": "query",
"description": "Search keyword",
"required": true,
"schema": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
{
"name": "type",
"in": "query",
"description": "Comma-separated types: projects,repos,issues,users. Default: all",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "Page number, default 1",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"description": "Results per page, default 20, max 100",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "Search results",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SearchResponse"
}
}
}
},
"400": {
"description": "Bad request"
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/access-keys": {
"get": {
"tags": [
"User"
],
"operationId": "list_access_keys",
"responses": {
"200": {
"description": "List access keys",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_AccessKeyListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"User"
],
"operationId": "create_access_key",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateAccessKeyParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create access key",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_AccessKeyResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/access-keys/{access_key_id}": {
"delete": {
"tags": [
"User"
],
"operationId": "delete_access_key",
"parameters": [
{
"name": "access_key_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete access key"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/me/heatmap": {
"get": {
"tags": [
"User"
],
"operationId": "get_my_contribution_heatmap",
"responses": {
"200": {
"description": "Get my contribution heatmap",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ContributionHeatmapResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/keys": {
"get": {
"tags": [
"User"
],
"operationId": "list_ssh_keys",
"responses": {
"200": {
"description": "List SSH keys",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SshKeyListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"User"
],
"operationId": "add_ssh_key",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddSshKeyParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add SSH key",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SshKeyResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/keys/{key_id}": {
"get": {
"tags": [
"User"
],
"operationId": "get_ssh_key",
"parameters": [
{
"name": "key_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Get SSH key",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SshKeyResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"User"
],
"operationId": "delete_ssh_key",
"parameters": [
{
"name": "key_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "Delete SSH key"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"patch": {
"tags": [
"User"
],
"operationId": "update_ssh_key",
"parameters": [
{
"name": "key_id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSshKeyParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update SSH key",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_SshKeyResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/me/notifications/preferences": {
"get": {
"tags": [
"User"
],
"operationId": "get_notification_preferences",
"responses": {
"200": {
"description": "Get notification preferences",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_NotificationPreferencesResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"patch": {
"tags": [
"User"
],
"operationId": "update_notification_preferences",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotificationPreferencesParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update notification preferences",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_NotificationPreferencesResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/preferences": {
"get": {
"tags": [
"User"
],
"operationId": "get_preferences",
"responses": {
"200": {
"description": "Get user preferences",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PreferencesResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"patch": {
"tags": [
"User"
],
"operationId": "update_preferences",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PreferencesParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update user preferences",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_PreferencesResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/profile": {
"get": {
"tags": [
"User"
],
"operationId": "get_my_profile",
"responses": {
"200": {
"description": "Get current user profile",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProfileResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
},
"patch": {
"tags": [
"User"
],
"operationId": "update_my_profile",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateProfileParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update current user profile",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProfileResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/projects": {
"get": {
"tags": [
"User"
],
"operationId": "get_current_user_projects",
"responses": {
"200": {
"description": "Get current user projects",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_UserProjectsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/me/repos": {
"get": {
"tags": [
"User"
],
"operationId": "get_current_user_repos",
"responses": {
"200": {
"description": "Get current user repos",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_UserReposResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/users/{username}": {
"get": {
"tags": [
"User"
],
"operationId": "get_profile_by_username",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get user profile",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ProfileResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/follow": {
"get": {
"tags": [
"User"
],
"operationId": "is_subscribed_to_target",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Check if following user"
},
"401": {
"description": "Unauthorized"
}
}
},
"post": {
"tags": [
"User"
],
"operationId": "subscribe_target",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Follow user"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
},
"delete": {
"tags": [
"User"
],
"operationId": "unsubscribe_target",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Unfollow user"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/followers": {
"get": {
"tags": [
"User"
],
"operationId": "get_subscribers",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List followers",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_SubscriptionInfo"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/followers/count": {
"get": {
"tags": [
"User"
],
"operationId": "get_subscriber_count",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get follower count"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/following/count": {
"get": {
"tags": [
"User"
],
"operationId": "get_subscription_count",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get following count"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/heatmap": {
"get": {
"tags": [
"User"
],
"operationId": "get_contribution_heatmap",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get contribution heatmap",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_ContributionHeatmapResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/info": {
"get": {
"tags": [
"User"
],
"operationId": "get_user_info",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get user info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_UserInfoExternal"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/projects": {
"get": {
"tags": [
"User"
],
"operationId": "get_user_projects",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get user projects",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_UserProjectsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/users/{username}/repos": {
"get": {
"tags": [
"User"
],
"operationId": "get_user_repos",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get user repos",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_UserReposResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not found"
}
}
}
},
"/api/workspaces": {
"post": {
"tags": [
"Workspace"
],
"operationId": "workspace_create",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkspaceInitParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create workspace",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"409": {
"description": "Slug or name already exists"
}
}
}
},
"/api/workspaces/invitations/accept": {
"post": {
"tags": [
"Workspace"
],
"operationId": "workspace_accept_invitation",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkspaceInviteAcceptParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Accept invitation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceInfoResponse"
}
}
}
},
"400": {
"description": "Invalid or expired token"
},
"401": {
"description": "Unauthorized"
},
"409": {
"description": "Already accepted"
}
}
}
},
"/api/workspaces/me": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_list",
"responses": {
"200": {
"description": "List my workspaces",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceListResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/workspaces/{slug}": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_info",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get workspace info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Workspace not found"
}
}
},
"delete": {
"tags": [
"Workspace"
],
"operationId": "workspace_delete",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Delete workspace"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied (owner only)"
},
"404": {
"description": "Workspace not found"
}
}
},
"patch": {
"tags": [
"Workspace"
],
"operationId": "workspace_update",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkspaceUpdateParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update workspace",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceInfoResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "Workspace not found"
},
"409": {
"description": "Name already exists"
}
}
}
},
"/api/workspaces/{slug}/billing": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_billing_current",
"parameters": [
{
"name": "slug",
"in": "path",
"description": "Workspace slug",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get workspace billing info",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceBillingCurrentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Not a workspace member"
},
"404": {
"description": "Workspace not found"
}
}
}
},
"/api/workspaces/{slug}/billing/credits": {
"post": {
"tags": [
"Workspace"
],
"operationId": "workspace_billing_add_credit",
"parameters": [
{
"name": "slug",
"in": "path",
"description": "Workspace slug",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkspaceBillingAddCreditParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Add credit to workspace billing",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceBillingCurrentResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Not a workspace member"
}
}
}
},
"/api/workspaces/{slug}/billing/history": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_billing_history",
"parameters": [
{
"name": "slug",
"in": "path",
"description": "Workspace slug",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get workspace billing history",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceBillingHistoryResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
},
"/api/workspaces/{slug}/invitations": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_pending_invitations",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List pending invitations",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_Vec_PendingInvitationInfo"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "Workspace not found"
}
}
},
"post": {
"tags": [
"Workspace"
],
"operationId": "workspace_invite_member",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkspaceInviteParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Send invitation"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "User not found"
},
"409": {
"description": "Already a member"
}
}
}
},
"/api/workspaces/{slug}/invitations/{user_id}": {
"delete": {
"tags": [
"Workspace"
],
"operationId": "workspace_cancel_invitation",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Cancel invitation"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "Invitation not found"
}
}
}
},
"/api/workspaces/{slug}/members": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_members",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
},
{
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
],
"responses": {
"200": {
"description": "List workspace members",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceMembersResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Not a member"
},
"404": {
"description": "Workspace not found"
}
}
}
},
"/api/workspaces/{slug}/members/role": {
"patch": {
"tags": [
"Workspace"
],
"operationId": "workspace_update_member_role",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRoleParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update member role"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "Workspace or member not found"
}
}
}
},
"/api/workspaces/{slug}/members/{user_id}": {
"delete": {
"tags": [
"Workspace"
],
"operationId": "workspace_remove_member",
"parameters": [
{
"name": "slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "user_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "Remove member"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Permission denied"
},
"404": {
"description": "Member not found"
}
}
}
},
"/api/workspaces/{slug}/projects": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_projects",
"parameters": [
{
"name": "slug",
"in": "path",
"description": "Workspace slug",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List workspace projects",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceProjectsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Not a workspace member"
},
"404": {
"description": "Workspace not found"
}
}
}
},
"/api/workspaces/{slug}/stats": {
"get": {
"tags": [
"Workspace"
],
"operationId": "workspace_stats",
"parameters": [
{
"name": "slug",
"in": "path",
"description": "Workspace slug",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Get workspace stats",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiResponse_WorkspaceStatsResponse"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Not a workspace member"
},
"404": {
"description": "Workspace not found"
}
}
}
}
},
"components": {
"schemas": {
"AccessKeyListResponse": {
"type": "object",
"required": [
"access_keys",
"total"
],
"properties": {
"access_keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccessKeyResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
},
"AccessKeyResponse": {
"type": "object",
"required": [
"id",
"name",
"scopes",
"is_revoked",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
},
"access_key": {
"type": [
"string",
"null"
]
},
"scopes": {
"type": "array",
"items": {
"type": "string"
}
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_revoked": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ActivityLogListResponse": {
"type": "object",
"required": [
"logs",
"total",
"page",
"per_page"
],
"properties": {
"logs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityLogResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"user_role": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/MemberRole",
"description": "The current user's role in the project."
}
]
}
}
},
"ActivityLogParams": {
"type": "object",
"required": [
"event_type",
"title",
"is_private"
],
"properties": {
"event_type": {
"type": "string"
},
"title": {
"type": "string"
},
"repo_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"content": {
"type": [
"string",
"null"
]
},
"event_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"event_sub_id": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"metadata": {},
"is_private": {
"type": "boolean"
}
}
},
"ActivityLogResponse": {
"type": "object",
"required": [
"id",
"project_uid",
"actor_uid",
"event_type",
"title",
"is_private",
"visibility",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"repo_uid": {
"type": "string",
"format": "uuid"
},
"actor_uid": {
"type": "string",
"format": "uuid"
},
"event_type": {
"type": "string"
},
"title": {
"type": "string"
},
"content": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"visibility": {
"type": "string"
},
"created_at": {
"type": "string"
}
}
},
"AddSshKeyParams": {
"type": "object",
"required": [
"title",
"public_key"
],
"properties": {
"title": {
"type": "string"
},
"public_key": {
"type": "string"
}
}
},
"AnswerRequest": {
"type": "object",
"required": [
"question",
"answer"
],
"properties": {
"question": {
"type": "string"
},
"answer": {
"type": "string"
}
}
},
"ApiError": {
"type": "object",
"required": [
"code",
"error",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32",
"description": "Error numeric code"
},
"error": {
"type": "string",
"description": "Error slug identifier"
},
"message": {
"type": "string",
"description": "Human-readable error message"
}
}
},
"ApiResponse_AccessKeyListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"access_keys",
"total"
],
"properties": {
"access_keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccessKeyResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_AccessKeyResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"name",
"scopes",
"is_revoked",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
},
"access_key": {
"type": [
"string",
"null"
]
},
"scopes": {
"type": "array",
"items": {
"type": "string"
}
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_revoked": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ActivityLogListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"logs",
"total",
"page",
"per_page"
],
"properties": {
"logs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityLogResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"user_role": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/MemberRole",
"description": "The current user's role in the project."
}
]
}
}
}
}
},
"ApiResponse_ActivityLogResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project_uid",
"actor_uid",
"event_type",
"title",
"is_private",
"visibility",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"repo_uid": {
"type": "string",
"format": "uuid"
},
"actor_uid": {
"type": "string",
"format": "uuid"
},
"event_type": {
"type": "string"
},
"title": {
"type": "string"
},
"content": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"visibility": {
"type": "string"
},
"created_at": {
"type": "string"
}
}
}
}
},
"ApiResponse_ApiError": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"code",
"error",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32",
"description": "Error numeric code"
},
"error": {
"type": "string",
"description": "Error slug identifier"
},
"message": {
"type": "string",
"description": "Human-readable error message"
}
}
}
}
},
"ApiResponse_ApprovalCheckResult": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"enough_approvals",
"approvals",
"required",
"reviewers"
],
"properties": {
"enough_approvals": {
"type": "boolean"
},
"approvals": {
"type": "integer",
"format": "int32"
},
"required": {
"type": "integer",
"format": "int32"
},
"reviewers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewerInfo"
}
}
}
}
}
},
"ApiResponse_ArchiveCachedResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"format",
"cached"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"cached": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_ArchiveInvalidateAllResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"count"
],
"properties": {
"commit_oid": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_ArchiveInvalidateResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"format",
"invalidated"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"invalidated": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_ArchiveListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"entries",
"total_entries"
],
"properties": {
"commit_oid": {
"type": "string"
},
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ArchiveEntryResponse"
}
},
"total_entries": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_ArchiveResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"format",
"size",
"data"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"data": {
"type": "string"
}
}
}
}
},
"ApiResponse_ArchiveSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commit_oid",
"format",
"total_entries",
"total_size"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"total_entries": {
"type": "integer",
"minimum": 0
},
"total_size": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_AuditLogResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project_uid",
"actor_uid",
"action"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"actor_uid": {
"type": "string",
"format": "uuid"
},
"action": {
"type": "string"
},
"details": {
"type": "object"
}
}
}
}
},
"ApiResponse_BlobContentResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"size",
"is_binary",
"content"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"is_binary": {
"type": "boolean"
},
"content": {
"type": "string"
}
}
}
}
},
"ApiResponse_BlobCreateResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"size"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_BlobExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BlobInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"size",
"is_binary"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BlobIsBinaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"is_binary"
],
"properties": {
"oid": {
"type": "string"
},
"is_binary": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BlobSizeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"size"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_BoardResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project",
"name",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_BoardWithColumnsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"board",
"columns"
],
"properties": {
"board": {
"$ref": "#/components/schemas/BoardResponse"
},
"columns": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ColumnWithCardsResponse"
}
}
}
}
}
},
"ApiResponse_BranchDiffResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"ahead",
"behind",
"diverged"
],
"properties": {
"ahead": {
"type": "integer",
"minimum": 0
},
"behind": {
"type": "integer",
"minimum": 0
},
"diverged": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchFastForwardResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
}
}
},
"ApiResponse_BranchInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"oid",
"is_head",
"is_remote",
"is_current"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"is_head": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_current": {
"type": "boolean"
},
"upstream": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_BranchIsAncestorResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"child",
"ancestor",
"is_ancestor"
],
"properties": {
"child": {
"type": "string"
},
"ancestor": {
"type": "string"
},
"is_ancestor": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchIsConflictedResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"is_conflicted"
],
"properties": {
"is_conflicted": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchIsDetachedResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"is_detached"
],
"properties": {
"is_detached": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchIsHeadResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"is_head"
],
"properties": {
"name": {
"type": "string"
},
"is_head": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchIsMergedResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"branch",
"into",
"is_merged"
],
"properties": {
"branch": {
"type": "string"
},
"into": {
"type": "string"
},
"is_merged": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchMergeBaseResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"branch1",
"branch2",
"base"
],
"properties": {
"branch1": {
"type": "string"
},
"branch2": {
"type": "string"
},
"base": {
"type": "string"
}
}
}
}
},
"ApiResponse_BranchProtectionResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"repo",
"branch",
"forbid_push",
"forbid_pull",
"forbid_merge",
"forbid_deletion",
"forbid_force_push",
"forbid_tag_push",
"required_approvals",
"dismiss_stale_reviews",
"require_linear_history",
"allow_fork_syncing"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"repo": {
"type": "string",
"format": "uuid"
},
"branch": {
"type": "string"
},
"forbid_push": {
"type": "boolean"
},
"forbid_pull": {
"type": "boolean"
},
"forbid_merge": {
"type": "boolean"
},
"forbid_deletion": {
"type": "boolean"
},
"forbid_force_push": {
"type": "boolean"
},
"forbid_tag_push": {
"type": "boolean"
},
"required_approvals": {
"type": "integer",
"format": "int32"
},
"dismiss_stale_reviews": {
"type": "boolean"
},
"require_linear_history": {
"type": "boolean"
},
"allow_fork_syncing": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_BranchSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"local_count",
"remote_count",
"all_count"
],
"properties": {
"local_count": {
"type": "integer",
"minimum": 0
},
"remote_count": {
"type": "integer",
"minimum": 0
},
"all_count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_BranchTrackingDiffResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"ahead",
"behind"
],
"properties": {
"name": {
"type": "string"
},
"ahead": {
"type": "integer",
"minimum": 0
},
"behind": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CaptchaResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"base64",
"req"
],
"properties": {
"base64": {
"type": "string"
},
"rsa": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/RsaResponse"
}
]
},
"req": {
"$ref": "#/components/schemas/CaptchaQuery"
}
}
}
}
},
"ApiResponse_CardResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"column",
"title",
"position",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"column": {
"type": "string",
"format": "uuid"
},
"issue_id": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"project": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"position": {
"type": "integer",
"format": "int32"
},
"assignee_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"due_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"priority": {
"type": [
"string",
"null"
]
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ColumnResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"board",
"name",
"position"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"board": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"wip_limit": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"color": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_CommitAuthorResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"author"
],
"properties": {
"oid": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
}
}
}
}
},
"ApiResponse_CommitBranchesResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"data": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"propertyNames": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_CommitCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitCreateResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
}
}
},
"ApiResponse_CommitExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_CommitGraphReactResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commits",
"lanes",
"max_parents"
],
"properties": {
"commits": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitGraphReactCommit"
}
},
"lanes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LaneInfo"
}
},
"max_parents": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitGraphResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"lines",
"max_parents"
],
"properties": {
"lines": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitGraphLineResponse"
}
},
"max_parents": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitIsCommitResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"is_commit"
],
"properties": {
"oid": {
"type": "string"
},
"is_commit": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_CommitIsMergeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"is_merge"
],
"properties": {
"oid": {
"type": "string"
},
"is_merge": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_CommitIsTipResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"is_tip"
],
"properties": {
"oid": {
"type": "string"
},
"is_tip": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_CommitLogResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"per_page",
"total_pages"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitMetaResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
},
"page": {
"type": "integer",
"minimum": 0
},
"per_page": {
"type": "integer",
"minimum": 0
},
"total_pages": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitMessageResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"message"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
}
}
}
}
},
"ApiResponse_CommitMetaResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"message",
"summary",
"author",
"committer",
"tree_id",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
},
"summary": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"committer": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"tree_id": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"encoding": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_CommitParentCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"parent_count"
],
"properties": {
"oid": {
"type": "string"
},
"parent_count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitParentIdsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_CommitRefCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"ref_count"
],
"properties": {
"oid": {
"type": "string"
},
"ref_count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_CommitShortIdResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"short_id"
],
"properties": {
"oid": {
"type": "string"
},
"short_id": {
"type": "string"
}
}
}
}
},
"ApiResponse_CommitSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"summary"
],
"properties": {
"oid": {
"type": "string"
},
"summary": {
"type": "string"
}
}
}
}
},
"ApiResponse_CommitTagsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"data": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"propertyNames": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_CommitTreeIdResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"tree_id"
],
"properties": {
"oid": {
"type": "string"
},
"tree_id": {
"type": "string"
}
}
}
}
},
"ApiResponse_ConfigBoolResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_ConfigSnapshotResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"entries"
],
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConfigEntryResponse"
}
}
}
}
}
},
"ApiResponse_ContextMe": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"uid",
"username",
"has_unread_notifications"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"has_unread_notifications": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_ContributionHeatmapResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"username",
"total_contributions",
"heatmap",
"start_date",
"end_date"
],
"properties": {
"username": {
"type": "string"
},
"total_contributions": {
"type": "integer",
"format": "int64"
},
"heatmap": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContributionHeatmapItem"
}
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
}
}
}
}
},
"ApiResponse_ContributorsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"total",
"contributors"
],
"properties": {
"total": {
"type": "integer",
"minimum": 0
},
"contributors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContributorStats"
}
}
}
}
}
},
"ApiResponse_DeleteSkillResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"deleted",
"slug"
],
"properties": {
"deleted": {
"type": "boolean"
},
"slug": {
"type": "string"
}
}
}
}
},
"ApiResponse_DescriptionResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"description"
],
"properties": {
"description": {
"type": "string"
}
}
}
}
},
"ApiResponse_DiffPatchIdResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"old_tree",
"new_tree",
"patch_id"
],
"properties": {
"old_tree": {
"type": "string"
},
"new_tree": {
"type": "string"
},
"patch_id": {
"type": "string"
}
}
}
}
},
"ApiResponse_DiffResultResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"stats",
"deltas"
],
"properties": {
"stats": {
"$ref": "#/components/schemas/DiffStatsResponse"
},
"deltas": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DiffDeltaResponse"
}
}
}
}
}
},
"ApiResponse_DiffStatsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"files_changed",
"insertions",
"deletions"
],
"properties": {
"files_changed": {
"type": "integer",
"minimum": 0
},
"insertions": {
"type": "integer",
"minimum": 0
},
"deletions": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_EmailResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"email": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_GitInitResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"path",
"is_bare"
],
"properties": {
"path": {
"type": "string"
},
"is_bare": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_GitReadmeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"path": {
"type": [
"string",
"null"
]
},
"content": {
"type": [
"string",
"null"
]
},
"size": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"encoding": {
"type": [
"string",
"null"
]
},
"truncated": {
"type": "boolean"
},
"is_binary": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_InvitationListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"invitations",
"total",
"page",
"per_page"
],
"properties": {
"invitations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/InvitationResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_IsLikeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"is_like"
],
"properties": {
"is_like": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_IsWatchResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"is_watching"
],
"properties": {
"is_watching": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_IssueAssigneeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"assigned_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"assigned_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueCommentListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"comments",
"total",
"page",
"per_page"
],
"properties": {
"comments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IssueCommentResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_IssueCommentResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"issue",
"author",
"author_username",
"body",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"issue": {
"type": "string",
"format": "uuid"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": "string"
},
"body": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueLabelResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issue",
"label_id",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"label_id": {
"type": "integer",
"format": "int64"
},
"label_name": {
"type": [
"string",
"null"
]
},
"label_color": {
"type": [
"string",
"null"
]
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issues",
"total",
"page",
"per_page"
],
"properties": {
"issues": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IssueResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_IssuePullRequestResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issue",
"repo",
"number",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueRepoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issue",
"repo",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project",
"number",
"title",
"state",
"author",
"created_at",
"updated_at",
"created_by_ai"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"milestone": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"closed_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_by_ai": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_IssueSubscriberResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"subscribed",
"created_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"subscribed": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_IssueSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"total",
"open",
"closed"
],
"properties": {
"total": {
"type": "integer",
"format": "int64"
},
"open": {
"type": "integer",
"format": "int64"
},
"closed": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_JoinAnswersListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"request_id",
"project_uid",
"answers"
],
"properties": {
"request_id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string"
},
"answers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JoinAnswerResponse"
}
}
}
}
}
},
"ApiResponse_JoinRequestListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"requests",
"total",
"page",
"per_page"
],
"properties": {
"requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JoinRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_JoinSettingsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"project_uid",
"require_approval",
"require_questions",
"questions"
],
"properties": {
"project_uid": {
"type": "string"
},
"require_approval": {
"type": "boolean"
},
"require_questions": {
"type": "boolean"
},
"questions": {}
}
}
}
},
"ApiResponse_LabelListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"labels",
"total"
],
"properties": {
"labels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LabelResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_LabelResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project_uid",
"name",
"color",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"color": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_MemberListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"members",
"total",
"page",
"per_page"
],
"properties": {
"members": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MemberInfo"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_MergeAnalysisResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"can_fast_forward",
"is_up_to_date",
"is_normal",
"analysis_flags",
"supported_strategies"
],
"properties": {
"can_fast_forward": {
"type": "boolean"
},
"is_up_to_date": {
"type": "boolean"
},
"is_normal": {
"type": "boolean"
},
"analysis_flags": {
"type": "array",
"items": {
"type": "string"
}
},
"supported_strategies": {
"type": "array",
"items": {
"type": "string"
},
"description": "Strategies supported given the current state of the PR."
}
}
}
}
},
"ApiResponse_MergeConflictResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"has_conflicts",
"conflicted_files"
],
"properties": {
"has_conflicts": {
"type": "boolean"
},
"conflicted_files": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MergeConflictFile"
}
}
}
}
}
},
"ApiResponse_MergeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo",
"number",
"status",
"merged_by",
"merged_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"status": {
"type": "string"
},
"merged_by": {
"type": "string",
"format": "uuid"
},
"merged_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_MessageEditHistoryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"message_id",
"history",
"total_edits"
],
"properties": {
"message_id": {
"type": "string",
"format": "uuid"
},
"history": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MessageEditHistoryEntry"
}
},
"total_edits": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_MessageSearchResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"messages",
"total"
],
"properties": {
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RoomMessageResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_NotificationListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"notifications",
"total",
"unread_count"
],
"properties": {
"notifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"unread_count": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_NotificationPreferencesResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"user_id",
"email_enabled",
"in_app_enabled",
"push_enabled",
"digest_mode",
"dnd_enabled",
"marketing_enabled",
"security_enabled",
"product_enabled",
"created_at",
"updated_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"email_enabled": {
"type": "boolean"
},
"in_app_enabled": {
"type": "boolean"
},
"push_enabled": {
"type": "boolean"
},
"digest_mode": {
"type": "string"
},
"dnd_enabled": {
"type": "boolean"
},
"dnd_start_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"marketing_enabled": {
"type": "boolean"
},
"security_enabled": {
"type": "boolean"
},
"product_enabled": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_Option_CommitMetaResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"oid",
"message",
"summary",
"author",
"committer",
"tree_id",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
},
"summary": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"committer": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"tree_id": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"encoding": {
"type": [
"string",
"null"
]
}
}
}
]
}
}
},
"ApiResponse_PrCommitsListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"commits"
],
"properties": {
"commits": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PrCommitResponse"
}
}
}
}
}
},
"ApiResponse_PreferencesResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"language",
"theme",
"timezone",
"email_notifications",
"in_app_notifications",
"created_at",
"updated_at"
],
"properties": {
"language": {
"type": "string"
},
"theme": {
"type": "string"
},
"timezone": {
"type": "string"
},
"email_notifications": {
"type": "boolean"
},
"in_app_notifications": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ProfileResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"uid",
"username",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"last_sign_in_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
}
}
},
"ApiResponse_ProjectBillingCurrentResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"project_uid",
"currency",
"monthly_quota",
"balance",
"month_used",
"cycle_start_utc",
"cycle_end_utc",
"updated_at",
"created_at"
],
"properties": {
"project_uid": {
"type": "string",
"format": "uuid"
},
"currency": {
"type": "string"
},
"monthly_quota": {
"type": "number",
"format": "double"
},
"balance": {
"type": "number",
"format": "double"
},
"month_used": {
"type": "number",
"format": "double"
},
"cycle_start_utc": {
"type": "string",
"format": "date-time"
},
"cycle_end_utc": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ProjectBillingHistoryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"page",
"per_page",
"total",
"list"
],
"properties": {
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"list": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectBillingHistoryItem"
}
}
}
}
}
},
"ApiResponse_ProjectInfoRelational": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at",
"created_by",
"created_username_name",
"member_count",
"like_count",
"watch_count",
"keys",
"labels",
"is_like",
"is_watch"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_username_name": {
"type": "string"
},
"created_display_name": {
"type": [
"string",
"null"
]
},
"created_avatar_url": {
"type": [
"string",
"null"
]
},
"member_count": {
"type": "integer",
"format": "int64"
},
"like_count": {
"type": "integer",
"format": "int64"
},
"watch_count": {
"type": "integer",
"format": "int64"
},
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectInfoKeyValue"
}
},
"labels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectInfoLabel"
}
},
"role": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/MemberRole"
}
]
},
"is_like": {
"type": "boolean"
},
"is_watch": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_ProjectInitResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"params",
"project"
],
"properties": {
"params": {
"$ref": "#/components/schemas/ProjectInitParams"
},
"project": {
"$ref": "#/components/schemas/ProjectModel"
}
}
}
}
},
"ApiResponse_ProjectRepoCreateResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"uid",
"repo_name",
"default_branch",
"project_name",
"is_private",
"storage_path",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"repo_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"default_branch": {
"type": "string"
},
"project_name": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"storage_path": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ProjectRepositoryPagination": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"items",
"total"
],
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectRepositoryItem"
}
},
"cursor": {
"type": [
"string",
"null"
]
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_PullRequestListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"pull_requests",
"total",
"page",
"per_page"
],
"properties": {
"pull_requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PullRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_PullRequestResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo",
"number",
"title",
"author",
"base",
"head",
"status",
"created_at",
"updated_at",
"created_by_ai"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"issue": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"base": {
"type": "string"
},
"head": {
"type": "string"
},
"status": {
"type": "string"
},
"merged_by": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"merged_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_by_ai": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_PullRequestSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"total",
"open",
"merged",
"closed"
],
"properties": {
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"open": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"merged": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"closed": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_ReactionListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"reactions"
],
"properties": {
"reactions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReactionSummary"
}
}
}
}
}
},
"ApiResponse_ReactionResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"user",
"reaction",
"created_at"
],
"properties": {
"user": {
"type": "string",
"format": "uuid"
},
"reaction": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_RefDeleteResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"oid"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
}
}
}
}
},
"ApiResponse_RefExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_RefInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"is_symbolic",
"is_branch",
"is_remote",
"is_tag",
"is_note"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
},
"target": {
"type": [
"string",
"null"
]
},
"is_symbolic": {
"type": "boolean"
},
"is_branch": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_tag": {
"type": "boolean"
},
"is_note": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_RefTargetResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_RefUpdateResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"old_oid": {
"type": [
"string",
"null"
]
},
"new_oid": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_ReviewCommentListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"comments",
"threads",
"total"
],
"properties": {
"comments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewCommentResponse"
},
"description": "Flat list of all comments (kept for backward compatibility)."
},
"threads": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewCommentThread"
},
"description": "Comments grouped into threads (root comments with their replies)."
},
"total": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_ReviewCommentResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo",
"number",
"id",
"body",
"author",
"resolved",
"created_at",
"updated_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "integer",
"format": "int64"
},
"review": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"path": {
"type": [
"string",
"null"
]
},
"side": {
"type": [
"string",
"null"
]
},
"line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"old_line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"body": {
"type": "string"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"resolved": {
"type": "boolean"
},
"in_reply_to": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ReviewListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"reviews"
],
"properties": {
"reviews": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewResponse"
}
}
}
}
}
},
"ApiResponse_ReviewRequestListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"requests",
"total"
],
"properties": {
"requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_ReviewRequestResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo",
"number",
"reviewer",
"requested_by",
"requested_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"reviewer": {
"type": "string",
"format": "uuid"
},
"reviewer_username": {
"type": [
"string",
"null"
]
},
"requested_by": {
"type": "string",
"format": "uuid"
},
"requested_by_username": {
"type": [
"string",
"null"
]
},
"requested_at": {
"type": "string",
"format": "date-time"
},
"dismissed_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"dismissed_by": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"dismissed_by_username": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_ReviewResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo",
"number",
"reviewer",
"state",
"created_at",
"updated_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"reviewer": {
"type": "string",
"format": "uuid"
},
"reviewer_username": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"submitted_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_RoomAiResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"room",
"model",
"call_count",
"use_exact",
"think",
"stream",
"created_at",
"updated_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"model": {
"type": "string",
"format": "uuid"
},
"version": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"call_count": {
"type": "integer",
"format": "int64"
},
"last_call_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"history_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"system_prompt": {
"type": [
"string",
"null"
]
},
"temperature": {
"type": [
"number",
"null"
],
"format": "double"
},
"max_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"use_exact": {
"type": "boolean"
},
"think": {
"type": "boolean"
},
"stream": {
"type": "boolean"
},
"min_score": {
"type": [
"number",
"null"
],
"format": "float"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_RoomCategoryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project",
"name",
"position",
"created_by",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_RoomMemberResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"room",
"user",
"role",
"do_not_disturb"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"user": {
"type": "string",
"format": "uuid"
},
"user_info": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/UserInfo"
}
]
},
"role": {
"type": "string"
},
"first_msg_in": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"joined_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_read_seq": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"do_not_disturb": {
"type": "boolean"
},
"dnd_start_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
}
}
},
"ApiResponse_RoomMessageListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"messages",
"total"
],
"properties": {
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RoomMessageResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_RoomMessageResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"seq",
"room",
"sender_type",
"content",
"content_type",
"send_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"seq": {
"type": "integer",
"format": "int64"
},
"room": {
"type": "string",
"format": "uuid"
},
"sender_type": {
"type": "string"
},
"sender_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"display_name": {
"type": [
"string",
"null"
]
},
"thread": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"in_reply_to": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"content": {
"type": "string"
},
"content_type": {
"type": "string"
},
"edited_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"send_at": {
"type": "string",
"format": "date-time"
},
"revoked": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"revoked_by": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
}
}
},
"ApiResponse_RoomPinResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"room",
"message",
"pinned_by",
"pinned_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"message": {
"type": "string",
"format": "uuid"
},
"pinned_by": {
"type": "string",
"format": "uuid"
},
"pinned_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_RoomResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project",
"room_name",
"public",
"created_by",
"created_at",
"last_msg_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"room_name": {
"type": "string"
},
"public": {
"type": "boolean"
},
"category": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"last_msg_at": {
"type": "string",
"format": "date-time"
},
"unread_count": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_RoomThreadResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"room",
"parent",
"created_by",
"participants",
"last_message_at",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"room": {
"type": "string",
"format": "uuid"
},
"parent": {
"type": "integer",
"format": "int64"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"participants": {},
"last_message_at": {
"type": "string",
"format": "date-time"
},
"last_message_preview": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_ScanResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"discovered",
"created",
"updated",
"removed"
],
"properties": {
"discovered": {
"type": "integer",
"format": "int64"
},
"created": {
"type": "integer",
"format": "int64"
},
"updated": {
"type": "integer",
"format": "int64"
},
"removed": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_SearchResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string"
},
"projects": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_ProjectSearchItem"
}
]
},
"repos": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_RepoSearchItem"
}
]
},
"issues": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_IssueSearchItem"
}
]
},
"users": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_UserSearchItem"
}
]
}
}
}
}
},
"ApiResponse_SideBySideDiffResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"files",
"total_additions",
"total_deletions"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SideBySideFileResponse"
}
},
"total_additions": {
"type": "integer",
"minimum": 0
},
"total_deletions": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_SkillResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"project_uuid",
"slug",
"name",
"source",
"content",
"metadata",
"enabled",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uuid": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"repo_id": {
"type": [
"string",
"null"
]
},
"commit_sha": {
"type": [
"string",
"null"
]
},
"blob_hash": {
"type": [
"string",
"null"
]
},
"content": {
"type": "string"
},
"metadata": {},
"enabled": {
"type": "boolean"
},
"created_by": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_SshKeyListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"keys",
"total"
],
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SshKeyResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_SshKeyResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"user_uid",
"title",
"fingerprint",
"key_type",
"is_verified",
"is_revoked",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string"
},
"fingerprint": {
"type": "string"
},
"key_type": {
"type": "string"
},
"key_bits": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"is_verified": {
"type": "boolean"
},
"last_used_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_revoked": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_StarCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_StarUserListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"users"
],
"properties": {
"users": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StarUserInfo"
}
}
}
}
}
},
"ApiResponse_String": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "string"
}
}
},
"ApiResponse_TagCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_TagExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_TagInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"oid",
"target",
"is_annotated"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"target": {
"type": "string"
},
"is_annotated": {
"type": "boolean"
},
"message": {
"type": [
"string",
"null"
]
},
"tagger": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_TagIsAnnotatedResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"is_annotated"
],
"properties": {
"name": {
"type": "string"
},
"is_annotated": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_TagMessageResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_TagSummaryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"total_count"
],
"properties": {
"total_count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_TagTaggerResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"tagger": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_TagTargetResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": [
"string",
"null"
]
}
}
}
}
},
"ApiResponse_TransferRepoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"repo_id",
"old_project_name",
"new_project_name",
"repo_name"
],
"properties": {
"repo_id": {
"type": "string",
"format": "uuid"
},
"old_project_name": {
"type": "string"
},
"new_project_name": {
"type": "string"
},
"repo_name": {
"type": "string"
}
}
}
}
},
"ApiResponse_TreeDiffStatsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"old_tree",
"new_tree",
"files_changed",
"insertions",
"deletions"
],
"properties": {
"old_tree": {
"type": "string"
},
"new_tree": {
"type": "string"
},
"files_changed": {
"type": "integer",
"minimum": 0
},
"insertions": {
"type": "integer",
"minimum": 0
},
"deletions": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_TreeEntryCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"count"
],
"properties": {
"oid": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_TreeEntryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"name",
"oid",
"kind",
"filemode",
"is_binary"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"kind": {
"type": "string"
},
"filemode": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_TreeExistsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_TreeInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"entry_count",
"is_empty"
],
"properties": {
"oid": {
"type": "string"
},
"entry_count": {
"type": "integer",
"minimum": 0
},
"is_empty": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_TreeIsEmptyResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"oid",
"is_empty"
],
"properties": {
"oid": {
"type": "string"
},
"is_empty": {
"type": "boolean"
}
}
}
}
},
"ApiResponse_UserInfoExternal": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"user_uid",
"username",
"display_name",
"timezone",
"language",
"is_owner",
"is_subscribe",
"total_projects",
"total_repos"
],
"properties": {
"user_uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"master_email": {
"type": [
"string",
"null"
]
},
"timezone": {
"type": "string"
},
"language": {
"type": "string"
},
"website_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"last_sign_in_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_owner": {
"type": "boolean"
},
"is_subscribe": {
"type": "boolean"
},
"total_projects": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total_repos": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_UserProjectsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"username",
"projects",
"total_count"
],
"properties": {
"username": {
"type": "string"
},
"projects": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserProjectInfo"
}
},
"total_count": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_UserReposResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"username",
"repos",
"total_count"
],
"properties": {
"username": {
"type": "string"
},
"repos": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserRepoInfo"
}
},
"total_count": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_Value": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {}
}
},
"ApiResponse_Vec_AuditLogResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project_uid",
"actor_uid",
"action"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"actor_uid": {
"type": "string",
"format": "uuid"
},
"action": {
"type": "string"
},
"details": {
"type": "object"
}
}
}
}
}
},
"ApiResponse_Vec_BoardResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project",
"name",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_BranchInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"oid",
"is_head",
"is_remote",
"is_current"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"is_head": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_current": {
"type": "boolean"
},
"upstream": {
"type": [
"string",
"null"
]
}
}
}
}
}
},
"ApiResponse_Vec_BranchProtectionResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"repo",
"branch",
"forbid_push",
"forbid_pull",
"forbid_merge",
"forbid_deletion",
"forbid_force_push",
"forbid_tag_push",
"required_approvals",
"dismiss_stale_reviews",
"require_linear_history",
"allow_fork_syncing"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"repo": {
"type": "string",
"format": "uuid"
},
"branch": {
"type": "string"
},
"forbid_push": {
"type": "boolean"
},
"forbid_pull": {
"type": "boolean"
},
"forbid_merge": {
"type": "boolean"
},
"forbid_deletion": {
"type": "boolean"
},
"forbid_force_push": {
"type": "boolean"
},
"forbid_tag_push": {
"type": "boolean"
},
"required_approvals": {
"type": "integer",
"format": "int32"
},
"dismiss_stale_reviews": {
"type": "boolean"
},
"require_linear_history": {
"type": "boolean"
},
"allow_fork_syncing": {
"type": "boolean"
}
}
}
}
}
},
"ApiResponse_Vec_CommitMetaResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"oid",
"message",
"summary",
"author",
"committer",
"tree_id",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
},
"summary": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"committer": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"tree_id": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"encoding": {
"type": [
"string",
"null"
]
}
}
}
}
}
},
"ApiResponse_Vec_CommitRefInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"target",
"is_remote",
"is_tag"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": "string"
},
"is_remote": {
"type": "boolean"
},
"is_tag": {
"type": "boolean"
}
}
}
}
}
},
"ApiResponse_Vec_CommitReflogEntryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"new_sha",
"old_sha",
"committer_name",
"committer_email",
"time_secs",
"ref_name"
],
"properties": {
"new_sha": {
"type": "string"
},
"old_sha": {
"type": "string"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"time_secs": {
"type": "integer",
"format": "int64"
},
"message": {
"type": [
"string",
"null"
]
},
"ref_name": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_Vec_IssueAssigneeResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"assigned_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"assigned_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_IssueLabelResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue",
"label_id",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"label_id": {
"type": "integer",
"format": "int64"
},
"label_name": {
"type": [
"string",
"null"
]
},
"label_color": {
"type": [
"string",
"null"
]
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_IssuePullRequestResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue",
"repo",
"number",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_IssueRepoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue",
"repo",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_IssueSubscriberResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"subscribed",
"created_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"subscribed": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_LabelResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project",
"name",
"color"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"color": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_Vec_LikeUserInfo": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"username",
"avatar_url"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_Vec_MentionNotificationResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"message_id",
"mentioned_by",
"mentioned_by_name",
"content_preview",
"room_id",
"room_name",
"created_at"
],
"properties": {
"message_id": {
"type": "string",
"format": "uuid"
},
"mentioned_by": {
"type": "string",
"format": "uuid"
},
"mentioned_by_name": {
"type": "string"
},
"content_preview": {
"type": "string"
},
"room_id": {
"type": "string",
"format": "uuid"
},
"room_name": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_MergeheadInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_Vec_PendingInvitationInfo": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"user_id",
"username",
"role",
"invited_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"email": {
"type": [
"string",
"null"
]
},
"role": {
"type": "string"
},
"invited_by_username": {
"type": [
"string",
"null"
]
},
"invited_at": {
"type": "string",
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_RefInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"is_symbolic",
"is_branch",
"is_remote",
"is_tag",
"is_note"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
},
"target": {
"type": [
"string",
"null"
]
},
"is_symbolic": {
"type": "boolean"
},
"is_branch": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_tag": {
"type": "boolean"
},
"is_note": {
"type": "boolean"
}
}
}
}
}
},
"ApiResponse_Vec_RoomAiResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"room",
"model",
"call_count",
"use_exact",
"think",
"stream",
"created_at",
"updated_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"model": {
"type": "string",
"format": "uuid"
},
"version": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"call_count": {
"type": "integer",
"format": "int64"
},
"last_call_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"history_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"system_prompt": {
"type": [
"string",
"null"
]
},
"temperature": {
"type": [
"number",
"null"
],
"format": "double"
},
"max_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"use_exact": {
"type": "boolean"
},
"think": {
"type": "boolean"
},
"stream": {
"type": "boolean"
},
"min_score": {
"type": [
"number",
"null"
],
"format": "float"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_RoomCategoryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project",
"name",
"position",
"created_by",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_RoomMemberResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"room",
"user",
"role",
"do_not_disturb"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"user": {
"type": "string",
"format": "uuid"
},
"user_info": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/UserInfo"
}
]
},
"role": {
"type": "string"
},
"first_msg_in": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"joined_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_read_seq": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"do_not_disturb": {
"type": "boolean"
},
"dnd_start_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
}
}
}
},
"ApiResponse_Vec_RoomPinResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"room",
"message",
"pinned_by",
"pinned_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"message": {
"type": "string",
"format": "uuid"
},
"pinned_by": {
"type": "string",
"format": "uuid"
},
"pinned_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_RoomResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project",
"room_name",
"public",
"created_by",
"created_at",
"last_msg_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"room_name": {
"type": "string"
},
"public": {
"type": "boolean"
},
"category": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"last_msg_at": {
"type": "string",
"format": "date-time"
},
"unread_count": {
"type": "integer",
"format": "int64"
}
}
}
}
}
},
"ApiResponse_Vec_RoomThreadResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"room",
"parent",
"created_by",
"participants",
"last_message_at",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"room": {
"type": "string",
"format": "uuid"
},
"parent": {
"type": "integer",
"format": "int64"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"participants": {},
"last_message_at": {
"type": "string",
"format": "date-time"
},
"last_message_preview": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_SkillResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"project_uuid",
"slug",
"name",
"source",
"content",
"metadata",
"enabled",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uuid": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"repo_id": {
"type": [
"string",
"null"
]
},
"commit_sha": {
"type": [
"string",
"null"
]
},
"blob_hash": {
"type": [
"string",
"null"
]
},
"content": {
"type": "string"
},
"metadata": {},
"enabled": {
"type": "boolean"
},
"created_by": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
}
},
"ApiResponse_Vec_String": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ApiResponse_Vec_SubscriptionInfo": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"user_uid",
"target_uid",
"subscribed_at",
"is_active"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"target_uid": {
"type": "string",
"format": "uuid"
},
"subscribed_at": {
"type": "string",
"format": "date-time"
},
"is_active": {
"type": "boolean"
}
}
}
}
}
},
"ApiResponse_Vec_TagInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"oid",
"target",
"is_annotated"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"target": {
"type": "string"
},
"is_annotated": {
"type": "boolean"
},
"message": {
"type": [
"string",
"null"
]
},
"tagger": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
}
}
}
}
}
},
"ApiResponse_Vec_TreeEntryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"oid",
"kind",
"filemode",
"is_binary"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"kind": {
"type": "string"
},
"filemode": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
}
}
}
},
"ApiResponse_Vec_WatchUserInfo": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"username",
"avatar_url"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
}
}
}
}
},
"ApiResponse_WatchCountResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_WatchUserListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"users"
],
"properties": {
"users": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WatchUserInfo"
}
}
}
}
}
},
"ApiResponse_WebhookListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"webhooks",
"total"
],
"properties": {
"webhooks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebhookResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
}
}
},
"ApiResponse_WebhookResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"repo_uuid",
"url",
"content_type",
"events",
"active",
"created_at",
"touch_count"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"repo_uuid": {
"type": "string"
},
"url": {
"type": "string"
},
"content_type": {
"type": "string"
},
"secret": {
"type": [
"string",
"null"
]
},
"events": {
"$ref": "#/components/schemas/WebhookEvent"
},
"active": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"last_delivered_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"touch_count": {
"type": "integer",
"format": "int64"
}
}
}
}
},
"ApiResponse_WorkspaceBillingCurrentResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"workspace_id",
"currency",
"monthly_quota",
"balance",
"total_spent",
"month_used",
"cycle_start_utc",
"cycle_end_utc",
"updated_at",
"created_at"
],
"properties": {
"workspace_id": {
"type": "string",
"format": "uuid"
},
"currency": {
"type": "string"
},
"monthly_quota": {
"type": "number",
"format": "double"
},
"balance": {
"type": "number",
"format": "double"
},
"total_spent": {
"type": "number",
"format": "double"
},
"month_used": {
"type": "number",
"format": "double"
},
"cycle_start_utc": {
"type": "string",
"format": "date-time"
},
"cycle_end_utc": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_WorkspaceBillingHistoryResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"page",
"per_page",
"total",
"list"
],
"properties": {
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"list": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceBillingHistoryItem"
}
}
}
}
}
},
"ApiResponse_WorkspaceInfoResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"id",
"slug",
"name",
"plan",
"member_count",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"plan": {
"type": "string"
},
"billing_email": {
"type": [
"string",
"null"
]
},
"member_count": {
"type": "integer",
"format": "int64"
},
"my_role": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
}
},
"ApiResponse_WorkspaceListResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"workspaces",
"total"
],
"properties": {
"workspaces": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceListItem"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_WorkspaceMembersResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"members",
"total",
"page",
"per_page"
],
"properties": {
"members": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceMemberInfo"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_WorkspaceProjectsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"projects",
"total",
"page",
"per_page"
],
"properties": {
"projects": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceProjectItem"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
}
}
},
"ApiResponse_WorkspaceStatsResponse": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "object",
"required": [
"project_count",
"member_count",
"recent_activities"
],
"properties": {
"project_count": {
"type": "integer",
"format": "int64"
},
"member_count": {
"type": "integer",
"format": "int64"
},
"my_role": {
"type": [
"string",
"null"
]
},
"recent_activities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceActivityItem"
}
}
}
}
}
},
"ApiResponse_bool": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"data": {
"type": "boolean"
}
}
},
"ApprovalCheckResult": {
"type": "object",
"required": [
"enough_approvals",
"approvals",
"required",
"reviewers"
],
"properties": {
"enough_approvals": {
"type": "boolean"
},
"approvals": {
"type": "integer",
"format": "int32"
},
"required": {
"type": "integer",
"format": "int32"
},
"reviewers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewerInfo"
}
}
}
},
"ArchiveCachedResponse": {
"type": "object",
"required": [
"commit_oid",
"format",
"cached"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"cached": {
"type": "boolean"
}
}
},
"ArchiveEntryResponse": {
"type": "object",
"required": [
"path",
"oid",
"size",
"mode"
],
"properties": {
"path": {
"type": "string"
},
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"mode": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"ArchiveInvalidateAllResponse": {
"type": "object",
"required": [
"commit_oid",
"count"
],
"properties": {
"commit_oid": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0
}
}
},
"ArchiveInvalidateResponse": {
"type": "object",
"required": [
"commit_oid",
"format",
"invalidated"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"invalidated": {
"type": "boolean"
}
}
},
"ArchiveListResponse": {
"type": "object",
"required": [
"commit_oid",
"entries",
"total_entries"
],
"properties": {
"commit_oid": {
"type": "string"
},
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ArchiveEntryResponse"
}
},
"total_entries": {
"type": "integer",
"minimum": 0
}
}
},
"ArchiveResponse": {
"type": "object",
"required": [
"commit_oid",
"format",
"size",
"data"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"data": {
"type": "string"
}
}
},
"ArchiveSummaryResponse": {
"type": "object",
"required": [
"commit_oid",
"format",
"total_entries",
"total_size"
],
"properties": {
"commit_oid": {
"type": "string"
},
"format": {
"type": "string"
},
"total_entries": {
"type": "integer",
"minimum": 0
},
"total_size": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"AuditLogParams": {
"type": "object",
"required": [
"action"
],
"properties": {
"action": {
"type": "string"
},
"details": {}
}
},
"AuditLogResponse": {
"type": "object",
"required": [
"id",
"project_uid",
"actor_uid",
"action"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"actor_uid": {
"type": "string",
"format": "uuid"
},
"action": {
"type": "string"
},
"details": {
"type": "object"
}
}
},
"BillingRecord": {
"type": "object",
"description": "Breakdown of a billing record.",
"required": [
"cost",
"currency",
"input_tokens",
"output_tokens"
],
"properties": {
"cost": {
"type": "number",
"format": "double",
"description": "Total cost in the billing currency."
},
"currency": {
"type": "string"
},
"input_tokens": {
"type": "integer",
"format": "int64"
},
"output_tokens": {
"type": "integer",
"format": "int64"
}
}
},
"BlameHunkResponse": {
"type": "object",
"required": [
"commit_oid",
"final_start_line",
"final_lines",
"orig_start_line",
"orig_lines",
"boundary"
],
"properties": {
"commit_oid": {
"type": "string"
},
"final_start_line": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"final_lines": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"orig_start_line": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"orig_lines": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"boundary": {
"type": "boolean"
},
"orig_path": {
"type": [
"string",
"null"
]
}
}
},
"BlobContentResponse": {
"type": "object",
"required": [
"oid",
"size",
"is_binary",
"content"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"is_binary": {
"type": "boolean"
},
"content": {
"type": "string"
}
}
},
"BlobCreateRequest": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "string"
}
}
},
"BlobCreateResponse": {
"type": "object",
"required": [
"oid",
"size"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
}
}
},
"BlobExistsResponse": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"BlobInfoResponse": {
"type": "object",
"required": [
"oid",
"size",
"is_binary"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
},
"BlobIsBinaryResponse": {
"type": "object",
"required": [
"oid",
"is_binary"
],
"properties": {
"oid": {
"type": "string"
},
"is_binary": {
"type": "boolean"
}
}
},
"BlobSizeResponse": {
"type": "object",
"required": [
"oid",
"size"
],
"properties": {
"oid": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
}
}
},
"BoardResponse": {
"type": "object",
"required": [
"id",
"project",
"name",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"BoardWithColumnsResponse": {
"type": "object",
"required": [
"board",
"columns"
],
"properties": {
"board": {
"$ref": "#/components/schemas/BoardResponse"
},
"columns": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ColumnWithCardsResponse"
}
}
}
},
"BranchCreateRequest": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
},
"force": {
"type": "boolean"
}
}
},
"BranchDiffResponse": {
"type": "object",
"required": [
"ahead",
"behind",
"diverged"
],
"properties": {
"ahead": {
"type": "integer",
"minimum": 0
},
"behind": {
"type": "integer",
"minimum": 0
},
"diverged": {
"type": "boolean"
}
}
},
"BranchExistsResponse": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"BranchFastForwardResponse": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
},
"BranchInfoResponse": {
"type": "object",
"required": [
"name",
"oid",
"is_head",
"is_remote",
"is_current"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"is_head": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_current": {
"type": "boolean"
},
"upstream": {
"type": [
"string",
"null"
]
}
}
},
"BranchIsAncestorResponse": {
"type": "object",
"required": [
"child",
"ancestor",
"is_ancestor"
],
"properties": {
"child": {
"type": "string"
},
"ancestor": {
"type": "string"
},
"is_ancestor": {
"type": "boolean"
}
}
},
"BranchIsConflictedResponse": {
"type": "object",
"required": [
"is_conflicted"
],
"properties": {
"is_conflicted": {
"type": "boolean"
}
}
},
"BranchIsDetachedResponse": {
"type": "object",
"required": [
"is_detached"
],
"properties": {
"is_detached": {
"type": "boolean"
}
}
},
"BranchIsHeadResponse": {
"type": "object",
"required": [
"name",
"is_head"
],
"properties": {
"name": {
"type": "string"
},
"is_head": {
"type": "boolean"
}
}
},
"BranchIsMergedResponse": {
"type": "object",
"required": [
"branch",
"into",
"is_merged"
],
"properties": {
"branch": {
"type": "string"
},
"into": {
"type": "string"
},
"is_merged": {
"type": "boolean"
}
}
},
"BranchMergeBaseResponse": {
"type": "object",
"required": [
"branch1",
"branch2",
"base"
],
"properties": {
"branch1": {
"type": "string"
},
"branch2": {
"type": "string"
},
"base": {
"type": "string"
}
}
},
"BranchMoveRequest": {
"type": "object",
"required": [
"name",
"new_name"
],
"properties": {
"name": {
"type": "string"
},
"new_name": {
"type": "string"
},
"force": {
"type": "boolean"
}
}
},
"BranchProtectionCreateRequest": {
"type": "object",
"required": [
"branch"
],
"properties": {
"branch": {
"type": "string"
},
"forbid_push": {
"type": "boolean"
},
"forbid_pull": {
"type": "boolean"
},
"forbid_merge": {
"type": "boolean"
},
"forbid_deletion": {
"type": "boolean"
},
"forbid_force_push": {
"type": "boolean"
},
"forbid_tag_push": {
"type": "boolean"
},
"required_approvals": {
"type": "integer",
"format": "int32"
},
"dismiss_stale_reviews": {
"type": "boolean"
},
"require_linear_history": {
"type": "boolean"
},
"allow_fork_syncing": {
"type": "boolean"
}
}
},
"BranchProtectionResponse": {
"type": "object",
"required": [
"id",
"repo",
"branch",
"forbid_push",
"forbid_pull",
"forbid_merge",
"forbid_deletion",
"forbid_force_push",
"forbid_tag_push",
"required_approvals",
"dismiss_stale_reviews",
"require_linear_history",
"allow_fork_syncing"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"repo": {
"type": "string",
"format": "uuid"
},
"branch": {
"type": "string"
},
"forbid_push": {
"type": "boolean"
},
"forbid_pull": {
"type": "boolean"
},
"forbid_merge": {
"type": "boolean"
},
"forbid_deletion": {
"type": "boolean"
},
"forbid_force_push": {
"type": "boolean"
},
"forbid_tag_push": {
"type": "boolean"
},
"required_approvals": {
"type": "integer",
"format": "int32"
},
"dismiss_stale_reviews": {
"type": "boolean"
},
"require_linear_history": {
"type": "boolean"
},
"allow_fork_syncing": {
"type": "boolean"
}
}
},
"BranchProtectionUpdateRequest": {
"type": "object",
"properties": {
"branch": {
"type": [
"string",
"null"
]
},
"forbid_push": {
"type": [
"boolean",
"null"
]
},
"forbid_pull": {
"type": [
"boolean",
"null"
]
},
"forbid_merge": {
"type": [
"boolean",
"null"
]
},
"forbid_deletion": {
"type": [
"boolean",
"null"
]
},
"forbid_force_push": {
"type": [
"boolean",
"null"
]
},
"forbid_tag_push": {
"type": [
"boolean",
"null"
]
},
"required_approvals": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dismiss_stale_reviews": {
"type": [
"boolean",
"null"
]
},
"require_linear_history": {
"type": [
"boolean",
"null"
]
},
"allow_fork_syncing": {
"type": [
"boolean",
"null"
]
}
}
},
"BranchRenameRequest": {
"type": "object",
"required": [
"old_name",
"new_name"
],
"properties": {
"old_name": {
"type": "string"
},
"new_name": {
"type": "string"
}
}
},
"BranchSetUpstreamRequest": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"upstream": {
"type": [
"string",
"null"
]
}
}
},
"BranchSummaryResponse": {
"type": "object",
"required": [
"local_count",
"remote_count",
"all_count"
],
"properties": {
"local_count": {
"type": "integer",
"minimum": 0
},
"remote_count": {
"type": "integer",
"minimum": 0
},
"all_count": {
"type": "integer",
"minimum": 0
}
}
},
"BranchTrackingDiffResponse": {
"type": "object",
"required": [
"name",
"ahead",
"behind"
],
"properties": {
"name": {
"type": "string"
},
"ahead": {
"type": "integer",
"minimum": 0
},
"behind": {
"type": "integer",
"minimum": 0
}
}
},
"CaptchaQuery": {
"type": "object",
"required": [
"w",
"h",
"dark",
"rsa"
],
"properties": {
"w": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"h": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"dark": {
"type": "boolean"
},
"rsa": {
"type": "boolean"
}
}
},
"CaptchaResponse": {
"type": "object",
"required": [
"base64",
"req"
],
"properties": {
"base64": {
"type": "string"
},
"rsa": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/RsaResponse"
}
]
},
"req": {
"$ref": "#/components/schemas/CaptchaQuery"
}
}
},
"CardResponse": {
"type": "object",
"required": [
"id",
"column",
"title",
"position",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"column": {
"type": "string",
"format": "uuid"
},
"issue_id": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"project": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"position": {
"type": "integer",
"format": "int32"
},
"assignee_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"due_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"priority": {
"type": [
"string",
"null"
]
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ChangePasswordParams": {
"type": "object",
"required": [
"old_password",
"new_password"
],
"properties": {
"old_password": {
"type": "string"
},
"new_password": {
"type": "string"
}
}
},
"ColumnResponse": {
"type": "object",
"required": [
"id",
"board",
"name",
"position"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"board": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"wip_limit": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"color": {
"type": [
"string",
"null"
]
}
}
},
"ColumnWithCardsResponse": {
"type": "object",
"required": [
"column",
"cards"
],
"properties": {
"column": {
"$ref": "#/components/schemas/ColumnResponse"
},
"cards": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CardResponse"
}
}
}
},
"CommentCreated": {
"type": "object",
"required": [
"path",
"severity"
],
"properties": {
"path": {
"type": "string"
},
"line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"severity": {
"type": "string"
}
}
},
"CommitAmendRequest": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
},
"author_name": {
"type": [
"string",
"null"
]
},
"author_email": {
"type": [
"string",
"null"
]
},
"committer_name": {
"type": [
"string",
"null"
]
},
"committer_email": {
"type": [
"string",
"null"
]
},
"message": {
"type": [
"string",
"null"
]
},
"message_encoding": {
"type": [
"string",
"null"
]
},
"tree_id": {
"type": [
"string",
"null"
]
},
"update_ref": {
"type": [
"string",
"null"
]
}
}
},
"CommitAuthorResponse": {
"type": "object",
"required": [
"oid",
"author"
],
"properties": {
"oid": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
}
}
},
"CommitBranchesResponse": {
"type": "object",
"properties": {
"data": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"propertyNames": {
"type": "string"
}
}
}
},
"CommitCherryPickAbortRequest": {
"type": "object",
"properties": {
"reset_type": {
"type": [
"string",
"null"
]
}
}
},
"CommitCherryPickRequest": {
"type": "object",
"required": [
"cherrypick_oid",
"author_name",
"author_email",
"committer_name",
"committer_email"
],
"properties": {
"cherrypick_oid": {
"type": "string"
},
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
},
"mainline": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"update_ref": {
"type": [
"string",
"null"
]
}
}
},
"CommitCountResponse": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"minimum": 0
}
}
},
"CommitCreateRequest": {
"type": "object",
"required": [
"author_name",
"author_email",
"committer_name",
"committer_email",
"message",
"tree_id",
"parent_ids"
],
"properties": {
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"message": {
"type": "string"
},
"tree_id": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"update_ref": {
"type": [
"string",
"null"
]
}
}
},
"CommitCreateResponse": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
},
"CommitExistsResponse": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"CommitGraphLineResponse": {
"type": "object",
"required": [
"oid",
"graph_chars",
"refs",
"short_message"
],
"properties": {
"oid": {
"type": "string"
},
"graph_chars": {
"type": "string"
},
"refs": {
"type": "string"
},
"short_message": {
"type": "string"
}
}
},
"CommitGraphReactCommit": {
"type": "object",
"required": [
"oid",
"hash_abbrev",
"subject",
"author_name",
"author_email",
"author_timestamp",
"author_time_offset",
"committer_name",
"committer_email",
"committer_timestamp",
"committer_time_offset",
"parent_hashes",
"lane_index",
"graph_chars",
"refs",
"tags",
"branches"
],
"properties": {
"oid": {
"type": "string"
},
"hash_abbrev": {
"type": "string"
},
"subject": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"author_timestamp": {
"type": "integer",
"format": "int64"
},
"author_time_offset": {
"type": "integer",
"format": "int32"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"committer_timestamp": {
"type": "integer",
"format": "int64"
},
"committer_time_offset": {
"type": "integer",
"format": "int32"
},
"parent_hashes": {
"type": "array",
"items": {
"type": "string"
}
},
"encoding": {
"type": [
"string",
"null"
]
},
"lane_index": {
"type": "integer",
"description": "0-based lane index used to assign branch color.",
"minimum": 0
},
"graph_chars": {
"type": "string",
"description": "Raw ASCII graph characters for supplementary rendering."
},
"refs": {
"type": "string",
"description": "Parsed refs string (e.g. \"main, v1.0.0\")."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tag names present on this commit."
},
"branches": {
"type": "array",
"items": {
"type": "string"
},
"description": "Branch names this commit is the tip of."
}
}
},
"CommitGraphReactResponse": {
"type": "object",
"required": [
"commits",
"lanes",
"max_parents"
],
"properties": {
"commits": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitGraphReactCommit"
}
},
"lanes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LaneInfo"
}
},
"max_parents": {
"type": "integer",
"minimum": 0
}
}
},
"CommitGraphResponse": {
"type": "object",
"required": [
"lines",
"max_parents"
],
"properties": {
"lines": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitGraphLineResponse"
}
},
"max_parents": {
"type": "integer",
"minimum": 0
}
}
},
"CommitIsCommitResponse": {
"type": "object",
"required": [
"oid",
"is_commit"
],
"properties": {
"oid": {
"type": "string"
},
"is_commit": {
"type": "boolean"
}
}
},
"CommitIsMergeResponse": {
"type": "object",
"required": [
"oid",
"is_merge"
],
"properties": {
"oid": {
"type": "string"
},
"is_merge": {
"type": "boolean"
}
}
},
"CommitIsTipResponse": {
"type": "object",
"required": [
"oid",
"is_tip"
],
"properties": {
"oid": {
"type": "string"
},
"is_tip": {
"type": "boolean"
}
}
},
"CommitLogResponse": {
"type": "object",
"required": [
"data",
"total",
"page",
"per_page",
"total_pages"
],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommitMetaResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
},
"page": {
"type": "integer",
"minimum": 0
},
"per_page": {
"type": "integer",
"minimum": 0
},
"total_pages": {
"type": "integer",
"minimum": 0
}
}
},
"CommitMessageResponse": {
"type": "object",
"required": [
"oid",
"message"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
}
}
},
"CommitMetaResponse": {
"type": "object",
"required": [
"oid",
"message",
"summary",
"author",
"committer",
"tree_id",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string"
},
"summary": {
"type": "string"
},
"author": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"committer": {
"$ref": "#/components/schemas/CommitSignatureResponse"
},
"tree_id": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"encoding": {
"type": [
"string",
"null"
]
}
}
},
"CommitParentCountResponse": {
"type": "object",
"required": [
"oid",
"parent_count"
],
"properties": {
"oid": {
"type": "string"
},
"parent_count": {
"type": "integer",
"minimum": 0
}
}
},
"CommitParentIdsResponse": {
"type": "object",
"required": [
"oid",
"parent_ids"
],
"properties": {
"oid": {
"type": "string"
},
"parent_ids": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"CommitRefCountResponse": {
"type": "object",
"required": [
"oid",
"ref_count"
],
"properties": {
"oid": {
"type": "string"
},
"ref_count": {
"type": "integer",
"minimum": 0
}
}
},
"CommitRefInfoResponse": {
"type": "object",
"required": [
"name",
"target",
"is_remote",
"is_tag"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": "string"
},
"is_remote": {
"type": "boolean"
},
"is_tag": {
"type": "boolean"
}
}
},
"CommitReflogEntryResponse": {
"type": "object",
"required": [
"new_sha",
"old_sha",
"committer_name",
"committer_email",
"time_secs",
"ref_name"
],
"properties": {
"new_sha": {
"type": "string"
},
"old_sha": {
"type": "string"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"time_secs": {
"type": "integer",
"format": "int64"
},
"message": {
"type": [
"string",
"null"
]
},
"ref_name": {
"type": "string"
}
}
},
"CommitRevertAbortRequest": {
"type": "object",
"properties": {
"reset_type": {
"type": [
"string",
"null"
]
}
}
},
"CommitRevertRequest": {
"type": "object",
"required": [
"revert_oid",
"author_name",
"author_email",
"committer_name",
"committer_email"
],
"properties": {
"revert_oid": {
"type": "string"
},
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
},
"mainline": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"update_ref": {
"type": [
"string",
"null"
]
}
}
},
"CommitShortIdResponse": {
"type": "object",
"required": [
"oid",
"short_id"
],
"properties": {
"oid": {
"type": "string"
},
"short_id": {
"type": "string"
}
}
},
"CommitSignatureResponse": {
"type": "object",
"required": [
"name",
"email",
"time_secs",
"offset_minutes"
],
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"time_secs": {
"type": "integer",
"format": "int64"
},
"offset_minutes": {
"type": "integer",
"format": "int32"
}
}
},
"CommitSummaryResponse": {
"type": "object",
"required": [
"oid",
"summary"
],
"properties": {
"oid": {
"type": "string"
},
"summary": {
"type": "string"
}
}
},
"CommitTagsResponse": {
"type": "object",
"properties": {
"data": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"propertyNames": {
"type": "string"
}
}
}
},
"CommitTreeIdResponse": {
"type": "object",
"required": [
"oid",
"tree_id"
],
"properties": {
"oid": {
"type": "string"
},
"tree_id": {
"type": "string"
}
}
},
"ConfigBoolResponse": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "boolean"
}
}
},
"ConfigEntryResponse": {
"type": "object",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"ConfigSetRequest": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"ConfigSnapshotResponse": {
"type": "object",
"required": [
"entries"
],
"properties": {
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConfigEntryResponse"
}
}
}
},
"ContextMe": {
"type": "object",
"required": [
"uid",
"username",
"has_unread_notifications"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"has_unread_notifications": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"ContributionHeatmapItem": {
"type": "object",
"required": [
"date",
"count"
],
"properties": {
"date": {
"type": "string"
},
"count": {
"type": "integer",
"format": "int32"
}
}
},
"ContributionHeatmapQuery": {
"type": "object",
"properties": {
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
}
}
},
"ContributionHeatmapResponse": {
"type": "object",
"required": [
"username",
"total_contributions",
"heatmap",
"start_date",
"end_date"
],
"properties": {
"username": {
"type": "string"
},
"total_contributions": {
"type": "integer",
"format": "int64"
},
"heatmap": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContributionHeatmapItem"
}
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
}
}
},
"ContributorStats": {
"type": "object",
"required": [
"name",
"email",
"commits"
],
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"commits": {
"type": "integer",
"minimum": 0
},
"first_commit_at": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"last_commit_at": {
"type": [
"integer",
"null"
],
"format": "int64"
}
}
},
"ContributorsResponse": {
"type": "object",
"required": [
"total",
"contributors"
],
"properties": {
"total": {
"type": "integer",
"minimum": 0
},
"contributors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContributorStats"
}
}
}
},
"CreateAccessKeyParams": {
"type": "object",
"required": [
"name",
"scopes"
],
"properties": {
"name": {
"type": "string"
},
"scopes": {
"type": "array",
"items": {
"type": "string"
}
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"CreateBoardParams": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"CreateCardParams": {
"type": "object",
"required": [
"column_id",
"title"
],
"properties": {
"column_id": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"issue_id": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"assignee_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"due_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"priority": {
"type": [
"string",
"null"
]
}
}
},
"CreateColumnParams": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"wip_limit": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"color": {
"type": [
"string",
"null"
]
}
}
},
"CreateLabelParams": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string"
},
"color": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"CreateLabelRequest": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string"
},
"color": {
"type": "string"
}
}
},
"CreateModelCapabilityRequest": {
"type": "object",
"required": [
"model_version_id",
"capability"
],
"properties": {
"model_version_id": {
"type": "integer",
"format": "int64"
},
"capability": {
"type": "string"
},
"is_supported": {
"type": "boolean"
}
}
},
"CreateModelParameterProfileRequest": {
"type": "object",
"required": [
"model_version_id",
"temperature_min",
"temperature_max",
"top_p_min",
"top_p_max"
],
"properties": {
"model_version_id": {
"type": "string",
"format": "uuid"
},
"temperature_min": {
"type": "number",
"format": "double"
},
"temperature_max": {
"type": "number",
"format": "double"
},
"top_p_min": {
"type": "number",
"format": "double"
},
"top_p_max": {
"type": "number",
"format": "double"
},
"frequency_penalty_supported": {
"type": "boolean"
},
"presence_penalty_supported": {
"type": "boolean"
}
}
},
"CreateModelPricingRequest": {
"type": "object",
"required": [
"model_version_id",
"input_price_per_1k_tokens",
"output_price_per_1k_tokens",
"currency",
"effective_from"
],
"properties": {
"model_version_id": {
"type": "string",
"format": "uuid"
},
"input_price_per_1k_tokens": {
"type": "string"
},
"output_price_per_1k_tokens": {
"type": "string"
},
"currency": {
"type": "string"
},
"effective_from": {
"type": "string",
"format": "date-time"
}
}
},
"CreateModelRequest": {
"type": "object",
"required": [
"provider_id",
"name",
"modality",
"capability",
"context_length"
],
"properties": {
"provider_id": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"modality": {
"type": "string"
},
"capability": {
"type": "string"
},
"context_length": {
"type": "integer",
"format": "int64"
},
"max_output_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"training_cutoff": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_open_source": {
"type": "boolean"
}
}
},
"CreateModelVersionRequest": {
"type": "object",
"required": [
"model_id",
"version"
],
"properties": {
"model_id": {
"type": "string",
"format": "uuid"
},
"version": {
"type": "string"
},
"release_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"change_log": {
"type": [
"string",
"null"
]
},
"is_default": {
"type": "boolean"
}
}
},
"CreateProviderRequest": {
"type": "object",
"required": [
"name",
"display_name"
],
"properties": {
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"website": {
"type": [
"string",
"null"
]
}
}
},
"CreateSkillRequest": {
"type": "object",
"required": [
"slug",
"content"
],
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"content": {
"type": "string"
},
"metadata": {}
}
},
"CreateWebhookParams": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string"
},
"content_type": {
"type": [
"string",
"null"
]
},
"secret": {
"type": [
"string",
"null"
]
},
"insecure_ssl": {
"type": [
"boolean",
"null"
]
},
"events": {
"$ref": "#/components/schemas/WebhookEvent"
},
"active": {
"type": "boolean"
}
}
},
"DeleteSkillResponse": {
"type": "object",
"required": [
"deleted",
"slug"
],
"properties": {
"deleted": {
"type": "boolean"
},
"slug": {
"type": "string"
}
}
},
"DescriptionQuery": {
"type": "object",
"required": [
"description"
],
"properties": {
"description": {
"type": "string"
}
}
},
"DescriptionResponse": {
"type": "object",
"required": [
"description"
],
"properties": {
"description": {
"type": "string"
}
}
},
"DiffDeltaResponse": {
"type": "object",
"required": [
"status",
"old_file",
"new_file",
"nfiles",
"hunks",
"lines"
],
"properties": {
"status": {
"type": "string"
},
"old_file": {
"$ref": "#/components/schemas/DiffFileResponse"
},
"new_file": {
"$ref": "#/components/schemas/DiffFileResponse"
},
"nfiles": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"hunks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DiffHunkResponse"
}
},
"lines": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DiffLineResponse"
}
}
}
},
"DiffFileResponse": {
"type": "object",
"required": [
"size",
"is_binary"
],
"properties": {
"oid": {
"type": [
"string",
"null"
]
},
"path": {
"type": [
"string",
"null"
]
},
"size": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
},
"DiffHunkResponse": {
"type": "object",
"required": [
"old_start",
"old_lines",
"new_start",
"new_lines",
"header"
],
"properties": {
"old_start": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"old_lines": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"new_start": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"new_lines": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"header": {
"type": "string"
}
}
},
"DiffLineResponse": {
"type": "object",
"required": [
"content",
"origin",
"num_lines",
"content_offset"
],
"properties": {
"content": {
"type": "string"
},
"origin": {
"type": "string"
},
"old_lineno": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"new_lineno": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"num_lines": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"content_offset": {
"type": "integer",
"format": "int64"
}
}
},
"DiffPatchIdResponse": {
"type": "object",
"required": [
"old_tree",
"new_tree",
"patch_id"
],
"properties": {
"old_tree": {
"type": "string"
},
"new_tree": {
"type": "string"
},
"patch_id": {
"type": "string"
}
}
},
"DiffResultResponse": {
"type": "object",
"required": [
"stats",
"deltas"
],
"properties": {
"stats": {
"$ref": "#/components/schemas/DiffStatsResponse"
},
"deltas": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DiffDeltaResponse"
}
}
}
},
"DiffStatsResponse": {
"type": "object",
"required": [
"files_changed",
"insertions",
"deletions"
],
"properties": {
"files_changed": {
"type": "integer",
"minimum": 0
},
"insertions": {
"type": "integer",
"minimum": 0
},
"deletions": {
"type": "integer",
"minimum": 0
}
}
},
"Disable2FAParams": {
"type": "object",
"required": [
"code",
"password"
],
"properties": {
"code": {
"type": "string"
},
"password": {
"type": "string"
}
}
},
"EmailChangeRequest": {
"type": "object",
"required": [
"new_email",
"password"
],
"properties": {
"new_email": {
"type": "string"
},
"password": {
"type": "string"
}
}
},
"EmailResponse": {
"type": "object",
"properties": {
"email": {
"type": [
"string",
"null"
]
}
}
},
"EmailVerifyRequest": {
"type": "object",
"required": [
"token"
],
"properties": {
"token": {
"type": "string"
}
}
},
"Enable2FAResponse": {
"type": "object",
"required": [
"secret",
"qr_code",
"backup_codes"
],
"properties": {
"secret": {
"type": "string"
},
"qr_code": {
"type": "string"
},
"backup_codes": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ExchangeProjectName": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"ExchangeProjectTitle": {
"type": "object",
"properties": {
"display_name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"ExchangeProjectVisibility": {
"type": "object",
"required": [
"is_public"
],
"properties": {
"is_public": {
"type": "boolean"
}
}
},
"GeneratePrDescriptionRequest": {
"type": "object",
"description": "Request body for generating a PR description.",
"properties": {
"pr_number": {
"type": [
"integer",
"null"
],
"format": "int64",
"description": "PR number to generate description for."
},
"model_id": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "Override the default AI model for this generation."
}
}
},
"GeneratePrDescriptionResponse": {
"type": "object",
"description": "Response from the AI description generation endpoint.",
"required": [
"description",
"markdown_body"
],
"properties": {
"description": {
"$ref": "#/components/schemas/PrDescription"
},
"markdown_body": {
"type": "string",
"description": "Markdown-formatted description ready to paste into the PR body."
},
"billing": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/BillingRecord"
}
]
}
}
},
"Get2FAStatusResponse": {
"type": "object",
"required": [
"is_enabled",
"has_backup_codes"
],
"properties": {
"is_enabled": {
"type": "boolean"
},
"method": {
"type": [
"string",
"null"
]
},
"has_backup_codes": {
"type": "boolean"
}
}
},
"GitInitRequest": {
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string"
},
"bare": {
"type": "boolean"
},
"initial_branch": {
"type": [
"string",
"null"
]
}
}
},
"GitInitResponse": {
"type": "object",
"required": [
"path",
"is_bare"
],
"properties": {
"path": {
"type": "string"
},
"is_bare": {
"type": "boolean"
}
}
},
"GitReadmeQuery": {
"type": "object",
"properties": {
"ref": {
"type": [
"string",
"null"
]
}
}
},
"GitReadmeResponse": {
"type": "object",
"properties": {
"path": {
"type": [
"string",
"null"
]
},
"content": {
"type": [
"string",
"null"
]
},
"size": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"encoding": {
"type": [
"string",
"null"
]
},
"truncated": {
"type": "boolean"
},
"is_binary": {
"type": "boolean"
}
}
},
"GitUpdateRepoRequest": {
"type": "object",
"properties": {
"default_branch": {
"type": [
"string",
"null"
]
}
}
},
"GitWatchRequest": {
"type": "object",
"properties": {
"show_dashboard": {
"type": "boolean"
},
"notify_email": {
"type": "boolean"
}
}
},
"InvitationListResponse": {
"type": "object",
"required": [
"invitations",
"total",
"page",
"per_page"
],
"properties": {
"invitations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/InvitationResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"InvitationResponse": {
"type": "object",
"required": [
"project_uid",
"user_uid",
"invited_by",
"scope",
"accepted",
"rejected",
"created_at"
],
"properties": {
"project_uid": {
"type": "string",
"format": "uuid"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"invited_by": {
"type": "string",
"format": "uuid"
},
"scope": {
"type": "string"
},
"accepted": {
"type": "boolean"
},
"accepted_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"rejected": {
"type": "boolean"
},
"rejected_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"InviteUserRequest": {
"type": "object",
"required": [
"email",
"scope"
],
"properties": {
"email": {
"type": "string"
},
"scope": {
"$ref": "#/components/schemas/MemberRole"
}
}
},
"IsLikeResponse": {
"type": "object",
"required": [
"is_like"
],
"properties": {
"is_like": {
"type": "boolean"
}
}
},
"IsWatchResponse": {
"type": "object",
"required": [
"is_watching"
],
"properties": {
"is_watching": {
"type": "boolean"
}
}
},
"IssueAddLabelRequest": {
"type": "object",
"required": [
"label_id"
],
"properties": {
"label_id": {
"type": "integer",
"format": "int64"
}
}
},
"IssueAssignUserRequest": {
"type": "object",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
}
}
},
"IssueAssigneeResponse": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"assigned_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"assigned_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueCommentCreateRequest": {
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string"
}
}
},
"IssueCommentListResponse": {
"type": "object",
"required": [
"comments",
"total",
"page",
"per_page"
],
"properties": {
"comments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IssueCommentResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
},
"IssueCommentResponse": {
"type": "object",
"required": [
"id",
"issue",
"author",
"author_username",
"body",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"issue": {
"type": "string",
"format": "uuid"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": "string"
},
"body": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueCommentUpdateRequest": {
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string"
}
}
},
"IssueCreateRequest": {
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"milestone": {
"type": [
"string",
"null"
]
}
}
},
"IssueLabelResponse": {
"type": "object",
"required": [
"issue",
"label_id",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"label_id": {
"type": "integer",
"format": "int64"
},
"label_name": {
"type": [
"string",
"null"
]
},
"label_color": {
"type": [
"string",
"null"
]
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueLinkPullRequestRequest": {
"type": "object",
"required": [
"repo",
"number"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
}
}
},
"IssueLinkRepoRequest": {
"type": "object",
"required": [
"repo"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
}
}
},
"IssueListResponse": {
"type": "object",
"required": [
"issues",
"total",
"page",
"per_page"
],
"properties": {
"issues": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IssueResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
},
"IssuePullRequestResponse": {
"type": "object",
"required": [
"issue",
"repo",
"number",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueRepoResponse": {
"type": "object",
"required": [
"issue",
"repo",
"relation_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"repo": {
"type": "string",
"format": "uuid"
},
"relation_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueResponse": {
"type": "object",
"required": [
"id",
"project",
"number",
"title",
"state",
"author",
"created_at",
"updated_at",
"created_by_ai"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"milestone": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"closed_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_by_ai": {
"type": "boolean"
}
}
},
"IssueSearchItem": {
"type": "object",
"required": [
"uid",
"number",
"title",
"state",
"project_uid",
"project_name",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"project_name": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueSubscriberResponse": {
"type": "object",
"required": [
"issue",
"user_id",
"username",
"subscribed",
"created_at"
],
"properties": {
"issue": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"subscribed": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"IssueSummaryResponse": {
"type": "object",
"required": [
"total",
"open",
"closed"
],
"properties": {
"total": {
"type": "integer",
"format": "int64"
},
"open": {
"type": "integer",
"format": "int64"
},
"closed": {
"type": "integer",
"format": "int64"
}
}
},
"IssueUpdateRequest": {
"type": "object",
"properties": {
"title": {
"type": [
"string",
"null"
]
},
"body": {
"type": [
"string",
"null"
]
},
"milestone": {
"type": [
"string",
"null"
]
},
"state": {
"type": [
"string",
"null"
]
}
}
},
"JoinAnswerResponse": {
"type": "object",
"required": [
"question",
"answer",
"created_at"
],
"properties": {
"question": {
"type": "string"
},
"answer": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"JoinAnswersListResponse": {
"type": "object",
"required": [
"request_id",
"project_uid",
"answers"
],
"properties": {
"request_id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string"
},
"answers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JoinAnswerResponse"
}
}
}
},
"JoinRequestListResponse": {
"type": "object",
"required": [
"requests",
"total",
"page",
"per_page"
],
"properties": {
"requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JoinRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"JoinRequestResponse": {
"type": "object",
"required": [
"id",
"project_uid",
"user_uid",
"username",
"status",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"status": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
},
"processed_by": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"processed_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"reject_reason": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"JoinSettingsResponse": {
"type": "object",
"required": [
"project_uid",
"require_approval",
"require_questions",
"questions"
],
"properties": {
"project_uid": {
"type": "string"
},
"require_approval": {
"type": "boolean"
},
"require_questions": {
"type": "boolean"
},
"questions": {}
}
},
"LabelListResponse": {
"type": "object",
"required": [
"labels",
"total"
],
"properties": {
"labels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LabelResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
},
"LabelResponse": {
"type": "object",
"required": [
"id",
"project_uid",
"name",
"color",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"color": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"LaneInfo": {
"type": "object",
"description": "Response for the gitgraph-react compatible API endpoint.",
"required": [
"lane_index",
"start_oid"
],
"properties": {
"lane_index": {
"type": "integer",
"description": "0-based lane index.",
"minimum": 0
},
"branch_name": {
"type": [
"string",
"null"
],
"description": "Branch name if this lane has a branch tip (None for unnamed lanes)."
},
"start_oid": {
"type": "string",
"description": "SHA of the commit where this lane/branch starts."
},
"end_oid": {
"type": [
"string",
"null"
],
"description": "SHA of the commit where this lane ends (None if lane continues to last commit)."
}
}
},
"LikeUserInfo": {
"type": "object",
"required": [
"uid",
"username",
"avatar_url"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
}
},
"LoginParams": {
"type": "object",
"required": [
"username",
"password",
"captcha"
],
"properties": {
"username": {
"type": "string"
},
"password": {
"type": "string"
},
"captcha": {
"type": "string"
},
"totp_code": {
"type": [
"string",
"null"
]
}
}
},
"MemberInfo": {
"type": "object",
"required": [
"user_id",
"username",
"scope",
"joined_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"scope": {
"$ref": "#/components/schemas/MemberRole"
},
"joined_at": {
"type": "string",
"format": "date-time"
}
}
},
"MemberListResponse": {
"type": "object",
"required": [
"members",
"total",
"page",
"per_page"
],
"properties": {
"members": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MemberInfo"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"MemberRole": {
"type": "string",
"description": "Project member role. Stored as `\"owner\"`, `\"admin\"`, or `\"member\"` in the database.",
"enum": [
"Owner",
"Admin",
"Member"
]
},
"MentionNotificationResponse": {
"type": "object",
"required": [
"message_id",
"mentioned_by",
"mentioned_by_name",
"content_preview",
"room_id",
"room_name",
"created_at"
],
"properties": {
"message_id": {
"type": "string",
"format": "uuid"
},
"mentioned_by": {
"type": "string",
"format": "uuid"
},
"mentioned_by_name": {
"type": "string"
},
"content_preview": {
"type": "string"
},
"room_id": {
"type": "string",
"format": "uuid"
},
"room_name": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"MergeAnalysisResponse": {
"type": "object",
"required": [
"can_fast_forward",
"is_up_to_date",
"is_normal",
"analysis_flags",
"supported_strategies"
],
"properties": {
"can_fast_forward": {
"type": "boolean"
},
"is_up_to_date": {
"type": "boolean"
},
"is_normal": {
"type": "boolean"
},
"analysis_flags": {
"type": "array",
"items": {
"type": "string"
}
},
"supported_strategies": {
"type": "array",
"items": {
"type": "string"
},
"description": "Strategies supported given the current state of the PR."
}
}
},
"MergeAnalysisResultInner": {
"type": "object",
"required": [
"is_none",
"is_normal",
"is_up_to_date",
"is_fast_forward",
"is_unborn"
],
"properties": {
"is_none": {
"type": "boolean"
},
"is_normal": {
"type": "boolean"
},
"is_up_to_date": {
"type": "boolean"
},
"is_fast_forward": {
"type": "boolean"
},
"is_unborn": {
"type": "boolean"
}
}
},
"MergeCommitsRequest": {
"type": "object",
"required": [
"local_oid",
"remote_oid"
],
"properties": {
"local_oid": {
"type": "string"
},
"remote_oid": {
"type": "string"
},
"find_renames": {
"type": "boolean"
},
"fail_on_conflict": {
"type": "boolean"
},
"skip_reuc": {
"type": "boolean"
},
"no_recursive": {
"type": "boolean"
},
"rename_threshold": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"target_limit": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"recursion_limit": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"MergeConflictFile": {
"type": "object",
"required": [
"path",
"status"
],
"properties": {
"path": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
"MergeConflictResponse": {
"type": "object",
"required": [
"has_conflicts",
"conflicted_files"
],
"properties": {
"has_conflicts": {
"type": "boolean"
},
"conflicted_files": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MergeConflictFile"
}
}
}
},
"MergePreferenceResultInner": {
"type": "object",
"required": [
"is_none",
"is_no_fast_forward",
"is_fastforward_only"
],
"properties": {
"is_none": {
"type": "boolean"
},
"is_no_fast_forward": {
"type": "boolean"
},
"is_fastforward_only": {
"type": "boolean"
}
}
},
"MergeRequest": {
"type": "object",
"properties": {
"fast_forward": {
"type": "boolean"
},
"strategy": {
"$ref": "#/components/schemas/MergeStrategy"
},
"message": {
"type": "string"
}
}
},
"MergeResponse": {
"type": "object",
"required": [
"repo",
"number",
"status",
"merged_by",
"merged_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"status": {
"type": "string"
},
"merged_by": {
"type": "string",
"format": "uuid"
},
"merged_at": {
"type": "string",
"format": "date-time"
}
}
},
"MergeStrategy": {
"type": "string",
"enum": [
"mergecommit",
"squash",
"rebase"
]
},
"MergeTreesRequest": {
"type": "object",
"required": [
"ancestor_oid",
"our_oid",
"their_oid"
],
"properties": {
"ancestor_oid": {
"type": "string"
},
"our_oid": {
"type": "string"
},
"their_oid": {
"type": "string"
},
"find_renames": {
"type": "boolean"
},
"fail_on_conflict": {
"type": "boolean"
},
"skip_reuc": {
"type": "boolean"
},
"no_recursive": {
"type": "boolean"
},
"rename_threshold": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"target_limit": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"recursion_limit": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"MergeheadInfoResponse": {
"type": "object",
"required": [
"oid"
],
"properties": {
"oid": {
"type": "string"
}
}
},
"MessageEditHistoryEntry": {
"type": "object",
"required": [
"old_content",
"new_content",
"edited_at"
],
"properties": {
"old_content": {
"type": "string"
},
"new_content": {
"type": "string"
},
"edited_at": {
"type": "string",
"format": "date-time"
}
}
},
"MessageEditHistoryResponse": {
"type": "object",
"required": [
"message_id",
"history",
"total_edits"
],
"properties": {
"message_id": {
"type": "string",
"format": "uuid"
},
"history": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MessageEditHistoryEntry"
}
},
"total_edits": {
"type": "integer",
"format": "int64"
}
}
},
"MessageSearchResponse": {
"type": "object",
"required": [
"messages",
"total"
],
"properties": {
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RoomMessageResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
},
"ModelCapabilityResponse": {
"type": "object",
"required": [
"id",
"model_version_id",
"capability",
"is_supported",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"model_version_id": {
"type": "integer",
"format": "int64"
},
"capability": {
"type": "string"
},
"is_supported": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ModelParameterProfileResponse": {
"type": "object",
"required": [
"id",
"model_version_id",
"temperature_min",
"temperature_max",
"top_p_min",
"top_p_max",
"frequency_penalty_supported",
"presence_penalty_supported"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"model_version_id": {
"type": "string",
"format": "uuid"
},
"temperature_min": {
"type": "number",
"format": "double"
},
"temperature_max": {
"type": "number",
"format": "double"
},
"top_p_min": {
"type": "number",
"format": "double"
},
"top_p_max": {
"type": "number",
"format": "double"
},
"frequency_penalty_supported": {
"type": "boolean"
},
"presence_penalty_supported": {
"type": "boolean"
}
}
},
"ModelPricingResponse": {
"type": "object",
"required": [
"id",
"model_version_id",
"input_price_per_1k_tokens",
"output_price_per_1k_tokens",
"currency",
"effective_from"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"model_version_id": {
"type": "string",
"format": "uuid"
},
"input_price_per_1k_tokens": {
"type": "string"
},
"output_price_per_1k_tokens": {
"type": "string"
},
"currency": {
"type": "string"
},
"effective_from": {
"type": "string",
"format": "date-time"
}
}
},
"ModelResponse": {
"type": "object",
"required": [
"id",
"provider_id",
"name",
"modality",
"capability",
"context_length",
"is_open_source",
"status",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"provider_id": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"modality": {
"type": "string"
},
"capability": {
"type": "string"
},
"context_length": {
"type": "integer",
"format": "int64"
},
"max_output_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"training_cutoff": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_open_source": {
"type": "boolean"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ModelVersionResponse": {
"type": "object",
"required": [
"id",
"model_id",
"version",
"is_default",
"status",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"model_id": {
"type": "string",
"format": "uuid"
},
"version": {
"type": "string"
},
"release_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"change_log": {
"type": [
"string",
"null"
]
},
"is_default": {
"type": "boolean"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"MoveCardParams": {
"type": "object",
"required": [
"target_column_id",
"position"
],
"properties": {
"target_column_id": {
"type": "string",
"format": "uuid"
},
"position": {
"type": "integer",
"format": "int32"
}
}
},
"NotificationListResponse": {
"type": "object",
"required": [
"notifications",
"total",
"unread_count"
],
"properties": {
"notifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"unread_count": {
"type": "integer",
"format": "int64"
}
}
},
"NotificationPreferencesParams": {
"type": "object",
"properties": {
"email_enabled": {
"type": [
"boolean",
"null"
]
},
"in_app_enabled": {
"type": [
"boolean",
"null"
]
},
"push_enabled": {
"type": [
"boolean",
"null"
]
},
"digest_mode": {
"type": [
"string",
"null"
]
},
"dnd_enabled": {
"type": [
"boolean",
"null"
]
},
"dnd_start_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"marketing_enabled": {
"type": [
"boolean",
"null"
]
},
"security_enabled": {
"type": [
"boolean",
"null"
]
},
"product_enabled": {
"type": [
"boolean",
"null"
]
}
}
},
"NotificationPreferencesResponse": {
"type": "object",
"required": [
"user_id",
"email_enabled",
"in_app_enabled",
"push_enabled",
"digest_mode",
"dnd_enabled",
"marketing_enabled",
"security_enabled",
"product_enabled",
"created_at",
"updated_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"email_enabled": {
"type": "boolean"
},
"in_app_enabled": {
"type": "boolean"
},
"push_enabled": {
"type": "boolean"
},
"digest_mode": {
"type": "string"
},
"dnd_enabled": {
"type": "boolean"
},
"dnd_start_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_minute": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"marketing_enabled": {
"type": "boolean"
},
"security_enabled": {
"type": "boolean"
},
"product_enabled": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"NotificationResponse": {
"type": "object",
"required": [
"id",
"notification_type",
"title",
"metadata",
"is_read",
"is_archived",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"room": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"project": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"user_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"user_info": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/UserInfo"
}
]
},
"notification_type": {
"type": "string"
},
"title": {
"type": "string"
},
"content": {
"type": [
"string",
"null"
]
},
"related_message_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"related_user_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"related_room_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"metadata": {},
"is_read": {
"type": "boolean"
},
"is_archived": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"read_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"NotificationType": {
"type": "string",
"enum": [
"mention",
"invitation",
"role_change",
"room_created",
"room_deleted",
"system_announcement"
]
},
"Pager": {
"type": "object",
"required": [
"page",
"par_page"
],
"properties": {
"page": {
"type": "integer",
"format": "int64"
},
"par_page": {
"type": "integer",
"format": "int64"
}
}
},
"PendingInvitationInfo": {
"type": "object",
"required": [
"user_id",
"username",
"role",
"invited_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"email": {
"type": [
"string",
"null"
]
},
"role": {
"type": "string"
},
"invited_by_username": {
"type": [
"string",
"null"
]
},
"invited_at": {
"type": "string",
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"PrCommitResponse": {
"type": "object",
"required": [
"oid",
"short_oid",
"message",
"summary",
"author_name",
"author_email",
"authored_at",
"committer_name",
"committer_email",
"committed_at"
],
"properties": {
"oid": {
"type": "string"
},
"short_oid": {
"type": "string"
},
"message": {
"type": "string"
},
"summary": {
"type": "string"
},
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"authored_at": {
"type": "string",
"format": "date-time"
},
"committer_name": {
"type": "string"
},
"committer_email": {
"type": "string"
},
"committed_at": {
"type": "string",
"format": "date-time"
}
}
},
"PrCommitsListResponse": {
"type": "object",
"required": [
"commits"
],
"properties": {
"commits": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PrCommitResponse"
}
}
}
},
"PrDescription": {
"type": "object",
"description": "Structured PR description generated by AI.",
"required": [
"summary",
"changes"
],
"properties": {
"summary": {
"type": "string",
"description": "3-5 line summary of what this PR does."
},
"changes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Key changes made in this PR."
},
"risks": {
"type": "array",
"items": {
"type": "string"
},
"description": "Potential risks or things to watch out for."
},
"tests": {
"type": "array",
"items": {
"type": "string"
},
"description": "Suggested test scenarios."
}
}
},
"PreferencesParams": {
"type": "object",
"properties": {
"language": {
"type": [
"string",
"null"
]
},
"theme": {
"type": [
"string",
"null"
]
},
"timezone": {
"type": [
"string",
"null"
]
},
"email_notifications": {
"type": [
"boolean",
"null"
]
},
"in_app_notifications": {
"type": [
"boolean",
"null"
]
}
}
},
"PreferencesResponse": {
"type": "object",
"required": [
"language",
"theme",
"timezone",
"email_notifications",
"in_app_notifications",
"created_at",
"updated_at"
],
"properties": {
"language": {
"type": "string"
},
"theme": {
"type": "string"
},
"timezone": {
"type": "string"
},
"email_notifications": {
"type": "boolean"
},
"in_app_notifications": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProcessJoinRequest": {
"type": "object",
"required": [
"approve",
"scope"
],
"properties": {
"approve": {
"type": "boolean"
},
"scope": {
"$ref": "#/components/schemas/MemberRole"
},
"reject_reason": {
"type": [
"string",
"null"
]
}
}
},
"ProfileResponse": {
"type": "object",
"required": [
"uid",
"username",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"last_sign_in_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"ProjectBillingCurrentResponse": {
"type": "object",
"required": [
"project_uid",
"currency",
"monthly_quota",
"balance",
"month_used",
"cycle_start_utc",
"cycle_end_utc",
"updated_at",
"created_at"
],
"properties": {
"project_uid": {
"type": "string",
"format": "uuid"
},
"currency": {
"type": "string"
},
"monthly_quota": {
"type": "number",
"format": "double"
},
"balance": {
"type": "number",
"format": "double"
},
"month_used": {
"type": "number",
"format": "double"
},
"cycle_start_utc": {
"type": "string",
"format": "date-time"
},
"cycle_end_utc": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProjectBillingHistoryItem": {
"type": "object",
"required": [
"uid",
"project_uid",
"amount",
"currency",
"reason",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"user_uid": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"amount": {
"type": "number",
"format": "double"
},
"currency": {
"type": "string"
},
"reason": {
"type": "string"
},
"extra": {},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProjectBillingHistoryQuery": {
"type": "object",
"properties": {
"page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
},
"per_page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
}
}
},
"ProjectBillingHistoryResponse": {
"type": "object",
"required": [
"page",
"per_page",
"total",
"list"
],
"properties": {
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"list": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectBillingHistoryItem"
}
}
}
},
"ProjectInfoKeyValue": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"ProjectInfoLabel": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string"
},
"color": {
"type": "string"
}
}
},
"ProjectInfoRelational": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at",
"created_by",
"created_username_name",
"member_count",
"like_count",
"watch_count",
"keys",
"labels",
"is_like",
"is_watch"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_username_name": {
"type": "string"
},
"created_display_name": {
"type": [
"string",
"null"
]
},
"created_avatar_url": {
"type": [
"string",
"null"
]
},
"member_count": {
"type": "integer",
"format": "int64"
},
"like_count": {
"type": "integer",
"format": "int64"
},
"watch_count": {
"type": "integer",
"format": "int64"
},
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectInfoKeyValue"
}
},
"labels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectInfoLabel"
}
},
"role": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/MemberRole"
}
]
},
"is_like": {
"type": "boolean"
},
"is_watch": {
"type": "boolean"
}
}
},
"ProjectInitParams": {
"type": "object",
"required": [
"name",
"is_public"
],
"properties": {
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"workspace_slug": {
"type": [
"string",
"null"
],
"description": "Optional workspace slug to associate this project with."
}
}
},
"ProjectInitResponse": {
"type": "object",
"required": [
"params",
"project"
],
"properties": {
"params": {
"$ref": "#/components/schemas/ProjectInitParams"
},
"project": {
"$ref": "#/components/schemas/ProjectModel"
}
}
},
"ProjectModel": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_by",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"workspace_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProjectRepoCreateParams": {
"type": "object",
"required": [
"repo_name"
],
"properties": {
"repo_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"init_repo": {
"type": "boolean",
"description": "Default: true. When false, skips bare git init and leaves default_branch empty;\nthe branch will be auto-detected and set on first push."
},
"default_branch": {
"type": "string",
"description": "Only used when init_repo is true."
},
"is_private": {
"type": "boolean"
}
}
},
"ProjectRepoCreateResponse": {
"type": "object",
"required": [
"uid",
"repo_name",
"default_branch",
"project_name",
"is_private",
"storage_path",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"repo_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"default_branch": {
"type": "string"
},
"project_name": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"storage_path": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProjectRepositoryItem": {
"type": "object",
"required": [
"uid",
"repo_name",
"default_branch",
"project_name",
"is_private",
"commit_count",
"branch_count",
"tag_count",
"star_count",
"watch_count"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"repo_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"default_branch": {
"type": "string"
},
"project_name": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"commit_count": {
"type": "integer",
"format": "int64"
},
"branch_count": {
"type": "integer",
"format": "int64"
},
"tag_count": {
"type": "integer",
"format": "int64"
},
"star_count": {
"type": "integer",
"format": "int64"
},
"watch_count": {
"type": "integer",
"format": "int64"
},
"last_commit_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"ProjectRepositoryPagination": {
"type": "object",
"required": [
"items",
"total"
],
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectRepositoryItem"
}
},
"cursor": {
"type": [
"string",
"null"
]
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"ProjectSearchItem": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ProviderResponse": {
"type": "object",
"required": [
"id",
"name",
"display_name",
"status",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"website": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"PullRequestCreateRequest": {
"type": "object",
"required": [
"title",
"base",
"head"
],
"properties": {
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"base": {
"type": "string"
},
"head": {
"type": "string"
},
"draft": {
"type": "boolean"
}
}
},
"PullRequestListResponse": {
"type": "object",
"required": [
"pull_requests",
"total",
"page",
"per_page"
],
"properties": {
"pull_requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PullRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64"
},
"per_page": {
"type": "integer",
"format": "int64"
}
}
},
"PullRequestResponse": {
"type": "object",
"required": [
"repo",
"number",
"title",
"author",
"base",
"head",
"status",
"created_at",
"updated_at",
"created_by_ai"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"issue": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"base": {
"type": "string"
},
"head": {
"type": "string"
},
"status": {
"type": "string"
},
"merged_by": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"merged_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_by_ai": {
"type": "boolean"
}
}
},
"PullRequestSummaryResponse": {
"type": "object",
"required": [
"total",
"open",
"merged",
"closed"
],
"properties": {
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"open": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"merged": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"closed": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"PullRequestUpdateRequest": {
"type": "object",
"properties": {
"title": {
"type": [
"string",
"null"
]
},
"body": {
"type": [
"string",
"null"
]
},
"base": {
"type": [
"string",
"null"
]
},
"draft": {
"type": [
"boolean",
"null"
]
}
}
},
"QuestionSchema": {
"type": "object",
"required": [
"question"
],
"properties": {
"question": {
"type": "string"
}
}
},
"ReactionAddRequest": {
"type": "object",
"required": [
"reaction"
],
"properties": {
"reaction": {
"type": "string"
}
}
},
"ReactionListResponse": {
"type": "object",
"required": [
"reactions"
],
"properties": {
"reactions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReactionSummary"
}
}
}
},
"ReactionResponse": {
"type": "object",
"required": [
"user",
"reaction",
"created_at"
],
"properties": {
"user": {
"type": "string",
"format": "uuid"
},
"reaction": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ReactionSummary": {
"type": "object",
"required": [
"reaction",
"count",
"users"
],
"properties": {
"reaction": {
"type": "string"
},
"count": {
"type": "integer",
"format": "int64"
},
"users": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
}
}
},
"RefCreateRequest": {
"type": "object",
"required": [
"name",
"oid"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"force": {
"type": "boolean"
},
"message": {
"type": [
"string",
"null"
]
}
}
},
"RefDeleteResponse": {
"type": "object",
"required": [
"name",
"oid"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
}
}
},
"RefExistsResponse": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"RefInfoResponse": {
"type": "object",
"required": [
"name",
"is_symbolic",
"is_branch",
"is_remote",
"is_tag",
"is_note"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
},
"target": {
"type": [
"string",
"null"
]
},
"is_symbolic": {
"type": "boolean"
},
"is_branch": {
"type": "boolean"
},
"is_remote": {
"type": "boolean"
},
"is_tag": {
"type": "boolean"
},
"is_note": {
"type": "boolean"
}
}
},
"RefTargetResponse": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": [
"string",
"null"
]
}
}
},
"RefUpdateRequest": {
"type": "object",
"required": [
"name",
"new_oid"
],
"properties": {
"name": {
"type": "string"
},
"new_oid": {
"type": "string"
},
"expected_oid": {
"type": [
"string",
"null"
]
},
"message": {
"type": [
"string",
"null"
]
}
}
},
"RefUpdateResponse": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"old_oid": {
"type": [
"string",
"null"
]
},
"new_oid": {
"type": [
"string",
"null"
]
}
}
},
"RegisterParams": {
"type": "object",
"required": [
"username",
"email",
"password",
"captcha"
],
"properties": {
"username": {
"type": "string"
},
"email": {
"type": "string"
},
"password": {
"type": "string"
},
"captcha": {
"type": "string"
}
}
},
"RepoSearchItem": {
"type": "object",
"required": [
"uid",
"name",
"project_uid",
"project_name",
"is_private",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"project_name": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"ResetPasswordParams": {
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string"
}
}
},
"ReviewCommentCreateRequest": {
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string"
},
"review": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"path": {
"type": [
"string",
"null"
]
},
"side": {
"type": [
"string",
"null"
]
},
"line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"old_line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"in_reply_to": {
"type": [
"integer",
"null"
],
"format": "int64",
"description": "ID of the parent comment to reply to (null = root comment)."
}
}
},
"ReviewCommentListQuery": {
"type": "object",
"properties": {
"path": {
"type": [
"string",
"null"
],
"description": "Filter comments by file path (e.g. \"src/main.rs\")."
},
"resolved": {
"type": [
"boolean",
"null"
],
"description": "Filter by resolved status. Omit to return all comments."
},
"file_only": {
"type": [
"boolean",
"null"
],
"description": "If true, only return inline comments (those with a `path` set).\nIf false, only return general comments (no path).\nOmit to return all comments."
}
}
},
"ReviewCommentListResponse": {
"type": "object",
"required": [
"comments",
"threads",
"total"
],
"properties": {
"comments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewCommentResponse"
},
"description": "Flat list of all comments (kept for backward compatibility)."
},
"threads": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewCommentThread"
},
"description": "Comments grouped into threads (root comments with their replies)."
},
"total": {
"type": "integer",
"format": "int64"
}
}
},
"ReviewCommentReplyRequest": {
"type": "object",
"description": "Body for replying to an existing review comment thread.",
"required": [
"body"
],
"properties": {
"body": {
"type": "string"
}
}
},
"ReviewCommentResponse": {
"type": "object",
"required": [
"repo",
"number",
"id",
"body",
"author",
"resolved",
"created_at",
"updated_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "integer",
"format": "int64"
},
"review": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"path": {
"type": [
"string",
"null"
]
},
"side": {
"type": [
"string",
"null"
]
},
"line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"old_line": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"body": {
"type": "string"
},
"author": {
"type": "string",
"format": "uuid"
},
"author_username": {
"type": [
"string",
"null"
]
},
"resolved": {
"type": "boolean"
},
"in_reply_to": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ReviewCommentThread": {
"type": "object",
"description": "A review comment thread: one root comment plus all its replies.",
"required": [
"root",
"replies"
],
"properties": {
"root": {
"$ref": "#/components/schemas/ReviewCommentResponse"
},
"replies": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewCommentResponse"
}
}
}
},
"ReviewCommentUpdateRequest": {
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string"
}
}
},
"ReviewListResponse": {
"type": "object",
"required": [
"reviews"
],
"properties": {
"reviews": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewResponse"
}
}
}
},
"ReviewRequestCreateRequest": {
"type": "object",
"required": [
"reviewer"
],
"properties": {
"reviewer": {
"type": "string",
"format": "uuid",
"description": "User ID of the reviewer to request."
}
}
},
"ReviewRequestListResponse": {
"type": "object",
"required": [
"requests",
"total"
],
"properties": {
"requests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReviewRequestResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
},
"ReviewRequestResponse": {
"type": "object",
"required": [
"repo",
"number",
"reviewer",
"requested_by",
"requested_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"reviewer": {
"type": "string",
"format": "uuid"
},
"reviewer_username": {
"type": [
"string",
"null"
]
},
"requested_by": {
"type": "string",
"format": "uuid"
},
"requested_by_username": {
"type": [
"string",
"null"
]
},
"requested_at": {
"type": "string",
"format": "date-time"
},
"dismissed_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"dismissed_by": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"dismissed_by_username": {
"type": [
"string",
"null"
]
}
}
},
"ReviewResponse": {
"type": "object",
"required": [
"repo",
"number",
"reviewer",
"state",
"created_at",
"updated_at"
],
"properties": {
"repo": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"reviewer": {
"type": "string",
"format": "uuid"
},
"reviewer_username": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"submitted_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"ReviewSubmitRequest": {
"type": "object",
"required": [
"state"
],
"properties": {
"body": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
}
}
},
"ReviewUpdateRequest": {
"type": "object",
"properties": {
"body": {
"type": [
"string",
"null"
]
}
}
},
"ReviewerInfo": {
"type": "object",
"required": [
"reviewer",
"state"
],
"properties": {
"reviewer": {
"type": "string",
"format": "uuid"
},
"state": {
"type": "string"
},
"submitted_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"RoomAiResponse": {
"type": "object",
"required": [
"room",
"model",
"call_count",
"use_exact",
"think",
"stream",
"created_at",
"updated_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"model": {
"type": "string",
"format": "uuid"
},
"version": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"call_count": {
"type": "integer",
"format": "int64"
},
"last_call_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"history_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"system_prompt": {
"type": [
"string",
"null"
]
},
"temperature": {
"type": [
"number",
"null"
],
"format": "double"
},
"max_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"use_exact": {
"type": "boolean"
},
"think": {
"type": "boolean"
},
"stream": {
"type": "boolean"
},
"min_score": {
"type": [
"number",
"null"
],
"format": "float"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"RoomAiUpsertRequest": {
"type": "object",
"required": [
"model"
],
"properties": {
"model": {
"type": "string",
"format": "uuid"
},
"version": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"history_limit": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"system_prompt": {
"type": [
"string",
"null"
]
},
"temperature": {
"type": [
"number",
"null"
],
"format": "double"
},
"max_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"use_exact": {
"type": [
"boolean",
"null"
]
},
"think": {
"type": [
"boolean",
"null"
]
},
"stream": {
"type": [
"boolean",
"null"
]
},
"min_score": {
"type": [
"number",
"null"
],
"format": "float"
}
}
},
"RoomCategoryCreateRequest": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"position": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
},
"RoomCategoryResponse": {
"type": "object",
"required": [
"id",
"project",
"name",
"position",
"created_by",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"position": {
"type": "integer",
"format": "int32"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"RoomCategoryUpdateRequest": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"position": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
},
"RoomCreateRequest": {
"type": "object",
"required": [
"room_name",
"public"
],
"properties": {
"room_name": {
"type": "string"
},
"public": {
"type": "boolean"
},
"category": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
},
"RoomMemberAddRequest": {
"type": "object",
"required": [
"user_id"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"role": {
"type": [
"string",
"null"
]
}
}
},
"RoomMemberReadSeqRequest": {
"type": "object",
"required": [
"last_read_seq"
],
"properties": {
"last_read_seq": {
"type": "integer",
"format": "int64"
}
}
},
"RoomMemberResponse": {
"type": "object",
"required": [
"room",
"user",
"role",
"do_not_disturb"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"user": {
"type": "string",
"format": "uuid"
},
"user_info": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/UserInfo"
}
]
},
"role": {
"type": "string"
},
"first_msg_in": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"joined_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_read_seq": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"do_not_disturb": {
"type": "boolean"
},
"dnd_start_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"dnd_end_hour": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
},
"RoomMemberRoleUpdateRequest": {
"type": "object",
"required": [
"user_id",
"role"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"role": {
"type": "string"
}
}
},
"RoomMessageCreateRequest": {
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "string"
},
"content_type": {
"type": [
"string",
"null"
]
},
"thread_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"in_reply_to": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
},
"RoomMessageListResponse": {
"type": "object",
"required": [
"messages",
"total"
],
"properties": {
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RoomMessageResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
}
}
},
"RoomMessageResponse": {
"type": "object",
"required": [
"id",
"seq",
"room",
"sender_type",
"content",
"content_type",
"send_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"seq": {
"type": "integer",
"format": "int64"
},
"room": {
"type": "string",
"format": "uuid"
},
"sender_type": {
"type": "string"
},
"sender_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"display_name": {
"type": [
"string",
"null"
]
},
"thread": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"in_reply_to": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"content": {
"type": "string"
},
"content_type": {
"type": "string"
},
"edited_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"send_at": {
"type": "string",
"format": "date-time"
},
"revoked": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"revoked_by": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
},
"RoomMessageUpdateRequest": {
"type": "object",
"required": [
"content"
],
"properties": {
"content": {
"type": "string"
}
}
},
"RoomPinResponse": {
"type": "object",
"required": [
"room",
"message",
"pinned_by",
"pinned_at"
],
"properties": {
"room": {
"type": "string",
"format": "uuid"
},
"message": {
"type": "string",
"format": "uuid"
},
"pinned_by": {
"type": "string",
"format": "uuid"
},
"pinned_at": {
"type": "string",
"format": "date-time"
}
}
},
"RoomResponse": {
"type": "object",
"required": [
"id",
"project",
"room_name",
"public",
"created_by",
"created_at",
"last_msg_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"project": {
"type": "string",
"format": "uuid"
},
"room_name": {
"type": "string"
},
"public": {
"type": "boolean"
},
"category": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"last_msg_at": {
"type": "string",
"format": "date-time"
},
"unread_count": {
"type": "integer",
"format": "int64"
}
}
},
"RoomThreadCreateRequest": {
"type": "object",
"required": [
"parent_seq"
],
"properties": {
"parent_seq": {
"type": "integer",
"format": "int64"
}
}
},
"RoomThreadResponse": {
"type": "object",
"required": [
"id",
"room",
"parent",
"created_by",
"participants",
"last_message_at",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"room": {
"type": "string",
"format": "uuid"
},
"parent": {
"type": "integer",
"format": "int64"
},
"created_by": {
"type": "string",
"format": "uuid"
},
"participants": {},
"last_message_at": {
"type": "string",
"format": "date-time"
},
"last_message_preview": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"RoomUpdateRequest": {
"type": "object",
"properties": {
"room_name": {
"type": [
"string",
"null"
]
},
"public": {
"type": [
"boolean",
"null"
]
},
"category": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
},
"RsaResponse": {
"type": "object",
"required": [
"public_key"
],
"properties": {
"public_key": {
"type": "string"
}
}
},
"ScanResponse": {
"type": "object",
"required": [
"discovered",
"created",
"updated",
"removed"
],
"properties": {
"discovered": {
"type": "integer",
"format": "int64"
},
"created": {
"type": "integer",
"format": "int64"
},
"updated": {
"type": "integer",
"format": "int64"
},
"removed": {
"type": "integer",
"format": "int64"
}
}
},
"SearchResponse": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string"
},
"projects": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_ProjectSearchItem"
}
]
},
"repos": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_RepoSearchItem"
}
]
},
"issues": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_IssueSearchItem"
}
]
},
"users": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/SearchResultSet_UserSearchItem"
}
]
}
}
},
"SearchResultSet_IssueSearchItem": {
"type": "object",
"required": [
"items",
"total",
"page",
"per_page"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"number",
"title",
"state",
"project_uid",
"project_name",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"body": {
"type": [
"string",
"null"
]
},
"state": {
"type": "string"
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"project_name": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"SearchResultSet_ProjectSearchItem": {
"type": "object",
"required": [
"items",
"total",
"page",
"per_page"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"SearchResultSet_RepoSearchItem": {
"type": "object",
"required": [
"items",
"total",
"page",
"per_page"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"name",
"project_uid",
"project_name",
"is_private",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"project_uid": {
"type": "string",
"format": "uuid"
},
"project_name": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"SearchResultSet_UserSearchItem": {
"type": "object",
"required": [
"items",
"total",
"page",
"per_page"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"uid",
"username",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
}
},
"total": {
"type": "integer",
"format": "int64"
},
"page": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
},
"SideBySideChangeTypeResponse": {
"type": "string",
"enum": [
"unchanged",
"added",
"removed",
"modified",
"empty"
]
},
"SideBySideDiffQuery": {
"type": "object",
"description": "Query parameters for side-by-side diff.",
"required": [
"base",
"head"
],
"properties": {
"base": {
"type": "string",
"description": "OID (SHA) of the base / old commit or tree."
},
"head": {
"type": "string",
"description": "OID (SHA) of the head / new commit or tree."
},
"pathspec": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
},
"description": "Optional path filter — only include files matching this prefix."
},
"context_lines": {
"type": [
"integer",
"null"
],
"format": "int32",
"description": "Number of context lines around changes (default 3).",
"minimum": 0
}
}
},
"SideBySideDiffResponse": {
"type": "object",
"required": [
"files",
"total_additions",
"total_deletions"
],
"properties": {
"files": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SideBySideFileResponse"
}
},
"total_additions": {
"type": "integer",
"minimum": 0
},
"total_deletions": {
"type": "integer",
"minimum": 0
}
}
},
"SideBySideFileResponse": {
"type": "object",
"required": [
"path",
"additions",
"deletions",
"is_binary",
"is_rename",
"lines"
],
"properties": {
"path": {
"type": "string"
},
"additions": {
"type": "integer",
"minimum": 0
},
"deletions": {
"type": "integer",
"minimum": 0
},
"is_binary": {
"type": "boolean"
},
"is_rename": {
"type": "boolean"
},
"lines": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SideBySideLineResponse"
}
}
}
},
"SideBySideLineResponse": {
"type": "object",
"required": [
"left_content",
"right_content",
"change_type"
],
"properties": {
"left_line_no": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"right_line_no": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"left_content": {
"type": "string"
},
"right_content": {
"type": "string"
},
"change_type": {
"$ref": "#/components/schemas/SideBySideChangeTypeResponse"
}
}
},
"SkillResponse": {
"type": "object",
"required": [
"id",
"project_uuid",
"slug",
"name",
"source",
"content",
"metadata",
"enabled",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_uuid": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
},
"repo_id": {
"type": [
"string",
"null"
]
},
"commit_sha": {
"type": [
"string",
"null"
]
},
"blob_hash": {
"type": [
"string",
"null"
]
},
"content": {
"type": "string"
},
"metadata": {},
"enabled": {
"type": "boolean"
},
"created_by": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"SshKeyListResponse": {
"type": "object",
"required": [
"keys",
"total"
],
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SshKeyResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
},
"SshKeyResponse": {
"type": "object",
"required": [
"id",
"user_uid",
"title",
"fingerprint",
"key_type",
"is_verified",
"is_revoked",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"title": {
"type": "string"
},
"fingerprint": {
"type": "string"
},
"key_type": {
"type": "string"
},
"key_bits": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"is_verified": {
"type": "boolean"
},
"last_used_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_revoked": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"StarCountResponse": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"format": "int64"
}
}
},
"StarUserInfo": {
"type": "object",
"required": [
"uid",
"username",
"avatar_url"
],
"properties": {
"uid": {
"type": "string"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
}
},
"StarUserListResponse": {
"type": "object",
"required": [
"users"
],
"properties": {
"users": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StarUserInfo"
}
}
}
},
"SubmitJoinRequest": {
"type": "object",
"required": [
"answers"
],
"properties": {
"message": {
"type": [
"string",
"null"
]
},
"answers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnswerRequest"
}
}
}
},
"SubscriptionInfo": {
"type": "object",
"required": [
"id",
"user_uid",
"target_uid",
"subscribed_at",
"is_active"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"user_uid": {
"type": "string",
"format": "uuid"
},
"target_uid": {
"type": "string",
"format": "uuid"
},
"subscribed_at": {
"type": "string",
"format": "date-time"
},
"is_active": {
"type": "boolean"
}
}
},
"TagCountResponse": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"minimum": 0
}
}
},
"TagCreateLightweightRequest": {
"type": "object",
"required": [
"name",
"target"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": "string"
},
"force": {
"type": "boolean"
}
}
},
"TagCreateRequest": {
"type": "object",
"required": [
"name",
"target"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
},
"tagger_name": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
},
"force": {
"type": "boolean"
}
}
},
"TagExistsResponse": {
"type": "object",
"required": [
"name",
"exists"
],
"properties": {
"name": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"TagInfoResponse": {
"type": "object",
"required": [
"name",
"oid",
"target",
"is_annotated"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"target": {
"type": "string"
},
"is_annotated": {
"type": "boolean"
},
"message": {
"type": [
"string",
"null"
]
},
"tagger": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
}
}
},
"TagIsAnnotatedResponse": {
"type": "object",
"required": [
"name",
"is_annotated"
],
"properties": {
"name": {
"type": "string"
},
"is_annotated": {
"type": "boolean"
}
}
},
"TagMessageResponse": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"message": {
"type": [
"string",
"null"
]
}
}
},
"TagRenameQuery": {
"type": "object",
"required": [
"old_name",
"new_name"
],
"properties": {
"old_name": {
"type": "string"
},
"new_name": {
"type": "string"
}
}
},
"TagSummaryResponse": {
"type": "object",
"required": [
"total_count"
],
"properties": {
"total_count": {
"type": "integer",
"minimum": 0
}
}
},
"TagTaggerResponse": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"tagger": {
"type": [
"string",
"null"
]
},
"tagger_email": {
"type": [
"string",
"null"
]
}
}
},
"TagTargetResponse": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"target": {
"type": [
"string",
"null"
]
}
}
},
"TagUpdateMessageRequest": {
"type": "object",
"required": [
"name",
"message",
"tagger_name",
"tagger_email"
],
"properties": {
"name": {
"type": "string"
},
"message": {
"type": "string"
},
"tagger_name": {
"type": "string"
},
"tagger_email": {
"type": "string"
}
}
},
"TransferRepoParams": {
"type": "object",
"required": [
"target_project_name"
],
"properties": {
"target_project_name": {
"type": "string"
}
}
},
"TransferRepoResponse": {
"type": "object",
"required": [
"repo_id",
"old_project_name",
"new_project_name",
"repo_name"
],
"properties": {
"repo_id": {
"type": "string",
"format": "uuid"
},
"old_project_name": {
"type": "string"
},
"new_project_name": {
"type": "string"
},
"repo_name": {
"type": "string"
}
}
},
"TreeDiffStatsResponse": {
"type": "object",
"required": [
"old_tree",
"new_tree",
"files_changed",
"insertions",
"deletions"
],
"properties": {
"old_tree": {
"type": "string"
},
"new_tree": {
"type": "string"
},
"files_changed": {
"type": "integer",
"minimum": 0
},
"insertions": {
"type": "integer",
"minimum": 0
},
"deletions": {
"type": "integer",
"minimum": 0
}
}
},
"TreeEntryCountResponse": {
"type": "object",
"required": [
"oid",
"count"
],
"properties": {
"oid": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0
}
}
},
"TreeEntryResponse": {
"type": "object",
"required": [
"name",
"oid",
"kind",
"filemode",
"is_binary"
],
"properties": {
"name": {
"type": "string"
},
"oid": {
"type": "string"
},
"kind": {
"type": "string"
},
"filemode": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"is_binary": {
"type": "boolean"
}
}
},
"TreeExistsResponse": {
"type": "object",
"required": [
"oid",
"exists"
],
"properties": {
"oid": {
"type": "string"
},
"exists": {
"type": "boolean"
}
}
},
"TreeInfoResponse": {
"type": "object",
"required": [
"oid",
"entry_count",
"is_empty"
],
"properties": {
"oid": {
"type": "string"
},
"entry_count": {
"type": "integer",
"minimum": 0
},
"is_empty": {
"type": "boolean"
}
}
},
"TreeIsEmptyResponse": {
"type": "object",
"required": [
"oid",
"is_empty"
],
"properties": {
"oid": {
"type": "string"
},
"is_empty": {
"type": "boolean"
}
}
},
"TriggerCodeReviewRequest": {
"type": "object",
"properties": {
"pr_number": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"model_id": {
"type": [
"string",
"null"
],
"format": "uuid"
}
}
},
"TriggerCodeReviewResponse": {
"type": "object",
"required": [
"comments_posted",
"comments"
],
"properties": {
"comments_posted": {
"type": "integer",
"minimum": 0
},
"comments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommentCreated"
}
},
"billing": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/BillingRecord"
}
]
}
}
},
"UpdateBoardParams": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"UpdateCardParams": {
"type": "object",
"properties": {
"title": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"assignee_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"due_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"priority": {
"type": [
"string",
"null"
]
}
}
},
"UpdateColumnParams": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"position": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"wip_limit": {
"type": [
"integer",
"null"
],
"format": "int32"
},
"color": {
"type": [
"string",
"null"
]
}
}
},
"UpdateJoinSettingsRequest": {
"type": "object",
"required": [
"require_approval",
"require_questions",
"questions"
],
"properties": {
"require_approval": {
"type": "boolean"
},
"require_questions": {
"type": "boolean"
},
"questions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/QuestionSchema"
}
}
}
},
"UpdateLabelParams": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"color": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"UpdateMemberRoleRequest": {
"type": "object",
"required": [
"user_id",
"scope"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"scope": {
"$ref": "#/components/schemas/MemberRole"
}
}
},
"UpdateModelCapabilityRequest": {
"type": "object",
"properties": {
"is_supported": {
"type": [
"boolean",
"null"
]
}
}
},
"UpdateModelParameterProfileRequest": {
"type": "object",
"properties": {
"temperature_min": {
"type": [
"number",
"null"
],
"format": "double"
},
"temperature_max": {
"type": [
"number",
"null"
],
"format": "double"
},
"top_p_min": {
"type": [
"number",
"null"
],
"format": "double"
},
"top_p_max": {
"type": [
"number",
"null"
],
"format": "double"
},
"frequency_penalty_supported": {
"type": [
"boolean",
"null"
]
},
"presence_penalty_supported": {
"type": [
"boolean",
"null"
]
}
}
},
"UpdateModelPricingRequest": {
"type": "object",
"properties": {
"input_price_per_1k_tokens": {
"type": [
"string",
"null"
]
},
"output_price_per_1k_tokens": {
"type": [
"string",
"null"
]
},
"currency": {
"type": [
"string",
"null"
]
},
"effective_from": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"UpdateModelRequest": {
"type": "object",
"properties": {
"display_name": {
"type": [
"string",
"null"
]
},
"modality": {
"type": [
"string",
"null"
]
},
"capability": {
"type": [
"string",
"null"
]
},
"context_length": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"max_output_tokens": {
"type": [
"integer",
"null"
],
"format": "int64"
},
"training_cutoff": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_open_source": {
"type": [
"boolean",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
}
}
},
"UpdateModelVersionRequest": {
"type": "object",
"properties": {
"version": {
"type": [
"string",
"null"
]
},
"release_date": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"change_log": {
"type": [
"string",
"null"
]
},
"is_default": {
"type": [
"boolean",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
}
}
},
"UpdateProfileParams": {
"type": "object",
"properties": {
"avatar_url": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
}
}
},
"UpdateProviderRequest": {
"type": "object",
"properties": {
"display_name": {
"type": [
"string",
"null"
]
},
"website": {
"type": [
"string",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
}
}
},
"UpdateRoleParams": {
"type": "object",
"required": [
"user_id",
"role"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"role": {
"type": "string"
}
}
},
"UpdateSkillRequest": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"content": {
"type": [
"string",
"null"
]
},
"metadata": {},
"enabled": {
"type": [
"boolean",
"null"
]
}
}
},
"UpdateSshKeyParams": {
"type": "object",
"properties": {
"title": {
"type": [
"string",
"null"
]
},
"expires_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"UpdateWebhookParams": {
"type": "object",
"properties": {
"url": {
"type": [
"string",
"null"
]
},
"content_type": {
"type": [
"string",
"null"
]
},
"secret": {
"type": [
"string",
"null"
]
},
"insecure_ssl": {
"type": [
"boolean",
"null"
]
},
"events": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/WebhookEvent"
}
]
},
"active": {
"type": [
"boolean",
"null"
]
}
}
},
"UserInfo": {
"type": "object",
"required": [
"uid",
"username"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
}
}
},
"UserInfoExternal": {
"type": "object",
"required": [
"user_uid",
"username",
"display_name",
"timezone",
"language",
"is_owner",
"is_subscribe",
"total_projects",
"total_repos"
],
"properties": {
"user_uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"master_email": {
"type": [
"string",
"null"
]
},
"timezone": {
"type": "string"
},
"language": {
"type": "string"
},
"website_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"last_sign_in_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"is_owner": {
"type": "boolean"
},
"is_subscribe": {
"type": "boolean"
},
"total_projects": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total_repos": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"UserProjectInfo": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at",
"member_count",
"is_member"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"member_count": {
"type": "integer",
"format": "int64"
},
"is_member": {
"type": "boolean"
}
}
},
"UserProjectsQuery": {
"type": "object",
"properties": {
"page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
},
"per_page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
}
}
},
"UserProjectsResponse": {
"type": "object",
"required": [
"username",
"projects",
"total_count"
],
"properties": {
"username": {
"type": "string"
},
"projects": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserProjectInfo"
}
},
"total_count": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"UserRepoInfo": {
"type": "object",
"required": [
"uid",
"repo_name",
"default_branch",
"is_private",
"storage_path",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"repo_name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"default_branch": {
"type": "string"
},
"is_private": {
"type": "boolean"
},
"storage_path": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"UserReposQuery": {
"type": "object",
"properties": {
"page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
},
"per_page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
}
}
},
"UserReposResponse": {
"type": "object",
"required": [
"username",
"repos",
"total_count"
],
"properties": {
"username": {
"type": "string"
},
"repos": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserRepoInfo"
}
},
"total_count": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"UserSearchItem": {
"type": "object",
"required": [
"uid",
"username",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"organization": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"Verify2FAParams": {
"type": "object",
"required": [
"code"
],
"properties": {
"code": {
"type": "string"
}
}
},
"WatchCountResponse": {
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"type": "integer",
"format": "int64"
}
}
},
"WatchUserInfo": {
"type": "object",
"required": [
"uid",
"username",
"avatar_url"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
}
},
"WatchUserListResponse": {
"type": "object",
"required": [
"users"
],
"properties": {
"users": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WatchUserInfo"
}
}
}
},
"WebhookEvent": {
"type": "object",
"properties": {
"push": {
"type": "boolean"
},
"tag_push": {
"type": "boolean"
},
"pull_request": {
"type": "boolean"
},
"issue_comment": {
"type": "boolean"
},
"release": {
"type": "boolean"
}
}
},
"WebhookListResponse": {
"type": "object",
"required": [
"webhooks",
"total"
],
"properties": {
"webhooks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebhookResponse"
}
},
"total": {
"type": "integer",
"minimum": 0
}
}
},
"WebhookResponse": {
"type": "object",
"required": [
"id",
"repo_uuid",
"url",
"content_type",
"events",
"active",
"created_at",
"touch_count"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"repo_uuid": {
"type": "string"
},
"url": {
"type": "string"
},
"content_type": {
"type": "string"
},
"secret": {
"type": [
"string",
"null"
]
},
"events": {
"$ref": "#/components/schemas/WebhookEvent"
},
"active": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"last_delivered_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"touch_count": {
"type": "integer",
"format": "int64"
}
}
},
"WorkspaceActivityItem": {
"type": "object",
"required": [
"id",
"project_name",
"event_type",
"title",
"actor_name",
"created_at"
],
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"project_name": {
"type": "string"
},
"event_type": {
"type": "string"
},
"title": {
"type": "string"
},
"content": {
"type": [
"string",
"null"
]
},
"actor_name": {
"type": "string"
},
"actor_avatar": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceBillingAddCreditParams": {
"type": "object",
"required": [
"amount"
],
"properties": {
"amount": {
"type": "number",
"format": "double"
},
"reason": {
"type": [
"string",
"null"
]
}
}
},
"WorkspaceBillingCurrentResponse": {
"type": "object",
"required": [
"workspace_id",
"currency",
"monthly_quota",
"balance",
"total_spent",
"month_used",
"cycle_start_utc",
"cycle_end_utc",
"updated_at",
"created_at"
],
"properties": {
"workspace_id": {
"type": "string",
"format": "uuid"
},
"currency": {
"type": "string"
},
"monthly_quota": {
"type": "number",
"format": "double"
},
"balance": {
"type": "number",
"format": "double"
},
"total_spent": {
"type": "number",
"format": "double"
},
"month_used": {
"type": "number",
"format": "double"
},
"cycle_start_utc": {
"type": "string",
"format": "date-time"
},
"cycle_end_utc": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceBillingHistoryItem": {
"type": "object",
"required": [
"uid",
"workspace_id",
"amount",
"currency",
"reason",
"created_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"workspace_id": {
"type": "string",
"format": "uuid"
},
"user_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"amount": {
"type": "number",
"format": "double"
},
"currency": {
"type": "string"
},
"reason": {
"type": "string"
},
"extra": {},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceBillingHistoryQuery": {
"type": "object",
"properties": {
"page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
},
"per_page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
}
}
},
"WorkspaceBillingHistoryResponse": {
"type": "object",
"required": [
"page",
"per_page",
"total",
"list"
],
"properties": {
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"list": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceBillingHistoryItem"
}
}
}
},
"WorkspaceInfoResponse": {
"type": "object",
"required": [
"id",
"slug",
"name",
"plan",
"member_count",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"plan": {
"type": "string"
},
"billing_email": {
"type": [
"string",
"null"
]
},
"member_count": {
"type": "integer",
"format": "int64"
},
"my_role": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceInitParams": {
"type": "object",
"required": [
"slug",
"name"
],
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
}
}
},
"WorkspaceInviteAcceptParams": {
"type": "object",
"required": [
"token"
],
"properties": {
"token": {
"type": "string"
}
}
},
"WorkspaceInviteParams": {
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string"
},
"role": {
"type": [
"string",
"null"
]
}
}
},
"WorkspaceListItem": {
"type": "object",
"required": [
"id",
"slug",
"name",
"plan",
"my_role",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"plan": {
"type": "string"
},
"my_role": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceListResponse": {
"type": "object",
"required": [
"workspaces",
"total"
],
"properties": {
"workspaces": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceListItem"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"WorkspaceMemberInfo": {
"type": "object",
"required": [
"user_id",
"username",
"role",
"joined_at"
],
"properties": {
"user_id": {
"type": "string",
"format": "uuid"
},
"username": {
"type": "string"
},
"display_name": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"role": {
"type": "string"
},
"joined_at": {
"type": "string",
"format": "date-time"
},
"invited_by_username": {
"type": [
"string",
"null"
],
"description": "Username of the person who invited this member."
}
}
},
"WorkspaceMembersResponse": {
"type": "object",
"required": [
"members",
"total",
"page",
"per_page"
],
"properties": {
"members": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceMemberInfo"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"WorkspaceProjectItem": {
"type": "object",
"required": [
"uid",
"name",
"display_name",
"is_public",
"created_at",
"updated_at"
],
"properties": {
"uid": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"is_public": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time"
}
}
},
"WorkspaceProjectsQuery": {
"type": "object",
"properties": {
"page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
},
"per_page": {
"type": [
"integer",
"null"
],
"format": "int64",
"minimum": 0
}
}
},
"WorkspaceProjectsResponse": {
"type": "object",
"required": [
"projects",
"total",
"page",
"per_page"
],
"properties": {
"projects": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceProjectItem"
}
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"page": {
"type": "integer",
"format": "int64",
"minimum": 0
},
"per_page": {
"type": "integer",
"format": "int64",
"minimum": 0
}
}
},
"WorkspaceStatsResponse": {
"type": "object",
"required": [
"project_count",
"member_count",
"recent_activities"
],
"properties": {
"project_count": {
"type": "integer",
"format": "int64"
},
"member_count": {
"type": "integer",
"format": "int64"
},
"my_role": {
"type": [
"string",
"null"
]
},
"recent_activities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkspaceActivityItem"
}
}
}
},
"WorkspaceUpdateParams": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"avatar_url": {
"type": [
"string",
"null"
]
},
"billing_email": {
"type": [
"string",
"null"
]
}
}
}
}
},
"tags": [
{
"name": "Auth",
"description": "Authentication and user identity"
},
{
"name": "Agent",
"description": "AI agent model management"
},
{
"name": "Git",
"description": "Git repository operations"
},
{
"name": "Issues",
"description": "Issue tracking"
},
{
"name": "Project",
"description": "Project management"
},
{
"name": "PullRequest",
"description": "Pull request management"
},
{
"name": "Room",
"description": "Real-time chat rooms"
},
{
"name": "Search",
"description": "Global and room message search"
},
{
"name": "User",
"description": "User profiles and settings"
},
{
"name": "Workspace",
"description": "Workspace management and collaboration"
}
]
}