Files
SDSStundenerfassung/doc/API-ROUTES.md

7.4 KiB

API Routen

Übersicht aller HTTP-Routen der Anwendung. Die Registrierung erfolgt in server.js.

Auth-Kürzel: A = requireAuth, V = requireVerwaltung, AD = requireAdmin, — = öffentlich.

Root & Auth (routes/auth-routes.js)

Methode Pfad Auth Quelle
GET / server.js:67
GET /login auth-routes.js:94
POST /login auth-routes.js:99
GET /logout auth-routes.js:178

Dashboard (routes/dashboard-routes.js)

Methode Pfad Auth Quelle
GET /dashboard A dashboard-routes.js:39
GET /overtime-breakdown A dashboard-routes.js:65
GET /api/checkin-root-url dashboard-routes.js:11
GET /api/dashboard/qr-pdf/internal A dashboard-routes.js:23
GET /api/dashboard/qr-pdf/external A dashboard-routes.js:31

User (routes/user-routes.js)

Methode Pfad Auth Quelle
GET /api/user/last-week A user-routes.js:11
POST /api/user/last-week A user-routes.js:24
GET /api/user/weekend-percentages A user-routes.js:43
GET /api/user/data A user-routes.js:57
GET /api/user/client-ip A user-routes.js:74
GET /api/user/ping-ip A user-routes.js:90
POST /api/user/ping-ip A user-routes.js:103
GET /api/user/project-search-enabled A user-routes.js:134
POST /api/user/project-search-enabled A user-routes.js:152
POST /api/user/switch-role A user-routes.js:178
GET /api/user/planned-vacation A user-routes.js:203
GET /api/user/stats A user-routes.js:274
GET /api/user/overtime-breakdown A user-routes.js:571

Timesheet (routes/timesheet-routes.js)

Methode Pfad Auth Quelle
POST /api/timesheet/save A timesheet-routes.js:42
GET /api/timesheet/holidays A timesheet-routes.js:289
GET /api/timesheet/week/:weekStart A timesheet-routes.js:300
POST /api/timesheet/submit A timesheet-routes.js:338
GET /api/timesheet/latest-submitted/:weekStart A timesheet-routes.js:531
GET /api/timesheet/download-info/:id V timesheet-routes.js:565
GET /api/timesheet/pdf/:id A timesheet-routes.js:594

Projektsuche (routes/project-search-routes.js)

Methode Pfad Auth Quelle
GET /projects/search A project-search-routes.js:6
GET /api/projects/search A project-search-routes.js:21

Verwaltung (routes/verwaltung-routes.js)

Methode Pfad Auth Quelle
GET /verwaltung V verwaltung-routes.js:26
GET /verwaltung/projektauswertung V verwaltung-routes.js:276
GET /api/verwaltung/employee/:id/weeks V verwaltung-routes.js:154
PUT /api/verwaltung/user/:id/overtime-offset V verwaltung-routes.js:502
PUT /api/verwaltung/user/:id/vacation-offset V verwaltung-routes.js:571
GET /api/verwaltung/user/:id/overtime-corrections V verwaltung-routes.js:591
GET /api/verwaltung/user/:id/sick-days V verwaltung-routes.js:611
GET /api/verwaltung/user/:id/stats V verwaltung-routes.js:663
GET /api/verwaltung/employees/current-overtime V verwaltung-routes.js:634
PUT /api/verwaltung/timesheet/:id/comment V verwaltung-routes.js:1003
GET /api/verwaltung/bulk-download/:year/:week V verwaltung-routes.js:1019

Admin (routes/admin-routes.js)

Methode Pfad Auth Quelle
GET /admin AD admin-routes.js:26
POST /admin/users AD admin-routes.js:71
PUT /admin/users/:id AD admin-routes.js:127
DELETE /admin/users/:id AD admin-routes.js:110
GET /admin/options AD admin-routes.js:188
POST /admin/options AD admin-routes.js:208
GET /admin/mssql-config AD admin-routes.js:260
POST /admin/mssql-config AD admin-routes.js:279
POST /admin/mssql-test-connection AD admin-routes.js:328
GET /admin/api/timesheet-duplicates AD admin-routes.js:342
DELETE /admin/api/timesheet-entry/:id AD admin-routes.js:410
GET /admin/api/pdfs/years AD admin-routes.js:436
GET /admin/api/pdfs/users AD admin-routes.js:452
GET /admin/api/pdfs/files AD admin-routes.js:504
GET /admin/api/pdfs/file AD admin-routes.js:539

Admin LDAP (routes/admin-ldap-routes.js)

Methode Pfad Auth Quelle
GET /admin/ldap/config AD admin-ldap-routes.js:10
POST /admin/ldap/config AD admin-ldap-routes.js:26
POST /admin/ldap/sync AD admin-ldap-routes.js:134
GET /admin/ldap/sync/log AD admin-ldap-routes.js:152

Hinweis: Check-in-Server

Zusätzlich läuft ein separater Server auf Port 3334 (checkin-server.js), eingebunden in server.js:104. Hauptserver läuft auf Port 3333.