Ga naar hoofdinhoud

Sprint Endpoints

Manage agile sprints β€” create sprints, assign tasks, track sprint employees, and manage sprint lifecycle.

Base Path​

/api/organization-sprint

Endpoints​

List All Sprints​

GET /api/organization-sprint
Authorization: Bearer {token}

Query Parameters (JSON-encoded data):

ParameterTypeDescription
findInputobjectFilter conditions
relationsarrayRelations to include

Get Sprint by ID​

GET /api/organization-sprint/:id
Authorization: Bearer {token}

Create Sprint​

POST /api/organization-sprint
Authorization: Bearer {token}
Content-Type: application/json

{
"name": "Sprint 1",
"projectId": "uuid",
"organizationId": "uuid",
"startDate": "2024-03-01",
"endDate": "2024-03-15",
"goal": "Complete user authentication module",
"length": 14,
"dayStart": 1,
"status": "TODO"
}

Response 201 Created.

Update Sprint​

PUT /api/organization-sprint/:id
Authorization: Bearer {token}
Content-Type: application/json

{
"status": "IN_PROGRESS",
"goal": "Updated sprint goal"
}

Response 202 Accepted.

Delete Sprint​

DELETE /api/organization-sprint/:id
Authorization: Bearer {token}

Sprint Statuses​

StatusDescription
TODOPlanned, not started
IN_PROGRESSCurrently active
DONECompleted

Data Model​

interface IOrganizationSprint {
id: string;
name: string;
goal?: string;
length: number;
startDate?: Date;
endDate?: Date;
dayStart?: number;
status?: SprintStatusEnum;

// Relations
projectId: string;
project?: IOrganizationProject;
tasks?: ITask[];
members?: IOrganizationSprintEmployee[];
organizationId: string;
tenantId: string;
}

interface IOrganizationSprintEmployee {
sprintId: string;
employeeId: string;
roleInSprint?: string;
}

interface IOrganizationSprintTask {
sprintId: string;
taskId: string;
totalWorkedHours?: number;
}

Permissions​

ActionRequired Permission
View sprintsALL_ORG_VIEW or ORG_SPRINT_VIEW
Create sprintsALL_ORG_EDIT or ORG_SPRINT_ADD
Update sprintsALL_ORG_EDIT or ORG_SPRINT_EDIT
Delete sprintsALL_ORG_EDIT or ORG_SPRINT_DELETE