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/GetAll

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/GetAll

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"
}