7#include <aws/bedrock/Bedrock_EXPORTS.h>
8#include <aws/bedrock/BedrockRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/bedrock/model/GuardrailTopicPolicyConfig.h>
11#include <aws/bedrock/model/GuardrailContentPolicyConfig.h>
12#include <aws/bedrock/model/GuardrailWordPolicyConfig.h>
13#include <aws/bedrock/model/GuardrailSensitiveInformationPolicyConfig.h>
14#include <aws/bedrock/model/GuardrailContextualGroundingPolicyConfig.h>
15#include <aws/bedrock/model/GuardrailCrossRegionConfig.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17#include <aws/bedrock/model/Tag.h>
19#include <aws/core/utils/UUID.h>
50 template<
typename NameT = Aws::String>
51 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
52 template<
typename NameT = Aws::String>
62 template<
typename DescriptionT = Aws::String>
63 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
64 template<
typename DescriptionT = Aws::String>
74 template<
typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
75 void SetTopicPolicyConfig(TopicPolicyConfigT&& value) { m_topicPolicyConfigHasBeenSet =
true; m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value); }
76 template<
typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
86 template<
typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
87 void SetContentPolicyConfig(ContentPolicyConfigT&& value) { m_contentPolicyConfigHasBeenSet =
true; m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value); }
88 template<
typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
98 template<
typename WordPolicyConfigT = GuardrailWordPolicyConfig>
99 void SetWordPolicyConfig(WordPolicyConfigT&& value) { m_wordPolicyConfigHasBeenSet =
true; m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value); }
100 template<
typename WordPolicyConfigT = GuardrailWordPolicyConfig>
110 template<
typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
111 void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { m_sensitiveInformationPolicyConfigHasBeenSet =
true; m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value); }
112 template<
typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
122 template<
typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
123 void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { m_contextualGroundingPolicyConfigHasBeenSet =
true; m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value); }
124 template<
typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
139 template<
typename CrossRegionConfigT = GuardrailCrossRegionConfig>
140 void SetCrossRegionConfig(CrossRegionConfigT&& value) { m_crossRegionConfigHasBeenSet =
true; m_crossRegionConfig = std::forward<CrossRegionConfigT>(value); }
141 template<
typename CrossRegionConfigT = GuardrailCrossRegionConfig>
151 template<
typename BlockedInputMessagingT = Aws::String>
152 void SetBlockedInputMessaging(BlockedInputMessagingT&& value) { m_blockedInputMessagingHasBeenSet =
true; m_blockedInputMessaging = std::forward<BlockedInputMessagingT>(value); }
153 template<
typename BlockedInputMessagingT = Aws::String>
163 template<
typename BlockedOutputsMessagingT = Aws::String>
164 void SetBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { m_blockedOutputsMessagingHasBeenSet =
true; m_blockedOutputsMessaging = std::forward<BlockedOutputsMessagingT>(value); }
165 template<
typename BlockedOutputsMessagingT = Aws::String>
175 template<
typename KmsKeyIdT = Aws::String>
176 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
177 template<
typename KmsKeyIdT = Aws::String>
187 template<
typename TagsT = Aws::Vector<Tag>>
188 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
189 template<
typename TagsT = Aws::Vector<Tag>>
191 template<
typename TagsT = Tag>
205 template<
typename ClientRequestTokenT = Aws::String>
206 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet =
true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
207 template<
typename ClientRequestTokenT = Aws::String>
213 bool m_nameHasBeenSet =
false;
216 bool m_descriptionHasBeenSet =
false;
219 bool m_topicPolicyConfigHasBeenSet =
false;
222 bool m_contentPolicyConfigHasBeenSet =
false;
225 bool m_wordPolicyConfigHasBeenSet =
false;
228 bool m_sensitiveInformationPolicyConfigHasBeenSet =
false;
231 bool m_contextualGroundingPolicyConfigHasBeenSet =
false;
234 bool m_crossRegionConfigHasBeenSet =
false;
237 bool m_blockedInputMessagingHasBeenSet =
false;
240 bool m_blockedOutputsMessagingHasBeenSet =
false;
243 bool m_kmsKeyIdHasBeenSet =
false;
246 bool m_tagsHasBeenSet =
false;
249 bool m_clientRequestTokenHasBeenSet =
true;
bool ClientRequestTokenHasBeenSet() const
CreateGuardrailRequest & WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
bool NameHasBeenSet() const
void SetDescription(DescriptionT &&value)
virtual const char * GetServiceRequestName() const override
bool DescriptionHasBeenSet() const
const GuardrailSensitiveInformationPolicyConfig & GetSensitiveInformationPolicyConfig() const
bool CrossRegionConfigHasBeenSet() const
bool SensitiveInformationPolicyConfigHasBeenSet() const
void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
CreateGuardrailRequest & WithContentPolicyConfig(ContentPolicyConfigT &&value)
CreateGuardrailRequest & WithBlockedInputMessaging(BlockedInputMessagingT &&value)
const Aws::String & GetBlockedInputMessaging() const
const Aws::String & GetClientRequestToken() const
bool KmsKeyIdHasBeenSet() const
const GuardrailTopicPolicyConfig & GetTopicPolicyConfig() const
const Aws::String & GetBlockedOutputsMessaging() const
CreateGuardrailRequest & AddTags(TagsT &&value)
bool BlockedInputMessagingHasBeenSet() const
bool BlockedOutputsMessagingHasBeenSet() const
const Aws::String & GetName() const
bool TagsHasBeenSet() const
AWS_BEDROCK_API Aws::String SerializePayload() const override
void SetKmsKeyId(KmsKeyIdT &&value)
const GuardrailContentPolicyConfig & GetContentPolicyConfig() const
CreateGuardrailRequest & WithDescription(DescriptionT &&value)
CreateGuardrailRequest & WithBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
void SetCrossRegionConfig(CrossRegionConfigT &&value)
const Aws::String & GetKmsKeyId() const
void SetBlockedInputMessaging(BlockedInputMessagingT &&value)
AWS_BEDROCK_API CreateGuardrailRequest()=default
bool TopicPolicyConfigHasBeenSet() const
bool WordPolicyConfigHasBeenSet() const
CreateGuardrailRequest & WithTopicPolicyConfig(TopicPolicyConfigT &&value)
void SetContentPolicyConfig(ContentPolicyConfigT &&value)
void SetTags(TagsT &&value)
bool ContextualGroundingPolicyConfigHasBeenSet() const
bool ContentPolicyConfigHasBeenSet() const
const GuardrailCrossRegionConfig & GetCrossRegionConfig() const
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::String & GetDescription() const
void SetTopicPolicyConfig(TopicPolicyConfigT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetWordPolicyConfig(WordPolicyConfigT &&value)
CreateGuardrailRequest & WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
void SetName(NameT &&value)
CreateGuardrailRequest & WithTags(TagsT &&value)
CreateGuardrailRequest & WithWordPolicyConfig(WordPolicyConfigT &&value)
CreateGuardrailRequest & WithName(NameT &&value)
CreateGuardrailRequest & WithCrossRegionConfig(CrossRegionConfigT &&value)
const GuardrailWordPolicyConfig & GetWordPolicyConfig() const
CreateGuardrailRequest & WithKmsKeyId(KmsKeyIdT &&value)
const GuardrailContextualGroundingPolicyConfig & GetContextualGroundingPolicyConfig() const
CreateGuardrailRequest & WithClientRequestToken(ClientRequestTokenT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector