Zum Inhalt

Freelancer My Shifts Modul

Zweck

Das Freelancer My Shifts Modul bietet eine Übersicht aller angenommenen Schichten für Freelancer mit kommenden Schichten, vergangenen Schichten, Schicht-Details, Standort-Informationen, Kontakt-Daten und Schicht-Status.

Verantwortlichkeiten

Was gehört zum Modul

  • Meine Schichten: Übersicht aller angenommenen Schichten
  • Kommende Schichten: Liste kommender Schichten
  • Vergangene Schichten: Liste vergangener Schichten
  • Schicht-Details: Detaillierte Informationen zu Schichten
  • Standort-Informationen: Standort-Details für Schichten
  • Kontakt-Daten: Kontakt-Informationen für Schichten

Was gehört nicht zum Modul

Implementierung

Backend- und Frontend-API sind modular aufgebaut; Details siehe interne Entwickler-Dokumentation.

Konfiguration

Entitlement

Das Modul ist ein Core-Modul für Freelancer und erfordert kein spezielles Entitlement. Es ist immer aktiv für Freelancer-Accounts.

Entitlement-Key: Keiner (Core-Modul für Freelancer)

Environment Variables

Keine modulspezifischen ENV-Variablen erforderlich.

Defaults

  • Zugriff: Nur für Freelancer-Accounts

Abhängigkeiten

Optionale Abhängigkeiten

Keine.

Core-Abhängigkeiten

  • shift-pool: Für Schicht-Daten

API-Endpoints

Authentifizierung

Alle Endpoints erfordern Authentifizierung. Zwei Methoden werden unterstützt:

  1. Firebase ID Token (Standard für Web-App)
  2. API-Token (für externe Nutzung)

Header: Authorization: Bearer <token>

Meine Schichten abrufen

GET /api/freelancer/my-shifts?status=upcoming

Lädt angenommene Schichten für Freelancer.

Query-Parameter: - status (optional): upcoming, past, all

Response:

{
  "shifts": [
    {
      "id": "shift123",
      "title": "Schicht-Titel",
      "startsAt": "2024-01-15T08:00:00Z",
      "endsAt": "2024-01-15T17:00:00Z",
      "location": {
        "name": "Standort A",
        "address": "Musterstraße 1, 12345 Berlin"
      }
    }
  ],
  "count": 1
}

Wird dokumentiert: Detaillierte API-Endpunkt-Dokumentation folgt.

Firestore Collections

Das Freelancer My Shifts Modul verwendet keine eigenen Collections. Es nutzt Daten aus dem shift-pool Modul.

Wird dokumentiert: Detaillierte Datenbank-Struktur folgt.

Fehlerfälle

HTTP-Status-Codes

  • 200 OK: Erfolgreich
  • 401 Unauthorized: Nicht authentifiziert
  • 403 Forbidden: Keine Berechtigung (nur Freelancer)
  • 500 Internal Server Error: Server-Fehler

Fehlercodes

Wird dokumentiert: Detaillierte Fehlercodes folgen.

FAQ / Troubleshooting

Wird dokumentiert: Häufige Fragen und Lösungen folgen.