Skip to documentation

Sprints

Find the active sprint for a team and read its planning window. Request sprints:read.

3 endpoints

GET

List team sprints

GET /external/v1/sprints

List one team’s sprints (also called cycles), ordered by startDate descending and UUID ascending. List responses are arrays with X-Total-Count, X-Limit, X-Offset and X-Has-More headers. Continue until X-Has-More is false; concurrent edits can shift offset pages.

Requirements

API scopes required:
sprints:read

Request

Parameters

NameTypeDescription
teamId *uuidRequired query parameter. Resolve it with GET /external/v1/teams (initiatives:read).
limit integerPage size, 1–100. Default 20.
offset integerMatching rows to skip. Default 0.
status enumplanned, active, or completed. Omit to include all.

Responses

200
Success

The requested data is returned.

400
Invalid request

Invalid ID, unsupported field, empty patch, or invalid value.

403
Missing scope

The key does not grant the required resource scope.

404
Not found

The addressed record or assignment is outside this workspace or team.

Example Response

200 OK
json
[
  {
    "id": "22222222-2222-4222-8222-222222222222",
    "teamId": "11111111-1111-4111-8111-111111111111",
    "name": "Sprint 18",
    "status": "active",
    "objective": "Improve export reliability",
    "startDate": "2026-09-07T00:00:00Z",
    "endDate": "2026-09-18T23:59:59Z",
    "sourceManaged": false
  }
]
GET

Get the current sprint

GET /external/v1/sprints/current

Return {item: sprint} for the explicitly active sprint. Return {item: null} when no sprint is active. Dates alone never select a sprint. If inconsistent data contains multiple active sprints, return 409 and require an explicit sprint ID.

Requirements

API scopes required:
sprints:read

Request

Parameters

NameTypeDescription
teamId *uuidRequired query parameter. Resolve it with GET /external/v1/teams (initiatives:read).

Responses

200
Success

The requested data is returned.

400
Invalid request

Invalid ID, unsupported field, empty patch, or invalid value.

403
Missing scope

The key does not grant the required resource scope.

404
Not found

The addressed record or assignment is outside this workspace or team.

Example Response

200 OK
json
{
  "item": {
    "id": "22222222-2222-4222-8222-222222222222",
    "teamId": "11111111-1111-4111-8111-111111111111",
    "name": "Sprint 18",
    "status": "active",
    "objective": "Improve export reliability",
    "startDate": "2026-09-07T00:00:00Z",
    "endDate": "2026-09-18T23:59:59Z",
    "sourceManaged": false
  }
}
GET

Get a sprint

GET /external/v1/sprints/:id

Read one sprint from the specified team. This API exposes sprint reads; planning and cycle lifecycle management remain in Zentrik.

Requirements

API scopes required:
sprints:read

Request

Parameters

NameTypeDescription
id *uuidRecord UUID in the path.
teamId *uuidRequired query parameter. Resolve it with GET /external/v1/teams (initiatives:read).

Responses

200
Success

The requested data is returned.

400
Invalid request

Invalid ID, unsupported field, empty patch, or invalid value.

403
Missing scope

The key does not grant the required resource scope.

404
Not found

The addressed record or assignment is outside this workspace or team.

Example Response

200 OK
json
{
  "id": "22222222-2222-4222-8222-222222222222",
  "teamId": "11111111-1111-4111-8111-111111111111",
  "name": "Sprint 18",
  "status": "active",
  "objective": "Improve export reliability",
  "startDate": "2026-09-07T00:00:00Z",
  "endDate": "2026-09-18T23:59:59Z",
  "sourceManaged": false
}