getCalendarState method
Gets the state of the AWS Systems Manager Change Calendar at an optional,
specified time. If you specify a time, GetCalendarState
returns the state of the calendar at a specific time, and returns the next
time that the Change Calendar state will transition. If you do not specify
a time, GetCalendarState
assumes the current time. Change
Calendar entries have two possible states: OPEN
or
CLOSED
.
If you specify more than one calendar in a request, the command returns
the status of OPEN
only if all calendars in the request are
open. If one or more calendars in the request are closed, the status
returned is CLOSED
.
For more information about Systems Manager Change Calendar, see AWS Systems Manager Change Calendar in the AWS Systems Manager User Guide.
May throw InternalServerError. May throw InvalidDocument. May throw InvalidDocumentType. May throw UnsupportedCalendarException.
Parameter calendarNames
:
The names or Amazon Resource Names (ARNs) of the Systems Manager documents
that represent the calendar entries for which you want to get the state.
Parameter atTime
:
(Optional) The specific time for which you want to get calendar state
information, in ISO
8601 format. If you do not add AtTime
, the current time
is assumed.
Implementation
Future<GetCalendarStateResponse> getCalendarState({
required List<String> calendarNames,
String? atTime,
}) async {
ArgumentError.checkNotNull(calendarNames, 'calendarNames');
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AmazonSSM.GetCalendarState'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'CalendarNames': calendarNames,
if (atTime != null) 'AtTime': atTime,
},
);
return GetCalendarStateResponse.fromJson(jsonResponse.body);
}