Darstellung
Kalender – API-Referenz
Fach-API für Arbeitstage und Feiertage des Mandanten. Basis ist https://core-backend.reybex.com/api (Staging: https://io-staging-partner.reybex.com/api). Authentifizierung wie im API: --header "authorization: Basic $TOKEN".
Der schreibende Weg des Arbeitstags ist POST /api/calendar/workDay. Der des Feiertags ist POST /api/calendar/holiday. Der Körper ist der Datensatz selbst, ohne Umschlag.
1. Grundlagen
| Objekt | Rolle |
|---|---|
CalendarWorkDay | Wochentag des Mandanten, Arbeitstag oder halber Tag |
CalendarHoliday | Feiertag an einem Kalendertag |
Calendar | Kalendertag. Die Id ist YYYYMMDD |
dayOfWeek beginnt bei 1. Ein Mandantensatz überschreibt den System-Arbeitstag desselben Wochentags.
Feiertage hängen am Land der Firma. Fehlt das Land: object.not.set.
1.1 Antwortformat
Anlegen liefert { "data": { … } }. Löschen liefert { "success": true }. Ein fremder oder fehlender Satz: bulk.delete.error.
2. Arbeitstag
POST /api/calendar/workDay
Dieselbe dayOfWeek im Mandanten wird aktualisiert. Gibt es keinen Mandantensatz, legt der Aufruf einen an.
2.1 Pflichtfelder
Auflösung, wenn ein Pflichtfeld fehlt
Die API setzt Pflicht-Referenzen nicht von selbst. Fehlt ein Feld, in dieser Reihenfolge füllen. Der erste Treffer gilt.
- Angabe – Wert aus dem Auftrag für dieses Feld.
- Vorlage – dasselbe Feld aus
GET /api/calendar/workDay/{id}.idnicht übernehmen. - Standard – Wert aus der Tabelle.
- Domäne – entfällt.
- Stopp –
dayOfWeekfehlt. Arbeitstag nicht anlegen.
| Feld | Pflicht | Vorlage | Standard | Domäne |
|---|---|---|---|---|
dayOfWeek | ja | dayOfWeek | — | — |
isWorkDay | nein | isWorkDay | true | — |
isHalfDay | nein | isHalfDay | false | — |
json
{
"dayOfWeek": 6,
"isWorkDay": false,
"isHalfDay": false
}Response: { "data": { "dayOfWeek": 6, "isWorkDay": false } }
Lesen: GET /api/calendar/workDay für die Woche, GET /api/calendar/workDay/{id} für einen Satz. isSystem true ist der globale Satz, nicht der des Mandanten.
Löschen: DELETE /api/calendar/workDay/{id}. Danach gilt wieder der System-Arbeitstag.
3. Feiertag
POST /api/calendar/holiday
calendarId ist die Id des Kalendertags, Form YYYYMMDD, zum Beispiel 20261224.
json
{
"calendarId": 20261224,
"isHoliday": true,
"isHalfDay": false,
"isNationwide": true,
"description": "Heiligabend"
}Response: { "data": { … } } mit dem gespeicherten Feiertag.
Land und Mandant setzt die API aus der Firma. Dieselbe Kombination aus Kalendertag und Mandant wird aktualisiert.
Lesen: GET /api/calendar/holiday. Ein Satz: GET /api/calendar/holiday/{id}. Das Feld date ist yyyy-MM-dd.
Löschen: DELETE /api/calendar/holiday/{id}.
4. Endpoint-Katalog
| Methode | Pfad | Bedeutung |
|---|---|---|
GET | /api/calendar/workDay | Arbeitstage |
GET | /api/calendar/workDay/{id} | Ein Arbeitstag |
POST | /api/calendar/workDay | Arbeitstag speichern |
DELETE | /api/calendar/workDay/{id} | Mandanten-Arbeitstag löschen |
GET | /api/calendar/holiday | Feiertage |
GET | /api/calendar/holiday/{id} | Ein Feiertag |
POST | /api/calendar/holiday | Feiertag speichern, Feld calendarId |
DELETE | /api/calendar/holiday/{id} | Feiertag löschen |
5. Häufige Fehler
| Situation | Ursache |
|---|---|
object.not.set | Firma ohne Land, Feiertag nicht möglich |
bulk.delete.error | Id gehört nicht zum Mandanten |
| Feiertag ohne Tag | calendarId fehlt oder ist kein Kalendertag |