Projects: Tasks

🔒 Обновление существующей задачи: любые поля ITask - атрибуты, спецификация и результат, исполнители этапов, привязки к фиче/версии, затронутые модули и компоненты.

Обновление существующей задачи: любые поля ITask - атрибуты, спецификация и результат, исполнители этапов, привязки к фиче/версии, затронутые модули и компоненты.

Access: authorized (10 ) · Scope: write

Allows: task:update, task:move, task:approve (все обязательны; проверка в команде по ресурсу из запроса)

TypeScript (copy-paste)

POST /projects/task/update

<details open><summary><b>Params</b></summary>
export interface ProjectsTaskUpdateParams {
  ID: string
}
</details> <details open><summary><b>Body (Partial)</b></summary>
// Patch-body: все поля опциональны (Valid.Patch)
export type ProjectsTaskUpdateBody = Partial<Task>

export interface ProjectsTaskUpdateBodyFields {
  cID?: string
  projectID?: string
  productID?: string
  versionID?: string | null
  featureID?: string | null
  ID?: string
  status?: TaskStatus
  state?: TaskState
  category?: TaskCategory
  type?: TaskType
  priority?: TaskPriority
  urgently?: number | null
  title?: string
  searchTitle?: string
  key?: number
  currentAssignee?: string
  /** Unix timestamp in milliseconds */
  ord?: number
  spec?: string
  gist?: string | null
  modules?: Record<string, any> | null
  components?: Record<string, any> | null
  approvalAssignee?: string | null
  workAssignee?: string
  workIterationKey?: number | null
  workTimePlan?: number | null
  workEvaluation?: number | null
  reviewAssignee?: string | null
  testAssignee?: string | null
  resolutionVersionID?: string | null
  resolutionType?: TaskResolutionType | null
  resolutionNote?: string | null
  result?: string | null
  meta?: Record<string, any> | null
  git?: Record<string, any> | null
  createDT?: string
  creatorUID?: string
  stage?: TaskStageType
  browser?: TaskBrowser | null
  bugType?: TaskBugType | null
  build?: string | null
  devices?: Array<any> | null
  labels?: Array<any> | null
  fuzzy?: boolean | null
  /** Unix timestamp in milliseconds */
  updTS?: number
  isDeleted?: boolean | null
  deletedTS?: number | null
  updUID?: string
  rejectUID?: string | null
  rejectTS?: number | null
}
</details> <details open><summary><b>Response</b></summary>
export type ProjectsTaskUpdateResponse = IServerResponse<Task>

export interface IServerResponse<T = any> {
  code: number
  data: T
  srvTS: number
  rkey: string
}
</details>

Полный файл типов: /docs/types · raw: /docs/api-types.ts

post/projects/task/update

Request

  • Base URL: http://localhost
  • URL: http://localhost/projects/task/update
  • Auth: one of:
    • API key in header sid and API key in header rts and API key in header sig
    • HTTP bearer

Query parameters

IDstring uuid required

Можно передать header ID (сервер мержит headers+query)

Headers

devIDstring uuid required

UUID устройства клиента

tzstring required
Example:Europe/Moscow

Таймзона клиента (IANA или offset)

appstring required
Example:kosmodrom-web

Имя клиентского приложения

appVerstring required
Example:1.0.0

Версия клиента

rKeystring

Уникальный ключ запроса для логов/саппорта

Request body

cIDstring uuid
projectIDstring uuid
productIDstring uuid
versionIDstring uuid nullable
featureIDstring uuid nullable
IDstring uuid
status0 | 110 | 120 | 130 | 140 | 150 | 200

draft = 0, approval = 110, work = 120, review = 130, deployment = 140, testing = 150, closed = 200

state-1 | 0 | 1 | 10

waiting = -1, pause = 0, work = 1, closed = 10

category1 | 3 | 6 | 9

common = 1, dev = 3, qa = 6, bug = 9

type11 | 12 | 13 | 14 | 15 | 16 | 19 | 31 | 32 | 33 | 34 | 35 | 61 | 62 | 63 | 64 | 91 | 93 | 95 | 97 | 99

planning = 11, analysis = 12, design = 13, research = 14, education = 15, documentation = 16, other = 19, frontend = 31, backend = 32, devops = 33, tests = 34, fullstack = 35, freetest = 61, smoke = 62, regression = 63, testcase = 64, bug_trivial = 91, bug_minor = 93, bug_major = 95, bug_critical = 97, bug_block = 99

priority-10 | 0 | 1 | 10 | 20

postponed = -10, unset = 0, inOrder = 1, important = 10, urgent = 20

urgentlyinteger nullable
titlestring
searchTitlestring
keyinteger
currentAssigneestring
ordinteger

Unix timestamp in milliseconds

specstring
giststring nullable
modulesobject nullable
componentsobject nullable
approvalAssigneestring nullable
workAssigneestring
workIterationKeyinteger nullable
workTimePlaninteger nullable
workEvaluationnumber nullable
reviewAssigneestring nullable
testAssigneestring nullable
resolutionVersionIDstring uuid nullable
resolutionType0 | 1 | 2 | 3 | 4

resolved = 0, notDoing = 1, notReproducible = 2, notBug = 3, duplicate = 4

resolutionNotestring nullable
resultstring nullable
metaobject nullable
gitobject nullable
createDTstring date-time
creatorUIDstring uuid
stage0 | 10 | 20 | 30 | 40 | 100

dev = 0, alpha = 10, betta = 20, rc = 30, hotfix = 40, prod = 100

browser0 | 10 | 20 | 30 | 40 | 50 | 60

any = 0, chrome = 10, safari = 20, opera = 30, edge = 40, firefox = 50, yandex = 60

bugType10 | 20 | 30 | 40

ui = 10, fn = 20, ux = 30, spec = 40

buildstring nullable
fuzzyboolean nullable
updTSinteger

Unix timestamp in milliseconds

isDeletedboolean nullable
deletedTSinteger nullable
updUIDstring
rejectUIDstring nullable
rejectTSinteger nullable

Response

OK — IServerResponse<Task>

codeinteger required
srvTSinteger required

Server timestamp (ms)

rkeystring required

Request key

Example response

{
  "code": 200
}

Changes

No recorded changes to this operation across all 1 revision of this API.