Zum Inhalt springen
Developer

EmploymentContractChangeRequest

Personal5 EndpunkteTimeTracking / EmploymentContractChangeRequest

Diese Methode liefert alle EmploymentContractChangeRequest-Objekte. Ohne Leseberechtigung der Personalabteilung erhält eine Führungskraft die Anträge der Verträge, die sie leitet; mit dem Parameter contract muss der Aufrufer diesen Vertrag leiten (oder besitzen).

GET/api/time/employment_contract_change_request

Query-Parameter

idinteger
contractstring
statusstring
startstringErster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist. | Benötigt Zugriffsrecht: SCOPE
requestedByUserstring
requestedByPersonstring
decidedByUserstring
autoAppliedbooleanWahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung). | Benötigt Zugriffsrecht: SCOPE
createdstring
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 EmploymentContractChangeRequest-Objekte.array<EmploymentContractChangeRequest>

Felder anzeigen (25)
  • requested_by_namestring
  • idinteger

    Primärschlüssel der Vertragsänderungsanfrage. Interne ID.

  • contractEmploymentContract3

    Vertrag, für den die Änderung gilt.

    Felder anzeigen (43)
    • staged_absence_approvalboolean

      null übernimmt zuerst die Gruppen- und dann die Organisationsrichtlinie; bestehende Installationen bleiben aus.

    • idinteger

      Primärschlüssel des Arbeitsvertrags. Interne ID.

    • tokenstring

      Öffentlicher Token des Vertrags. Anstelle der ID verwendet.

    • userUser14

      Benutzer des Mitarbeiters.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche.

    • reserved_hours_preparationnumber (float)

      L03: wöchentliche Stunden, die für Vorbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_follow_upnumber (float)

      L03: wöchentliche Stunden, die für Nachbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_travelnumber (float)

      L03: wöchentliche Stunden, die für Fahrt reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_flexiblenumber (float)

      L03: wöchentliche Stunden, die für freie Einteilung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • week_full_time_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche bei einem Vollzeitvertrag.

    • 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.

    • startstring (date-time)

      Startdatum des Vertrags.

    • endstring (date-time)

      Enddatum des Vertrags.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, Standard), FIXED_TERM oder EXTENDED (FIXED_TERM_STATUS_*).

    • fixed_term_endstring (date-time)

      Befristet bis (erster Zeitraum).

    • fixed_term_extension_endstring (date-time)

      Befristet bis nach Verlängerung.

    • probation_endstring (date-time)

      Probezeit bis; wird aus den probationMonths der Vorlage gefüllt, wenn ein Vertrag ohne diese Angabe angelegt wird.

    • numberstring

      Vertragsnummer.

    • descriptionstring

      Beschreibung des Vertrags.

    • archivedboolean

      Der Vertrag ist archiviert.

    • allow_app_time_trackingboolean

      Der Mitarbeitende darf Zeiten in der App erfassen.

    • allow_scanner_time_trackingboolean

      Der Mitarbeitende darf Zeiten mit dem Scanner erfassen.

    • allow_app_non_work_time_managementboolean

      Der Mitarbeitende darf Abwesenheiten in der App verwalten.

    • force_no_auto_breakboolean

      Für diesen Vertrag werden keine automatischen Pausen hinzugefügt.

    • work_time_modestring

      Wie die Sollarbeitszeit definiert ist - null verhält sich wie WEEKDAY_HOURS, damit bestehende Verträge ihr bisheriges Verhalten unverändert beibehalten.

    • holiday_credit_modestring

      Feiertagsguthaben für WEEK_TOTAL-Verträge - null verhält sich wie WEEKDAY_TARGET (bisheriges Verhalten, nur bei WEEKDAY_HOURS-Verträgen sinnvoll).

    • holiday_credit_fixed_secondsinteger

      Fester Feiertagsguthaben in Sekunden.

    • planning_weekdays_bitmaskinteger

      ISO-Wochentagsbitmaske (Mo=1 ... So=64) der Tage, an denen dieser WEEK_TOTAL-Vertrag eingeplant werden bzw. Urlaub nehmen kann - null verhält sich wie Mo-Fr.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag vor seinem ersten Tag eingereicht werden muss ("Bearbeitungs- frist"). null greift zunächst auf die Vertragsgruppe und von dort auf die Einstellung der Installation zurück, damit ein bestehender Vertrag genau wie bisher funktioniert.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Gruppe (die wiederum die Organisation übernimmt).

    • search_stringstring

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

  • requested_by_userUser14

    Benutzer, der die Änderung beantragt hat.

    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.

  • requested_by_personCRMPerson10

    Person, die die Änderung angefragt hat.

    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
  • startstring (date-time)

    Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

  • monday_hoursnumber (float)

    Gewünschte Arbeitszeit am Montag.

  • tuesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Dienstag.

  • wednesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Mittwoch.

  • thursday_hoursnumber (float)

    Gewünschte Arbeitszeit am Donnerstag.

  • friday_hoursnumber (float)

    Gewünschte Arbeitszeit am Freitag.

  • saturday_hoursnumber (float)

    Gewünschte Arbeitszeit am Samstag.

  • sunday_hoursnumber (float)

    Gewünschte Arbeitszeit am Sonntag.

  • week_total_hoursnumber (float)

    Summe der angefragten Wochentagsstunden, gespeichert für Listen und die Regel zur automatischen Übernahme.

  • previous_week_total_hoursnumber (float)

    Wochensumme, die der Vertrag für den angefragten Monat zum Zeitpunkt der Anfrage hatte.

  • statusstring

    Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

  • reasonstring

    Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

  • decided_by_userUser14

    Benutzer, der über den Antrag entschieden hat.

    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.

  • decided_atstring (date-time)

    Zeitpunkt, zu dem über den Antrag entschieden wurde.

  • decision_commentstring

    Kommentar zur Entscheidung.

  • vacation_days_modestring

    Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

  • year_vacation_daysnumber (float)

    Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

  • auto_appliedboolean

    Wahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung).

  • 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/employment_contract_change_request \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "requested_by_name": "Beispiel",
    "id": 42,
    "decision_comment": "Text",
    "contract": {
      "id": 42,
      "description": "Text",
      "staged_absence_approval": true,
      "token": "string",
      "week_total_hours": 1.5,
      "week_total_days": 1.5,
      "reserved_hours_preparation": 1.5,
      "reserved_hours_follow_up": 1.5,
      "reserved_hours_travel": 1.5,
      "reserved_hours_flexible": 1.5
    },
    "requested_by_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"
    },
    "requested_by_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"
    },
    "start": "2026-10-15T09:30:00+02:00",
    "monday_hours": 1.5,
    "tuesday_hours": 1.5,
    "wednesday_hours": 1.5
  }
]

Änderungsantrag für die wöchentlichen Arbeitstage eines Vertrags einreichen

POST/api/time/employment_contract_change_request

Request-Body application/json

  • dataEmploymentContractChangeRequest2
    Felder anzeigen (14)
    • contractEmploymentContract4

      Vertrag, für den die Änderung gilt.

    • startstring (date-time)

      Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

    • monday_hoursnumber (float)

      Gewünschte Arbeitszeit am Montag.

    • tuesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Dienstag.

    • wednesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Mittwoch.

    • thursday_hoursnumber (float)

      Gewünschte Arbeitszeit am Donnerstag.

    • friday_hoursnumber (float)

      Gewünschte Arbeitszeit am Freitag.

    • saturday_hoursnumber (float)

      Gewünschte Arbeitszeit am Samstag.

    • sunday_hoursnumber (float)

      Gewünschte Arbeitszeit am Sonntag.

    • statusstring

      Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

    • reasonstring

      Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

    • decision_commentstring

      Kommentar zur Entscheidung.

    • vacation_days_modestring

      Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

    • year_vacation_daysnumber (float)

      Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

Antworten

200EmploymentContractChangeRequest neu anlegenEmploymentContractChangeRequest3

Felder anzeigen (25)
  • requested_by_namestring
  • idinteger

    Primärschlüssel der Vertragsänderungsanfrage. Interne ID.

  • contractEmploymentContract5

    Vertrag, für den die Änderung gilt.

    Felder anzeigen (43)
    • staged_absence_approvalboolean

      null übernimmt zuerst die Gruppen- und dann die Organisationsrichtlinie; bestehende Installationen bleiben aus.

    • idinteger

      Primärschlüssel des Arbeitsvertrags. Interne ID.

    • tokenstring

      Öffentlicher Token des Vertrags. Anstelle der ID verwendet.

    • userUser14

      Benutzer des Mitarbeiters.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche.

    • reserved_hours_preparationnumber (float)

      L03: wöchentliche Stunden, die für Vorbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_follow_upnumber (float)

      L03: wöchentliche Stunden, die für Nachbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_travelnumber (float)

      L03: wöchentliche Stunden, die für Fahrt reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_flexiblenumber (float)

      L03: wöchentliche Stunden, die für freie Einteilung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • week_full_time_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche bei einem Vollzeitvertrag.

    • 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.

    • startstring (date-time)

      Startdatum des Vertrags.

    • endstring (date-time)

      Enddatum des Vertrags.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, Standard), FIXED_TERM oder EXTENDED (FIXED_TERM_STATUS_*).

    • fixed_term_endstring (date-time)

      Befristet bis (erster Zeitraum).

    • fixed_term_extension_endstring (date-time)

      Befristet bis nach Verlängerung.

    • probation_endstring (date-time)

      Probezeit bis; wird aus den probationMonths der Vorlage gefüllt, wenn ein Vertrag ohne diese Angabe angelegt wird.

    • numberstring

      Vertragsnummer.

    • descriptionstring

      Beschreibung des Vertrags.

    • archivedboolean

      Der Vertrag ist archiviert.

    • allow_app_time_trackingboolean

      Der Mitarbeitende darf Zeiten in der App erfassen.

    • allow_scanner_time_trackingboolean

      Der Mitarbeitende darf Zeiten mit dem Scanner erfassen.

    • allow_app_non_work_time_managementboolean

      Der Mitarbeitende darf Abwesenheiten in der App verwalten.

    • force_no_auto_breakboolean

      Für diesen Vertrag werden keine automatischen Pausen hinzugefügt.

    • work_time_modestring

      Wie die Sollarbeitszeit definiert ist - null verhält sich wie WEEKDAY_HOURS, damit bestehende Verträge ihr bisheriges Verhalten unverändert beibehalten.

    • holiday_credit_modestring

      Feiertagsguthaben für WEEK_TOTAL-Verträge - null verhält sich wie WEEKDAY_TARGET (bisheriges Verhalten, nur bei WEEKDAY_HOURS-Verträgen sinnvoll).

    • holiday_credit_fixed_secondsinteger

      Fester Feiertagsguthaben in Sekunden.

    • planning_weekdays_bitmaskinteger

      ISO-Wochentagsbitmaske (Mo=1 ... So=64) der Tage, an denen dieser WEEK_TOTAL-Vertrag eingeplant werden bzw. Urlaub nehmen kann - null verhält sich wie Mo-Fr.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag vor seinem ersten Tag eingereicht werden muss ("Bearbeitungs- frist"). null greift zunächst auf die Vertragsgruppe und von dort auf die Einstellung der Installation zurück, damit ein bestehender Vertrag genau wie bisher funktioniert.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Gruppe (die wiederum die Organisation übernimmt).

    • search_stringstring

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

  • requested_by_userUser14

    Benutzer, der die Änderung beantragt hat.

    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.

  • requested_by_personCRMPerson10

    Person, die die Änderung angefragt hat.

    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
  • startstring (date-time)

    Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

  • monday_hoursnumber (float)

    Gewünschte Arbeitszeit am Montag.

  • tuesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Dienstag.

  • wednesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Mittwoch.

  • thursday_hoursnumber (float)

    Gewünschte Arbeitszeit am Donnerstag.

  • friday_hoursnumber (float)

    Gewünschte Arbeitszeit am Freitag.

  • saturday_hoursnumber (float)

    Gewünschte Arbeitszeit am Samstag.

  • sunday_hoursnumber (float)

    Gewünschte Arbeitszeit am Sonntag.

  • week_total_hoursnumber (float)

    Summe der angefragten Wochentagsstunden, gespeichert für Listen und die Regel zur automatischen Übernahme.

  • previous_week_total_hoursnumber (float)

    Wochensumme, die der Vertrag für den angefragten Monat zum Zeitpunkt der Anfrage hatte.

  • statusstring

    Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

  • reasonstring

    Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

  • decided_by_userUser14

    Benutzer, der über den Antrag entschieden hat.

    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.

  • decided_atstring (date-time)

    Zeitpunkt, zu dem über den Antrag entschieden wurde.

  • decision_commentstring

    Kommentar zur Entscheidung.

  • vacation_days_modestring

    Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

  • year_vacation_daysnumber (float)

    Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

  • auto_appliedboolean

    Wahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung).

  • 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/employment_contract_change_request \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "decision_comment": "Text",
    "start": "2026-10-15T09:30:00+02:00",
    "monday_hours": 1.5,
    "tuesday_hours": 1.5,
    "wednesday_hours": 1.5,
    "thursday_hours": 1.5
  }
}
'
Antwort 200 application/json
{
  "requested_by_name": "Beispiel",
  "id": 42,
  "decision_comment": "Text",
  "contract": {
    "id": 42,
    "description": "Text",
    "staged_absence_approval": true,
    "token": "string",
    "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"
    },
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "reserved_hours_preparation": 1.5,
    "reserved_hours_follow_up": 1.5,
    "reserved_hours_travel": 1.5
  },
  "requested_by_user": {
    "id": 42,
    "name": "Beispiel",
    "username": "lena.hartmann@example.org",
    "email": "lena.hartmann@example.org",
    "profile_picture_url": "https://vynst.de",
    "positioningeneral": "string",
    "crm_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"
    },
    "archived": true,
    "require2fa": true,
    "search_string": "string"
  },
  "requested_by_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"
  },
  "start": "2026-10-15T09:30:00+02:00",
  "monday_hours": 1.5,
  "tuesday_hours": 1.5,
  "wednesday_hours": 1.5
}

Diese Methode liefert einen einzelnen EmploymentContractChangeRequest mit der angegebenen ID

GET/api/time/employment_contract_change_request/{id}

Pfad-Parameter

idPflichtstring

Antworten

200Liefert ein einzelnes EmploymentContractChangeRequest-Objekt.EmploymentContractChangeRequest3

Felder anzeigen (25)
  • requested_by_namestring
  • idinteger

    Primärschlüssel der Vertragsänderungsanfrage. Interne ID.

  • contractEmploymentContract5

    Vertrag, für den die Änderung gilt.

    Felder anzeigen (43)
    • staged_absence_approvalboolean

      null übernimmt zuerst die Gruppen- und dann die Organisationsrichtlinie; bestehende Installationen bleiben aus.

    • idinteger

      Primärschlüssel des Arbeitsvertrags. Interne ID.

    • tokenstring

      Öffentlicher Token des Vertrags. Anstelle der ID verwendet.

    • userUser14

      Benutzer des Mitarbeiters.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche.

    • reserved_hours_preparationnumber (float)

      L03: wöchentliche Stunden, die für Vorbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_follow_upnumber (float)

      L03: wöchentliche Stunden, die für Nachbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_travelnumber (float)

      L03: wöchentliche Stunden, die für Fahrt reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_flexiblenumber (float)

      L03: wöchentliche Stunden, die für freie Einteilung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • week_full_time_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche bei einem Vollzeitvertrag.

    • 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.

    • startstring (date-time)

      Startdatum des Vertrags.

    • endstring (date-time)

      Enddatum des Vertrags.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, Standard), FIXED_TERM oder EXTENDED (FIXED_TERM_STATUS_*).

    • fixed_term_endstring (date-time)

      Befristet bis (erster Zeitraum).

    • fixed_term_extension_endstring (date-time)

      Befristet bis nach Verlängerung.

    • probation_endstring (date-time)

      Probezeit bis; wird aus den probationMonths der Vorlage gefüllt, wenn ein Vertrag ohne diese Angabe angelegt wird.

    • numberstring

      Vertragsnummer.

    • descriptionstring

      Beschreibung des Vertrags.

    • archivedboolean

      Der Vertrag ist archiviert.

    • allow_app_time_trackingboolean

      Der Mitarbeitende darf Zeiten in der App erfassen.

    • allow_scanner_time_trackingboolean

      Der Mitarbeitende darf Zeiten mit dem Scanner erfassen.

    • allow_app_non_work_time_managementboolean

      Der Mitarbeitende darf Abwesenheiten in der App verwalten.

    • force_no_auto_breakboolean

      Für diesen Vertrag werden keine automatischen Pausen hinzugefügt.

    • work_time_modestring

      Wie die Sollarbeitszeit definiert ist - null verhält sich wie WEEKDAY_HOURS, damit bestehende Verträge ihr bisheriges Verhalten unverändert beibehalten.

    • holiday_credit_modestring

      Feiertagsguthaben für WEEK_TOTAL-Verträge - null verhält sich wie WEEKDAY_TARGET (bisheriges Verhalten, nur bei WEEKDAY_HOURS-Verträgen sinnvoll).

    • holiday_credit_fixed_secondsinteger

      Fester Feiertagsguthaben in Sekunden.

    • planning_weekdays_bitmaskinteger

      ISO-Wochentagsbitmaske (Mo=1 ... So=64) der Tage, an denen dieser WEEK_TOTAL-Vertrag eingeplant werden bzw. Urlaub nehmen kann - null verhält sich wie Mo-Fr.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag vor seinem ersten Tag eingereicht werden muss ("Bearbeitungs- frist"). null greift zunächst auf die Vertragsgruppe und von dort auf die Einstellung der Installation zurück, damit ein bestehender Vertrag genau wie bisher funktioniert.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Gruppe (die wiederum die Organisation übernimmt).

    • search_stringstring

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

  • requested_by_userUser14

    Benutzer, der die Änderung beantragt hat.

    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.

  • requested_by_personCRMPerson10

    Person, die die Änderung angefragt hat.

    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
  • startstring (date-time)

    Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

  • monday_hoursnumber (float)

    Gewünschte Arbeitszeit am Montag.

  • tuesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Dienstag.

  • wednesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Mittwoch.

  • thursday_hoursnumber (float)

    Gewünschte Arbeitszeit am Donnerstag.

  • friday_hoursnumber (float)

    Gewünschte Arbeitszeit am Freitag.

  • saturday_hoursnumber (float)

    Gewünschte Arbeitszeit am Samstag.

  • sunday_hoursnumber (float)

    Gewünschte Arbeitszeit am Sonntag.

  • week_total_hoursnumber (float)

    Summe der angefragten Wochentagsstunden, gespeichert für Listen und die Regel zur automatischen Übernahme.

  • previous_week_total_hoursnumber (float)

    Wochensumme, die der Vertrag für den angefragten Monat zum Zeitpunkt der Anfrage hatte.

  • statusstring

    Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

  • reasonstring

    Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

  • decided_by_userUser14

    Benutzer, der über den Antrag entschieden hat.

    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.

  • decided_atstring (date-time)

    Zeitpunkt, zu dem über den Antrag entschieden wurde.

  • decision_commentstring

    Kommentar zur Entscheidung.

  • vacation_days_modestring

    Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

  • year_vacation_daysnumber (float)

    Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

  • auto_appliedboolean

    Wahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung).

  • 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/employment_contract_change_request/42 \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
{
  "requested_by_name": "Beispiel",
  "id": 42,
  "decision_comment": "Text",
  "contract": {
    "id": 42,
    "description": "Text",
    "staged_absence_approval": true,
    "token": "string",
    "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"
    },
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "reserved_hours_preparation": 1.5,
    "reserved_hours_follow_up": 1.5,
    "reserved_hours_travel": 1.5
  },
  "requested_by_user": {
    "id": 42,
    "name": "Beispiel",
    "username": "lena.hartmann@example.org",
    "email": "lena.hartmann@example.org",
    "profile_picture_url": "https://vynst.de",
    "positioningeneral": "string",
    "crm_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"
    },
    "archived": true,
    "require2fa": true,
    "search_string": "string"
  },
  "requested_by_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"
  },
  "start": "2026-10-15T09:30:00+02:00",
  "monday_hours": 1.5,
  "tuesday_hours": 1.5,
  "wednesday_hours": 1.5
}

Änderungsantrag (HR) entscheiden: Status APPROVED übernimmt ihn als datierte Vertragsänderung, DECLINED schließt ihn ab

PUT/api/time/employment_contract_change_request/{id}

Pfad-Parameter

idPflichtstring

Request-Body application/json

  • dataEmploymentContractChangeRequest2
    Felder anzeigen (14)
    • contractEmploymentContract4

      Vertrag, für den die Änderung gilt.

    • startstring (date-time)

      Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

    • monday_hoursnumber (float)

      Gewünschte Arbeitszeit am Montag.

    • tuesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Dienstag.

    • wednesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Mittwoch.

    • thursday_hoursnumber (float)

      Gewünschte Arbeitszeit am Donnerstag.

    • friday_hoursnumber (float)

      Gewünschte Arbeitszeit am Freitag.

    • saturday_hoursnumber (float)

      Gewünschte Arbeitszeit am Samstag.

    • sunday_hoursnumber (float)

      Gewünschte Arbeitszeit am Sonntag.

    • statusstring

      Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

    • reasonstring

      Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

    • decision_commentstring

      Kommentar zur Entscheidung.

    • vacation_days_modestring

      Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

    • year_vacation_daysnumber (float)

      Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

Antworten

200EmploymentContractChangeRequest entscheidenEmploymentContractChangeRequest3

Felder anzeigen (25)
  • requested_by_namestring
  • idinteger

    Primärschlüssel der Vertragsänderungsanfrage. Interne ID.

  • contractEmploymentContract5

    Vertrag, für den die Änderung gilt.

    Felder anzeigen (43)
    • staged_absence_approvalboolean

      null übernimmt zuerst die Gruppen- und dann die Organisationsrichtlinie; bestehende Installationen bleiben aus.

    • idinteger

      Primärschlüssel des Arbeitsvertrags. Interne ID.

    • tokenstring

      Öffentlicher Token des Vertrags. Anstelle der ID verwendet.

    • userUser14

      Benutzer des Mitarbeiters.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche.

    • reserved_hours_preparationnumber (float)

      L03: wöchentliche Stunden, die für Vorbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_follow_upnumber (float)

      L03: wöchentliche Stunden, die für Nachbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_travelnumber (float)

      L03: wöchentliche Stunden, die für Fahrt reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_flexiblenumber (float)

      L03: wöchentliche Stunden, die für freie Einteilung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • week_full_time_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche bei einem Vollzeitvertrag.

    • 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.

    • startstring (date-time)

      Startdatum des Vertrags.

    • endstring (date-time)

      Enddatum des Vertrags.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, Standard), FIXED_TERM oder EXTENDED (FIXED_TERM_STATUS_*).

    • fixed_term_endstring (date-time)

      Befristet bis (erster Zeitraum).

    • fixed_term_extension_endstring (date-time)

      Befristet bis nach Verlängerung.

    • probation_endstring (date-time)

      Probezeit bis; wird aus den probationMonths der Vorlage gefüllt, wenn ein Vertrag ohne diese Angabe angelegt wird.

    • numberstring

      Vertragsnummer.

    • descriptionstring

      Beschreibung des Vertrags.

    • archivedboolean

      Der Vertrag ist archiviert.

    • allow_app_time_trackingboolean

      Der Mitarbeitende darf Zeiten in der App erfassen.

    • allow_scanner_time_trackingboolean

      Der Mitarbeitende darf Zeiten mit dem Scanner erfassen.

    • allow_app_non_work_time_managementboolean

      Der Mitarbeitende darf Abwesenheiten in der App verwalten.

    • force_no_auto_breakboolean

      Für diesen Vertrag werden keine automatischen Pausen hinzugefügt.

    • work_time_modestring

      Wie die Sollarbeitszeit definiert ist - null verhält sich wie WEEKDAY_HOURS, damit bestehende Verträge ihr bisheriges Verhalten unverändert beibehalten.

    • holiday_credit_modestring

      Feiertagsguthaben für WEEK_TOTAL-Verträge - null verhält sich wie WEEKDAY_TARGET (bisheriges Verhalten, nur bei WEEKDAY_HOURS-Verträgen sinnvoll).

    • holiday_credit_fixed_secondsinteger

      Fester Feiertagsguthaben in Sekunden.

    • planning_weekdays_bitmaskinteger

      ISO-Wochentagsbitmaske (Mo=1 ... So=64) der Tage, an denen dieser WEEK_TOTAL-Vertrag eingeplant werden bzw. Urlaub nehmen kann - null verhält sich wie Mo-Fr.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag vor seinem ersten Tag eingereicht werden muss ("Bearbeitungs- frist"). null greift zunächst auf die Vertragsgruppe und von dort auf die Einstellung der Installation zurück, damit ein bestehender Vertrag genau wie bisher funktioniert.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Gruppe (die wiederum die Organisation übernimmt).

    • search_stringstring

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

  • requested_by_userUser14

    Benutzer, der die Änderung beantragt hat.

    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.

  • requested_by_personCRMPerson10

    Person, die die Änderung angefragt hat.

    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
  • startstring (date-time)

    Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

  • monday_hoursnumber (float)

    Gewünschte Arbeitszeit am Montag.

  • tuesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Dienstag.

  • wednesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Mittwoch.

  • thursday_hoursnumber (float)

    Gewünschte Arbeitszeit am Donnerstag.

  • friday_hoursnumber (float)

    Gewünschte Arbeitszeit am Freitag.

  • saturday_hoursnumber (float)

    Gewünschte Arbeitszeit am Samstag.

  • sunday_hoursnumber (float)

    Gewünschte Arbeitszeit am Sonntag.

  • week_total_hoursnumber (float)

    Summe der angefragten Wochentagsstunden, gespeichert für Listen und die Regel zur automatischen Übernahme.

  • previous_week_total_hoursnumber (float)

    Wochensumme, die der Vertrag für den angefragten Monat zum Zeitpunkt der Anfrage hatte.

  • statusstring

    Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

  • reasonstring

    Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

  • decided_by_userUser14

    Benutzer, der über den Antrag entschieden hat.

    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.

  • decided_atstring (date-time)

    Zeitpunkt, zu dem über den Antrag entschieden wurde.

  • decision_commentstring

    Kommentar zur Entscheidung.

  • vacation_days_modestring

    Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

  • year_vacation_daysnumber (float)

    Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

  • auto_appliedboolean

    Wahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung).

  • 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/employment_contract_change_request/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "decision_comment": "Text",
    "start": "2026-10-15T09:30:00+02:00",
    "monday_hours": 1.5,
    "tuesday_hours": 1.5,
    "wednesday_hours": 1.5,
    "thursday_hours": 1.5
  }
}
'
Antwort 200 application/json
{
  "requested_by_name": "Beispiel",
  "id": 42,
  "decision_comment": "Text",
  "contract": {
    "id": 42,
    "description": "Text",
    "staged_absence_approval": true,
    "token": "string",
    "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"
    },
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "reserved_hours_preparation": 1.5,
    "reserved_hours_follow_up": 1.5,
    "reserved_hours_travel": 1.5
  },
  "requested_by_user": {
    "id": 42,
    "name": "Beispiel",
    "username": "lena.hartmann@example.org",
    "email": "lena.hartmann@example.org",
    "profile_picture_url": "https://vynst.de",
    "positioningeneral": "string",
    "crm_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"
    },
    "archived": true,
    "require2fa": true,
    "search_string": "string"
  },
  "requested_by_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"
  },
  "start": "2026-10-15T09:30:00+02:00",
  "monday_hours": 1.5,
  "tuesday_hours": 1.5,
  "wednesday_hours": 1.5
}

Änderungsantrag (HR) entscheiden: Status APPROVED übernimmt ihn als datierte Vertragsänderung, DECLINED schließt ihn ab

PATCH/api/time/employment_contract_change_request/{id}

Pfad-Parameter

idPflichtstring

Request-Body application/json

  • dataEmploymentContractChangeRequest2
    Felder anzeigen (14)
    • contractEmploymentContract4

      Vertrag, für den die Änderung gilt.

    • startstring (date-time)

      Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

    • monday_hoursnumber (float)

      Gewünschte Arbeitszeit am Montag.

    • tuesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Dienstag.

    • wednesday_hoursnumber (float)

      Gewünschte Arbeitszeit am Mittwoch.

    • thursday_hoursnumber (float)

      Gewünschte Arbeitszeit am Donnerstag.

    • friday_hoursnumber (float)

      Gewünschte Arbeitszeit am Freitag.

    • saturday_hoursnumber (float)

      Gewünschte Arbeitszeit am Samstag.

    • sunday_hoursnumber (float)

      Gewünschte Arbeitszeit am Sonntag.

    • statusstring

      Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

    • reasonstring

      Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

    • decision_commentstring

      Kommentar zur Entscheidung.

    • vacation_days_modestring

      Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

    • year_vacation_daysnumber (float)

      Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

Antworten

200EmploymentContractChangeRequest entscheidenEmploymentContractChangeRequest3

Felder anzeigen (25)
  • requested_by_namestring
  • idinteger

    Primärschlüssel der Vertragsänderungsanfrage. Interne ID.

  • contractEmploymentContract5

    Vertrag, für den die Änderung gilt.

    Felder anzeigen (43)
    • staged_absence_approvalboolean

      null übernimmt zuerst die Gruppen- und dann die Organisationsrichtlinie; bestehende Installationen bleiben aus.

    • idinteger

      Primärschlüssel des Arbeitsvertrags. Interne ID.

    • tokenstring

      Öffentlicher Token des Vertrags. Anstelle der ID verwendet.

    • userUser14

      Benutzer des Mitarbeiters.

    • week_total_hoursnumber (float)

      Gesamte Arbeitsstunden pro Woche.

    • week_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche.

    • reserved_hours_preparationnumber (float)

      L03: wöchentliche Stunden, die für Vorbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_follow_upnumber (float)

      L03: wöchentliche Stunden, die für Nachbereitung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_travelnumber (float)

      L03: wöchentliche Stunden, die für Fahrt reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • reserved_hours_flexiblenumber (float)

      L03: wöchentliche Stunden, die für freie Einteilung reserviert sind - Teil der Vertragsstunden, aber nicht planbar im Schichtplan. null = keine.

    • week_full_time_total_daysnumber (float)

      Gesamte Arbeitstage pro Woche bei einem Vollzeitvertrag.

    • 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.

    • startstring (date-time)

      Startdatum des Vertrags.

    • endstring (date-time)

      Enddatum des Vertrags.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, Standard), FIXED_TERM oder EXTENDED (FIXED_TERM_STATUS_*).

    • fixed_term_endstring (date-time)

      Befristet bis (erster Zeitraum).

    • fixed_term_extension_endstring (date-time)

      Befristet bis nach Verlängerung.

    • probation_endstring (date-time)

      Probezeit bis; wird aus den probationMonths der Vorlage gefüllt, wenn ein Vertrag ohne diese Angabe angelegt wird.

    • numberstring

      Vertragsnummer.

    • descriptionstring

      Beschreibung des Vertrags.

    • archivedboolean

      Der Vertrag ist archiviert.

    • allow_app_time_trackingboolean

      Der Mitarbeitende darf Zeiten in der App erfassen.

    • allow_scanner_time_trackingboolean

      Der Mitarbeitende darf Zeiten mit dem Scanner erfassen.

    • allow_app_non_work_time_managementboolean

      Der Mitarbeitende darf Abwesenheiten in der App verwalten.

    • force_no_auto_breakboolean

      Für diesen Vertrag werden keine automatischen Pausen hinzugefügt.

    • work_time_modestring

      Wie die Sollarbeitszeit definiert ist - null verhält sich wie WEEKDAY_HOURS, damit bestehende Verträge ihr bisheriges Verhalten unverändert beibehalten.

    • holiday_credit_modestring

      Feiertagsguthaben für WEEK_TOTAL-Verträge - null verhält sich wie WEEKDAY_TARGET (bisheriges Verhalten, nur bei WEEKDAY_HOURS-Verträgen sinnvoll).

    • holiday_credit_fixed_secondsinteger

      Fester Feiertagsguthaben in Sekunden.

    • planning_weekdays_bitmaskinteger

      ISO-Wochentagsbitmaske (Mo=1 ... So=64) der Tage, an denen dieser WEEK_TOTAL-Vertrag eingeplant werden bzw. Urlaub nehmen kann - null verhält sich wie Mo-Fr.

    • request_lead_time_daysinteger

      Tage, die ein Abwesenheitsantrag vor seinem ersten Tag eingereicht werden muss ("Bearbeitungs- frist"). null greift zunächst auf die Vertragsgruppe und von dort auf die Einstellung der Installation zurück, damit ein bestehender Vertrag genau wie bisher funktioniert.

    • shift_booking_syncboolean

      L35: Schichten als Verfügbarkeiten / Termine im Buchungsbereich; null übernimmt die Gruppe (die wiederum die Organisation übernimmt).

    • search_stringstring

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

  • requested_by_userUser14

    Benutzer, der die Änderung beantragt hat.

    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.

  • requested_by_personCRMPerson10

    Person, die die Änderung angefragt hat.

    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
  • startstring (date-time)

    Erster Tag, an dem die neue Verteilung gilt; immer ein Monatsanfang nach der Änderungsfrist.

  • monday_hoursnumber (float)

    Gewünschte Arbeitszeit am Montag.

  • tuesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Dienstag.

  • wednesday_hoursnumber (float)

    Gewünschte Arbeitszeit am Mittwoch.

  • thursday_hoursnumber (float)

    Gewünschte Arbeitszeit am Donnerstag.

  • friday_hoursnumber (float)

    Gewünschte Arbeitszeit am Freitag.

  • saturday_hoursnumber (float)

    Gewünschte Arbeitszeit am Samstag.

  • sunday_hoursnumber (float)

    Gewünschte Arbeitszeit am Sonntag.

  • week_total_hoursnumber (float)

    Summe der angefragten Wochentagsstunden, gespeichert für Listen und die Regel zur automatischen Übernahme.

  • previous_week_total_hoursnumber (float)

    Wochensumme, die der Vertrag für den angefragten Monat zum Zeitpunkt der Anfrage hatte.

  • statusstring

    Status der Anfrage, zum Beispiel offen, genehmigt oder abgelehnt.

  • reasonstring

    Warum der Lead die Änderung beantragt; wird der Personalabteilung angezeigt.

  • decided_by_userUser14

    Benutzer, der über den Antrag entschieden hat.

    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.

  • decided_atstring (date-time)

    Zeitpunkt, zu dem über den Antrag entschieden wurde.

  • decision_commentstring

    Kommentar zur Entscheidung.

  • vacation_days_modestring

    Entscheidung der Personalabteilung über den Jahresurlaubsanspruch bei der Genehmigung: null lässt den Anspruch unverändert, PROPORTIONAL berechnet ihn aus den neuen Arbeitstagen neu, MANUAL setzt yearVacationDays. Verwendet die Werte EmploymentContractModifier::VACATION_DAYS_MODE_*.

  • year_vacation_daysnumber (float)

    Der neue jährliche Urlaubsanspruch, den die Personalabteilung mit vacationDaysMode MANUAL setzt.

  • auto_appliedboolean

    Wahr, wenn die Bestätigung ohne HR-Entscheidung erfolgte (unveränderte Wochensumme, Installationseinstellung).

  • 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/employment_contract_change_request/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "decision_comment": "Text",
    "start": "2026-10-15T09:30:00+02:00",
    "monday_hours": 1.5,
    "tuesday_hours": 1.5,
    "wednesday_hours": 1.5,
    "thursday_hours": 1.5
  }
}
'
Antwort 200 application/json
{
  "requested_by_name": "Beispiel",
  "id": 42,
  "decision_comment": "Text",
  "contract": {
    "id": 42,
    "description": "Text",
    "staged_absence_approval": true,
    "token": "string",
    "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"
    },
    "week_total_hours": 1.5,
    "week_total_days": 1.5,
    "reserved_hours_preparation": 1.5,
    "reserved_hours_follow_up": 1.5,
    "reserved_hours_travel": 1.5
  },
  "requested_by_user": {
    "id": 42,
    "name": "Beispiel",
    "username": "lena.hartmann@example.org",
    "email": "lena.hartmann@example.org",
    "profile_picture_url": "https://vynst.de",
    "positioningeneral": "string",
    "crm_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"
    },
    "archived": true,
    "require2fa": true,
    "search_string": "string"
  },
  "requested_by_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"
  },
  "start": "2026-10-15T09:30:00+02:00",
  "monday_hours": 1.5,
  "tuesday_hours": 1.5,
  "wednesday_hours": 1.5
}