Taiga#
Taiga supports native User Stories, Tasks, Issues, and Epics CSV import through the shared reviewable provider-import flow.
Capabilities#
| Capability | Taiga behavior | Status |
|---|---|---|
CSV_IMPORT |
Strictly identify and parse one native User Stories, Tasks, Issues, or Epics report into projected TeamBoost task drafts | Built |
SYNC |
Pull work items through the Taiga REST API | Not built |
USER_IMPORT |
Pull project users during API sync | Not built |
WEBHOOK |
Verify Taiga webhook callbacks | Not built |
Export and upload#
In Taiga, open the project and go to Admin → Project → Reports. Generate the desired User Stories, Tasks, Issues, or Epics report URL if needed, then download that report's CSV. The generated URL is a bearer link, so keep it private and regenerate or remove it after use.
Upload the downloaded file through the generic endpoint:
POST /api/v1/providers/taiga/imports/csv
The endpoint requires the normal TeamBoost user token and organization scope. The upload creates a review session; it does not immediately create TeamBoost tasks.
Each upload must be exactly one native work-item report. The four report shapes
are detected using their distinct required columns; unknown, incomplete, or
ambiguous combinations are rejected with invalid_csv_format.
Mapping behavior#
| Taiga value | TeamBoost draft | Behavior |
|---|---|---|
subject |
title |
Direct; a title shorter than two characters is a blocking projection error |
| User Story / Task / Epic kind | type |
Defaults to OTHER with a mapping note; provider hierarchy is not assumed to be a TeamBoost task type |
Issue type |
type |
Bug/Defect maps to BUG, Fix maps to FIX; custom or ambiguous types default to OTHER with a note |
description |
description |
Direct |
| Recognized status labels | status |
Blocked, backlog/to-do, in-progress, done/closed, and canceled/rejected labels map conservatively; custom labels leave status unset with a note |
Issue priority |
priority |
Low, Medium/Normal, High, and Urgent/Critical map directly; custom names use UNKNOWN with a note |
| No User Story / Task / Epic priority | priority |
UNKNOWN with a mapping note |
tags |
labels |
CSV comma-separated tags are retained |
owner |
creatorId / requestedById |
Resolved through the review session's user mapping; an unmapped creator is non-blocking and remains unset |
assigned_to / User Story assigned_users |
ownerId |
The first source-order assignee is selected; a present unmapped assignee blocks confirmation, and multiple User Story assignees add a review note |
due_date |
plannedEndDate |
Date-only values use the end of that UTC day |
| Project | projectTitle |
Left unset because the CSV report has no project identity |
| Task parent User Story, Issue severity, sprint, swimlane, points, relations, dynamic/custom columns | descriptionJson.exportFields |
Preserved as source context without inventing TeamBoost groups, shared fields, or dependencies |
Every CSV column is preserved in the session's lossless source record,
including empty and dynamic role-point/custom-attribute values. UTF-8 files with
or without a BOM and standard CSV quoted commas/newlines are supported. Invalid
dates, booleans, row widths, or required row values are reported as row errors.
Review requirements#
Before confirming the session:
- Review
OTHERtask-type andUNKNOWNpriority defaults, especially custom Issue type/priority names. - Choose a project if the draft needs one; the CSV does not identify it.
- Resolve every present assignee to a TeamBoost member.
- Review custom statuses and multi-assignee notes.
- Inspect provider-only severity, sprint, hierarchy, point, and custom-field context.
projectionErrors block confirmation. mappingNotes are advisory and remain
visible for operator review.
Not built yet#
- API credential verification, selected-project sync, and sync-coupled user
import. Hosted Taiga application tokens require external-application
registration and are not currently available through a normal end-user
self-service flow, so this release does not declare API capabilities. The
provider-agnostic credential endpoint may store an opaque Taiga value, but
that does not enable sync; verification returns
capability_not_supported. - Webhook verification, replay protection, and event processing.