REST-API

Die clockodo-API ermöglicht die Anbindung von clockodo an andere Systeme. Rechnungs- und Projektmanagement-Anwendungen oder eigene Shell-Skripte sind Beispiele für nützliche Mash-Ups mit clockodo.

api/absences: Abwesenheiten verwalten

Über diese Ressource können Sie alle Abwesenheiten auslesen, neue Abwesenheiten eintragen und Vorhandene außerdem bearbeiten, genehmigen oder ablehnen.


Objekttyp „absence“

Parameter Typ Beschreibung
id integer Die ID der Abwesenheit
users_id integer Die ID des zugehörigen Mitarbeiters
date_since string Startdatum der Abwesenheit im Format YYYY-MM-DD
date_until string Enddatum der Abwesenheit im Format YYYY-MM-DD
status integer Status der Abwesenheit:
0: angefragt/vermerkt
1: genehmigt
2: abgelehnt
3: Genehmigung zurückgezogen
4: Antrag zurückgezogen Nur bei bestehenden Verwaltungsrechten für Abwesenheiten oder eigenen Abwesenheiten
type integer Abwesenheitstyp:
1: Normaler Urlaubstag
2: Sonderurlaub
3: Überstundenabbau
4: Krankheitstag Nur bei bestehenden Verwaltungsrechten für Abwesenheiten oder eigenen Abwesenheiten
note string Notiz zur Abwesenheit Nur bei bestehenden Verwaltungsrechten für Abwesenheiten oder eigenen Abwesenheiten
count_days float (nur halbe und ganze Werte erlaubt) Anzahl der Abwesenheitstage (null bei Überstundenabbau) Nur bei bestehenden Verwaltungsrechten für Abwesenheiten oder eigenen Abwesenheiten
count_hours float Anzahl der Stunden bei Überstundenabbau (sonst null) Nur bei bestehenden Verwaltungsrechten für Abwesenheiten
date_enquired string Datum an dem der Antrag gestellt wurde im Format YYYY-MM-DD Nur bei bestehenden Verwaltungsrechten für Abwesenheiten
date_approved string Datum an dem der Antrag genehmigt oder abgelehnt wurde im Format YYYY-MM-DD Nur bei bestehenden Verwaltungsrechten für Abwesenheiten
approved_by integer Die ID des Mitarbeiters durch welchen die Abwesenheit genehmigt oder abgelehnt wurde Nur bei bestehenden Verwaltungsrechten für Abwesenheiten

Abwesenheiten auflisten

Anfrage
GET /api/absences
Notwendige Parameter year (integer)
Antwort
{
  "absences": 
  {
    [object of type absence],
    [object of type absence], 
    ...
  }
}

Einzelne Abwesenheit abrufen

Anfrage
GET /api/absences/[ID]
Antwort
{
  "absence": [object of type absence]
}

Abwesenheit anlegen / Antrag auf Abwesenheit erstellen

Anfrage
POST /api/absences
Notwendige Parameter date_since, date_until, type
Optionale Parameter users_id (falls die ID nicht übergeben wird, wird die Abwesenheit für den ausführenden API-Mitarbeiter erstellt), note, count_days (wird errechnet falls leer), count_days (wird errechnet falls leer)
Antwort
{
  "absence": [object of type absence]
}

Abwesenheit bearbeiten

Anfrage
PUT /api/absences/[ID]
Notwendige Parameter keine
Optionale Parameter date_since, date_until, note, type, status, count_days (wird neu berechnet falls null übergeben wird), count_hours (wird neu berechnet falls null übergeben wird)
Antwort
{
  "absence": [object of type absence]
}

Abwesenheit löschen

Nur mit Verwaltungsrechten für Abwesenheiten möglich wenn die Abwesenheit bereits abgelehnt oder der Antrag zurückgezogen wurde.

Anfrage
DELETE /api/absences/[ID]
Antwort
{
  "success": true
}