> For the complete documentation index, see [llms.txt](https://docs.ilert.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ilert.com/developer-docs/rest-api/api-reference/support-hours.md).

# Support Hours

## List support hours.

> Returns a shallow list of support hours without exception details. Use the single resource endpoint to retrieve the complete support hour including all exceptions.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"SupportHourListItem":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"timezone":{"$ref":"#/components/schemas/TimeZone"},"supportDays":{"type":"object","description":"A single window per day, kept for existing clients. Lossy once coverage is not representable per day (several windows a day, or an arc across midnight): each day then reports the earliest part of its coverage, and an end at midnight is reported as 23:59. Use supportWindows for the complete picture. On input, sending it back exactly as it was read leaves the coverage unchanged, so a client that only knows supportDays can still rename a support hour or move it to another timezone. A supportDays that differs is applied when the current coverage fits one window per day, and rejected with 400 when it does not, because rebuilding the week from a lossy view would silently drop the coverage it cannot express -- change such coverage with supportWindows instead.","properties":{"MONDAY":{"$ref":"#/components/schemas/SupportDay"},"TUESDAY":{"$ref":"#/components/schemas/SupportDay"},"WEDNESDAY":{"$ref":"#/components/schemas/SupportDay"},"THURSDAY":{"$ref":"#/components/schemas/SupportDay"},"FRIDAY":{"$ref":"#/components/schemas/SupportDay"},"SATURDAY":{"$ref":"#/components/schemas/SupportDay"},"SUNDAY":{"$ref":"#/components/schemas/SupportDay"}}},"supportWindows":{"type":"array","nullable":true,"maxItems":84,"description":"The complete weekly coverage as arcs, each covering [from, to). An arc whose 'to' is at or before its 'from' wraps past Sunday midnight, so FRIDAY 17:00 to MONDAY 09:00 is one arc; 'from' equal to 'to' is the whole week. Responses list the arcs merged and in ascending order, and return null when supportDays already describes the coverage exactly. On input, when present, it is the coverage of the whole support hour: an empty array clears the weekly coverage, and overlapping or touching arcs are merged. supportDays may be sent alongside it only when it is the per-day view of these arcs; one describing different coverage is rejected with 400. Times are whole minutes (HH:mm); a seconds part is accepted only when it is zero.","items":{"$ref":"#/components/schemas/SupportWindow"}},"managedBy":{"$ref":"#/components/schemas/ManagedBy"},"currentStatus":{"type":"string","description":"Whether the support hour covers this moment. An include field: request it with include=currentStatus.","enum":["DURING","OUTSIDE"],"readOnly":true},"currentStatusUntil":{"type":"string","description":"When currentStatus next changes, as a local date-time in this support hour's timezone, e.g. 2026-09-18T17:00. Null when no change is in sight: coverage that never ends, no coverage at all, or a covered holiday reaching beyond the three weeks looked ahead. Returned together with currentStatus.","readOnly":true}}},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"SupportDay":{"required":["end","start"],"type":"object","properties":{"start":{"type":"string","format":"time"},"end":{"type":"string","format":"time"}}},"SupportWindow":{"required":["from","to"],"type":"object","properties":{"from":{"$ref":"#/components/schemas/TimeOfWeek"},"to":{"$ref":"#/components/schemas/TimeOfWeek"}}},"TimeOfWeek":{"required":["dayOfWeek","time"],"type":"object","properties":{"dayOfWeek":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]},"time":{"type":"string","format":"15:00"}}},"ManagedBy":{"type":"object","readOnly":true,"description":"Present when this entity is managed outside of the ilert web app, for example through Terraform, Pulumi or the API. Read-only.","properties":{"type":{"type":"string","enum":["API","TERRAFORM","PULUMI","ILERT"]},"source":{"type":"string","description":"Identifier of the system managing this entity."}}}}},"paths":{"/support-hours":{"get":{"tags":["Support Hours"],"summary":"List support hours.","description":"Returns a shallow list of support hours without exception details. Use the single resource endpoint to retrieve the complete support hour including all exceptions.","parameters":[{"name":"start-index","in":"query","description":"an integer specifying the starting point (beginning with 0) when paging through a list of entities","schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"the maximum number of results when paging through a list of support hours.","schema":{"maximum":50,"type":"integer","format":"int32","default":50}}],"responses":{"200":{"description":"list of support hours","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SupportHourListItem"}}}}}}}}}}
```

## POST /support-hours

> Create a new support hour.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"SupportHour":{"required":["name","timezone"],"type":"object","description":"Weekly support hour coverage. Every write of the coverage itself -- a support hour of its own, or an alert source's inline support hours, which carry no id -- must send supportDays or supportWindows: a body with neither is rejected with 400 rather than read as a request to clear the coverage. An alert source that references an existing support hour sends its id alone and needs neither field.","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"timezone":{"$ref":"#/components/schemas/TimeZone"},"supportDays":{"type":"object","description":"A single window per day, kept for existing clients. Lossy once coverage is not representable per day (several windows a day, or an arc across midnight): each day then reports the earliest part of its coverage, and an end at midnight is reported as 23:59. Use supportWindows for the complete picture. On input, sending it back exactly as it was read leaves the coverage unchanged, so a client that only knows supportDays can still rename a support hour or move it to another timezone. A supportDays that differs is applied when the current coverage fits one window per day, and rejected with 400 when it does not, because rebuilding the week from a lossy view would silently drop the coverage it cannot express -- change such coverage with supportWindows instead.","properties":{"MONDAY":{"$ref":"#/components/schemas/SupportDay"},"TUESDAY":{"$ref":"#/components/schemas/SupportDay"},"WEDNESDAY":{"$ref":"#/components/schemas/SupportDay"},"THURSDAY":{"$ref":"#/components/schemas/SupportDay"},"FRIDAY":{"$ref":"#/components/schemas/SupportDay"},"SATURDAY":{"$ref":"#/components/schemas/SupportDay"},"SUNDAY":{"$ref":"#/components/schemas/SupportDay"}}},"supportWindows":{"type":"array","nullable":true,"maxItems":84,"description":"The complete weekly coverage as arcs, each covering [from, to). An arc whose 'to' is at or before its 'from' wraps past Sunday midnight, so FRIDAY 17:00 to MONDAY 09:00 is one arc; 'from' equal to 'to' is the whole week. Responses list the arcs merged and in ascending order, and return null when supportDays already describes the coverage exactly. On input, when present, it is the coverage of the whole support hour: an empty array clears the weekly coverage, and overlapping or touching arcs are merged. supportDays may be sent alongside it only when it is the per-day view of these arcs; one describing different coverage is rejected with 400. Times are whole minutes (HH:mm); a seconds part is accepted only when it is zero. Only a support hour of its own accepts arcs: an alert source's inline supportHours is one window per day, and sending supportWindows there is rejected.","items":{"$ref":"#/components/schemas/SupportWindow"}},"exceptions":{"type":"array","items":{"$ref":"#/components/schemas/SupportHourException"}},"managedBy":{"$ref":"#/components/schemas/ManagedBy"},"currentStatus":{"type":"string","description":"Whether the support hour covers this moment. An include field: request it with include=currentStatus.","enum":["DURING","OUTSIDE"],"readOnly":true},"currentStatusUntil":{"type":"string","description":"When currentStatus next changes, as a local date-time in this support hour's timezone, e.g. 2026-09-18T17:00. Null when no change is in sight: coverage that never ends, no coverage at all, or a covered holiday reaching beyond the three weeks looked ahead. Returned together with currentStatus.","readOnly":true}}},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"SupportDay":{"required":["end","start"],"type":"object","properties":{"start":{"type":"string","format":"time"},"end":{"type":"string","format":"time"}}},"SupportWindow":{"required":["from","to"],"type":"object","properties":{"from":{"$ref":"#/components/schemas/TimeOfWeek"},"to":{"$ref":"#/components/schemas/TimeOfWeek"}}},"TimeOfWeek":{"required":["dayOfWeek","time"],"type":"object","properties":{"dayOfWeek":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]},"time":{"type":"string","format":"15:00"}}},"SupportHourException":{"type":"object","required":["name","start","end","supportStatus"],"properties":{"name":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"supportStatus":{"type":"string","enum":["DURING","OUTSIDE"]}}},"ManagedBy":{"type":"object","readOnly":true,"description":"Present when this entity is managed outside of the ilert web app, for example through Terraform, Pulumi or the API. Read-only.","properties":{"type":{"type":"string","enum":["API","TERRAFORM","PULUMI","ILERT"]},"source":{"type":"string","description":"Identifier of the system managing this entity."}}}}},"paths":{"/support-hours":{"post":{"tags":["Support Hours"],"summary":"Create a new support hour.","requestBody":{"description":"the support hour","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}},"required":true},"responses":{"201":{"description":"the response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}}},"400":{"description":"the request names neither supportDays nor supportWindows, carries a supportDays that describes different coverage than its supportWindows, or an arc that is incomplete, not on whole minutes, or one of more than 84","content":{}}}}}}}
```

## GET /support-hours/{id}

> Get the support hour with specified id.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"SupportHour":{"required":["name","timezone"],"type":"object","description":"Weekly support hour coverage. Every write of the coverage itself -- a support hour of its own, or an alert source's inline support hours, which carry no id -- must send supportDays or supportWindows: a body with neither is rejected with 400 rather than read as a request to clear the coverage. An alert source that references an existing support hour sends its id alone and needs neither field.","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"timezone":{"$ref":"#/components/schemas/TimeZone"},"supportDays":{"type":"object","description":"A single window per day, kept for existing clients. Lossy once coverage is not representable per day (several windows a day, or an arc across midnight): each day then reports the earliest part of its coverage, and an end at midnight is reported as 23:59. Use supportWindows for the complete picture. On input, sending it back exactly as it was read leaves the coverage unchanged, so a client that only knows supportDays can still rename a support hour or move it to another timezone. A supportDays that differs is applied when the current coverage fits one window per day, and rejected with 400 when it does not, because rebuilding the week from a lossy view would silently drop the coverage it cannot express -- change such coverage with supportWindows instead.","properties":{"MONDAY":{"$ref":"#/components/schemas/SupportDay"},"TUESDAY":{"$ref":"#/components/schemas/SupportDay"},"WEDNESDAY":{"$ref":"#/components/schemas/SupportDay"},"THURSDAY":{"$ref":"#/components/schemas/SupportDay"},"FRIDAY":{"$ref":"#/components/schemas/SupportDay"},"SATURDAY":{"$ref":"#/components/schemas/SupportDay"},"SUNDAY":{"$ref":"#/components/schemas/SupportDay"}}},"supportWindows":{"type":"array","nullable":true,"maxItems":84,"description":"The complete weekly coverage as arcs, each covering [from, to). An arc whose 'to' is at or before its 'from' wraps past Sunday midnight, so FRIDAY 17:00 to MONDAY 09:00 is one arc; 'from' equal to 'to' is the whole week. Responses list the arcs merged and in ascending order, and return null when supportDays already describes the coverage exactly. On input, when present, it is the coverage of the whole support hour: an empty array clears the weekly coverage, and overlapping or touching arcs are merged. supportDays may be sent alongside it only when it is the per-day view of these arcs; one describing different coverage is rejected with 400. Times are whole minutes (HH:mm); a seconds part is accepted only when it is zero. Only a support hour of its own accepts arcs: an alert source's inline supportHours is one window per day, and sending supportWindows there is rejected.","items":{"$ref":"#/components/schemas/SupportWindow"}},"exceptions":{"type":"array","items":{"$ref":"#/components/schemas/SupportHourException"}},"managedBy":{"$ref":"#/components/schemas/ManagedBy"},"currentStatus":{"type":"string","description":"Whether the support hour covers this moment. An include field: request it with include=currentStatus.","enum":["DURING","OUTSIDE"],"readOnly":true},"currentStatusUntil":{"type":"string","description":"When currentStatus next changes, as a local date-time in this support hour's timezone, e.g. 2026-09-18T17:00. Null when no change is in sight: coverage that never ends, no coverage at all, or a covered holiday reaching beyond the three weeks looked ahead. Returned together with currentStatus.","readOnly":true}}},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"SupportDay":{"required":["end","start"],"type":"object","properties":{"start":{"type":"string","format":"time"},"end":{"type":"string","format":"time"}}},"SupportWindow":{"required":["from","to"],"type":"object","properties":{"from":{"$ref":"#/components/schemas/TimeOfWeek"},"to":{"$ref":"#/components/schemas/TimeOfWeek"}}},"TimeOfWeek":{"required":["dayOfWeek","time"],"type":"object","properties":{"dayOfWeek":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]},"time":{"type":"string","format":"15:00"}}},"SupportHourException":{"type":"object","required":["name","start","end","supportStatus"],"properties":{"name":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"supportStatus":{"type":"string","enum":["DURING","OUTSIDE"]}}},"ManagedBy":{"type":"object","readOnly":true,"description":"Present when this entity is managed outside of the ilert web app, for example through Terraform, Pulumi or the API. Read-only.","properties":{"type":{"type":"string","enum":["API","TERRAFORM","PULUMI","ILERT"]},"source":{"type":"string","description":"Identifier of the system managing this entity."}}}}},"paths":{"/support-hours/{id}":{"get":{"tags":["Support Hours"],"summary":"Get the support hour with specified id.","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"responses":{"200":{"description":"the support hour object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}}}}}}}}
```

## PUT /support-hours/{id}

> Update an existing support hour.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"SupportHour":{"required":["name","timezone"],"type":"object","description":"Weekly support hour coverage. Every write of the coverage itself -- a support hour of its own, or an alert source's inline support hours, which carry no id -- must send supportDays or supportWindows: a body with neither is rejected with 400 rather than read as a request to clear the coverage. An alert source that references an existing support hour sends its id alone and needs neither field.","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"timezone":{"$ref":"#/components/schemas/TimeZone"},"supportDays":{"type":"object","description":"A single window per day, kept for existing clients. Lossy once coverage is not representable per day (several windows a day, or an arc across midnight): each day then reports the earliest part of its coverage, and an end at midnight is reported as 23:59. Use supportWindows for the complete picture. On input, sending it back exactly as it was read leaves the coverage unchanged, so a client that only knows supportDays can still rename a support hour or move it to another timezone. A supportDays that differs is applied when the current coverage fits one window per day, and rejected with 400 when it does not, because rebuilding the week from a lossy view would silently drop the coverage it cannot express -- change such coverage with supportWindows instead.","properties":{"MONDAY":{"$ref":"#/components/schemas/SupportDay"},"TUESDAY":{"$ref":"#/components/schemas/SupportDay"},"WEDNESDAY":{"$ref":"#/components/schemas/SupportDay"},"THURSDAY":{"$ref":"#/components/schemas/SupportDay"},"FRIDAY":{"$ref":"#/components/schemas/SupportDay"},"SATURDAY":{"$ref":"#/components/schemas/SupportDay"},"SUNDAY":{"$ref":"#/components/schemas/SupportDay"}}},"supportWindows":{"type":"array","nullable":true,"maxItems":84,"description":"The complete weekly coverage as arcs, each covering [from, to). An arc whose 'to' is at or before its 'from' wraps past Sunday midnight, so FRIDAY 17:00 to MONDAY 09:00 is one arc; 'from' equal to 'to' is the whole week. Responses list the arcs merged and in ascending order, and return null when supportDays already describes the coverage exactly. On input, when present, it is the coverage of the whole support hour: an empty array clears the weekly coverage, and overlapping or touching arcs are merged. supportDays may be sent alongside it only when it is the per-day view of these arcs; one describing different coverage is rejected with 400. Times are whole minutes (HH:mm); a seconds part is accepted only when it is zero. Only a support hour of its own accepts arcs: an alert source's inline supportHours is one window per day, and sending supportWindows there is rejected.","items":{"$ref":"#/components/schemas/SupportWindow"}},"exceptions":{"type":"array","items":{"$ref":"#/components/schemas/SupportHourException"}},"managedBy":{"$ref":"#/components/schemas/ManagedBy"},"currentStatus":{"type":"string","description":"Whether the support hour covers this moment. An include field: request it with include=currentStatus.","enum":["DURING","OUTSIDE"],"readOnly":true},"currentStatusUntil":{"type":"string","description":"When currentStatus next changes, as a local date-time in this support hour's timezone, e.g. 2026-09-18T17:00. Null when no change is in sight: coverage that never ends, no coverage at all, or a covered holiday reaching beyond the three weeks looked ahead. Returned together with currentStatus.","readOnly":true}}},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"SupportDay":{"required":["end","start"],"type":"object","properties":{"start":{"type":"string","format":"time"},"end":{"type":"string","format":"time"}}},"SupportWindow":{"required":["from","to"],"type":"object","properties":{"from":{"$ref":"#/components/schemas/TimeOfWeek"},"to":{"$ref":"#/components/schemas/TimeOfWeek"}}},"TimeOfWeek":{"required":["dayOfWeek","time"],"type":"object","properties":{"dayOfWeek":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]},"time":{"type":"string","format":"15:00"}}},"SupportHourException":{"type":"object","required":["name","start","end","supportStatus"],"properties":{"name":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"supportStatus":{"type":"string","enum":["DURING","OUTSIDE"]}}},"ManagedBy":{"type":"object","readOnly":true,"description":"Present when this entity is managed outside of the ilert web app, for example through Terraform, Pulumi or the API. Read-only.","properties":{"type":{"type":"string","enum":["API","TERRAFORM","PULUMI","ILERT"]},"source":{"type":"string","description":"Identifier of the system managing this entity."}}}}},"paths":{"/support-hours/{id}":{"put":{"tags":["Support Hours"],"summary":"Update an existing support hour.","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"requestBody":{"description":"the support hour","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}},"required":true},"responses":{"200":{"description":"the updated support hour object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}}},"400":{"description":"the request names neither supportDays nor supportWindows, changes a supportDays whose coverage only supportWindows can express, carries a supportDays that describes different coverage than its supportWindows, has an arc that is incomplete, not on whole minutes, or one of more than 84, or moves the support hour to another timezone while schedules in a different timezone take their coverage from it","content":{}}}}}}}
```

## DELETE /support-hours/{id}

> Delete the specified support hour.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}}},"paths":{"/support-hours/{id}":{"delete":{"tags":["Support Hours"],"summary":"Delete the specified support hour.","parameters":[{"name":"id","in":"path","description":"entity ID","required":true,"schema":{"type":"number"}}],"responses":{"204":{"description":"if deletion was successful","content":{}}}}}}}
```

## GET /support-hours/name/{name}

> Get the support hour with the specified name.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.9-r.4"},"tags":[{"name":"Support Hours"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"SupportHour":{"required":["name","timezone"],"type":"object","description":"Weekly support hour coverage. Every write of the coverage itself -- a support hour of its own, or an alert source's inline support hours, which carry no id -- must send supportDays or supportWindows: a body with neither is rejected with 400 rather than read as a request to clear the coverage. An alert source that references an existing support hour sends its id alone and needs neither field.","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/TeamRel"}},"timezone":{"$ref":"#/components/schemas/TimeZone"},"supportDays":{"type":"object","description":"A single window per day, kept for existing clients. Lossy once coverage is not representable per day (several windows a day, or an arc across midnight): each day then reports the earliest part of its coverage, and an end at midnight is reported as 23:59. Use supportWindows for the complete picture. On input, sending it back exactly as it was read leaves the coverage unchanged, so a client that only knows supportDays can still rename a support hour or move it to another timezone. A supportDays that differs is applied when the current coverage fits one window per day, and rejected with 400 when it does not, because rebuilding the week from a lossy view would silently drop the coverage it cannot express -- change such coverage with supportWindows instead.","properties":{"MONDAY":{"$ref":"#/components/schemas/SupportDay"},"TUESDAY":{"$ref":"#/components/schemas/SupportDay"},"WEDNESDAY":{"$ref":"#/components/schemas/SupportDay"},"THURSDAY":{"$ref":"#/components/schemas/SupportDay"},"FRIDAY":{"$ref":"#/components/schemas/SupportDay"},"SATURDAY":{"$ref":"#/components/schemas/SupportDay"},"SUNDAY":{"$ref":"#/components/schemas/SupportDay"}}},"supportWindows":{"type":"array","nullable":true,"maxItems":84,"description":"The complete weekly coverage as arcs, each covering [from, to). An arc whose 'to' is at or before its 'from' wraps past Sunday midnight, so FRIDAY 17:00 to MONDAY 09:00 is one arc; 'from' equal to 'to' is the whole week. Responses list the arcs merged and in ascending order, and return null when supportDays already describes the coverage exactly. On input, when present, it is the coverage of the whole support hour: an empty array clears the weekly coverage, and overlapping or touching arcs are merged. supportDays may be sent alongside it only when it is the per-day view of these arcs; one describing different coverage is rejected with 400. Times are whole minutes (HH:mm); a seconds part is accepted only when it is zero. Only a support hour of its own accepts arcs: an alert source's inline supportHours is one window per day, and sending supportWindows there is rejected.","items":{"$ref":"#/components/schemas/SupportWindow"}},"exceptions":{"type":"array","items":{"$ref":"#/components/schemas/SupportHourException"}},"managedBy":{"$ref":"#/components/schemas/ManagedBy"},"currentStatus":{"type":"string","description":"Whether the support hour covers this moment. An include field: request it with include=currentStatus.","enum":["DURING","OUTSIDE"],"readOnly":true},"currentStatusUntil":{"type":"string","description":"When currentStatus next changes, as a local date-time in this support hour's timezone, e.g. 2026-09-18T17:00. Null when no change is in sight: coverage that never ends, no coverage at all, or a covered holiday reaching beyond the three weeks looked ahead. Returned together with currentStatus.","readOnly":true}}},"TeamRel":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"SupportDay":{"required":["end","start"],"type":"object","properties":{"start":{"type":"string","format":"time"},"end":{"type":"string","format":"time"}}},"SupportWindow":{"required":["from","to"],"type":"object","properties":{"from":{"$ref":"#/components/schemas/TimeOfWeek"},"to":{"$ref":"#/components/schemas/TimeOfWeek"}}},"TimeOfWeek":{"required":["dayOfWeek","time"],"type":"object","properties":{"dayOfWeek":{"type":"string","enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]},"time":{"type":"string","format":"15:00"}}},"SupportHourException":{"type":"object","required":["name","start","end","supportStatus"],"properties":{"name":{"type":"string"},"start":{"type":"string","format":"date"},"end":{"type":"string","format":"date"},"supportStatus":{"type":"string","enum":["DURING","OUTSIDE"]}}},"ManagedBy":{"type":"object","readOnly":true,"description":"Present when this entity is managed outside of the ilert web app, for example through Terraform, Pulumi or the API. Read-only.","properties":{"type":{"type":"string","enum":["API","TERRAFORM","PULUMI","ILERT"]},"source":{"type":"string","description":"Identifier of the system managing this entity."}}}}},"paths":{"/support-hours/name/{name}":{"get":{"tags":["Support Hours"],"summary":"Get the support hour with the specified name.","parameters":[{"name":"name","in":"path","description":"unique name of the support hour","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the support hour object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportHour"}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.ilert.com/developer-docs/rest-api/api-reference/support-hours.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
