/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace SSM { namespace Model { /** *

The request body of the UpdateServiceSetting API operation.

See * Also:

AWS * API Reference

*/ class UpdateServiceSettingRequest : public SSMRequest { public: AWS_SSM_API UpdateServiceSettingRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateServiceSetting"; } AWS_SSM_API Aws::String SerializePayload() const override; AWS_SSM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; ///@{ /** *

The Amazon Resource Name (ARN) of the service setting to update. For example, * arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/parameter-store/high-throughput-enabled. * The setting ID can be one of the following.

  • * /ssm/managed-instance/default-ec2-instance-management-role

    *
  • /ssm/automation/customer-script-log-destination

    *
  • /ssm/automation/customer-script-log-group-name

    *
  • /ssm/documents/console/public-sharing-permission *

  • /ssm/managed-instance/activation-tier

    *
  • /ssm/opsinsights/opscenter

  • * /ssm/parameter-store/default-parameter-tier

  • * /ssm/parameter-store/high-throughput-enabled

*

Permissions to update the * /ssm/managed-instance/default-ec2-instance-management-role setting * should only be provided to administrators. Implement least privilege access when * allowing individuals to configure or modify the Default Host Management * Configuration.

*/ inline const Aws::String& GetSettingId() const{ return m_settingId; } inline bool SettingIdHasBeenSet() const { return m_settingIdHasBeenSet; } inline void SetSettingId(const Aws::String& value) { m_settingIdHasBeenSet = true; m_settingId = value; } inline void SetSettingId(Aws::String&& value) { m_settingIdHasBeenSet = true; m_settingId = std::move(value); } inline void SetSettingId(const char* value) { m_settingIdHasBeenSet = true; m_settingId.assign(value); } inline UpdateServiceSettingRequest& WithSettingId(const Aws::String& value) { SetSettingId(value); return *this;} inline UpdateServiceSettingRequest& WithSettingId(Aws::String&& value) { SetSettingId(std::move(value)); return *this;} inline UpdateServiceSettingRequest& WithSettingId(const char* value) { SetSettingId(value); return *this;} ///@} ///@{ /** *

The new value to specify for the service setting. The following list * specifies the available values for each setting.

  • For * /ssm/managed-instance/default-ec2-instance-management-role, enter * the name of an IAM role.

  • For * /ssm/automation/customer-script-log-destination, enter * CloudWatch.

  • For * /ssm/automation/customer-script-log-group-name, enter the name of * an Amazon CloudWatch Logs log group.

  • For * /ssm/documents/console/public-sharing-permission, enter * Enable or Disable.

  • For * /ssm/managed-instance/activation-tier, enter standard * or advanced.

  • For * /ssm/opsinsights/opscenter, enter Enabled or * Disabled.

  • For * /ssm/parameter-store/default-parameter-tier, enter * Standard, Advanced, or * Intelligent-Tiering

  • For * /ssm/parameter-store/high-throughput-enabled, enter * true or false.

*/ inline const Aws::String& GetSettingValue() const{ return m_settingValue; } inline bool SettingValueHasBeenSet() const { return m_settingValueHasBeenSet; } inline void SetSettingValue(const Aws::String& value) { m_settingValueHasBeenSet = true; m_settingValue = value; } inline void SetSettingValue(Aws::String&& value) { m_settingValueHasBeenSet = true; m_settingValue = std::move(value); } inline void SetSettingValue(const char* value) { m_settingValueHasBeenSet = true; m_settingValue.assign(value); } inline UpdateServiceSettingRequest& WithSettingValue(const Aws::String& value) { SetSettingValue(value); return *this;} inline UpdateServiceSettingRequest& WithSettingValue(Aws::String&& value) { SetSettingValue(std::move(value)); return *this;} inline UpdateServiceSettingRequest& WithSettingValue(const char* value) { SetSettingValue(value); return *this;} ///@} private: Aws::String m_settingId; bool m_settingIdHasBeenSet = false; Aws::String m_settingValue; bool m_settingValueHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws