Skip to content
Developer

NonWorkTimeBlockingPeriod

Staff5 EndpointsTimeTracking / NonWorkTimeBlockingPeriod

This method will get all NonWorkTimeBlockingPeriod Objects

GET/api/time/non_work_time_blocking_period

Query parameters

idinteger
deletedbooleanThis property is used to mark an entity as deleted / archived | Default value: false
namestring
modestring
scopestring
maxDaysPerYearstringDays per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.
quotaScopestringWhich days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.
requiresConsultationbooleanDays this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).
cancellationQuotaDaysstringU21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.
cancellationRequiresWrittenApprovalbooleanU21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).
startstringFirst blocked day (inclusive).
endstringLast blocked day (inclusive) - a one day block has start = end.
employmentContractGroupstring
employmentOrganizationstringAll three references empty means the period applies to everyone.
contractstring
searchStringstringtext to search for in the list
orderFieldNamestringname of the order field
orderFieldSortstringsorting modeAllowed: DESCASC
pageintegerpage of the list
pageSizeintegernumber of entries for each page
withMaxPageNumberstringreturns the number of pages available as a header if this is set

Responses

200Returns a list of NonWorkTimeBlockingPeriod objectsarray<NonWorkTimeBlockingPeriod>

Show fields (19)
  • levelinteger

    How narrow the period is. The narrowest level with a matching period decides, so a single contract can carry an exception without touching the group or organization rule it sits under.

  • idinteger

    Primary key of the blocking period. Internal ID.

  • startstring (date-time)

    First blocked day (inclusive).

  • endstring (date-time)

    Last blocked day (inclusive) - a one day block has start = end.

  • modestring

    Mode of the blocking period, for example block or warn.

  • scopestring

    Scope of the blocking period, for example group or contract.

  • max_days_per_yearinteger

    Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

  • quota_scopestring

    Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

  • requires_consultationboolean

    Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

  • cancellation_quota_daysinteger

    U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

  • cancellation_requires_written_approvalboolean

    U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

  • employment_organizationEmploymentOrganization

    All three references empty means the period applies to everyone.

    Show fields (12)
    • staged_absence_approvalboolean

      null inherits the organization policy (contracts); existing installations stay off.

    • idinteger

      Primary key of the employment organization. Internal ID.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar (Bundesland) of this organisation; groups may override it.

    • organization_unitOrganizationUnit4

      L01: the node of the organisation tree this organisation hangs on (Einrichtung, Bereich, Geschäftsstelle ...). Leaders of that node and of the nodes above lead this organisation as well.

    • shift_booking_syncboolean

      L35: published shifts of this organisation's people appear as availabilities in the event/booking area and a shift may be turned into an appointment. null = off.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • include_in_auto_exportboolean

      Whether the organization is included in the automatic export.

    • search_stringstring

      Text that the entity can be searched by.

    • namestring

      Name of the entity.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

  • employment_contract_groupEmploymentContractGroup

    Contract group the blocking period applies to.

    Show fields (25)
    • staged_absence_approvalboolean

      null inherits the organization; false explicitly disables staged approval.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the organisation, false switches it off for this group.

    • idinteger

      Primary key of the contract group. Internal ID.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Working days per week.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • request_lead_time_daysinteger

      Days an absence request of this group has to be handed in ahead of its first day. null falls back to the installation wide setting - an existing group therefore behaves exactly as before.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar of this group when it differs from the organisation's (apprentices attending school in another Bundesland). null = the organisation's.

    • search_stringstring

      Text that the entity can be searched by.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

  • contractEmploymentContract

    Contract the blocking period applies to.

    Show fields (43)
    • staged_absence_approvalboolean

      null inherits group then organization policy; existing installations stay off.

    • idinteger

      Primary key of the employment contract. Internal ID.

    • tokenstring

      Public token of the contract. Used instead of the ID.

    • userUser14

      Login user of the employee.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Total working days per week.

    • reserved_hours_preparationnumber (float)

      L03: weekly hours reserved for Vorbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_follow_upnumber (float)

      L03: weekly hours reserved for Nachbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_travelnumber (float)

      L03: weekly hours reserved for Fahrt - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_flexiblenumber (float)

      L03: weekly hours reserved for freie Einteilung - part of the contract hours but not plannable in the shift plan. null = none.

    • week_full_time_total_daysnumber (float)

      Total working days per week for a full-time contract.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • startstring (date-time)

      Start date of the contract.

    • endstring (date-time)

      End date of the contract.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, default), FIXED_TERM or 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; filled from the template's probationMonths when a contract is created without it.

    • numberstring

      Contract number.

    • descriptionstring

      Description of the contract.

    • archivedboolean

      The contract is archived.

    • allow_app_time_trackingboolean

      The employee may track time in the app.

    • allow_scanner_time_trackingboolean

      The employee may track time with the scanner.

    • allow_app_non_work_time_managementboolean

      The employee may manage absences in the app.

    • force_no_auto_breakboolean

      Automatic breaks are not added for this contract.

    • work_time_modestring

      How the target working time is defined - null behaves as WEEKDAY_HOURS so existing contracts keep their previous behaviour unchanged.

    • holiday_credit_modestring

      Holiday credit for WEEK_TOTAL contracts - null behaves as WEEKDAY_TARGET (previous behaviour, only meaningful for WEEKDAY_HOURS contracts).

    • holiday_credit_fixed_secondsinteger

      Fixed holiday credit in seconds.

    • planning_weekdays_bitmaskinteger

      ISO weekday bitmask (Mo=1 ... So=64) of the days this WEEK_TOTAL contract can be planned / takes vacation on - null behaves as Mo-Fr.

    • request_lead_time_daysinteger

      Days an absence request has to be handed in ahead of its first day ("Bearbeitungs- frist"). null falls back to the contract group and from there to the installation wide setting, so an existing contract keeps behaving exactly as before.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the group (which inherits the organisation).

    • search_stringstring

      Text that the entity can be searched by.

  • search_stringstring

    Text that the entity can be searched by.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

Request
curl --request GET \
  --url https://your-instance.iw-erp.de/api/time/non_work_time_blocking_period \
  --header 'x-iw-jwt-token: <TOKEN>'
Response 200 application/json
[
  {
    "id": 42,
    "name": "Beispiel",
    "level": 1,
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "mode": "string",
    "scope": "string",
    "max_days_per_year": 1,
    "quota_scope": "string",
    "requires_consultation": true
  }
]

Add a new NonWorkTimeBlockingPeriod

POST/api/time/non_work_time_blocking_period

Request body application/json

  • dataNonWorkTimeBlockingPeriod2
    Show fields (11)
    • startstring (date-time)

      First blocked day (inclusive).

    • endstring (date-time)

      Last blocked day (inclusive) - a one day block has start = end.

    • modestring

      Mode of the blocking period, for example block or warn.

    • scopestring

      Scope of the blocking period, for example group or contract.

    • max_days_per_yearinteger

      Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

    • quota_scopestring

      Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

    • requires_consultationboolean

      Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

    • cancellation_quota_daysinteger

      U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

    • cancellation_requires_written_approvalboolean

      U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

Responses

200Add a new NonWorkTimeBlockingPeriodNonWorkTimeBlockingPeriod3

Show fields (19)
  • levelinteger

    How narrow the period is. The narrowest level with a matching period decides, so a single contract can carry an exception without touching the group or organization rule it sits under.

  • idinteger

    Primary key of the blocking period. Internal ID.

  • startstring (date-time)

    First blocked day (inclusive).

  • endstring (date-time)

    Last blocked day (inclusive) - a one day block has start = end.

  • modestring

    Mode of the blocking period, for example block or warn.

  • scopestring

    Scope of the blocking period, for example group or contract.

  • max_days_per_yearinteger

    Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

  • quota_scopestring

    Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

  • requires_consultationboolean

    Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

  • cancellation_quota_daysinteger

    U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

  • cancellation_requires_written_approvalboolean

    U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

  • employment_organizationEmploymentOrganization2

    All three references empty means the period applies to everyone.

    Show fields (12)
    • staged_absence_approvalboolean

      null inherits the organization policy (contracts); existing installations stay off.

    • idinteger

      Primary key of the employment organization. Internal ID.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar (Bundesland) of this organisation; groups may override it.

    • organization_unitOrganizationUnit5

      L01: the node of the organisation tree this organisation hangs on (Einrichtung, Bereich, Geschäftsstelle ...). Leaders of that node and of the nodes above lead this organisation as well.

    • shift_booking_syncboolean

      L35: published shifts of this organisation's people appear as availabilities in the event/booking area and a shift may be turned into an appointment. null = off.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • include_in_auto_exportboolean

      Whether the organization is included in the automatic export.

    • search_stringstring

      Text that the entity can be searched by.

    • namestring

      Name of the entity.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

  • employment_contract_groupEmploymentContractGroup

    Contract group the blocking period applies to.

    Show fields (25)
    • staged_absence_approvalboolean

      null inherits the organization; false explicitly disables staged approval.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the organisation, false switches it off for this group.

    • idinteger

      Primary key of the contract group. Internal ID.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Working days per week.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • request_lead_time_daysinteger

      Days an absence request of this group has to be handed in ahead of its first day. null falls back to the installation wide setting - an existing group therefore behaves exactly as before.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar of this group when it differs from the organisation's (apprentices attending school in another Bundesland). null = the organisation's.

    • search_stringstring

      Text that the entity can be searched by.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

  • contractEmploymentContract2

    Contract the blocking period applies to.

    Show fields (43)
    • staged_absence_approvalboolean

      null inherits group then organization policy; existing installations stay off.

    • idinteger

      Primary key of the employment contract. Internal ID.

    • tokenstring

      Public token of the contract. Used instead of the ID.

    • userUser14

      Login user of the employee.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Total working days per week.

    • reserved_hours_preparationnumber (float)

      L03: weekly hours reserved for Vorbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_follow_upnumber (float)

      L03: weekly hours reserved for Nachbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_travelnumber (float)

      L03: weekly hours reserved for Fahrt - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_flexiblenumber (float)

      L03: weekly hours reserved for freie Einteilung - part of the contract hours but not plannable in the shift plan. null = none.

    • week_full_time_total_daysnumber (float)

      Total working days per week for a full-time contract.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • startstring (date-time)

      Start date of the contract.

    • endstring (date-time)

      End date of the contract.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, default), FIXED_TERM or 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; filled from the template's probationMonths when a contract is created without it.

    • numberstring

      Contract number.

    • descriptionstring

      Description of the contract.

    • archivedboolean

      The contract is archived.

    • allow_app_time_trackingboolean

      The employee may track time in the app.

    • allow_scanner_time_trackingboolean

      The employee may track time with the scanner.

    • allow_app_non_work_time_managementboolean

      The employee may manage absences in the app.

    • force_no_auto_breakboolean

      Automatic breaks are not added for this contract.

    • work_time_modestring

      How the target working time is defined - null behaves as WEEKDAY_HOURS so existing contracts keep their previous behaviour unchanged.

    • holiday_credit_modestring

      Holiday credit for WEEK_TOTAL contracts - null behaves as WEEKDAY_TARGET (previous behaviour, only meaningful for WEEKDAY_HOURS contracts).

    • holiday_credit_fixed_secondsinteger

      Fixed holiday credit in seconds.

    • planning_weekdays_bitmaskinteger

      ISO weekday bitmask (Mo=1 ... So=64) of the days this WEEK_TOTAL contract can be planned / takes vacation on - null behaves as Mo-Fr.

    • request_lead_time_daysinteger

      Days an absence request has to be handed in ahead of its first day ("Bearbeitungs- frist"). null falls back to the contract group and from there to the installation wide setting, so an existing contract keeps behaving exactly as before.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the group (which inherits the organisation).

    • search_stringstring

      Text that the entity can be searched by.

  • search_stringstring

    Text that the entity can be searched by.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

Request
curl --request POST \
  --url https://your-instance.iw-erp.de/api/time/non_work_time_blocking_period \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "mode": "string",
    "scope": "string",
    "max_days_per_year": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "level": 1,
  "start": "2026-10-15T09:30:00+02:00",
  "end": "2026-10-15T09:30:00+02:00",
  "mode": "string",
  "scope": "string",
  "max_days_per_year": 1,
  "quota_scope": "string",
  "requires_consultation": true
}

This method will get a single NonWorkTimeBlockingPeriod with the given id

GET/api/time/non_work_time_blocking_period/{id}

Path parameters

idrequiredstring

Responses

200Returns a single NonWorkTimeBlockingPeriodNonWorkTimeBlockingPeriod3

Show fields (19)
  • levelinteger

    How narrow the period is. The narrowest level with a matching period decides, so a single contract can carry an exception without touching the group or organization rule it sits under.

  • idinteger

    Primary key of the blocking period. Internal ID.

  • startstring (date-time)

    First blocked day (inclusive).

  • endstring (date-time)

    Last blocked day (inclusive) - a one day block has start = end.

  • modestring

    Mode of the blocking period, for example block or warn.

  • scopestring

    Scope of the blocking period, for example group or contract.

  • max_days_per_yearinteger

    Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

  • quota_scopestring

    Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

  • requires_consultationboolean

    Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

  • cancellation_quota_daysinteger

    U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

  • cancellation_requires_written_approvalboolean

    U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

  • employment_organizationEmploymentOrganization2

    All three references empty means the period applies to everyone.

    Show fields (12)
    • staged_absence_approvalboolean

      null inherits the organization policy (contracts); existing installations stay off.

    • idinteger

      Primary key of the employment organization. Internal ID.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar (Bundesland) of this organisation; groups may override it.

    • organization_unitOrganizationUnit5

      L01: the node of the organisation tree this organisation hangs on (Einrichtung, Bereich, Geschäftsstelle ...). Leaders of that node and of the nodes above lead this organisation as well.

    • shift_booking_syncboolean

      L35: published shifts of this organisation's people appear as availabilities in the event/booking area and a shift may be turned into an appointment. null = off.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • include_in_auto_exportboolean

      Whether the organization is included in the automatic export.

    • search_stringstring

      Text that the entity can be searched by.

    • namestring

      Name of the entity.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

  • employment_contract_groupEmploymentContractGroup

    Contract group the blocking period applies to.

    Show fields (25)
    • staged_absence_approvalboolean

      null inherits the organization; false explicitly disables staged approval.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the organisation, false switches it off for this group.

    • idinteger

      Primary key of the contract group. Internal ID.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Working days per week.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • request_lead_time_daysinteger

      Days an absence request of this group has to be handed in ahead of its first day. null falls back to the installation wide setting - an existing group therefore behaves exactly as before.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar of this group when it differs from the organisation's (apprentices attending school in another Bundesland). null = the organisation's.

    • search_stringstring

      Text that the entity can be searched by.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

  • contractEmploymentContract2

    Contract the blocking period applies to.

    Show fields (43)
    • staged_absence_approvalboolean

      null inherits group then organization policy; existing installations stay off.

    • idinteger

      Primary key of the employment contract. Internal ID.

    • tokenstring

      Public token of the contract. Used instead of the ID.

    • userUser14

      Login user of the employee.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Total working days per week.

    • reserved_hours_preparationnumber (float)

      L03: weekly hours reserved for Vorbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_follow_upnumber (float)

      L03: weekly hours reserved for Nachbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_travelnumber (float)

      L03: weekly hours reserved for Fahrt - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_flexiblenumber (float)

      L03: weekly hours reserved for freie Einteilung - part of the contract hours but not plannable in the shift plan. null = none.

    • week_full_time_total_daysnumber (float)

      Total working days per week for a full-time contract.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • startstring (date-time)

      Start date of the contract.

    • endstring (date-time)

      End date of the contract.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, default), FIXED_TERM or 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; filled from the template's probationMonths when a contract is created without it.

    • numberstring

      Contract number.

    • descriptionstring

      Description of the contract.

    • archivedboolean

      The contract is archived.

    • allow_app_time_trackingboolean

      The employee may track time in the app.

    • allow_scanner_time_trackingboolean

      The employee may track time with the scanner.

    • allow_app_non_work_time_managementboolean

      The employee may manage absences in the app.

    • force_no_auto_breakboolean

      Automatic breaks are not added for this contract.

    • work_time_modestring

      How the target working time is defined - null behaves as WEEKDAY_HOURS so existing contracts keep their previous behaviour unchanged.

    • holiday_credit_modestring

      Holiday credit for WEEK_TOTAL contracts - null behaves as WEEKDAY_TARGET (previous behaviour, only meaningful for WEEKDAY_HOURS contracts).

    • holiday_credit_fixed_secondsinteger

      Fixed holiday credit in seconds.

    • planning_weekdays_bitmaskinteger

      ISO weekday bitmask (Mo=1 ... So=64) of the days this WEEK_TOTAL contract can be planned / takes vacation on - null behaves as Mo-Fr.

    • request_lead_time_daysinteger

      Days an absence request has to be handed in ahead of its first day ("Bearbeitungs- frist"). null falls back to the contract group and from there to the installation wide setting, so an existing contract keeps behaving exactly as before.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the group (which inherits the organisation).

    • search_stringstring

      Text that the entity can be searched by.

  • search_stringstring

    Text that the entity can be searched by.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

Request
curl --request GET \
  --url https://your-instance.iw-erp.de/api/time/non_work_time_blocking_period/42 \
  --header 'x-iw-jwt-token: <TOKEN>'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "level": 1,
  "start": "2026-10-15T09:30:00+02:00",
  "end": "2026-10-15T09:30:00+02:00",
  "mode": "string",
  "scope": "string",
  "max_days_per_year": 1,
  "quota_scope": "string",
  "requires_consultation": true
}

Update a NonWorkTimeBlockingPeriod

PUT/api/time/non_work_time_blocking_period/{id}

Path parameters

idrequiredstring

Request body application/json

  • dataNonWorkTimeBlockingPeriod2
    Show fields (11)
    • startstring (date-time)

      First blocked day (inclusive).

    • endstring (date-time)

      Last blocked day (inclusive) - a one day block has start = end.

    • modestring

      Mode of the blocking period, for example block or warn.

    • scopestring

      Scope of the blocking period, for example group or contract.

    • max_days_per_yearinteger

      Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

    • quota_scopestring

      Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

    • requires_consultationboolean

      Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

    • cancellation_quota_daysinteger

      U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

    • cancellation_requires_written_approvalboolean

      U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

Responses

200Update a NonWorkTimeBlockingPeriodNonWorkTimeBlockingPeriod3

Show fields (19)
  • levelinteger

    How narrow the period is. The narrowest level with a matching period decides, so a single contract can carry an exception without touching the group or organization rule it sits under.

  • idinteger

    Primary key of the blocking period. Internal ID.

  • startstring (date-time)

    First blocked day (inclusive).

  • endstring (date-time)

    Last blocked day (inclusive) - a one day block has start = end.

  • modestring

    Mode of the blocking period, for example block or warn.

  • scopestring

    Scope of the blocking period, for example group or contract.

  • max_days_per_yearinteger

    Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

  • quota_scopestring

    Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

  • requires_consultationboolean

    Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

  • cancellation_quota_daysinteger

    U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

  • cancellation_requires_written_approvalboolean

    U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

  • employment_organizationEmploymentOrganization2

    All three references empty means the period applies to everyone.

    Show fields (12)
    • staged_absence_approvalboolean

      null inherits the organization policy (contracts); existing installations stay off.

    • idinteger

      Primary key of the employment organization. Internal ID.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar (Bundesland) of this organisation; groups may override it.

    • organization_unitOrganizationUnit5

      L01: the node of the organisation tree this organisation hangs on (Einrichtung, Bereich, Geschäftsstelle ...). Leaders of that node and of the nodes above lead this organisation as well.

    • shift_booking_syncboolean

      L35: published shifts of this organisation's people appear as availabilities in the event/booking area and a shift may be turned into an appointment. null = off.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • include_in_auto_exportboolean

      Whether the organization is included in the automatic export.

    • search_stringstring

      Text that the entity can be searched by.

    • namestring

      Name of the entity.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

  • employment_contract_groupEmploymentContractGroup

    Contract group the blocking period applies to.

    Show fields (25)
    • staged_absence_approvalboolean

      null inherits the organization; false explicitly disables staged approval.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the organisation, false switches it off for this group.

    • idinteger

      Primary key of the contract group. Internal ID.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Working days per week.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • request_lead_time_daysinteger

      Days an absence request of this group has to be handed in ahead of its first day. null falls back to the installation wide setting - an existing group therefore behaves exactly as before.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar of this group when it differs from the organisation's (apprentices attending school in another Bundesland). null = the organisation's.

    • search_stringstring

      Text that the entity can be searched by.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

  • contractEmploymentContract2

    Contract the blocking period applies to.

    Show fields (43)
    • staged_absence_approvalboolean

      null inherits group then organization policy; existing installations stay off.

    • idinteger

      Primary key of the employment contract. Internal ID.

    • tokenstring

      Public token of the contract. Used instead of the ID.

    • userUser14

      Login user of the employee.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Total working days per week.

    • reserved_hours_preparationnumber (float)

      L03: weekly hours reserved for Vorbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_follow_upnumber (float)

      L03: weekly hours reserved for Nachbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_travelnumber (float)

      L03: weekly hours reserved for Fahrt - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_flexiblenumber (float)

      L03: weekly hours reserved for freie Einteilung - part of the contract hours but not plannable in the shift plan. null = none.

    • week_full_time_total_daysnumber (float)

      Total working days per week for a full-time contract.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • startstring (date-time)

      Start date of the contract.

    • endstring (date-time)

      End date of the contract.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, default), FIXED_TERM or 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; filled from the template's probationMonths when a contract is created without it.

    • numberstring

      Contract number.

    • descriptionstring

      Description of the contract.

    • archivedboolean

      The contract is archived.

    • allow_app_time_trackingboolean

      The employee may track time in the app.

    • allow_scanner_time_trackingboolean

      The employee may track time with the scanner.

    • allow_app_non_work_time_managementboolean

      The employee may manage absences in the app.

    • force_no_auto_breakboolean

      Automatic breaks are not added for this contract.

    • work_time_modestring

      How the target working time is defined - null behaves as WEEKDAY_HOURS so existing contracts keep their previous behaviour unchanged.

    • holiday_credit_modestring

      Holiday credit for WEEK_TOTAL contracts - null behaves as WEEKDAY_TARGET (previous behaviour, only meaningful for WEEKDAY_HOURS contracts).

    • holiday_credit_fixed_secondsinteger

      Fixed holiday credit in seconds.

    • planning_weekdays_bitmaskinteger

      ISO weekday bitmask (Mo=1 ... So=64) of the days this WEEK_TOTAL contract can be planned / takes vacation on - null behaves as Mo-Fr.

    • request_lead_time_daysinteger

      Days an absence request has to be handed in ahead of its first day ("Bearbeitungs- frist"). null falls back to the contract group and from there to the installation wide setting, so an existing contract keeps behaving exactly as before.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the group (which inherits the organisation).

    • search_stringstring

      Text that the entity can be searched by.

  • search_stringstring

    Text that the entity can be searched by.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

Request
curl --request PUT \
  --url https://your-instance.iw-erp.de/api/time/non_work_time_blocking_period/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "mode": "string",
    "scope": "string",
    "max_days_per_year": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "level": 1,
  "start": "2026-10-15T09:30:00+02:00",
  "end": "2026-10-15T09:30:00+02:00",
  "mode": "string",
  "scope": "string",
  "max_days_per_year": 1,
  "quota_scope": "string",
  "requires_consultation": true
}

Update a NonWorkTimeBlockingPeriod

PATCH/api/time/non_work_time_blocking_period/{id}

Path parameters

idrequiredstring

Request body application/json

  • dataNonWorkTimeBlockingPeriod2
    Show fields (11)
    • startstring (date-time)

      First blocked day (inclusive).

    • endstring (date-time)

      Last blocked day (inclusive) - a one day block has start = end.

    • modestring

      Mode of the blocking period, for example block or warn.

    • scopestring

      Scope of the blocking period, for example group or contract.

    • max_days_per_yearinteger

      Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

    • quota_scopestring

      Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

    • requires_consultationboolean

      Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

    • cancellation_quota_daysinteger

      U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

    • cancellation_requires_written_approvalboolean

      U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

Responses

200Update a NonWorkTimeBlockingPeriodNonWorkTimeBlockingPeriod3

Show fields (19)
  • levelinteger

    How narrow the period is. The narrowest level with a matching period decides, so a single contract can carry an exception without touching the group or organization rule it sits under.

  • idinteger

    Primary key of the blocking period. Internal ID.

  • startstring (date-time)

    First blocked day (inclusive).

  • endstring (date-time)

    Last blocked day (inclusive) - a one day block has start = end.

  • modestring

    Mode of the blocking period, for example block or warn.

  • scopestring

    Scope of the blocking period, for example group or contract.

  • max_days_per_yearinteger

    Days per calendar year that may still be taken inside this period before it decides anything at all. null keeps the period absolute - the previous and still default behaviour. A value turns the period from a wall into an allowance: "at most seven days outside the school holidays" is one period over the whole year with a quota of seven, not seven separate rules.

  • quota_scopestring

    Which days inside the period count towards the quota. Only meaningful together with maxDaysPerYear.

  • requires_consultationboolean

    Days this period counts (e.g. outside school holidays) may only be requested after a consultation with the responsible team lead; the request has to name it (U14).

  • cancellation_quota_daysinteger

    U21: how many already approved absence days a person may withdraw again inside this period per year (e.g. two days of the summer closure). null = no limit.

  • cancellation_requires_written_approvalboolean

    U21: withdrawing approved days inside this period needs the written decision of the management step (comment mandatory).

  • employment_organizationEmploymentOrganization2

    All three references empty means the period applies to everyone.

    Show fields (12)
    • staged_absence_approvalboolean

      null inherits the organization policy (contracts); existing installations stay off.

    • idinteger

      Primary key of the employment organization. Internal ID.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar (Bundesland) of this organisation; groups may override it.

    • organization_unitOrganizationUnit5

      L01: the node of the organisation tree this organisation hangs on (Einrichtung, Bereich, Geschäftsstelle ...). Leaders of that node and of the nodes above lead this organisation as well.

    • shift_booking_syncboolean

      L35: published shifts of this organisation's people appear as availabilities in the event/booking area and a shift may be turned into an appointment. null = off.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • include_in_auto_exportboolean

      Whether the organization is included in the automatic export.

    • search_stringstring

      Text that the entity can be searched by.

    • namestring

      Name of the entity.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

  • employment_contract_groupEmploymentContractGroup

    Contract group the blocking period applies to.

    Show fields (25)
    • staged_absence_approvalboolean

      null inherits the organization; false explicitly disables staged approval.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the organisation, false switches it off for this group.

    • idinteger

      Primary key of the contract group. Internal ID.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Working days per week.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • allow_app_time_trackingboolean

      Whether time tracking in the app is allowed.

    • allow_scanner_time_trackingboolean

      Whether time tracking with a scanner is allowed.

    • allow_app_non_work_time_managementboolean

      Whether non-work time can be managed in the app.

    • request_lead_time_daysinteger

      Days an absence request of this group has to be handed in ahead of its first day. null falls back to the installation wide setting - an existing group therefore behaves exactly as before.

    • school_holiday_regionSchoolHolidayRegion

      U09: the school calendar of this group when it differs from the organisation's (apprentices attending school in another Bundesland). null = the organisation's.

    • search_stringstring

      Text that the entity can be searched by.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • namestring

      Name of the entity.

  • contractEmploymentContract2

    Contract the blocking period applies to.

    Show fields (43)
    • staged_absence_approvalboolean

      null inherits group then organization policy; existing installations stay off.

    • idinteger

      Primary key of the employment contract. Internal ID.

    • tokenstring

      Public token of the contract. Used instead of the ID.

    • userUser14

      Login user of the employee.

    • week_total_hoursnumber (float)

      Total working hours per week.

    • week_total_daysnumber (float)

      Total working days per week.

    • reserved_hours_preparationnumber (float)

      L03: weekly hours reserved for Vorbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_follow_upnumber (float)

      L03: weekly hours reserved for Nachbereitung - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_travelnumber (float)

      L03: weekly hours reserved for Fahrt - part of the contract hours but not plannable in the shift plan. null = none.

    • reserved_hours_flexiblenumber (float)

      L03: weekly hours reserved for freie Einteilung - part of the contract hours but not plannable in the shift plan. null = none.

    • week_full_time_total_daysnumber (float)

      Total working days per week for a full-time contract.

    • year_vacation_daysnumber (float)

      Vacation days per year.

    • month_vacation_daysnumber (float)

      Vacation days per month.

    • year_vacation_weeksnumber (float)

      Vacation weeks per year.

    • monday_hoursnumber (float)

      Working hours on Monday.

    • tuesday_hoursnumber (float)

      Working hours on Tuesday.

    • wednesday_hoursnumber (float)

      Working hours on Wednesday.

    • thursday_hoursnumber (float)

      Working hours on Thursday.

    • friday_hoursnumber (float)

      Working hours on Friday.

    • saturday_hoursnumber (float)

      Working hours on Saturday.

    • sunday_hoursnumber (float)

      Working hours on Sunday.

    • netto_hour_costnumber (float)

      Net cost per hour.

    • brutto_hour_costnumber (float)

      Gross cost per hour.

    • startstring (date-time)

      Start date of the contract.

    • endstring (date-time)

      End date of the contract.

    • fixed_term_statusstring

      Befristung: PERMANENT (unbefristet, default), FIXED_TERM or 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; filled from the template's probationMonths when a contract is created without it.

    • numberstring

      Contract number.

    • descriptionstring

      Description of the contract.

    • archivedboolean

      The contract is archived.

    • allow_app_time_trackingboolean

      The employee may track time in the app.

    • allow_scanner_time_trackingboolean

      The employee may track time with the scanner.

    • allow_app_non_work_time_managementboolean

      The employee may manage absences in the app.

    • force_no_auto_breakboolean

      Automatic breaks are not added for this contract.

    • work_time_modestring

      How the target working time is defined - null behaves as WEEKDAY_HOURS so existing contracts keep their previous behaviour unchanged.

    • holiday_credit_modestring

      Holiday credit for WEEK_TOTAL contracts - null behaves as WEEKDAY_TARGET (previous behaviour, only meaningful for WEEKDAY_HOURS contracts).

    • holiday_credit_fixed_secondsinteger

      Fixed holiday credit in seconds.

    • planning_weekdays_bitmaskinteger

      ISO weekday bitmask (Mo=1 ... So=64) of the days this WEEK_TOTAL contract can be planned / takes vacation on - null behaves as Mo-Fr.

    • request_lead_time_daysinteger

      Days an absence request has to be handed in ahead of its first day ("Bearbeitungs- frist"). null falls back to the contract group and from there to the installation wide setting, so an existing contract keeps behaving exactly as before.

    • shift_booking_syncboolean

      L35: shifts as availabilities / appointments in the booking area; null inherits the group (which inherits the organisation).

    • search_stringstring

      Text that the entity can be searched by.

  • search_stringstring

    Text that the entity can be searched by.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

Request
curl --request PATCH \
  --url https://your-instance.iw-erp.de/api/time/non_work_time_blocking_period/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "name": "Beispiel",
    "start": "2026-10-15T09:30:00+02:00",
    "end": "2026-10-15T09:30:00+02:00",
    "mode": "string",
    "scope": "string",
    "max_days_per_year": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "level": 1,
  "start": "2026-10-15T09:30:00+02:00",
  "end": "2026-10-15T09:30:00+02:00",
  "mode": "string",
  "scope": "string",
  "max_days_per_year": 1,
  "quota_scope": "string",
  "requires_consultation": true
}