Er is een specifieke set API-methoden voor het bewerken van onderhoudsperioden voor een controleregel of voor alle controleregels in een controleregelgroep.
Objectbeschrijving onderhoudsperiode
Het volgende MaintenancePeriod object wordt gebruikt in de hieronder beschreven API-methoden:
Naam | Beschrijving | Datatype |
---|---|---|
Id | De unieke identifier voor deze onderhoudsperiode | Integer |
ScheduleMode | OneTime, Daily, Weekly of Monthly | Enum |
StartDateTime | Een begindatum en -tijd (alleen van toepassing op een eenmalige geplande periode) | DateTime |
EndDateTime | De einddatum en -tijd van een eenmalige geplande onderhoudsperiode | DateTime |
StartTime | De begintijd (“HH:mm”, in 24-uursnotatie) voor een terugkerende (Daily, Weekly of Monthly) onderhoudsperiode | String (“HH:mm”) |
EndTime | De eindtijd (“HH:mm”, in 24-uursnotatie) voor een terugkerende (Daily, Weekly of Monthly) onderhoudsperiode | String (“HH:mm”) |
WeekDay | De dag van de week voor een wekelijkse onderhoudsperiode (Sunday/Monday/[…]/Saturday) | Enum |
MonthDay | Het nummer van de dag voor een maandelijkse onderhoudsperiode | Int (1-31) |
MaintenanceType | DisableMonitoring (om de controleregel helemaal uit te schakelen) of DisableNotifications (monitoring zal nog steeds plaatsvinden, maar kennisgevingen worden niet verzonden) | Enum |
Wanneer een onderhoudsperiode via de API wordt geretourneerd, zijn alle eigenschappen aanwezig, maar afhankelijk van de ScheduleMode worden sommige velden met betrekking tot begin- en einddatums/-tijden niet gebruikt.
Voor een eenmalige onderhoudsperiode moeten we de begin- en einddatum en -tijd weten, zodat de eigenschappen StartDateTime en EndDateTime worden gebruikt. Voor terugkerende onderhoudsperioden zijn de velden begin- en eindtijd geschikt, en, afhankelijk van het type schema, de eigenschap WeekDay of MonthDay.
Een dagelijks schema ziet er bijvoorbeeld als volgt uit:
{
"Id": 123,
"ScheduleMode": "Daily",
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}
De eigenschappen die niet relevant zijn voor dit type schema (DateTime, WeekDay en MonthDay) worden weggelaten.
Een wekelijks schema ziet er als volgt uit:
{
"Id": 123,
"ScheduleMode": "Weekly",
"WeekDay": "Thursday",
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}
Een maandelijks schema ziet er als volgt uit:
{
"Id": 125,
"ScheduleMode": "Monthly",
"MonthDay": 24,
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}
Een eenmalig schema ziet er als volgt uit:
{
"Id": 124,
"ScheduleMode": "OneTime",
"StartDateTime": "2018-09-24T22:00",
"EndDateTime": "2018-09-24T22:00",
"MaintenanceType": "DisableMonitoring"
}
De volgende API-eindpunten zijn beschikbaar:
Type request | Eindpunt | Gebruik |
---|---|---|
GET | Monitor/{monitorGuid}/MaintenancePeriod | Vindt alle onderhoudsperioden voor een controleregel |
POST | Monitor/{monitorGuid}/MaintenancePeriod | Slaat de nieuwe onderhoudsperiode op die is opgegeven voor de gespecificeerde controleregel |
PUT | Monitor/{monitorGuid}/MaintenancePeriod/ {maintenancePeriodId} | Werkt het gespecificeerde onderhoudsschema bij voor de gespecificeerde controleregel |
DELETE | Monitor/{monitorGuid}/MaintenancePeriod/ {maintenancePeriodId} | Verwijdert de gespecificeerde onderhoudsperiode uit de gespecificeerde controleregel |
POST | Monitor/{monitorGuid}/MaintenancePeriod/ Cleanup/{beforeDate} | Wist alle eenmalige onderhoudsperioden voor de gespecificeerde controleregel die ouder is dan de gespecificeerde datum |
POST | MonitorGroup/{monitorGroupGuid}/ MaintenancePeriod | Voegt de opgegeven onderhoudsperiode toe aan alle controleregels in de gespecificeerde groep |
GET Monitor
GET Monitor/{monitorGuid}/MaintenancePeriod
Deze GET request retourneert een verzameling met alle geplande onderhoudsperioden voor de controleregel met de verstrekte GUID.
Voorbeeld output:
[
{
"Id": 125,
"ScheduleMode": "Monthly",
"MonthDay": 24,
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
},
{
"Id": 123,
"ScheduleMode": "Weekly",
"WeekDay": "Thursday",
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}
]
POST Monitor
POST Monitor/{monitorGuid}/MaintenancePeriod
Deze methode creëert de onderhoudsperiode die is opgegeven in de request body en wijst deze toe aan de controleregel met de opgegeven GUID.
Een POST request verwacht een objectstructuur zoals verstrekt is in de voorbeelden onder “Objectbeschrijving onderhoudsperiode.” Zoals u daar kunt zien, is de structuur afhankelijk van het type onderhoudsperiode (OneTime, Daily, Weekly of Monthly). Verder moet het Id-veld niet worden opgegeven. Er wordt automatisch een nieuwe Id-waarde gegenereerd.
PUT Monitor
PUT Monitor/{monitorGuid}/MaintenancePeriod/{maintenancePeriodId}
Deze methode werkt de onderhoudsperiode met de verstrekte onderhoudsperiode-ID bij naar de waarden die zijn opgegeven in de request body.
Verwachte input (voorbeeld voor een maandelijkse onderhoudsperiode):
{
"Id": 125,
"ScheduleMode": "Monthly",
"MonthDay": 24,
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}
Merk op dat de Id van de onderhoudsperiode zowel in de body als in de parameter maintenancePeriodId moet worden opgegeven. Als de Id in de parameter niet overeenkomt met de Id van de onderhoudsperiode in de request body, wordt er een uitzondering geretourneerd.
DELETE Monitor
DELETE Monitor/{monitorGuid}/MaintenancePeriod/{maintenancePeriodId}
Deze methode verwijdert de onderhoudsperiode met de in maintenancePeriodId opgegeven Id uit de controleregel met de verstrekte monitorGuid.
POST Monitor
POST Monitor/{monitorGuid}/MaintenancePeriod/Cleanup/{beforeDate}
Deze methode verwijdert alle eenmalige schema’s met een StartDateTime vóór de datum die is verstrekt in beforeDate van de controleregel met de verstrekte monitorGuid.
POST MonitorGroup
POST MonitorGroup/{monitorGroupGuid}/MaintenancePeriod
Deze methode voegt de in de request body verstrekte onderhoudsperiode toe aan alle controleregels in de controleregelgroep met de verstrekte controleregelgroep Guid.
Verwachte input (voorbeeld voor een wekelijkse onderhoudsperiode):
{
"ScheduleMode": "Weekly",
"WeekDay": "Thursday",
"StartTime": "22:00",
"EndTime": "22:30",
"MaintenanceType": "DisableNotifications"
}