MiteBundle
Symfony-Bundle für die Zeiterfassung mite: typisierte Services und DTOs für jede Ressource der API, konfiguriert mit zwei Umgebungsvariablen.
Release v1.0.0 · zuletzt aktiv am 10.10.2026
Quelle: GitHub-API, Stand 24.10.2026, 14:15
Was das Bundle löst
MiteBundle ist ein Symfony-Bundle für die API der Zeiterfassung mite. Es bietet autowirebare Services auf Basis des Symfony-HttpClient und schreibgeschützte DTOs und Enums statt Arrays.
Abgedeckt sind alle Ressourcen der mite-API: Konto, Zeiteinträge (auch gruppierte Auswertungen), Tracker, Lesezeichen, Kunden, Projekte, Leistungen, Benutzer und der Änderungs-Feed. Zeiteinträge, Kunden, Projekte und Leistungen lassen sich auch anlegen, ändern und löschen.
Für jeden mite-Fehler (401, 403, 404, 422, 423, 5xx) gibt es eine eigene Exception. Alle lassen sich über MiteExceptionInterface abfangen. Die Konfiguration besteht aus einer Datei, und der API-Schlüssel wird nur als Header an Ihre mite-Domain gesendet.
Im Einsatz auf jacomeit.de
jacomeit.de nutzt das Bundle produktiv für die Anbindung an mite, statt einen eigenen mite-Client zu pflegen.
Ein Import-Job liest über TimeEntriesApi die Zeiteinträge des Benutzers zum konfigurierten API-Schlüssel seitenweise aus und übernimmt sie in die eigene Datenbank. Er läuft zweimal täglich.
Installation
Installieren Sie das Bundle mit composer require stejac/mite-bundle. Mit Symfony Flex wird es automatisch registriert, andernfalls tragen Sie es in config/bundles.php ein.
Setzen Sie die beiden Umgebungsvariablen MITE_DOMAIN und MITE_API_KEY. MITE_DOMAIN ist der Subdomain-Name Ihres Kontos, also acme für acme.mite.de. Den API-Schlüssel erzeugen Sie in Ihren mite-Benutzereinstellungen unter „API-Zugriff erlauben“.
Anschließend tragen Sie in config/packages/mite.yaml die Schlüssel domain und api_key mit den beiden Variablen ein.