2698 lines
68 KiB
JSON
2698 lines
68 KiB
JSON
{
|
|
"openapi": "3.1.0",
|
|
"info": {
|
|
"title": "KanbanGit Application API",
|
|
"version": "0.1.0",
|
|
"description": "First-party JSON API for KanbanGit UI-equivalent workflows. Application endpoints require a bearer application key created in Settings > Applications."
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "/api"
|
|
}
|
|
],
|
|
"security": [
|
|
{
|
|
"ApplicationKey": []
|
|
}
|
|
],
|
|
"tags": [
|
|
{
|
|
"name": "Projects"
|
|
},
|
|
{
|
|
"name": "Tickets"
|
|
},
|
|
{
|
|
"name": "Board"
|
|
},
|
|
{
|
|
"name": "Metadata"
|
|
},
|
|
{
|
|
"name": "Repositories"
|
|
},
|
|
{
|
|
"name": "Git Connections"
|
|
},
|
|
{
|
|
"name": "Users"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/projects": {
|
|
"get": {
|
|
"tags": ["Projects"],
|
|
"operationId": "listProjects",
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ProjectCollection"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthenticated"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["Projects"],
|
|
"operationId": "createProject",
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/ProjectStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/ProjectResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}": {
|
|
"get": {
|
|
"tags": ["Projects"],
|
|
"operationId": "getProject",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ProjectResource"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Projects"],
|
|
"operationId": "deleteProject",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/DeleteProject"
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/board": {
|
|
"get": {
|
|
"tags": ["Board"],
|
|
"operationId": "getProjectBoard",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/BoardPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/backlog": {
|
|
"get": {
|
|
"tags": ["Board"],
|
|
"operationId": "getProjectBacklog",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/BacklogPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/ticket-options": {
|
|
"get": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "getProjectTicketOptions",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"name": "source",
|
|
"in": "query",
|
|
"schema": {
|
|
"type": "string",
|
|
"enum": ["backlog", "board"],
|
|
"default": "backlog"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketOptionsPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets": {
|
|
"get": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "listProjectTickets",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketCollection"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "createProjectTicket",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}": {
|
|
"get": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "getProjectTicket",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketDetailPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "updateProjectTicket",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/status-targets": {
|
|
"get": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "getProjectTicketStatusTargets",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/StatusTargetsPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/status": {
|
|
"patch": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "moveProjectTicket",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketMove"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/branches/validate": {
|
|
"get": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "validateProjectTicketBranch",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
},
|
|
{
|
|
"name": "repository_connection_id",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"name": "branch_name",
|
|
"in": "query",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/BranchValidationPayload"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/branches": {
|
|
"post": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "createProjectTicketBranch",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/Branch"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/BranchCreatedPayload"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/links": {
|
|
"post": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "createProjectTicketLink",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketLink"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketLinkResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/tickets/{ticket}/links/{ticketLink}": {
|
|
"delete": {
|
|
"tags": ["Tickets"],
|
|
"operationId": "deleteProjectTicketLink",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketLinkId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"404": {
|
|
"$ref": "#/components/responses/NotFound"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board": {
|
|
"get": {
|
|
"tags": ["Board"],
|
|
"operationId": "getProjectBoardSettings",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/BoardSettingsPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board/columns": {
|
|
"post": {
|
|
"tags": ["Board"],
|
|
"operationId": "createProjectBoardColumn",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/BoardColumnStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/BoardColumnResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board/columns/{boardColumn}": {
|
|
"patch": {
|
|
"tags": ["Board"],
|
|
"operationId": "updateProjectBoardColumn",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/BoardColumnId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/BoardColumnUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/BoardColumnResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Board"],
|
|
"operationId": "deleteProjectBoardColumn",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/BoardColumnId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board/statuses": {
|
|
"post": {
|
|
"tags": ["Board"],
|
|
"operationId": "createProjectTicketStatus",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketStatusStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketStatusResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board/statuses/{ticketStatus}": {
|
|
"patch": {
|
|
"tags": ["Board"],
|
|
"operationId": "updateProjectTicketStatus",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketStatusId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketStatusUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketStatusResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Board"],
|
|
"operationId": "deleteProjectTicketStatus",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketStatusId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/board/statuses/{ticketStatus}/transitions": {
|
|
"patch": {
|
|
"tags": ["Board"],
|
|
"operationId": "updateProjectTicketStatusTransitions",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketStatusId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketStatusTransitions"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketStatusResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata": {
|
|
"get": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "getProjectTicketMetadataSettings",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/MetadataSettingsPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "updateProjectTicketMetadataSettings",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/MetadataSettings"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ProjectResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/types": {
|
|
"post": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "createProjectTicketType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketTypeStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketTypeResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/types/{ticketType}": {
|
|
"patch": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "updateProjectTicketType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketTypeId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketTypeUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketTypeResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "deleteProjectTicketType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketTypeId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/DeleteTicketType"
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/priorities": {
|
|
"post": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "createProjectTicketPriority",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/NamedSettingStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketPriorityResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/priorities/{ticketPriority}": {
|
|
"patch": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "updateProjectTicketPriority",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketPriorityId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/NamedSettingUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketPriorityResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "deleteProjectTicketPriority",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketPriorityId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/fields": {
|
|
"post": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "createProjectTicketFieldDefinition",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketFieldDefinitionStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketFieldDefinitionResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/fields/{ticketFieldDefinition}": {
|
|
"patch": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "updateProjectTicketFieldDefinition",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketFieldDefinitionId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/TicketFieldDefinitionUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketFieldDefinitionResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "deleteProjectTicketFieldDefinition",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketFieldDefinitionId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/link-types": {
|
|
"post": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "createProjectTicketLinkType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/NamedSettingStore"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/TicketLinkTypeResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/metadata/link-types/{ticketLinkType}": {
|
|
"patch": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "updateProjectTicketLinkType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketLinkTypeId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/NamedSettingUpdate"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/TicketLinkTypeResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Metadata"],
|
|
"operationId": "deleteProjectTicketLinkType",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/TicketLinkTypeId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/repositories": {
|
|
"get": {
|
|
"tags": ["Repositories"],
|
|
"operationId": "getProjectRepositorySettings",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/RepositorySettingsPayload"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["Repositories"],
|
|
"operationId": "createProjectRepositoryConnection",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/RepositorySelection"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/RepositoryConnectionResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/projects/{project}/settings/repositories/{repositoryConnection}": {
|
|
"patch": {
|
|
"tags": ["Repositories"],
|
|
"operationId": "updateProjectRepositoryConnection",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/RepositoryConnectionId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/RepositorySelection"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/RepositoryConnectionResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Repositories"],
|
|
"operationId": "deleteProjectRepositoryConnection",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/ProjectId"
|
|
},
|
|
{
|
|
"$ref": "#/components/parameters/RepositoryConnectionId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/git-connections": {
|
|
"get": {
|
|
"tags": ["Git Connections"],
|
|
"operationId": "listGitConnections",
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/UserGitConnectionCollection"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthenticated"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": ["Git Connections"],
|
|
"operationId": "createGitConnection",
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/UserGitConnection"
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"$ref": "#/components/responses/UserGitConnectionResource"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/git-connections/{gitConnection}": {
|
|
"patch": {
|
|
"tags": ["Git Connections"],
|
|
"operationId": "updateGitConnection",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/GitConnectionId"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"$ref": "#/components/requestBodies/UserGitConnection"
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/UserGitConnectionResource"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
},
|
|
"422": {
|
|
"$ref": "#/components/responses/ValidationError"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": ["Git Connections"],
|
|
"operationId": "deleteGitConnection",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/GitConnectionId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"$ref": "#/components/responses/NoContent"
|
|
},
|
|
"403": {
|
|
"$ref": "#/components/responses/Forbidden"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{user}/assigned-tickets": {
|
|
"get": {
|
|
"tags": ["Users"],
|
|
"operationId": "getUserAssignedTickets",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/UserId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/AssignedTicketsPayload"
|
|
},
|
|
"401": {
|
|
"$ref": "#/components/responses/Unauthenticated"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"securitySchemes": {
|
|
"ApplicationKey": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"bearerFormat": "KanbanGit application key",
|
|
"description": "Use a first-party application key created in Settings > Applications."
|
|
}
|
|
},
|
|
"parameters": {
|
|
"UserId": {
|
|
"name": "user",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"ProjectId": {
|
|
"name": "project",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketId": {
|
|
"name": "ticket",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketLinkId": {
|
|
"name": "ticketLink",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"BoardColumnId": {
|
|
"name": "boardColumn",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketStatusId": {
|
|
"name": "ticketStatus",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketTypeId": {
|
|
"name": "ticketType",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketPriorityId": {
|
|
"name": "ticketPriority",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketFieldDefinitionId": {
|
|
"name": "ticketFieldDefinition",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"TicketLinkTypeId": {
|
|
"name": "ticketLinkType",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"RepositoryConnectionId": {
|
|
"name": "repositoryConnection",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"GitConnectionId": {
|
|
"name": "gitConnection",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"requestBodies": {
|
|
"ProjectStore": {
|
|
"$ref": "#/components/requestBodies/JsonProjectStore"
|
|
},
|
|
"JsonProjectStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProjectStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"DeleteProject": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/DeleteProjectRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketMove": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketMoveRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Branch": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BranchRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketLink": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketLinkRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BoardColumnStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BoardColumnStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BoardColumnUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BoardColumnUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketStatusStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketStatusStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketStatusUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketStatusUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketStatusTransitions": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketStatusTransitionsRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"MetadataSettings": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MetadataSettingsRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketTypeStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketTypeStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketTypeUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketTypeUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"DeleteTicketType": {
|
|
"required": false,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/DeleteTicketTypeRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"NamedSettingStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/NamedSettingStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"NamedSettingUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/NamedSettingUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketFieldDefinitionStore": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketFieldDefinitionStoreRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketFieldDefinitionUpdate": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketFieldDefinitionUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RepositorySelection": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RepositorySelectionRequest"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UserGitConnection": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserGitConnectionRequest"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"ProjectResource": {
|
|
"description": "Project resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProjectEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ProjectCollection": {
|
|
"description": "Project collection.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProjectCollectionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketResource": {
|
|
"description": "Ticket resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketCollection": {
|
|
"description": "Ticket collection.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketCollectionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketLinkResource": {
|
|
"description": "Ticket link resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketLinkEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BoardColumnResource": {
|
|
"description": "Board column resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BoardColumnEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketStatusResource": {
|
|
"description": "Ticket status resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketStatusEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketTypeResource": {
|
|
"description": "Ticket type resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketTypeEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketPriorityResource": {
|
|
"description": "Ticket priority resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketPriorityEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketFieldDefinitionResource": {
|
|
"description": "Ticket field definition resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketFieldDefinitionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketLinkTypeResource": {
|
|
"description": "Ticket link type resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketLinkTypeEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RepositoryConnectionResource": {
|
|
"description": "Repository connection resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RepositoryConnectionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UserGitConnectionResource": {
|
|
"description": "User Git connection resource.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserGitConnectionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UserGitConnectionCollection": {
|
|
"description": "User Git connection collection.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserGitConnectionCollectionEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BoardPayload": {
|
|
"description": "Board page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BoardPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BacklogPayload": {
|
|
"description": "Backlog page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BacklogPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketOptionsPayload": {
|
|
"description": "Ticket creation option payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketOptionsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TicketDetailPayload": {
|
|
"description": "Ticket detail page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TicketDetailPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"StatusTargetsPayload": {
|
|
"description": "Allowed target statuses for a ticket move.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StatusTargetsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BranchValidationPayload": {
|
|
"description": "Branch validation result.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BranchValidationPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BranchCreatedPayload": {
|
|
"description": "Created branch result.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BranchCreatedPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BoardSettingsPayload": {
|
|
"description": "Board settings page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BoardSettingsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"MetadataSettingsPayload": {
|
|
"description": "Metadata settings page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MetadataSettingsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RepositorySettingsPayload": {
|
|
"description": "Repository settings page-equivalent JSON payload.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RepositorySettingsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"AssignedTicketsPayload": {
|
|
"description": "Tickets assigned to a user grouped by projects visible to the authenticated application key owner.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssignedTicketsPayloadEnvelope"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ValidationError": {
|
|
"description": "Laravel validation error response.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ValidationError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Unauthenticated": {
|
|
"description": "No authenticated user is available.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Forbidden": {
|
|
"description": "The authenticated user is not authorized for this action.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"NotFound": {
|
|
"description": "The resource was not found.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageError"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"NoContent": {
|
|
"description": "The resource was deleted successfully."
|
|
}
|
|
},
|
|
"schemas": {
|
|
"Meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"MessageError": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": ["message"]
|
|
},
|
|
"ValidationError": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"errors": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": ["message", "errors"]
|
|
},
|
|
"Project": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"show_author": {
|
|
"type": "boolean"
|
|
},
|
|
"show_story_points": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": ["string", "null"],
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": ["string", "null"],
|
|
"format": "date-time"
|
|
}
|
|
},
|
|
"required": ["id", "name", "key"]
|
|
},
|
|
"Ticket": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_key": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": ["string", "null"]
|
|
},
|
|
"acceptance_criteria": {
|
|
"type": ["string", "null"]
|
|
},
|
|
"story_points": {
|
|
"type": ["integer", "null"]
|
|
},
|
|
"is_blocked": {
|
|
"type": "boolean"
|
|
},
|
|
"ticket_status_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_priority_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["id", "project_id", "ticket_key", "title"]
|
|
},
|
|
"TicketReference": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_key": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"User": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"format": "email"
|
|
}
|
|
}
|
|
},
|
|
"AssignedTicketsPayloadEnvelope": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AssignedTicketsProjectGroup"
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"assignee": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/User"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": ["assignee"]
|
|
}
|
|
},
|
|
"required": ["data", "meta"]
|
|
},
|
|
"AssignedTicketsProjectGroup": {
|
|
"type": "object",
|
|
"properties": {
|
|
"project": {
|
|
"$ref": "#/components/schemas/Project"
|
|
},
|
|
"tickets": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": ["project", "tickets"]
|
|
},
|
|
"BoardColumn": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["id", "project_id", "name", "position"]
|
|
},
|
|
"TicketStatus": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"board_column_id": {
|
|
"type": ["integer", "null"]
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"slug": {
|
|
"type": "string"
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"TicketType": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_parent": {
|
|
"type": "boolean"
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"TicketPriority": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"TicketFieldDefinition": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"field_type": {
|
|
"type": "string",
|
|
"enum": ["number", "user"]
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"TicketLinkType": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"position": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"TicketLink": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"linked_ticket": {
|
|
"$ref": "#/components/schemas/TicketReference"
|
|
},
|
|
"source_ticket_id": {
|
|
"type": "integer"
|
|
},
|
|
"target_ticket_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_link_type_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"RepositoryConnection": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"project_id": {
|
|
"type": "integer"
|
|
},
|
|
"provider": {
|
|
"type": "string"
|
|
},
|
|
"base_url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"provider_repository_id": {
|
|
"type": "string"
|
|
},
|
|
"repository_full_name": {
|
|
"type": "string"
|
|
},
|
|
"repository_url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"has_personal_access": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"UserGitConnection": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"user_id": {
|
|
"type": "integer"
|
|
},
|
|
"provider": {
|
|
"type": "string"
|
|
},
|
|
"provider_label": {
|
|
"type": "string"
|
|
},
|
|
"base_url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"provider_user_id": {
|
|
"type": "string"
|
|
},
|
|
"account_login": {
|
|
"type": "string"
|
|
},
|
|
"account_name": {
|
|
"type": ["string", "null"]
|
|
}
|
|
}
|
|
},
|
|
"ProjectEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/Project"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ProjectCollectionEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Project"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TicketEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/Ticket"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TicketCollectionEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Ticket"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TicketLinkEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"BoardColumnEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"TicketStatusEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"TicketTypeEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"TicketPriorityEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"TicketFieldDefinitionEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"TicketLinkTypeEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"RepositoryConnectionEnvelope": {
|
|
"$ref": "#/components/schemas/GenericResourceEnvelope"
|
|
},
|
|
"UserGitConnectionEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/UserGitConnection"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UserGitConnectionCollectionEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/UserGitConnection"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"GenericResourceEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"Envelope": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {},
|
|
"meta": {
|
|
"$ref": "#/components/schemas/Meta"
|
|
}
|
|
},
|
|
"required": ["data"]
|
|
},
|
|
"BoardPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"BacklogPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"TicketOptionsPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"TicketDetailPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"BoardSettingsPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"MetadataSettingsPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"RepositorySettingsPayloadEnvelope": {
|
|
"$ref": "#/components/schemas/GenericPayloadEnvelope"
|
|
},
|
|
"StatusTargetsPayloadEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_status": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/TicketStatus"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"target_statuses": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/TicketStatus"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"BranchValidationPayloadEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/BranchValidationResult"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"BranchCreatedPayloadEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/BranchCreatedResult"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"GenericPayloadEnvelope": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Envelope"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"BranchValidationResult": {
|
|
"type": "object",
|
|
"properties": {
|
|
"is_valid": {
|
|
"type": "boolean"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": ["is_valid", "message"]
|
|
},
|
|
"BranchCreatedResult": {
|
|
"type": "object",
|
|
"properties": {
|
|
"branch_name": {
|
|
"type": "string"
|
|
},
|
|
"repository_full_name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": ["branch_name", "repository_full_name"]
|
|
},
|
|
"ProjectStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string",
|
|
"maxLength": 5,
|
|
"pattern": "^[A-Z0-9]+$"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
}
|
|
},
|
|
"required": ["key", "name"]
|
|
},
|
|
"DeleteProjectRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"confirmation_key": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": ["confirmation_key"]
|
|
},
|
|
"TicketStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"description": {
|
|
"type": ["string", "null"]
|
|
},
|
|
"acceptance_criteria": {
|
|
"type": ["string", "null"]
|
|
},
|
|
"assignee_user_id": {
|
|
"type": ["integer", "null"]
|
|
},
|
|
"story_points": {
|
|
"type": ["integer", "null"],
|
|
"minimum": 0
|
|
},
|
|
"ticket_priority_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_status_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_type_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["title", "ticket_priority_id", "ticket_status_id", "ticket_type_id"]
|
|
},
|
|
"TicketUpdateRequest": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/TicketStoreRequest"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"author_user_id": {
|
|
"type": ["integer", "null"]
|
|
},
|
|
"blocked_comment": {
|
|
"type": ["string", "null"]
|
|
},
|
|
"is_blocked": {
|
|
"type": "boolean"
|
|
},
|
|
"parent_ticket_id": {
|
|
"type": ["integer", "null"]
|
|
},
|
|
"field_values": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ticket_field_definition_id": {
|
|
"type": "integer"
|
|
},
|
|
"value_number": {
|
|
"type": ["number", "string", "null"]
|
|
},
|
|
"value_user_id": {
|
|
"type": ["integer", "string", "null"]
|
|
}
|
|
},
|
|
"required": ["ticket_field_definition_id"]
|
|
}
|
|
}
|
|
},
|
|
"required": ["is_blocked"]
|
|
}
|
|
]
|
|
},
|
|
"TicketMoveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ticket_status_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["ticket_status_id"]
|
|
},
|
|
"BranchRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"branch_name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"repository_connection_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["branch_name", "repository_connection_id"]
|
|
},
|
|
"TicketLinkRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"linked_ticket_id": {
|
|
"type": "integer"
|
|
},
|
|
"ticket_link_type_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["linked_ticket_id", "ticket_link_type_id"]
|
|
},
|
|
"BoardColumnStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"position": {
|
|
"type": ["integer", "null"],
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"BoardColumnUpdateRequest": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/BoardColumnStoreRequest"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": ["position"]
|
|
}
|
|
]
|
|
},
|
|
"TicketStatusStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"board_column_id": {
|
|
"type": ["integer", "null"]
|
|
}
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"TicketStatusUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
}
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"TicketStatusTransitionsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"allowed_ticket_status_ids": {
|
|
"type": ["array", "null"],
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"MetadataSettingsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"show_author": {
|
|
"type": ["boolean", "null"]
|
|
},
|
|
"show_story_points": {
|
|
"type": ["boolean", "null"]
|
|
}
|
|
}
|
|
},
|
|
"TicketTypeStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"position": {
|
|
"type": ["integer", "null"],
|
|
"minimum": 1
|
|
},
|
|
"is_parent": {
|
|
"type": ["boolean", "null"]
|
|
}
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"TicketTypeUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"position": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["name", "position"]
|
|
},
|
|
"DeleteTicketTypeRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"replacement_ticket_type_id": {
|
|
"type": ["integer", "null"]
|
|
}
|
|
}
|
|
},
|
|
"NamedSettingStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"position": {
|
|
"type": ["integer", "null"],
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"NamedSettingUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"position": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["name", "position"]
|
|
},
|
|
"TicketFieldDefinitionStoreRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"field_type": {
|
|
"type": "string",
|
|
"enum": ["number", "user"]
|
|
},
|
|
"position": {
|
|
"type": ["integer", "null"],
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["label", "field_type"]
|
|
},
|
|
"TicketFieldDefinitionUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"field_type": {
|
|
"type": "string",
|
|
"enum": ["number", "user"]
|
|
},
|
|
"position": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
},
|
|
"required": ["label", "field_type", "position"]
|
|
},
|
|
"RepositorySelectionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider_repository_id": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"user_git_connection_id": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": ["provider_repository_id", "user_git_connection_id"]
|
|
},
|
|
"UserGitConnectionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string",
|
|
"enum": ["gitea"]
|
|
},
|
|
"base_url": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"maxLength": 255
|
|
},
|
|
"api_token": {
|
|
"type": "string",
|
|
"maxLength": 2048,
|
|
"writeOnly": true
|
|
}
|
|
},
|
|
"required": ["provider", "base_url", "api_token"]
|
|
}
|
|
}
|
|
}
|
|
}
|