7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/qconnect/QConnectRequest.h>
11#include <aws/qconnect/QConnect_EXPORTS.h>
12#include <aws/qconnect/model/AIGuardrailContentPolicyConfig.h>
13#include <aws/qconnect/model/AIGuardrailContextualGroundingPolicyConfig.h>
14#include <aws/qconnect/model/AIGuardrailSensitiveInformationPolicyConfig.h>
15#include <aws/qconnect/model/AIGuardrailTopicPolicyConfig.h>
16#include <aws/qconnect/model/AIGuardrailWordPolicyConfig.h>
17#include <aws/qconnect/model/VisibilityStatus.h>
49 template <
typename ClientTokenT = Aws::String>
51 m_clientTokenHasBeenSet =
true;
52 m_clientToken = std::forward<ClientTokenT>(value);
54 template <
typename ClientTokenT = Aws::String>
68 template <
typename AssistantIdT = Aws::String>
70 m_assistantIdHasBeenSet =
true;
71 m_assistantId = std::forward<AssistantIdT>(value);
73 template <
typename AssistantIdT = Aws::String>
86 template <
typename NameT = Aws::String>
88 m_nameHasBeenSet =
true;
89 m_name = std::forward<NameT>(value);
91 template <
typename NameT = Aws::String>
93 SetName(std::forward<NameT>(value));
104 template <
typename BlockedInputMessagingT = Aws::String>
106 m_blockedInputMessagingHasBeenSet =
true;
107 m_blockedInputMessaging = std::forward<BlockedInputMessagingT>(value);
109 template <
typename BlockedInputMessagingT = Aws::String>
122 template <
typename BlockedOutputsMessagingT = Aws::String>
124 m_blockedOutputsMessagingHasBeenSet =
true;
125 m_blockedOutputsMessaging = std::forward<BlockedOutputsMessagingT>(value);
127 template <
typename BlockedOutputsMessagingT = Aws::String>
141 m_visibilityStatusHasBeenSet =
true;
142 m_visibilityStatus = value;
156 template <
typename DescriptionT = Aws::String>
158 m_descriptionHasBeenSet =
true;
159 m_description = std::forward<DescriptionT>(value);
161 template <
typename DescriptionT = Aws::String>
174 template <
typename TopicPolicyConfigT = AIGuardrailTopicPolicyConfig>
176 m_topicPolicyConfigHasBeenSet =
true;
177 m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value);
179 template <
typename TopicPolicyConfigT = AIGuardrailTopicPolicyConfig>
192 template <
typename ContentPolicyConfigT = AIGuardrailContentPolicyConfig>
194 m_contentPolicyConfigHasBeenSet =
true;
195 m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value);
197 template <
typename ContentPolicyConfigT = AIGuardrailContentPolicyConfig>
210 template <
typename WordPolicyConfigT = AIGuardrailWordPolicyConfig>
212 m_wordPolicyConfigHasBeenSet =
true;
213 m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value);
215 template <
typename WordPolicyConfigT = AIGuardrailWordPolicyConfig>
227 return m_sensitiveInformationPolicyConfig;
230 template <
typename SensitiveInformationPolicyConfigT = AIGuardrailSensitiveInformationPolicyConfig>
232 m_sensitiveInformationPolicyConfigHasBeenSet =
true;
233 m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value);
235 template <
typename SensitiveInformationPolicyConfigT = AIGuardrailSensitiveInformationPolicyConfig>
248 return m_contextualGroundingPolicyConfig;
251 template <
typename ContextualGroundingPolicyConfigT = AIGuardrailContextualGroundingPolicyConfig>
253 m_contextualGroundingPolicyConfigHasBeenSet =
true;
254 m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value);
256 template <
typename ContextualGroundingPolicyConfigT = AIGuardrailContextualGroundingPolicyConfig>
269 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
271 m_tagsHasBeenSet =
true;
272 m_tags = std::forward<TagsT>(value);
274 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
276 SetTags(std::forward<TagsT>(value));
279 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
281 m_tagsHasBeenSet =
true;
282 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
301 AIGuardrailTopicPolicyConfig m_topicPolicyConfig;
303 AIGuardrailContentPolicyConfig m_contentPolicyConfig;
305 AIGuardrailWordPolicyConfig m_wordPolicyConfig;
307 AIGuardrailSensitiveInformationPolicyConfig m_sensitiveInformationPolicyConfig;
309 AIGuardrailContextualGroundingPolicyConfig m_contextualGroundingPolicyConfig;
312 bool m_clientTokenHasBeenSet =
true;
313 bool m_assistantIdHasBeenSet =
false;
314 bool m_nameHasBeenSet =
false;
315 bool m_blockedInputMessagingHasBeenSet =
false;
316 bool m_blockedOutputsMessagingHasBeenSet =
false;
317 bool m_visibilityStatusHasBeenSet =
false;
318 bool m_descriptionHasBeenSet =
false;
319 bool m_topicPolicyConfigHasBeenSet =
false;
320 bool m_contentPolicyConfigHasBeenSet =
false;
321 bool m_wordPolicyConfigHasBeenSet =
false;
322 bool m_sensitiveInformationPolicyConfigHasBeenSet =
false;
323 bool m_contextualGroundingPolicyConfigHasBeenSet =
false;
324 bool m_tagsHasBeenSet =
false;
CreateAIGuardrailRequest & WithName(NameT &&value)
CreateAIGuardrailRequest & WithBlockedInputMessaging(BlockedInputMessagingT &&value)
const Aws::String & GetBlockedInputMessaging() const
bool ContentPolicyConfigHasBeenSet() const
const AIGuardrailContextualGroundingPolicyConfig & GetContextualGroundingPolicyConfig() const
void SetTags(TagsT &&value)
void SetAssistantId(AssistantIdT &&value)
const Aws::String & GetDescription() const
bool BlockedOutputsMessagingHasBeenSet() const
void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
CreateAIGuardrailRequest & WithContentPolicyConfig(ContentPolicyConfigT &&value)
CreateAIGuardrailRequest & WithAssistantId(AssistantIdT &&value)
const Aws::String & GetBlockedOutputsMessaging() const
bool DescriptionHasBeenSet() const
CreateAIGuardrailRequest & WithVisibilityStatus(VisibilityStatus value)
const AIGuardrailTopicPolicyConfig & GetTopicPolicyConfig() const
void SetContentPolicyConfig(ContentPolicyConfigT &&value)
CreateAIGuardrailRequest & WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
CreateAIGuardrailRequest & WithTags(TagsT &&value)
void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
bool AssistantIdHasBeenSet() const
CreateAIGuardrailRequest & WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateAIGuardrailRequest & WithDescription(DescriptionT &&value)
const AIGuardrailSensitiveInformationPolicyConfig & GetSensitiveInformationPolicyConfig() const
void SetBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
CreateAIGuardrailRequest & WithWordPolicyConfig(WordPolicyConfigT &&value)
bool ContextualGroundingPolicyConfigHasBeenSet() const
const Aws::String & GetName() const
void SetTopicPolicyConfig(TopicPolicyConfigT &&value)
bool ClientTokenHasBeenSet() const
CreateAIGuardrailRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool BlockedInputMessagingHasBeenSet() const
bool TagsHasBeenSet() const
VisibilityStatus GetVisibilityStatus() const
bool WordPolicyConfigHasBeenSet() const
AWS_QCONNECT_API CreateAIGuardrailRequest()=default
bool TopicPolicyConfigHasBeenSet() const
void SetWordPolicyConfig(WordPolicyConfigT &&value)
const AIGuardrailContentPolicyConfig & GetContentPolicyConfig() const
CreateAIGuardrailRequest & WithTopicPolicyConfig(TopicPolicyConfigT &&value)
CreateAIGuardrailRequest & WithClientToken(ClientTokenT &&value)
void SetName(NameT &&value)
void SetVisibilityStatus(VisibilityStatus value)
bool NameHasBeenSet() const
const AIGuardrailWordPolicyConfig & GetWordPolicyConfig() const
AWS_QCONNECT_API Aws::String SerializePayload() const override
void SetBlockedInputMessaging(BlockedInputMessagingT &&value)
CreateAIGuardrailRequest & WithBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetDescription(DescriptionT &&value)
const Aws::String & GetAssistantId() const
const Aws::String & GetClientToken() const
bool VisibilityStatusHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
bool SensitiveInformationPolicyConfigHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String