updateConsumableResource method

Future<UpdateConsumableResourceResponse> updateConsumableResource({
  1. required String consumableResource,
  2. String? clientToken,
  3. String? operation,
  4. int? quantity,
})

Updates a consumable resource.

May throw ClientException. May throw ServerException.

Parameter consumableResource : The name or ARN of the consumable resource to be updated.

Parameter clientToken : If this parameter is specified and two update requests with identical payloads and clientTokens are received, these requests are considered the same request. Both requests will succeed, but the update will only happen once. A clientToken is valid for 8 hours.

Parameter operation : Indicates how the quantity of the consumable resource will be updated. Must be one of:

  • SET

    Sets the quantity of the resource to the value specified by the quantity parameter.

  • ADD

    Increases the quantity of the resource by the value specified by the quantity parameter.

  • REMOVE

    Reduces the quantity of the resource by the value specified by the quantity parameter.

Parameter quantity : The change in the total quantity of the consumable resource. The operation parameter determines whether the value specified here will be the new total quantity, or the amount by which the total quantity will be increased or reduced. Must be a non-negative value.

Implementation

Future<UpdateConsumableResourceResponse> updateConsumableResource({
  required String consumableResource,
  String? clientToken,
  String? operation,
  int? quantity,
}) async {
  final $payload = <String, dynamic>{
    'consumableResource': consumableResource,
    'clientToken': clientToken ?? _s.generateIdempotencyToken(),
    if (operation != null) 'operation': operation,
    if (quantity != null) 'quantity': quantity,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/v1/updateconsumableresource',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateConsumableResourceResponse.fromJson(response);
}