clockodo

n8n module for clockodo

Package Information

Downloads: 137 weekly / 2,113 monthly
Latest Version: 1.1.0
Author: Robert Wall | T4DT GmbH

Documentation

Clockodo für n8n

Mit diesem Community-Node kannst du in n8n deine Clockodo-Zeiterfassung anbinden: Kunden verwalten, Zeiteinträge (Entries) verwalten, gruppierte Auswertungen (Entry Group) abrufen, Eintrags-Beschreibungen (Entry Text) abfragen, Projekte (Project) verwalten, Services verwalten, Abwesenheiten (Absence) verwalten, Teams verwalten, Mitarbeiter (User) verwalten sowie die Stoppuhr starten, anhalten oder anpassen.


Installation

  1. In n8n: Einstellungen (Zahnrad) → Community NodesInstall
  2. Paketname eingeben: @t4dt/n8n-nodes-clockodo
  3. Installieren und n8n ggf. neu starten, wenn es angezeigt wird.

Der Node Clockodo erscheint dann in der Node-Liste (z. B. unter „Transform“).


Verbindung einrichten (Credentials)

Beim ersten Einsatz des Clockodo-Nodes wirst du nach Clockodo API-Zugangsdaten gefragt.

Feld Erklärung
Base URL In der Regel unverändert lassen: https://my.clockodo.com/api
E-Mail Deine Clockodo-Anmelde-E-Mail
API-Key Dein API-Schlüssel aus dem Clockodo-Konto (unter Einstellungen / API)
App-Name Optional – z. B. „n8n“, damit Clockodo die Anfragen zuordnen kann

Mit Test prüfst du, ob die Verbindung funktioniert.


Was du mit dem Node machen kannst

Kunden (Customer)

  • List – Alle Kunden anzeigen (optional gefiltert: alle / nur aktive / nur inaktive).
  • Get by ID – Einen bestimmten Kunden anhand seiner ID laden.
  • Create – Neuen Kunden anlegen.
  • Update – Bestehenden Kunden bearbeiten.
  • Delete – Kunden löschen.

Bei List werden alle Kunden geladen; du musst dich nicht um Seiten oder Paginierung kümmern.

Uhr (Clock)

  • Get Running – Den aktuell laufenden Zeiteintrag abrufen (falls einer läuft).
  • Start – Uhr starten (neuer Zeiteintrag). Dafür brauchst du eine Kunden-ID und eine Service-ID aus Clockodo.
  • Stop – Laufenden Eintrag anhalten (Eintrags-ID wird z. B. von „Get Running“ geliefert).
  • Change Duration – Dauer des laufenden Eintrags anpassen.

Zeiteinträge (Entry)

  • List – Zeiteinträge in einem Zeitraum anzeigen. Du gibst Von und Bis (Zeitraum) an; optional kannst du nach Kunde, Benutzer, Projekt, Service oder Abrechenbarkeit filtern.
  • Get by ID – Einen bestimmten Zeiteintrag anhand seiner ID laden.
  • Create – Neuen Zeiteintrag anlegen (Kunde, Service, Zeitraum und Abrechenbarkeit sind Pflicht; optional z. B. Projekt, Beschreibung).
  • Update – Bestehenden Zeiteintrag bearbeiten.
  • Delete – Zeiteintrag löschen.

Bei List werden alle Treffer im gewählten Zeitraum geladen; die Paginierung übernimmt der Node.

Gruppierte Zeiteinträge (Entry Group)

  • List – Gruppierte Zeiteinträge in einem Zeitraum abrufen (z. B. nach Kunde, Projekt, Service). Pflicht: Zeitraum (Von/Bis) und Gruppierung (Multi-Auswahl: z. B. Kunde, Projekt, Service, User, Jahr/Monat/Woche/Tag, Abrechenbarkeit). Optional: Filter (User, Kunde, Projekt, Service, Lumpsum-Service, Abrechenbarkeit, Text, Budget-Typ), Rundung auf Minuten, Projektnamen mit Kunde versehen, Umsatzberechnung bei Hard-Budget-Projekten.
  • Edit – Einträge im Zeitraum (ggf. gefiltert) in einem Schritt bearbeiten (z. B. Kunde, Service, Abrechenbarkeit setzen). Zwei Stufen: 1. Aufruf ohne „Confirm Key“ → API liefert confirm_key und affected_entries. 2. Aufruf mit gleichen Parametern und „Confirm Key“ (z. B. {{ $json.confirm_key }}) → Änderung wird ausgeführt, Antwort enthält success und edited_entries.
  • Delete – Einträge im Zeitraum (ggf. gefiltert) löschen. Zwei Stufen: wie bei Edit (erst confirm_key und affected_entries, dann mit confirm_keysuccess und deleted_entries).

Eintrags-Beschreibungen (Entry Text, V3)

  • List – Beschreibungen von Zeiteinträgen und Pauschal-Einträgen abfragen (getEntriesTextsV3). Pflicht: Modus (Add / Edit / Reports). Optional: Suchbegriff (term), Anzahl Items (1–800), Filter (Kunde, Projekte, Services, User, Abrechenbarkeit, Zeitraum time_since/time_until, Einzeltag day). Antwort: Liste mit id, label, value.

Projekte (Project, V4)

  • List – Projekte anzeigen (getProjectsV4, paginiert). Optional: Filter (aktiv, abgeschlossen, Kunden-ID, Volltext), Scope (manageAccess), Sortierung.
  • Get by ID – Ein Projekt anhand der ID laden.
  • Create – Neues Projekt anlegen. Pflicht: Name, Kunden-ID. Optional: Aktiv, Nummer, Billable Default, Notiz, Deadline, Start-Datum, Budget (nested: monetary, hard, from_subprojects, interval, amount), Bill Service ID.
  • Update – Projekt bearbeiten (alle Felder optional).
  • Delete – Projekt löschen. Optional: Dry Run, Force (Query-Parameter).
  • Set Billed – Abgerechneten Betrag setzen (V3: billed, billed_money).
  • Complete – Projekt als abgeschlossen setzen (completed).
  • Create Next Interval – Nächstes Budget-Intervall anlegen (Subprojekt, V2).

API: docs.clockodo.com/#tag/Project.

Services (Service, V4)

  • List – Services anzeigen (getServicesV4, paginiert). Optional: Filter (aktiv/inaktiv, Volltext), Scope (manageAccess), Sortierung.
  • Get by ID – Einen Service anhand der ID laden.
  • Create – Neuen Service anlegen. Pflicht: Name. Optional: Aktiv, Nummer, Notiz, Bill Service ID.
  • Update – Service bearbeiten (Name, Aktiv, Nummer, Notiz, Bill Service ID).
  • Delete – Service löschen. Optional: Dry Run, Force (als Query-Parameter).

API: docs.clockodo.com/#tag/Service.

Teams (Team)

  • List – Teams anzeigen (getTeamsV3, paginiert). Optional: Filter Scope (manageAbsences, viewAbsences, viewUserReports, viewUserReportsDetailed, viewPresences), Sortierung (id, name, auf-/absteigend), Items per Page (1–1000).
  • Get by ID – Ein Team anhand der ID laden.
  • Create – Neues Team anlegen. Pflicht: Name. Optional: Teamleiter (User-ID; 0 = keiner).
  • Update – Team bearbeiten (Name, Teamleiter).
  • Delete – Team löschen.

API: docs.clockodo.com/#tag/Team.

Benutzer (User)

  • List – Benutzer (Mitarbeiter) anzeigen (getUsersV3, paginiert). Optional: Filter (aktiv/inaktiv, Volltext, Team-IDs), Sortierung.
  • Get by ID – Einen Benutzer anhand der ID laden.
  • Create – Neuen Benutzer anlegen. Pflicht: E-Mail, Name, Rolle (Worker/Owner). Optional: u. a. Team, Zeitzone, Wochenbeginn (analog zur Clockodo-UI: Montags oder Sonntags mit Wochenende Sa–So bzw. Fr–Sa), Abwesenheits- und Sperroptionen.
  • Update – Benutzer bearbeiten (alle Felder optional).
  • Delete – Benutzer löschen.

API: docs.clockodo.com/#tag/User.

Abwesenheiten (Absence)

  • List – Abwesenheiten eines Jahres auflisten. Pflicht: Jahr. Optional: Filter nach User-ID (sonst alle bzw. aktueller Benutzer).
  • Get by ID – Eine Abwesenheit anhand der ID laden.
  • Create – Abwesenheit oder Abwesenheitsantrag anlegen. Pflicht: Von-Datum, Bis-Datum, Typ (z. B. Urlaub, Krankheit, Homeoffice). Optional: User-ID (sonst aktueller API-Benutzer), Notiz, Tage/Stunden, Status (angefragt/genehmigt), Krankschreibung.
  • Update – Abwesenheit bearbeiten (Datum, Typ, Status, Notiz, Tage/Stunden, Krankschreibung).
  • Delete – Abwesenheit löschen (nur möglich bei bereits stornierter oder abgelehnter Abwesenheit; Rechte für Abwesenheitsverwaltung nötig).

Weitere Infos zu Clockodo


Lizenz: MIT · Autor: Robert Wall | T4DT GmbH – t4dt.de

Discussion