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.
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
| Property | Type | Description |
|---|---|---|
CalendarId | Edm.Guid | Eindeutige ID des Kalenders. |
Name | Edm.String | Name des Kalenders. |
Imported | Edm.Boolean? | Ob der Kalender importiert wurde. |
VisibleInPlanning | Edm.Boolean | Ob der Kalender in der Planung sichtbar ist. |
VisibleInContact | Edm.Boolean | Ob der Kalender in der Kontaktansicht sichtbar ist. |
SystemTimeZoneId | Edm.String | System-Zeitzonen-ID (z. B. W. Europe Standard Time). |
Endpunkte
CRUD-Operationen
/odata/CalendarAlle Kalender abrufen
Unterstützt OData-Abfrageoptionen.
GET /odata/Calendar?$orderby=Name
/odata/Calendar({key})Einen Kalender nach ID abrufen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die CalendarId. |
/odata/CalendarEinen neuen Kalender erstellen
{
"Name": "Standardkalender Deutschland",
"VisibleInPlanning": true,
"VisibleInContact": true,
"SystemTimeZoneId": "W. Europe Standard Time"
}
/odata/Calendar({key})Einen Kalender aktualisieren
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die CalendarId. |
{
"Name": "Kalender DACH-Region"
}
/odata/Calendar({key})Einen Kalender löschen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die CalendarId. |
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.
/odata/Calendar/$countAnzahl der Kalender abrufen
Gibt eine Ganzzahl zurück.
Kalenderfunktionen
/Calendar/CalculateWorkBetweenArbeitszeit 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"
}
Verwenden Sie diese Funktion, um die tatsächliche Arbeitszeit für Ressourcenplanung und Aufwandsberechnung zu ermitteln. Wochenenden und Feiertage werden automatisch ausgeschlossen.
/odata/Calendar({key})/GetCalendarTimeZoneOrDefault()Zeitzone des Kalenders oder Standardzeitzone abrufen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die 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
| Property | Type | Description |
|---|---|---|
WorkingTimeId | Edm.Guid | Eindeutige ID der Arbeitszeit. |
CalendarId | Edm.Guid | ID des zugehörigen Kalenders. |
StartTime | Edm.DateTimeOffset | Beginn der Arbeitszeit. |
EndTime | Edm.DateTimeOffset | Ende der Arbeitszeit. |
IsAllDay | Edm.Boolean | Ob es sich um einen ganztägigen Eintrag handelt. |
IsWorkDay | Edm.Boolean | Ob es sich um einen Arbeitstag handelt. |
OrdinalPosition | Edm.Int32? | Sortierposition (typischerweise Wochentag 0–6). |
Endpunkte
/odata/WorkingTimeAlle Arbeitszeiten abrufen
Filtern Sie nach Kalender:
GET /odata/WorkingTime?$filter=CalendarId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=OrdinalPosition
/odata/WorkingTime({key})Eine Arbeitszeit nach ID abrufen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeId. |
/odata/WorkingTimeEine 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
}
/odata/WorkingTime({key})Eine Arbeitszeit aktualisieren
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeId. |
{
"EndTime": "2025-01-06T16:00:00Z"
}
/odata/WorkingTime({key})Eine Arbeitszeit löschen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeId. |
Gibt 204 No Content bei Erfolg zurück.
/odata/WorkingTime/$countAnzahl 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
| Property | Type | Description |
|---|---|---|
WorkingTimeDayOffId | Edm.Guid | Eindeutige ID des freien Tags. |
CalendarId | Edm.Guid | ID des zugehörigen Kalenders. |
Name | Edm.String | Bezeichnung (z. B. Weihnachten, Tag der Deutschen Einheit). |
StartTime | Edm.DateTimeOffset | Beginn des freien Zeitraums. |
EndTime | Edm.DateTimeOffset | Ende des freien Zeitraums. |
IsGlobal | Edm.Boolean | Ob der freie Tag für alle Kalender gilt. |
Endpunkte
/odata/WorkingTimeDayOffAlle freien Tage abrufen
Filtern Sie nach Kalender:
GET /odata/WorkingTimeDayOff?$filter=CalendarId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=StartTime
/odata/WorkingTimeDayOff({key})Einen freien Tag nach ID abrufen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeDayOffId. |
/odata/WorkingTimeDayOffEinen 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
}
/odata/WorkingTimeDayOff({key})Einen freien Tag aktualisieren
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeDayOffId. |
{
"Name": "Nationalfeiertag"
}
/odata/WorkingTimeDayOff({key})Einen freien Tag löschen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die WorkingTimeDayOffId. |
Gibt 204 No Content bei Erfolg zurück.
/odata/WorkingTimeDayOff/$countAnzahl 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
| Property | Type | Description |
|---|---|---|
ContactNonWorkingTimeId | Edm.Guid | Eindeutige ID des Abwesenheitseintrags. |
ContactId | Edm.Guid | ID des betroffenen Kontakts. |
Name | Edm.String | Bezeichnung der Abwesenheit (z. B. Urlaub, Krankheit). |
StartTime | Edm.DateTimeOffset | Beginn der Abwesenheit. |
EndTime | Edm.DateTimeOffset | Ende der Abwesenheit. |
Endpunkte
/odata/ContactNonWorkingTimeAlle Abwesenheiten abrufen
Filtern Sie nach Kontakt oder Zeitraum:
GET /odata/ContactNonWorkingTime?$filter=ContactId eq 3fa85f64-5717-4562-b3fc-2c963f66afa6&$orderby=StartTime
/odata/ContactNonWorkingTime({key})Eine Abwesenheit nach ID abrufen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die ContactNonWorkingTimeId. |
/odata/ContactNonWorkingTimeEine neue Abwesenheit erstellen
{
"ContactId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Name": "Jahresurlaub",
"StartTime": "2025-08-04T00:00:00Z",
"EndTime": "2025-08-15T23:59:59Z"
}
/odata/ContactNonWorkingTime({key})Eine Abwesenheit aktualisieren
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die ContactNonWorkingTimeId. |
{
"EndTime": "2025-08-22T23:59:59Z"
}
/odata/ContactNonWorkingTime({key})Eine Abwesenheit löschen
| Parameter | Type | Required | Description |
|---|---|---|---|
key | Edm.Guid | ✅ | Die ContactNonWorkingTimeId. |
Gibt 204 No Content bei Erfolg zurück.
/odata/ContactNonWorkingTime/$countAnzahl der Abwesenheitseinträge abrufen
Gibt eine Ganzzahl zurück.
/odata/ContactNonWorkingTime/DeleteAllAlle Abwesenheiten löschen
Entfernt sämtliche Abwesenheitseinträge.
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.