For AI agents: markdown of this page — /docs-content-en/scrum/sprints/update.md documentation index — /llms.txt

Update a sprint

PATCH /v1/scrum/sprints/:id

Changes the name, dates, order or status of a sprint. The request body is flat, with no fields wrapper; pass only the fields you change.

Parameters

Parameter Type Required Description
Parameterid (path) Typenumber Requiredyes DescriptionSprint ID. Obtain it from the list of sprints or the active sprint

Request fields (body)

At least one field is required.

Field Type Description
Fieldname Typestring DescriptionSprint name
FielddateStart Typestring | number DescriptionSprint start: a date 2026-11-02 or a Unix timestamp
FielddateEnd Typestring | number DescriptionSprint end: a date 2026-11-16 or a Unix timestamp
Fieldstatus Typestring Descriptionplanned, active or completed
Fieldsort Typenumber DescriptionSprint order within the project
FieldgroupId Typenumber DescriptionScrum project ID. List of groups: GET /v1/workgroups
FieldcreatedBy Typenumber DescriptionID of the sprint author. List: GET /v1/users
FieldmodifiedBy Typenumber DescriptionID of the user who changed the sprint. List: GET /v1/users

Examples

curl — personal key

Terminal
curl -X PATCH https://vibecode.bitrix24.com/v1/scrum/sprints/45 \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Sprint 11", "dateEnd": "2026-11-16" }'

curl — OAuth application

Terminal
curl -X PATCH https://vibecode.bitrix24.com/v1/scrum/sprints/45 \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Sprint 11", "dateEnd": "2026-11-16" }'

JavaScript — personal key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/scrum/sprints/45', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'Sprint 11', dateEnd: '2026-11-16' }),
})

const { data: sprint } = await res.json()
console.log(sprint.name, sprint.dateEnd)

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/scrum/sprints/45', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'Sprint 11', dateEnd: '2026-11-16' }),
})

const { data: sprint } = await res.json()
console.log(sprint.name, sprint.dateEnd)

Response fields

Field Type Description
Fieldsuccess Typeboolean Descriptiontrue on successful update
Fielddata Typeobject DescriptionThe sprint after the update
Fielddata.id Typenumber DescriptionSprint ID
Fielddata.groupId Typenumber DescriptionScrum project ID
Fielddata.entityType Typestring DescriptionRecord type, sprint
Fielddata.name Typestring DescriptionSprint name
Fielddata.goal Typestring DescriptionSprint goal
Fielddata.sort Typenumber DescriptionSprint order within the project
Fielddata.createdBy Typenumber DescriptionID of the sprint author
Fielddata.modifiedBy Typenumber DescriptionID of the user who last changed the sprint
Fielddata.dateStart Typestring DescriptionSprint start in ISO 8601 format
Fielddata.dateEnd Typestring DescriptionSprint end in ISO 8601 format
Fielddata.status Typestring Descriptionplanned, active or completed

Response example

JSON
{
  "success": true,
  "data": {
    "id": 45,
    "groupId": 211,
    "entityType": "sprint",
    "name": "Sprint 11",
    "goal": "",
    "sort": 1,
    "createdBy": 1317,
    "modifiedBy": 1317,
    "dateStart": "2026-11-02T00:00:00+00:00",
    "dateEnd": "2026-11-16T00:00:00+00:00",
    "status": "planned"
  }
}

Error response example

404 — no sprint with this ID exists:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Sprint not found"
  }
}

Errors

HTTP Code Description
HTTP400 CodeINVALID_PARAMS DescriptionEmpty body, a field outside the table, status outside the allowed values, or an ID that is not a positive integer
HTTP404 CodeENTITY_NOT_FOUND DescriptionNo sprint with this id exists
HTTP403 CodeSCOPE_DENIED DescriptionThe key lacks the task scope
HTTP403 CodeWRITE_BLOCKED_READONLY_KEY DescriptionThe key is read-only
HTTP401 CodeTOKEN_MISSING DescriptionThe key has no tokens configured

The full list of common API errors — Errors.

Known specifics

  • Changing the status skips the start checks. status: "active" makes a planned sprint active even when it has no tasks. The regular start refuses such a sprint.

See also