CSV exports
TimeTrack has two different CSV downloads. Only the billing file is the validated team extract used for Power BI.
Billing CSV and JSON
GET /api/exports/billing?month=YYYY-MM&format=csv (default) or json. Optional projectId. Session must be MANAGER or ADMIN of the company (401 if logged out, 403 otherwise). Rows are validated, soft-deleted rows are excluded, and the range is that calendar month. The screen at /exports only lists the last 3 months; the endpoint accepts any YYYY-MM. CSV headers: Date, Consultant, Email, Projet, Client, Heures, Jours. Jours is hours/8 with two decimals, plus a TOTAL row and a UTF-8 BOM. There is no description column. JSON is an array of date, consultant, consultantEmail, project, client, hours, days (hours/8, not rounded), validated, validatedAt. No TOTAL row.
Personal CSV
GET /api/exports/timesheets?month=YYYY-MM&format=csv is the signed-in user only, every status, including soft-deleted rows. Columns: date, project, client, hours, days (hours/8), description, plus a total row. The screen /timesheet/export offers the last 3 months. This is not the team file.
PDF and Excel: personal export and month close. Power BI flow: SAP and Power BI.