Zum Inhalt springen
Developer

ShiftPlanTemplate

Personal8 EndpunkteTimeTracking / ShiftPlanTemplate

Veröffentlicht eine ganze Woche in einer Transaktion - alles oder nichts

POST/api/time/shift_plan_template/publish_week

Query-Parameter

idinteger
startDatestring
startMonthstring
startYearstring
employmentContractGroupstringPlanungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft. | Benötigt Zugriffsrecht: SCOPE
personstring
userstring
shiftTypestringUrsprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.
statusstring
contractstring
searchStringstringText, nach dem in der Liste gesucht wird
orderFieldNamestringName des Bestellfelds
orderFieldSortstringSortiermodusErlaubt: DESCASC
pageintegerSeite der Liste
pageSizeintegerAnzahl der Einträge je Seite
withMaxPageNumberstringgibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist

Antworten

200Liefert die veröffentlichten ShiftPlanEntry-Objektearray<ShiftPlanEntry>

Felder anzeigen (23)
  • idinteger

    Primärschlüssel des Schichtplan-Eintrags. Interne ID.

  • userUser14

    Der Schicht zugewiesener Benutzer.

    Felder anzeigen (10)
    • idinteger

      Primärschlüssel des Benutzers. Interne ID des Anmeldebenutzers.

    • namestring

      Anzeigename des Benutzers. Wird in der Oberfläche und in Protokolleinträgen angezeigt.

    • usernamestring

      Anmeldename des Benutzers. Muss über alle Benutzer hinweg eindeutig sein.

    • emailstring

      E-Mail-Adresse des Benutzers. Wird für Anmeldebenachrichtigungen, Passwort-Zurücksetzen und als Anmeldealias verwendet.

    • positioningeneralstring

      Freitext zur Position oder Rolle des Benutzers.

    • crm_personCRMPerson10

      CRM-Person, die mit diesem Anmeldebenutzer verknüpft ist. Verbindet das Anmeldekonto mit dem Personendatensatz.

    • profile_picture_urlstring

      URL des Profilbilds des Benutzers.

    • archivedboolean

      Markiert den Benutzer als archiviert. Archivierte Benutzer bleiben zur Historie erhalten und sind nicht aktiv.

    • require2faboolean

      Für diesen Benutzer ist die Zwei-Faktor-Authentifizierung Pflicht.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

  • personCRMPerson10

    Person, die der Schicht zugewiesen ist.

    Felder anzeigen (81)
    • idinteger

      Primärschlüssel der Person. Interne ID.

    • first_namestring

      Vorname der Person.

    • last_namestring

      Nachname der Person.

    • numberinteger

      Mitglieds- oder Kundennummer der Person.

    • manual_numberinteger

      Manuell gesetzte Nummer statt der automatischen Nummer.

    • number_stringstring

      Mitglieds- oder Kundennummer als Text, einschließlich Präfix.

    • genderstring

      Geschlecht der Person.

    • titlestring

      Akademischer oder sonstiger Titel der Person.

    • positionstring

      Position oder Rolle der Person.

    • languagestring

      Bevorzugte Sprache der Person.

    • special_salutationstring

      Besonderer Anredetext für Briefe.

    • form_of_salutationstring

      Form der Anrede, zum Beispiel förmlich oder informell.

    • birthdaystring (date-time)

      Geburtstag der Person.

    • known_allergiesstring

      Bekannte Allergien der Person.

    • confirmed_no_allergiesboolean

      Erziehungsberechtigte(r) bestätigt, dass keine bekannten Allergien vorliegen.

    • allow_photosboolean

      Fotos der Person dürfen aufgenommen und veröffentlicht werden.

    • allow_leaving_aloneboolean

      Die Person darf die Veranstaltung allein verlassen.

    • authorized_pickupstring

      Personen, die die Person abholen dürfen.

    • needs_supportboolean

      Die Person benötigt Unterstützung, zum Beispiel zur Inklusion.

    • support_descriptionstring

      Beschreibung der Unterstützung, die die Person benötigt.

    • financial_supportboolean

      Die Person erhält finanzielle Unterstützung.

    • financial_support_numberstring

      Nummer der finanziellen Förderung.

    • municipal_supportboolean

      Die Person erhält kommunale Unterstützung.

    • municipal_support_numberstring

      Nummer der kommunalen Förderung.

    • grade_levelinteger

      Schuljahrgang der Person.

    • school_classstring

      Schulklasse der Person.

    • start_timestring (date-time)

      Beginn der Mitgliedschaft oder Aktivität.

    • start_time_reasonstring

      Grund für den Beginn.

    • end_timestring (date-time)

      Ende der Mitgliedschaft oder Aktivität.

    • end_time_reasonstring

      Grund für das Ende.

    • confirmed_gtc_timestring (date-time)

      Zeitpunkt, zu dem die AGB bestätigt wurden.

    • chatbot_opt_inboolean

      Einwilligung in die Nutzung des KI-Assistenten. Denormalisierter aktueller Stand - das prüfbare Protokoll steht in ChatbotConsent.

    • chatbot_opt_in_atstring (date-time)

      Zeitpunkt, zu dem die Person dem Chatbot zugestimmt hat.

    • chatbot_opt_in_text_versionstring

      Version des Einwilligungstextes, dem zugestimmt wurde. Weicht sie von der aktuellen Version ab, ist das Opt-in abgelaufen.

    • app_usage_statistics_opt_outboolean

      Widerspruch gegen die anonyme Nutzungsstatistik der Mitglieder-App. Die App liest ihn aus den StaticData und schickt dann nichts mehr; die gezählten Aufrufe selbst haben keinen Bezug zur Person.

    • crm_person_contact_dataarray<CRMPersonContactData>

      Kontaktdaten der Person, zum Beispiel Telefon und E-Mail.

    • archivedboolean

      Ob die Person archiviert ist.

    • subscribed_newsletterboolean

      Ob die Person den Newsletter abonniert hat.

    • subscribed_magazineboolean

      Ob die Person das Magazin abonniert hat.

    • printed_member_cardboolean

      Ob für die Person ein Mitgliedsausweis gedruckt wurde.

    • has_login_userboolean

      Ob die Person einen Anmelde-Benutzer hat.

    • profile_picture_urlstring

      URL des Profilbilds der Person.

    • log_book_staffboolean

      Logbuch-Kennzeichen: Personal.

    • log_book_staff1boolean

      Logbuch-Kennzeichen: Personal, Stufe 1.

    • log_book_staff2boolean

      Logbuch-Kennzeichen: Personal, Stufe 2.

    • log_book_memberboolean

      Logbuch-Kennzeichen: Mitglied.

    • log_book_trainerboolean

      Logbuch-Kennzeichen: Trainer.

    • log_book_trainer1boolean

      Logbuch-Kennzeichen: Trainer, Stufe 1.

    • log_book_trainer2boolean

      Logbuch-Kennzeichen: Trainer, Stufe 2.

    • log_book_head_of_departmentboolean

      Logbuch-Kennzeichen: Abteilungsleitung.

    • log_book_supervisory_boardboolean

      Logbuch-Kennzeichen: Aufsichtsrat.

    • log_book_board_of_directorsboolean

      Logbuch-Kennzeichen: Vorstand.

    • log_book_honorary_memberboolean

      Logbuch-Kennzeichen: Ehrenmitglied.

    • log_book_club_card_oneboolean

      Logbuch-Kennzeichen: Vereinskarte.

    • log_book_health_recoveredboolean

      Logbuch-Kennzeichen: von Krankheit genesen.

    • log_book_health_vaccinatedboolean

      Logbuch-Kennzeichen: geimpft.

    • log_book_health_vaccinated_additionstring

      Details der Impfung.

    • log_book_good_conductboolean

      Logbuch-Kennzeichen: Führungszeugnis.

    • log_book_first_aidboolean

      Logbuch-Kennzeichen: Erste-Hilfe-Schulung.

    • log_book_measles_vaccinationboolean

      Logbuch-Kennzeichen: Masernimpfung.

    • sync_lanistaboolean

      Ob die Person mit Lanista synchronisiert ist.

    • categoryCRMPersonCategory

      Personenkategorie.

    • nicknamestring

      Spitzname der Person.

    • preferred_color_hexstring

      Bevorzugte Farbe der Person als Hexwert.

    • avatar_tokenstring

      Token des Avatarbildes.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • addressstring

      Adresse als Text.

    • address_streetstring

      Straße der Adresse.

    • address_house_numberstring

      Hausnummer der Adresse.

    • address_street_levelstring

      Straße und Hausnummer der Adresse.

    • address_costring

      Care-of-Zeile der Adresse.

    • address_citystring

      Ort der Adresse.

    • address_zipstring

      Postleitzahl der Adresse.

    • address_admin_level1string

      Erste Verwaltungsebene der Adresse, z. B. das Bundesland.

    • address_countrystring

      Ländercode der Adresse.

    • address_full_countrystring

      Vollständiger Name des Landes der Adresse.

    • address_geo_latstring

      Breitengrad der Adresse.

    • address_geo_lngstring

      Längengrad der Adresse.

    • address_external_provider_idstring

      Feld zur Speicherung der externen Anbieter-ID der Adresse, z. B. Google-Maps-PlaceID wie google:ChIJVcKw5r90sEcRhdjNq6NItqE

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • … 2 weitere Felder
  • employment_contract_groupEmploymentContractGroup

    Planungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • shift_typeShiftType4

    Ursprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel des Schichttyps. Interne ID.

    • employment_contract_groupEmploymentContractGroup

      Gruppe, zu der dieser Typ gehört (null = für die gesamte Organisation / Installation verfügbar).

    • employment_organizationEmploymentOrganization5

      Organisation, zu der der Schichttyp gehört.

    • short_namestring

      Kurzcode für Raster und Druck („F“, „S“, „N“).

    • start_timestring

      Standardstartzeit als HH:MM.

    • end_timestring

      Standardendzeit als HH:MM - eine Endzeit vor der Startzeit bedeutet, dass die Schicht am folgenden Tag endet (Nachtschicht).

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • colorstring

      Farbe des Schichttyps im Schichtplan als Hex-Code.

    • required_qualificationEmploymentQualification3

      Standard-Qualifikationsanforderung für Schichten dieses Typs.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

    • default_staff_countinteger

      Standardanzahl der benötigten Mitarbeitenden für die Schicht.

    • sort_orderinteger

      Sortierreihenfolge des Diensttyps in Listen.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

  • startstring (date-time)

    Beginn des Dienstes.

  • endstring (date-time)

    Ende der Schicht.

  • start_datestring

    Startdatum des Dienstes als Text.

  • start_monthinteger

    Monat der Schicht.

  • start_yearinteger

    Jahr der Schicht.

  • break_duration_secondsinteger

    Pausendauer der Schicht in Sekunden.

  • durationinteger

    Zielsekunden: (Ende - Start) - Pause, wird von recalculate() gepflegt.

  • required_qualificationEmploymentQualification3

    Für die Schicht erforderliche Qualifikation.

    Felder anzeigen (7)
    • idinteger

      Primärschlüssel der Beschäftigungsqualifikation. Interne ID.

    • rankinginteger

      Rangfolge innerhalb eines Äquivalenznetzwerks - eine verknüpfte Qualifikation mit gleichem oder höherem Rang erfüllt auch Anforderungen an diese Qualifikation.

    • equivalent_qualificationsarray<EmploymentQualification3>

      Verknüpfte ("gleichwertige") Qualifikationen. Vom Controller symmetrisch gehalten: jede Verknüpfung A->B wird als B->A gespiegelt; der Rang entscheidet, welche Richtung tatsächlich welche abdeckt.

    • qualification_groupEmploymentQualificationGroup

      L17/A06: die "Schublade", zu der diese Qualifikation gehört. Mitglieder einer Gruppe decken sich gegenseitig die Anforderungen innerhalb ihres Rangs ab, wie es eine direkte Verknüpfung täte.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • qualification_match_modestring

    L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • statusstring

    Status des Dienstes, zum Beispiel geplant oder veröffentlicht.

  • published_atstring (date-time)

    Zeitpunkt, zu dem die Schicht veröffentlicht wurde.

  • descriptionstring

    Beschreibung der Schicht.

  • has_warningboolean

    Gespeichertes Konfliktkennzeichen für Listen-Badges - die konkreten Warnungen werden bei Bedarf berechnet (ShiftPlanHelper) und nur vorübergehend zurückgegeben.

  • availability_bookingBaseBooking13

    L35: die Verfügbarkeit, für die die veröffentlichte Schicht im Buchungsbereich steht (wird vom ShiftBookingSyncHelper synchron gehalten, solange die Synchronisation für den Vertrag aktiviert ist).

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • bookingBaseBooking13

    L35: der aus dieser Schicht erstellte Termin, falls vorhanden.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • lock_versioninteger

    Optimistische Sperre. Zwei Planer, die dieselbe Schicht bearbeiten, oder eine Wochenveröffentlichung, während jemand eine Schicht darin verschiebt, würden sonst stillschweigend einander überschreiben - der Unterlegene erhält jetzt einen 409. Nur lesend: Doctrine verwaltet den Wert, der Client sendet den zuletzt gesehenen Wert als Query-Parameter lock_version zurück.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/publish_week \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "id": 42,
    "description": "Text",
    "user": {
      "id": 42,
      "name": "Beispiel",
      "username": "lena.hartmann@example.org",
      "email": "lena.hartmann@example.org",
      "profile_picture_url": "https://vynst.de",
      "positioningeneral": "string",
      "archived": true,
      "require2fa": true,
      "search_string": "string"
    },
    "person": {
      "id": 42,
      "first_name": "Lena",
      "last_name": "Hartmann",
      "title": "Beispiel",
      "language": "de",
      "support_description": "Text",
      "profile_picture_url": "https://vynst.de",
      "address_street": "Jakobistr. 39",
      "address_city": "Hannover",
      "address_zip": "30163"
    },
    "employment_contract_group": {
      "id": 42,
      "name": "Beispiel",
      "staged_absence_approval": true,
      "shift_booking_sync": true,
      "week_total_hours": 1.5,
      "week_total_days": 1.5,
      "year_vacation_days": 1.5,
      "month_vacation_days": 1.5,
      "year_vacation_weeks": 1.5,
      "monday_hours": 1.5
    },
    "shift_type": {
      "id": 42,
      "short_name": "Beispiel",
      "color": "#3f5efb",
      "name": "Beispiel",
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "qualification_match_mode": "string",
      "default_staff_count": 1,
      "sort_order": 1
    },
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "start_date": "2026-10-15T09:30:00+02:00",
    "start_month": 1
  }
]

Kopiert alle Schichten einer Woche als DRAFT-Schichten in eine andere Woche

POST/api/time/shift_plan_template/copy_week

Query-Parameter

idinteger
startDatestring
startMonthstring
startYearstring
employmentContractGroupstringPlanungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft. | Benötigt Zugriffsrecht: SCOPE
personstring
userstring
shiftTypestringUrsprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.
statusstring
contractstring
searchStringstringText, nach dem in der Liste gesucht wird
orderFieldNamestringName des Bestellfelds
orderFieldSortstringSortiermodusErlaubt: DESCASC
pageintegerSeite der Liste
pageSizeintegerAnzahl der Einträge je Seite
withMaxPageNumberstringgibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist

Antworten

200Liefert die angelegten ShiftPlanEntry-Objektearray<ShiftPlanEntry>

Felder anzeigen (23)
  • idinteger

    Primärschlüssel des Schichtplan-Eintrags. Interne ID.

  • userUser14

    Der Schicht zugewiesener Benutzer.

    Felder anzeigen (10)
    • idinteger

      Primärschlüssel des Benutzers. Interne ID des Anmeldebenutzers.

    • namestring

      Anzeigename des Benutzers. Wird in der Oberfläche und in Protokolleinträgen angezeigt.

    • usernamestring

      Anmeldename des Benutzers. Muss über alle Benutzer hinweg eindeutig sein.

    • emailstring

      E-Mail-Adresse des Benutzers. Wird für Anmeldebenachrichtigungen, Passwort-Zurücksetzen und als Anmeldealias verwendet.

    • positioningeneralstring

      Freitext zur Position oder Rolle des Benutzers.

    • crm_personCRMPerson10

      CRM-Person, die mit diesem Anmeldebenutzer verknüpft ist. Verbindet das Anmeldekonto mit dem Personendatensatz.

    • profile_picture_urlstring

      URL des Profilbilds des Benutzers.

    • archivedboolean

      Markiert den Benutzer als archiviert. Archivierte Benutzer bleiben zur Historie erhalten und sind nicht aktiv.

    • require2faboolean

      Für diesen Benutzer ist die Zwei-Faktor-Authentifizierung Pflicht.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

  • personCRMPerson10

    Person, die der Schicht zugewiesen ist.

    Felder anzeigen (81)
    • idinteger

      Primärschlüssel der Person. Interne ID.

    • first_namestring

      Vorname der Person.

    • last_namestring

      Nachname der Person.

    • numberinteger

      Mitglieds- oder Kundennummer der Person.

    • manual_numberinteger

      Manuell gesetzte Nummer statt der automatischen Nummer.

    • number_stringstring

      Mitglieds- oder Kundennummer als Text, einschließlich Präfix.

    • genderstring

      Geschlecht der Person.

    • titlestring

      Akademischer oder sonstiger Titel der Person.

    • positionstring

      Position oder Rolle der Person.

    • languagestring

      Bevorzugte Sprache der Person.

    • special_salutationstring

      Besonderer Anredetext für Briefe.

    • form_of_salutationstring

      Form der Anrede, zum Beispiel förmlich oder informell.

    • birthdaystring (date-time)

      Geburtstag der Person.

    • known_allergiesstring

      Bekannte Allergien der Person.

    • confirmed_no_allergiesboolean

      Erziehungsberechtigte(r) bestätigt, dass keine bekannten Allergien vorliegen.

    • allow_photosboolean

      Fotos der Person dürfen aufgenommen und veröffentlicht werden.

    • allow_leaving_aloneboolean

      Die Person darf die Veranstaltung allein verlassen.

    • authorized_pickupstring

      Personen, die die Person abholen dürfen.

    • needs_supportboolean

      Die Person benötigt Unterstützung, zum Beispiel zur Inklusion.

    • support_descriptionstring

      Beschreibung der Unterstützung, die die Person benötigt.

    • financial_supportboolean

      Die Person erhält finanzielle Unterstützung.

    • financial_support_numberstring

      Nummer der finanziellen Förderung.

    • municipal_supportboolean

      Die Person erhält kommunale Unterstützung.

    • municipal_support_numberstring

      Nummer der kommunalen Förderung.

    • grade_levelinteger

      Schuljahrgang der Person.

    • school_classstring

      Schulklasse der Person.

    • start_timestring (date-time)

      Beginn der Mitgliedschaft oder Aktivität.

    • start_time_reasonstring

      Grund für den Beginn.

    • end_timestring (date-time)

      Ende der Mitgliedschaft oder Aktivität.

    • end_time_reasonstring

      Grund für das Ende.

    • confirmed_gtc_timestring (date-time)

      Zeitpunkt, zu dem die AGB bestätigt wurden.

    • chatbot_opt_inboolean

      Einwilligung in die Nutzung des KI-Assistenten. Denormalisierter aktueller Stand - das prüfbare Protokoll steht in ChatbotConsent.

    • chatbot_opt_in_atstring (date-time)

      Zeitpunkt, zu dem die Person dem Chatbot zugestimmt hat.

    • chatbot_opt_in_text_versionstring

      Version des Einwilligungstextes, dem zugestimmt wurde. Weicht sie von der aktuellen Version ab, ist das Opt-in abgelaufen.

    • app_usage_statistics_opt_outboolean

      Widerspruch gegen die anonyme Nutzungsstatistik der Mitglieder-App. Die App liest ihn aus den StaticData und schickt dann nichts mehr; die gezählten Aufrufe selbst haben keinen Bezug zur Person.

    • crm_person_contact_dataarray<CRMPersonContactData>

      Kontaktdaten der Person, zum Beispiel Telefon und E-Mail.

    • archivedboolean

      Ob die Person archiviert ist.

    • subscribed_newsletterboolean

      Ob die Person den Newsletter abonniert hat.

    • subscribed_magazineboolean

      Ob die Person das Magazin abonniert hat.

    • printed_member_cardboolean

      Ob für die Person ein Mitgliedsausweis gedruckt wurde.

    • has_login_userboolean

      Ob die Person einen Anmelde-Benutzer hat.

    • profile_picture_urlstring

      URL des Profilbilds der Person.

    • log_book_staffboolean

      Logbuch-Kennzeichen: Personal.

    • log_book_staff1boolean

      Logbuch-Kennzeichen: Personal, Stufe 1.

    • log_book_staff2boolean

      Logbuch-Kennzeichen: Personal, Stufe 2.

    • log_book_memberboolean

      Logbuch-Kennzeichen: Mitglied.

    • log_book_trainerboolean

      Logbuch-Kennzeichen: Trainer.

    • log_book_trainer1boolean

      Logbuch-Kennzeichen: Trainer, Stufe 1.

    • log_book_trainer2boolean

      Logbuch-Kennzeichen: Trainer, Stufe 2.

    • log_book_head_of_departmentboolean

      Logbuch-Kennzeichen: Abteilungsleitung.

    • log_book_supervisory_boardboolean

      Logbuch-Kennzeichen: Aufsichtsrat.

    • log_book_board_of_directorsboolean

      Logbuch-Kennzeichen: Vorstand.

    • log_book_honorary_memberboolean

      Logbuch-Kennzeichen: Ehrenmitglied.

    • log_book_club_card_oneboolean

      Logbuch-Kennzeichen: Vereinskarte.

    • log_book_health_recoveredboolean

      Logbuch-Kennzeichen: von Krankheit genesen.

    • log_book_health_vaccinatedboolean

      Logbuch-Kennzeichen: geimpft.

    • log_book_health_vaccinated_additionstring

      Details der Impfung.

    • log_book_good_conductboolean

      Logbuch-Kennzeichen: Führungszeugnis.

    • log_book_first_aidboolean

      Logbuch-Kennzeichen: Erste-Hilfe-Schulung.

    • log_book_measles_vaccinationboolean

      Logbuch-Kennzeichen: Masernimpfung.

    • sync_lanistaboolean

      Ob die Person mit Lanista synchronisiert ist.

    • categoryCRMPersonCategory

      Personenkategorie.

    • nicknamestring

      Spitzname der Person.

    • preferred_color_hexstring

      Bevorzugte Farbe der Person als Hexwert.

    • avatar_tokenstring

      Token des Avatarbildes.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • addressstring

      Adresse als Text.

    • address_streetstring

      Straße der Adresse.

    • address_house_numberstring

      Hausnummer der Adresse.

    • address_street_levelstring

      Straße und Hausnummer der Adresse.

    • address_costring

      Care-of-Zeile der Adresse.

    • address_citystring

      Ort der Adresse.

    • address_zipstring

      Postleitzahl der Adresse.

    • address_admin_level1string

      Erste Verwaltungsebene der Adresse, z. B. das Bundesland.

    • address_countrystring

      Ländercode der Adresse.

    • address_full_countrystring

      Vollständiger Name des Landes der Adresse.

    • address_geo_latstring

      Breitengrad der Adresse.

    • address_geo_lngstring

      Längengrad der Adresse.

    • address_external_provider_idstring

      Feld zur Speicherung der externen Anbieter-ID der Adresse, z. B. Google-Maps-PlaceID wie google:ChIJVcKw5r90sEcRhdjNq6NItqE

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • … 2 weitere Felder
  • employment_contract_groupEmploymentContractGroup

    Planungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • shift_typeShiftType4

    Ursprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel des Schichttyps. Interne ID.

    • employment_contract_groupEmploymentContractGroup

      Gruppe, zu der dieser Typ gehört (null = für die gesamte Organisation / Installation verfügbar).

    • employment_organizationEmploymentOrganization5

      Organisation, zu der der Schichttyp gehört.

    • short_namestring

      Kurzcode für Raster und Druck („F“, „S“, „N“).

    • start_timestring

      Standardstartzeit als HH:MM.

    • end_timestring

      Standardendzeit als HH:MM - eine Endzeit vor der Startzeit bedeutet, dass die Schicht am folgenden Tag endet (Nachtschicht).

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • colorstring

      Farbe des Schichttyps im Schichtplan als Hex-Code.

    • required_qualificationEmploymentQualification3

      Standard-Qualifikationsanforderung für Schichten dieses Typs.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

    • default_staff_countinteger

      Standardanzahl der benötigten Mitarbeitenden für die Schicht.

    • sort_orderinteger

      Sortierreihenfolge des Diensttyps in Listen.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

  • startstring (date-time)

    Beginn des Dienstes.

  • endstring (date-time)

    Ende der Schicht.

  • start_datestring

    Startdatum des Dienstes als Text.

  • start_monthinteger

    Monat der Schicht.

  • start_yearinteger

    Jahr der Schicht.

  • break_duration_secondsinteger

    Pausendauer der Schicht in Sekunden.

  • durationinteger

    Zielsekunden: (Ende - Start) - Pause, wird von recalculate() gepflegt.

  • required_qualificationEmploymentQualification3

    Für die Schicht erforderliche Qualifikation.

    Felder anzeigen (7)
    • idinteger

      Primärschlüssel der Beschäftigungsqualifikation. Interne ID.

    • rankinginteger

      Rangfolge innerhalb eines Äquivalenznetzwerks - eine verknüpfte Qualifikation mit gleichem oder höherem Rang erfüllt auch Anforderungen an diese Qualifikation.

    • equivalent_qualificationsarray<EmploymentQualification3>

      Verknüpfte ("gleichwertige") Qualifikationen. Vom Controller symmetrisch gehalten: jede Verknüpfung A->B wird als B->A gespiegelt; der Rang entscheidet, welche Richtung tatsächlich welche abdeckt.

    • qualification_groupEmploymentQualificationGroup

      L17/A06: die "Schublade", zu der diese Qualifikation gehört. Mitglieder einer Gruppe decken sich gegenseitig die Anforderungen innerhalb ihres Rangs ab, wie es eine direkte Verknüpfung täte.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • qualification_match_modestring

    L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • statusstring

    Status des Dienstes, zum Beispiel geplant oder veröffentlicht.

  • published_atstring (date-time)

    Zeitpunkt, zu dem die Schicht veröffentlicht wurde.

  • descriptionstring

    Beschreibung der Schicht.

  • has_warningboolean

    Gespeichertes Konfliktkennzeichen für Listen-Badges - die konkreten Warnungen werden bei Bedarf berechnet (ShiftPlanHelper) und nur vorübergehend zurückgegeben.

  • availability_bookingBaseBooking13

    L35: die Verfügbarkeit, für die die veröffentlichte Schicht im Buchungsbereich steht (wird vom ShiftBookingSyncHelper synchron gehalten, solange die Synchronisation für den Vertrag aktiviert ist).

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • bookingBaseBooking13

    L35: der aus dieser Schicht erstellte Termin, falls vorhanden.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • lock_versioninteger

    Optimistische Sperre. Zwei Planer, die dieselbe Schicht bearbeiten, oder eine Wochenveröffentlichung, während jemand eine Schicht darin verschiebt, würden sonst stillschweigend einander überschreiben - der Unterlegene erhält jetzt einen 409. Nur lesend: Doctrine verwaltet den Wert, der Client sendet den zuletzt gesehenen Wert als Query-Parameter lock_version zurück.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/copy_week \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "id": 42,
    "description": "Text",
    "user": {
      "id": 42,
      "name": "Beispiel",
      "username": "lena.hartmann@example.org",
      "email": "lena.hartmann@example.org",
      "profile_picture_url": "https://vynst.de",
      "positioningeneral": "string",
      "archived": true,
      "require2fa": true,
      "search_string": "string"
    },
    "person": {
      "id": 42,
      "first_name": "Lena",
      "last_name": "Hartmann",
      "title": "Beispiel",
      "language": "de",
      "support_description": "Text",
      "profile_picture_url": "https://vynst.de",
      "address_street": "Jakobistr. 39",
      "address_city": "Hannover",
      "address_zip": "30163"
    },
    "employment_contract_group": {
      "id": 42,
      "name": "Beispiel",
      "staged_absence_approval": true,
      "shift_booking_sync": true,
      "week_total_hours": 1.5,
      "week_total_days": 1.5,
      "year_vacation_days": 1.5,
      "month_vacation_days": 1.5,
      "year_vacation_weeks": 1.5,
      "monday_hours": 1.5
    },
    "shift_type": {
      "id": 42,
      "short_name": "Beispiel",
      "color": "#3f5efb",
      "name": "Beispiel",
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "qualification_match_mode": "string",
      "default_staff_count": 1,
      "sort_order": 1
    },
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "start_date": "2026-10-15T09:30:00+02:00",
    "start_month": 1
  }
]

Wendet eine Wochenvorlage auf eine Woche an – legt offene DRAFT-Schichten an und ändert bestehende Schichten nie

POST/api/time/shift_plan_template/{id}/apply

Pfad-Parameter

idPflichtstring

Query-Parameter

idinteger
startDatestring
startMonthstring
startYearstring
employmentContractGroupstringPlanungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft. | Benötigt Zugriffsrecht: SCOPE
personstring
userstring
shiftTypestringUrsprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.
statusstring
contractstring
searchStringstringText, nach dem in der Liste gesucht wird
orderFieldNamestringName des Bestellfelds
orderFieldSortstringSortiermodusErlaubt: DESCASC
pageintegerSeite der Liste
pageSizeintegerAnzahl der Einträge je Seite
withMaxPageNumberstringgibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist

Antworten

200Liefert die angelegten ShiftPlanEntry-Objektearray<ShiftPlanEntry>

Felder anzeigen (23)
  • idinteger

    Primärschlüssel des Schichtplan-Eintrags. Interne ID.

  • userUser14

    Der Schicht zugewiesener Benutzer.

    Felder anzeigen (10)
    • idinteger

      Primärschlüssel des Benutzers. Interne ID des Anmeldebenutzers.

    • namestring

      Anzeigename des Benutzers. Wird in der Oberfläche und in Protokolleinträgen angezeigt.

    • usernamestring

      Anmeldename des Benutzers. Muss über alle Benutzer hinweg eindeutig sein.

    • emailstring

      E-Mail-Adresse des Benutzers. Wird für Anmeldebenachrichtigungen, Passwort-Zurücksetzen und als Anmeldealias verwendet.

    • positioningeneralstring

      Freitext zur Position oder Rolle des Benutzers.

    • crm_personCRMPerson10

      CRM-Person, die mit diesem Anmeldebenutzer verknüpft ist. Verbindet das Anmeldekonto mit dem Personendatensatz.

    • profile_picture_urlstring

      URL des Profilbilds des Benutzers.

    • archivedboolean

      Markiert den Benutzer als archiviert. Archivierte Benutzer bleiben zur Historie erhalten und sind nicht aktiv.

    • require2faboolean

      Für diesen Benutzer ist die Zwei-Faktor-Authentifizierung Pflicht.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

  • personCRMPerson10

    Person, die der Schicht zugewiesen ist.

    Felder anzeigen (81)
    • idinteger

      Primärschlüssel der Person. Interne ID.

    • first_namestring

      Vorname der Person.

    • last_namestring

      Nachname der Person.

    • numberinteger

      Mitglieds- oder Kundennummer der Person.

    • manual_numberinteger

      Manuell gesetzte Nummer statt der automatischen Nummer.

    • number_stringstring

      Mitglieds- oder Kundennummer als Text, einschließlich Präfix.

    • genderstring

      Geschlecht der Person.

    • titlestring

      Akademischer oder sonstiger Titel der Person.

    • positionstring

      Position oder Rolle der Person.

    • languagestring

      Bevorzugte Sprache der Person.

    • special_salutationstring

      Besonderer Anredetext für Briefe.

    • form_of_salutationstring

      Form der Anrede, zum Beispiel förmlich oder informell.

    • birthdaystring (date-time)

      Geburtstag der Person.

    • known_allergiesstring

      Bekannte Allergien der Person.

    • confirmed_no_allergiesboolean

      Erziehungsberechtigte(r) bestätigt, dass keine bekannten Allergien vorliegen.

    • allow_photosboolean

      Fotos der Person dürfen aufgenommen und veröffentlicht werden.

    • allow_leaving_aloneboolean

      Die Person darf die Veranstaltung allein verlassen.

    • authorized_pickupstring

      Personen, die die Person abholen dürfen.

    • needs_supportboolean

      Die Person benötigt Unterstützung, zum Beispiel zur Inklusion.

    • support_descriptionstring

      Beschreibung der Unterstützung, die die Person benötigt.

    • financial_supportboolean

      Die Person erhält finanzielle Unterstützung.

    • financial_support_numberstring

      Nummer der finanziellen Förderung.

    • municipal_supportboolean

      Die Person erhält kommunale Unterstützung.

    • municipal_support_numberstring

      Nummer der kommunalen Förderung.

    • grade_levelinteger

      Schuljahrgang der Person.

    • school_classstring

      Schulklasse der Person.

    • start_timestring (date-time)

      Beginn der Mitgliedschaft oder Aktivität.

    • start_time_reasonstring

      Grund für den Beginn.

    • end_timestring (date-time)

      Ende der Mitgliedschaft oder Aktivität.

    • end_time_reasonstring

      Grund für das Ende.

    • confirmed_gtc_timestring (date-time)

      Zeitpunkt, zu dem die AGB bestätigt wurden.

    • chatbot_opt_inboolean

      Einwilligung in die Nutzung des KI-Assistenten. Denormalisierter aktueller Stand - das prüfbare Protokoll steht in ChatbotConsent.

    • chatbot_opt_in_atstring (date-time)

      Zeitpunkt, zu dem die Person dem Chatbot zugestimmt hat.

    • chatbot_opt_in_text_versionstring

      Version des Einwilligungstextes, dem zugestimmt wurde. Weicht sie von der aktuellen Version ab, ist das Opt-in abgelaufen.

    • app_usage_statistics_opt_outboolean

      Widerspruch gegen die anonyme Nutzungsstatistik der Mitglieder-App. Die App liest ihn aus den StaticData und schickt dann nichts mehr; die gezählten Aufrufe selbst haben keinen Bezug zur Person.

    • crm_person_contact_dataarray<CRMPersonContactData>

      Kontaktdaten der Person, zum Beispiel Telefon und E-Mail.

    • archivedboolean

      Ob die Person archiviert ist.

    • subscribed_newsletterboolean

      Ob die Person den Newsletter abonniert hat.

    • subscribed_magazineboolean

      Ob die Person das Magazin abonniert hat.

    • printed_member_cardboolean

      Ob für die Person ein Mitgliedsausweis gedruckt wurde.

    • has_login_userboolean

      Ob die Person einen Anmelde-Benutzer hat.

    • profile_picture_urlstring

      URL des Profilbilds der Person.

    • log_book_staffboolean

      Logbuch-Kennzeichen: Personal.

    • log_book_staff1boolean

      Logbuch-Kennzeichen: Personal, Stufe 1.

    • log_book_staff2boolean

      Logbuch-Kennzeichen: Personal, Stufe 2.

    • log_book_memberboolean

      Logbuch-Kennzeichen: Mitglied.

    • log_book_trainerboolean

      Logbuch-Kennzeichen: Trainer.

    • log_book_trainer1boolean

      Logbuch-Kennzeichen: Trainer, Stufe 1.

    • log_book_trainer2boolean

      Logbuch-Kennzeichen: Trainer, Stufe 2.

    • log_book_head_of_departmentboolean

      Logbuch-Kennzeichen: Abteilungsleitung.

    • log_book_supervisory_boardboolean

      Logbuch-Kennzeichen: Aufsichtsrat.

    • log_book_board_of_directorsboolean

      Logbuch-Kennzeichen: Vorstand.

    • log_book_honorary_memberboolean

      Logbuch-Kennzeichen: Ehrenmitglied.

    • log_book_club_card_oneboolean

      Logbuch-Kennzeichen: Vereinskarte.

    • log_book_health_recoveredboolean

      Logbuch-Kennzeichen: von Krankheit genesen.

    • log_book_health_vaccinatedboolean

      Logbuch-Kennzeichen: geimpft.

    • log_book_health_vaccinated_additionstring

      Details der Impfung.

    • log_book_good_conductboolean

      Logbuch-Kennzeichen: Führungszeugnis.

    • log_book_first_aidboolean

      Logbuch-Kennzeichen: Erste-Hilfe-Schulung.

    • log_book_measles_vaccinationboolean

      Logbuch-Kennzeichen: Masernimpfung.

    • sync_lanistaboolean

      Ob die Person mit Lanista synchronisiert ist.

    • categoryCRMPersonCategory

      Personenkategorie.

    • nicknamestring

      Spitzname der Person.

    • preferred_color_hexstring

      Bevorzugte Farbe der Person als Hexwert.

    • avatar_tokenstring

      Token des Avatarbildes.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • addressstring

      Adresse als Text.

    • address_streetstring

      Straße der Adresse.

    • address_house_numberstring

      Hausnummer der Adresse.

    • address_street_levelstring

      Straße und Hausnummer der Adresse.

    • address_costring

      Care-of-Zeile der Adresse.

    • address_citystring

      Ort der Adresse.

    • address_zipstring

      Postleitzahl der Adresse.

    • address_admin_level1string

      Erste Verwaltungsebene der Adresse, z. B. das Bundesland.

    • address_countrystring

      Ländercode der Adresse.

    • address_full_countrystring

      Vollständiger Name des Landes der Adresse.

    • address_geo_latstring

      Breitengrad der Adresse.

    • address_geo_lngstring

      Längengrad der Adresse.

    • address_external_provider_idstring

      Feld zur Speicherung der externen Anbieter-ID der Adresse, z. B. Google-Maps-PlaceID wie google:ChIJVcKw5r90sEcRhdjNq6NItqE

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • … 2 weitere Felder
  • employment_contract_groupEmploymentContractGroup

    Planungscontainer - Pflichtangabe, auch wenn eine Person einer anderen Gruppe aushilft.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • shift_typeShiftType4

    Ursprungstyp - Zeiten wurden kopiert, der Verweis dient nur der Information.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel des Schichttyps. Interne ID.

    • employment_contract_groupEmploymentContractGroup

      Gruppe, zu der dieser Typ gehört (null = für die gesamte Organisation / Installation verfügbar).

    • employment_organizationEmploymentOrganization5

      Organisation, zu der der Schichttyp gehört.

    • short_namestring

      Kurzcode für Raster und Druck („F“, „S“, „N“).

    • start_timestring

      Standardstartzeit als HH:MM.

    • end_timestring

      Standardendzeit als HH:MM - eine Endzeit vor der Startzeit bedeutet, dass die Schicht am folgenden Tag endet (Nachtschicht).

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • colorstring

      Farbe des Schichttyps im Schichtplan als Hex-Code.

    • required_qualificationEmploymentQualification3

      Standard-Qualifikationsanforderung für Schichten dieses Typs.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

    • default_staff_countinteger

      Standardanzahl der benötigten Mitarbeitenden für die Schicht.

    • sort_orderinteger

      Sortierreihenfolge des Diensttyps in Listen.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

  • startstring (date-time)

    Beginn des Dienstes.

  • endstring (date-time)

    Ende der Schicht.

  • start_datestring

    Startdatum des Dienstes als Text.

  • start_monthinteger

    Monat der Schicht.

  • start_yearinteger

    Jahr der Schicht.

  • break_duration_secondsinteger

    Pausendauer der Schicht in Sekunden.

  • durationinteger

    Zielsekunden: (Ende - Start) - Pause, wird von recalculate() gepflegt.

  • required_qualificationEmploymentQualification3

    Für die Schicht erforderliche Qualifikation.

    Felder anzeigen (7)
    • idinteger

      Primärschlüssel der Beschäftigungsqualifikation. Interne ID.

    • rankinginteger

      Rangfolge innerhalb eines Äquivalenznetzwerks - eine verknüpfte Qualifikation mit gleichem oder höherem Rang erfüllt auch Anforderungen an diese Qualifikation.

    • equivalent_qualificationsarray<EmploymentQualification3>

      Verknüpfte ("gleichwertige") Qualifikationen. Vom Controller symmetrisch gehalten: jede Verknüpfung A->B wird als B->A gespiegelt; der Rang entscheidet, welche Richtung tatsächlich welche abdeckt.

    • qualification_groupEmploymentQualificationGroup

      L17/A06: die "Schublade", zu der diese Qualifikation gehört. Mitglieder einer Gruppe decken sich gegenseitig die Anforderungen innerhalb ihres Rangs ab, wie es eine direkte Verknüpfung täte.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • qualification_match_modestring

    L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • statusstring

    Status des Dienstes, zum Beispiel geplant oder veröffentlicht.

  • published_atstring (date-time)

    Zeitpunkt, zu dem die Schicht veröffentlicht wurde.

  • descriptionstring

    Beschreibung der Schicht.

  • has_warningboolean

    Gespeichertes Konfliktkennzeichen für Listen-Badges - die konkreten Warnungen werden bei Bedarf berechnet (ShiftPlanHelper) und nur vorübergehend zurückgegeben.

  • availability_bookingBaseBooking13

    L35: die Verfügbarkeit, für die die veröffentlichte Schicht im Buchungsbereich steht (wird vom ShiftBookingSyncHelper synchron gehalten, solange die Synchronisation für den Vertrag aktiviert ist).

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • bookingBaseBooking13

    L35: der aus dieser Schicht erstellte Termin, falls vorhanden.

    Felder anzeigen (17)
    • idinteger

      Primärschlüssel der Buchung. Interne ID.

    • start_timestring (date-time)

      Beginn der Buchung.

    • end_timestring (date-time)

      Ende der Buchung.

    • booking_typestring

      Art der Buchung, zum Beispiel normal oder Vertretung.

    • booking_statusstring

      Status der Buchung, zum Beispiel geplant, erledigt oder storniert.

    • externalboolean

      Die Buchung wurde von einer externen Stelle vorgenommen.

    • modified_timeboolean

      Der Zeitpunkt der Buchung wurde nach der Erstellung geändert.

    • modified_locationboolean

      Der Standort der Buchung wurde nach der Erstellung geändert.

    • modified_bookableboolean

      Der Buchungsgegenstand der Buchung wurde nach der Erstellung geändert.

    • modified_performing_personboolean

      Der Leiter der Buchung wurde nach der Erstellung geändert.

    • searching_for_performing_personboolean

      Für die Buchung wird noch eine Leitung gesucht.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

    • namestring

      Name der Einheit.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • colorstring

      Hintergrundfarbe als Hexwert.

    • fg_colorstring

      Vordergrundfarbe als Hex-Wert.

  • lock_versioninteger

    Optimistische Sperre. Zwei Planer, die dieselbe Schicht bearbeiten, oder eine Wochenveröffentlichung, während jemand eine Schicht darin verschiebt, würden sonst stillschweigend einander überschreiben - der Unterlegene erhält jetzt einen 409. Nur lesend: Doctrine verwaltet den Wert, der Client sendet den zuletzt gesehenen Wert als Query-Parameter lock_version zurück.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/42/apply \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "id": 42,
    "description": "Text",
    "user": {
      "id": 42,
      "name": "Beispiel",
      "username": "lena.hartmann@example.org",
      "email": "lena.hartmann@example.org",
      "profile_picture_url": "https://vynst.de",
      "positioningeneral": "string",
      "archived": true,
      "require2fa": true,
      "search_string": "string"
    },
    "person": {
      "id": 42,
      "first_name": "Lena",
      "last_name": "Hartmann",
      "title": "Beispiel",
      "language": "de",
      "support_description": "Text",
      "profile_picture_url": "https://vynst.de",
      "address_street": "Jakobistr. 39",
      "address_city": "Hannover",
      "address_zip": "30163"
    },
    "employment_contract_group": {
      "id": 42,
      "name": "Beispiel",
      "staged_absence_approval": true,
      "shift_booking_sync": true,
      "week_total_hours": 1.5,
      "week_total_days": 1.5,
      "year_vacation_days": 1.5,
      "month_vacation_days": 1.5,
      "year_vacation_weeks": 1.5,
      "monday_hours": 1.5
    },
    "shift_type": {
      "id": 42,
      "short_name": "Beispiel",
      "color": "#3f5efb",
      "name": "Beispiel",
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "qualification_match_mode": "string",
      "default_staff_count": 1,
      "sort_order": 1
    },
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "start_date": "2026-10-15T09:30:00+02:00",
    "start_month": 1
  }
]

Diese Methode liefert alle ShiftPlanTemplate-Objekte

GET/api/time/shift_plan_template

Query-Parameter

idinteger
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert | Benötigtes Zugriffsrecht: SCOPE | Standardwert: false
namestring
employmentContractGroupstring
searchStringstringText, nach dem in der Liste gesucht wird
orderFieldNamestringName des Bestellfelds
orderFieldSortstringSortiermodusErlaubt: DESCASC
pageintegerSeite der Liste
pageSizeintegerAnzahl der Einträge je Seite
withMaxPageNumberstringgibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist

Antworten

200Liefert eine Liste der ShiftPlanTemplate-Objekte.array<ShiftPlanTemplate>

Felder anzeigen (7)
  • idinteger

    Primärschlüssel der Schichtplanvorlage. Interne ID.

  • employment_contract_groupEmploymentContractGroup

    Vertragsgruppe, für die die Vorlage bestimmt ist.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • search_stringstring

    Text, unter dem die Entität gesucht werden kann.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "id": 42,
    "name": "Beispiel",
    "employment_contract_group": {
      "id": 42,
      "name": "Beispiel",
      "staged_absence_approval": true,
      "shift_booking_sync": true,
      "week_total_hours": 1.5,
      "week_total_days": 1.5,
      "year_vacation_days": 1.5,
      "month_vacation_days": 1.5,
      "year_vacation_weeks": 1.5,
      "monday_hours": 1.5
    },
    "search_string": "string",
    "deleted": true,
    "created": "2026-10-15T09:30:00+02:00",
    "updated": "2026-10-15T09:30:00+02:00"
  }
]

ShiftPlanTemplate neu anlegen

POST/api/time/shift_plan_template

Request-Body application/json

  • dataShiftPlanTemplate2
    Felder anzeigen (2)
    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

Antworten

200ShiftPlanTemplate neu anlegenShiftPlanTemplate3

Felder anzeigen (8)
  • idinteger

    Primärschlüssel der Schichtplanvorlage. Interne ID.

  • employment_contract_groupEmploymentContractGroup

    Vertragsgruppe, für die die Vorlage bestimmt ist.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • entriesarray<ShiftPlanTemplateEntry>

    Einträge der Vorlage.

    Felder anzeigen (9)
    • idinteger

      Primärschlüssel des Schichtplanvorlagen-Eintrags. Interne ID.

    • iso_weekdayinteger

      ISO-Wochentag, 1 = Montag ... 7 = Sonntag.

    • shift_typeShiftType3

      Diensttyp des Eintrags.

    • start_timestring

      Startzeit des Dienstes in HH:MM.

    • end_timestring

      Endzeit der Schicht als HH:MM.

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • staff_countinteger

      Anzahl der für die Schicht benötigten Mitarbeitenden.

    • required_qualificationEmploymentQualification

      Für die Schicht erforderliche Qualifikation.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • search_stringstring

    Text, unter dem die Entität gesucht werden kann.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "deleted": true
  }
}
'
Antwort 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "employment_contract_group": {
    "id": 42,
    "name": "Beispiel",
    "staged_absence_approval": true,
    "shift_booking_sync": true,
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "year_vacation_days": 1.5,
    "month_vacation_days": 1.5,
    "year_vacation_weeks": 1.5,
    "monday_hours": 1.5
  },
  "entries": [
    {
      "id": 42,
      "iso_weekday": 1,
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "staff_count": 1,
      "qualification_match_mode": "string"
    }
  ],
  "search_string": "string",
  "deleted": true,
  "created": "2026-10-15T09:30:00+02:00",
  "updated": "2026-10-15T09:30:00+02:00"
}

Diese Methode liefert eine einzelne ShiftPlanTemplate mit der angegebenen ID

GET/api/time/shift_plan_template/{id}

Pfad-Parameter

idPflichtstring

Antworten

200Liefert ein einzelnes ShiftPlanTemplate-Objekt.ShiftPlanTemplate3

Felder anzeigen (8)
  • idinteger

    Primärschlüssel der Schichtplanvorlage. Interne ID.

  • employment_contract_groupEmploymentContractGroup

    Vertragsgruppe, für die die Vorlage bestimmt ist.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • entriesarray<ShiftPlanTemplateEntry>

    Einträge der Vorlage.

    Felder anzeigen (9)
    • idinteger

      Primärschlüssel des Schichtplanvorlagen-Eintrags. Interne ID.

    • iso_weekdayinteger

      ISO-Wochentag, 1 = Montag ... 7 = Sonntag.

    • shift_typeShiftType3

      Diensttyp des Eintrags.

    • start_timestring

      Startzeit des Dienstes in HH:MM.

    • end_timestring

      Endzeit der Schicht als HH:MM.

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • staff_countinteger

      Anzahl der für die Schicht benötigten Mitarbeitenden.

    • required_qualificationEmploymentQualification

      Für die Schicht erforderliche Qualifikation.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • search_stringstring

    Text, unter dem die Entität gesucht werden kann.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/42 \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "employment_contract_group": {
    "id": 42,
    "name": "Beispiel",
    "staged_absence_approval": true,
    "shift_booking_sync": true,
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "year_vacation_days": 1.5,
    "month_vacation_days": 1.5,
    "year_vacation_weeks": 1.5,
    "monday_hours": 1.5
  },
  "entries": [
    {
      "id": 42,
      "iso_weekday": 1,
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "staff_count": 1,
      "qualification_match_mode": "string"
    }
  ],
  "search_string": "string",
  "deleted": true,
  "created": "2026-10-15T09:30:00+02:00",
  "updated": "2026-10-15T09:30:00+02:00"
}

ShiftPlanTemplate aktualisieren

PUT/api/time/shift_plan_template/{id}

Pfad-Parameter

idPflichtstring

Request-Body application/json

  • dataShiftPlanTemplate2
    Felder anzeigen (2)
    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

Antworten

200ShiftPlanTemplate aktualisierenShiftPlanTemplate3

Felder anzeigen (8)
  • idinteger

    Primärschlüssel der Schichtplanvorlage. Interne ID.

  • employment_contract_groupEmploymentContractGroup

    Vertragsgruppe, für die die Vorlage bestimmt ist.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • entriesarray<ShiftPlanTemplateEntry>

    Einträge der Vorlage.

    Felder anzeigen (9)
    • idinteger

      Primärschlüssel des Schichtplanvorlagen-Eintrags. Interne ID.

    • iso_weekdayinteger

      ISO-Wochentag, 1 = Montag ... 7 = Sonntag.

    • shift_typeShiftType3

      Diensttyp des Eintrags.

    • start_timestring

      Startzeit des Dienstes in HH:MM.

    • end_timestring

      Endzeit der Schicht als HH:MM.

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • staff_countinteger

      Anzahl der für die Schicht benötigten Mitarbeitenden.

    • required_qualificationEmploymentQualification

      Für die Schicht erforderliche Qualifikation.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • search_stringstring

    Text, unter dem die Entität gesucht werden kann.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request PUT \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "deleted": true
  }
}
'
Antwort 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "employment_contract_group": {
    "id": 42,
    "name": "Beispiel",
    "staged_absence_approval": true,
    "shift_booking_sync": true,
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "year_vacation_days": 1.5,
    "month_vacation_days": 1.5,
    "year_vacation_weeks": 1.5,
    "monday_hours": 1.5
  },
  "entries": [
    {
      "id": 42,
      "iso_weekday": 1,
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "staff_count": 1,
      "qualification_match_mode": "string"
    }
  ],
  "search_string": "string",
  "deleted": true,
  "created": "2026-10-15T09:30:00+02:00",
  "updated": "2026-10-15T09:30:00+02:00"
}

ShiftPlanTemplate aktualisieren

PATCH/api/time/shift_plan_template/{id}

Pfad-Parameter

idPflichtstring

Request-Body application/json

  • dataShiftPlanTemplate2
    Felder anzeigen (2)
    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

Antworten

200ShiftPlanTemplate aktualisierenShiftPlanTemplate3

Felder anzeigen (8)
  • idinteger

    Primärschlüssel der Schichtplanvorlage. Interne ID.

  • employment_contract_groupEmploymentContractGroup

    Vertragsgruppe, für die die Vorlage bestimmt ist.

    Felder anzeigen (25)
    • staged_absence_approvalboolean

      null übernimmt die Organisation; false deaktiviert die gestufte Freigabe ausdrücklich.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Organisation, false schaltet es für diese Gruppe aus.

    • idinteger

      Primärschlüssel der Vertragsgruppe. Interne ID.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Arbeitstage pro Woche.

    • year_vacation_daysnumber (float)

      Urlaubstage pro Jahr.

    • month_vacation_daysnumber (float)

      Urlaubstage pro Monat.

    • year_vacation_weeksnumber (float)

      Urlaubswochen pro Jahr.

    • monday_hoursnumber (float)

      Arbeitsstunden am Montag.

    • tuesday_hoursnumber (float)

      Arbeitsstunden am Dienstag.

    • wednesday_hoursnumber (float)

      Arbeitsstunden am Mittwoch.

    • thursday_hoursnumber (float)

      Arbeitsstunden am Donnerstag.

    • friday_hoursnumber (float)

      Arbeitsstunden am Freitag.

    • saturday_hoursnumber (float)

      Arbeitsstunden am Samstag.

    • sunday_hoursnumber (float)

      Arbeitsstunden am Sonntag.

    • netto_hour_costnumber (float)

      Nettokosten je Stunde.

    • brutto_hour_costnumber (float)

      Bruttokosten pro Stunde.

    • allow_app_time_trackingboolean

      Ob die Zeiterfassung in der App erlaubt ist.

    • allow_scanner_time_trackingboolean

      Ob die Zeiterfassung per Scanner erlaubt ist.

    • allow_app_non_work_time_managementboolean

      Ob arbeitsfreie Zeit in der App verwaltet werden kann.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag dieser Gruppe vor seinem ersten Tag eingereicht werden muss. null greift auf die installationsweite Einstellung zurück – eine bestehende Gruppe verhält sich daher weiterhin genauso wie bisher.

    • school_holiday_regionSchoolHolidayRegion

      U09: der Schulkalender dieser Gruppe, wenn er vom Kalender der Organisation abweicht (Auszubildende, die in einem anderen Bundesland zur Schule gehen). null = der der Organisation.

    • search_stringstring

      Text, unter dem die Entität gesucht werden kann.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

  • entriesarray<ShiftPlanTemplateEntry>

    Einträge der Vorlage.

    Felder anzeigen (9)
    • idinteger

      Primärschlüssel des Schichtplanvorlagen-Eintrags. Interne ID.

    • iso_weekdayinteger

      ISO-Wochentag, 1 = Montag ... 7 = Sonntag.

    • shift_typeShiftType3

      Diensttyp des Eintrags.

    • start_timestring

      Startzeit des Dienstes in HH:MM.

    • end_timestring

      Endzeit der Schicht als HH:MM.

    • break_duration_secondsinteger

      Pausendauer der Schicht in Sekunden.

    • staff_countinteger

      Anzahl der für die Schicht benötigten Mitarbeitenden.

    • required_qualificationEmploymentQualification

      Für die Schicht erforderliche Qualifikation.

    • qualification_match_modestring

      L18: EXACT verlangt die geforderte Qualifikation selbst; EQUIVALENT (Standard, bisheriges Verhalten) akzeptiert auch verknüpfte oder gleichgruppierte Qualifikationen mit ausreichendem Rang.

  • search_stringstring

    Text, unter dem die Entität gesucht werden kann.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request PATCH \
  --url https://eure-instanz.iw-erp.de/api/time/shift_plan_template/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "deleted": true
  }
}
'
Antwort 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "employment_contract_group": {
    "id": 42,
    "name": "Beispiel",
    "staged_absence_approval": true,
    "shift_booking_sync": true,
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "year_vacation_days": 1.5,
    "month_vacation_days": 1.5,
    "year_vacation_weeks": 1.5,
    "monday_hours": 1.5
  },
  "entries": [
    {
      "id": 42,
      "iso_weekday": 1,
      "start_time": "string",
      "end_time": "string",
      "break_duration_seconds": 1,
      "staff_count": 1,
      "qualification_match_mode": "string"
    }
  ],
  "search_string": "string",
  "deleted": true,
  "created": "2026-10-15T09:30:00+02:00",
  "updated": "2026-10-15T09:30:00+02:00"
}