getBundles method

Future<GetBundlesResult> getBundles({
  1. AppCategory? appCategory,
  2. bool? includeInactive,
  3. String? pageToken,
})

Returns the bundles that you can apply to an Amazon Lightsail instance when you create it.

A bundle describes the specifications of an instance, such as the monthly cost, amount of memory, the number of vCPUs, amount of storage space, and monthly network data transfer quota.

May throw AccessDeniedException. May throw AccountSetupInProgressException. May throw InvalidInputException. May throw NotFoundException. May throw OperationFailureException. May throw RegionSetupInProgressException. May throw ServiceException. May throw UnauthenticatedException.

Parameter appCategory : Returns a list of bundles that are specific to Lightsail for Research.

Parameter includeInactive : A Boolean value that indicates whether to include inactive (unavailable) bundles in the response of your request.

Parameter pageToken : The token to advance to the next page of results from your request.

To get a page token, perform an initial GetBundles request. If your results are paginated, the response will return a next page token that you can specify as the page token in a subsequent request.

Implementation

Future<GetBundlesResult> getBundles({
  AppCategory? appCategory,
  bool? includeInactive,
  String? pageToken,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'Lightsail_20161128.GetBundles'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (appCategory != null) 'appCategory': appCategory.value,
      if (includeInactive != null) 'includeInactive': includeInactive,
      if (pageToken != null) 'pageToken': pageToken,
    },
  );

  return GetBundlesResult.fromJson(jsonResponse.body);
}