Zum Hauptinhalt springen

Kalender & Arbeitszeiten

Die Kalender-Endpunkte ermöglichen die Verwaltung von Arbeitszeitkalendern, regulären Arbeitszeiten, freien Tagen und kontaktspezifischer Abwesenheit. Diese Daten werden für die Ressourcenplanung und Kapazitätsberechnung in InLoox verwendet.

info

Jeder Kontakt kann einem eigenen Kalender zugeordnet werden. Der Standardkalender wird für alle Kontakte ohne individuelle Zuordnung verwendet.


Calendar

Die Calendar-Entität repräsentiert einen Arbeitszeitkalender. Kalender definieren die regulären Arbeitszeiten und können verschiedenen Kontakten zugeordnet werden.

Eigenschaften

PropertyTypeDescription
CalendarIdEdm.GuidEindeutige ID des Kalenders.
NameEdm.StringName des Kalenders.
ImportedEdm.Boolean?Ob der Kalender importiert wurde.
VisibleInPlanningEdm.BooleanOb der Kalender in der Planung sichtbar ist.
VisibleInContactEdm.BooleanOb der Kalender in der Kontaktansicht sichtbar ist.
SystemTimeZoneIdEdm.StringSystem-Zeitzonen-ID (z. B. W. Europe Standard Time).

Endpunkte

CRUD-Operationen

GET/odata/Calendar

Alle Kalender abrufen

Unterstützt OData-Abfrageoptionen.

GET /odata/Calendar?$orderby=Name

GET/odata/Calendar({key})

Einen Kalender nach ID abrufen

ParameterTypeRequiredDescription
keyEdm.GuidDie CalendarId.

POST/odata/Calendar

Einen neuen Kalender erstellen

{
"Name": "Standardkalender Deutschland",
"VisibleInPlanning": true,
"VisibleInContact": true,
"SystemTimeZoneId": "W. Europe Standard Time"
}

PATCH/odata/Calendar({key})

Einen Kalender aktualisieren

ParameterTypeRequiredDescription
keyEdm.GuidDie CalendarId.
{
"Name": "Kalender DACH-Region"
}

DELETE/odata/Calendar({key})

Einen Kalender löschen

ParameterTypeRequiredDescription
keyEdm.GuidDie CalendarId.
warnung

Das Löschen eines Kalenders entfernt auch alle zugehörigen Arbeitszeiten und freien Tage. Stellen Sie sicher, dass kein Kontakt mehr diesem Kalender zugeordnet ist.

Gibt 204 No Content bei Erfolg zurück.


GET/odata/Calendar/$count

Anzahl der Kalender abrufen

Gibt eine Ganzzahl zurück.


Kalenderfunktionen

POST/Calendar/CalculateWorkBetween

Arbeitszeit zwischen zwei Zeitpunkten berechnen

Berechnet die effektive Arbeitszeit zwischen zwei Zeitpunkten unter Berücksichtigung des angegebenen Kalenders.

{
"CalendarId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Start": "2025-01-06T08:00:00Z",
"End": "2025-01-10T17:00:00Z"
}
tipp

Verwenden Sie diese Funktion, um die tatsächliche Arbeitszeit für Ressourcenplanung und Aufwandsberechnung zu ermitteln. Wochenenden und Feiertage werden automatisch ausgeschlossen.


GET/odata/Calendar({key})/GetCalendarTimeZoneOrDefault()

Zeitzone des Kalenders oder Standardzeitzone abrufen

ParameterTypeRequiredDescription
keyEdm.GuidDie CalendarId.

Gibt die konfigurierte Zeitzone des Kalenders zurück. Falls keine spezifische Zeitzone festgelegt ist, wird die Standardzeitzone zurückgegeben.


WorkingTime

Die WorkingTime-Entität definiert die regulären Arbeitszeiten eines Kalenders. Jeder Eintrag repräsentiert einen Arbeitszeitblock (z. B. Montag 08:00–17:00).

Eigenschaften

PropertyTypeDescription
WorkingTimeIdEdm.GuidEindeutige ID der Arbeitszeit.
CalendarIdEdm.GuidID des zugehörigen Kalenders.
StartTimeEdm.DateTimeOffsetBeginn der Arbeitszeit.
EndTimeEdm.DateTimeOffsetEnde der Arbeitszeit.
IsAllDayEdm.BooleanOb es sich um einen ganztägigen Eintrag handelt.
IsWorkDayEdm.BooleanOb es sich um einen Arbeitstag handelt.
OrdinalPositionEdm.Int32?Sortierposition (typischerweise Wochentag 0–6).

Endpunkte

GET/odata/WorkingTime

Alle Arbeitszeiten abrufen

Filtern Sie nach Kalender:

GET /odata/WorkingTime?$filter=CalendarId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=OrdinalPosition

GET/odata/WorkingTime({key})

Eine Arbeitszeit nach ID abrufen

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeId.

POST/odata/WorkingTime

Eine neue Arbeitszeit erstellen

{
"CalendarId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"StartTime": "2025-01-06T08:00:00Z",
"EndTime": "2025-01-06T17:00:00Z",
"IsAllDay": false,
"IsWorkDay": true,
"OrdinalPosition": 1
}

PATCH/odata/WorkingTime({key})

Eine Arbeitszeit aktualisieren

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeId.
{
"EndTime": "2025-01-06T16:00:00Z"
}

DELETE/odata/WorkingTime({key})

Eine Arbeitszeit löschen

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeId.

Gibt 204 No Content bei Erfolg zurück.


GET/odata/WorkingTime/$count

Anzahl der Arbeitszeiteinträge abrufen

Gibt eine Ganzzahl zurück.


WorkingTimeDayOff

Die WorkingTimeDayOff-Entität definiert Feiertage und freie Tage in einem Kalender. Diese Tage werden bei der Kapazitätsberechnung und Planung berücksichtigt.

Eigenschaften

PropertyTypeDescription
WorkingTimeDayOffIdEdm.GuidEindeutige ID des freien Tags.
CalendarIdEdm.GuidID des zugehörigen Kalenders.
NameEdm.StringBezeichnung (z. B. Weihnachten, Tag der Deutschen Einheit).
StartTimeEdm.DateTimeOffsetBeginn des freien Zeitraums.
EndTimeEdm.DateTimeOffsetEnde des freien Zeitraums.
IsGlobalEdm.BooleanOb der freie Tag für alle Kalender gilt.

Endpunkte

GET/odata/WorkingTimeDayOff

Alle freien Tage abrufen

Filtern Sie nach Kalender:

GET /odata/WorkingTimeDayOff?$filter=CalendarId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=StartTime

GET/odata/WorkingTimeDayOff({key})

Einen freien Tag nach ID abrufen

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeDayOffId.

POST/odata/WorkingTimeDayOff

Einen neuen freien Tag erstellen

{
"CalendarId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Name": "Tag der Deutschen Einheit",
"StartTime": "2025-10-03T00:00:00Z",
"EndTime": "2025-10-03T23:59:59Z",
"IsGlobal": false
}

PATCH/odata/WorkingTimeDayOff({key})

Einen freien Tag aktualisieren

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeDayOffId.
{
"Name": "Nationalfeiertag"
}

DELETE/odata/WorkingTimeDayOff({key})

Einen freien Tag löschen

ParameterTypeRequiredDescription
keyEdm.GuidDie WorkingTimeDayOffId.

Gibt 204 No Content bei Erfolg zurück.


GET/odata/WorkingTimeDayOff/$count

Anzahl der freien Tage abrufen

Gibt eine Ganzzahl zurück.


ContactNonWorkingTime

Die ContactNonWorkingTime-Entität verwaltet die individuelle Abwesenheit eines Kontakts (z. B. Urlaub, Krankheit). Diese Zeiten werden bei der Ressourcenplanung berücksichtigt.

Eigenschaften

PropertyTypeDescription
ContactNonWorkingTimeIdEdm.GuidEindeutige ID des Abwesenheitseintrags.
ContactIdEdm.GuidID des betroffenen Kontakts.
NameEdm.StringBezeichnung der Abwesenheit (z. B. Urlaub, Krankheit).
StartTimeEdm.DateTimeOffsetBeginn der Abwesenheit.
EndTimeEdm.DateTimeOffsetEnde der Abwesenheit.

Endpunkte

GET/odata/ContactNonWorkingTime

Alle Abwesenheiten abrufen

Filtern Sie nach Kontakt oder Zeitraum:

GET /odata/ContactNonWorkingTime?$filter=ContactId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=StartTime

GET/odata/ContactNonWorkingTime({key})

Eine Abwesenheit nach ID abrufen

ParameterTypeRequiredDescription
keyEdm.GuidDie ContactNonWorkingTimeId.

POST/odata/ContactNonWorkingTime

Eine neue Abwesenheit erstellen

{
"ContactId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Name": "Jahresurlaub",
"StartTime": "2025-08-04T00:00:00Z",
"EndTime": "2025-08-15T23:59:59Z"
}

PATCH/odata/ContactNonWorkingTime({key})

Eine Abwesenheit aktualisieren

ParameterTypeRequiredDescription
keyEdm.GuidDie ContactNonWorkingTimeId.
{
"EndTime": "2025-08-22T23:59:59Z"
}

DELETE/odata/ContactNonWorkingTime({key})

Eine Abwesenheit löschen

ParameterTypeRequiredDescription
keyEdm.GuidDie ContactNonWorkingTimeId.

Gibt 204 No Content bei Erfolg zurück.


GET/odata/ContactNonWorkingTime/$count

Anzahl der Abwesenheitseinträge abrufen

Gibt eine Ganzzahl zurück.


POST/odata/ContactNonWorkingTime/DeleteAll

Alle Abwesenheiten löschen

Entfernt sämtliche Abwesenheitseinträge.

warnung

Diese Aktion löscht alle Abwesenheitseinträge im System und kann nicht rückgängig gemacht werden. Verwenden Sie diesen Endpunkt mit äußerster Vorsicht.