AWS SDK for C++

AWS SDK for C++ Version 1.11.633

Loading...
Searching...
No Matches
CreateGuardrailRequest.h
1
6#pragma once
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/GuardrailAutomatedReasoningPolicyConfig.h>
16#include <aws/bedrock/model/GuardrailCrossRegionConfig.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18#include <aws/bedrock/model/Tag.h>
19#include <utility>
20#include <aws/core/utils/UUID.h>
21
22namespace Aws
23{
24namespace Bedrock
25{
26namespace Model
27{
28
32 {
33 public:
34 AWS_BEDROCK_API CreateGuardrailRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "CreateGuardrail"; }
41
42 AWS_BEDROCK_API Aws::String SerializePayload() const override;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 CreateGuardrailRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
61 inline const Aws::String& GetDescription() const { return m_description; }
62 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
63 template<typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
65 template<typename DescriptionT = Aws::String>
66 CreateGuardrailRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
68
70
73 inline const GuardrailTopicPolicyConfig& GetTopicPolicyConfig() const { return m_topicPolicyConfig; }
74 inline bool TopicPolicyConfigHasBeenSet() const { return m_topicPolicyConfigHasBeenSet; }
75 template<typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
76 void SetTopicPolicyConfig(TopicPolicyConfigT&& value) { m_topicPolicyConfigHasBeenSet = true; m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value); }
77 template<typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
78 CreateGuardrailRequest& WithTopicPolicyConfig(TopicPolicyConfigT&& value) { SetTopicPolicyConfig(std::forward<TopicPolicyConfigT>(value)); return *this;}
80
82
85 inline const GuardrailContentPolicyConfig& GetContentPolicyConfig() const { return m_contentPolicyConfig; }
86 inline bool ContentPolicyConfigHasBeenSet() const { return m_contentPolicyConfigHasBeenSet; }
87 template<typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
88 void SetContentPolicyConfig(ContentPolicyConfigT&& value) { m_contentPolicyConfigHasBeenSet = true; m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value); }
89 template<typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
90 CreateGuardrailRequest& WithContentPolicyConfig(ContentPolicyConfigT&& value) { SetContentPolicyConfig(std::forward<ContentPolicyConfigT>(value)); return *this;}
92
94
97 inline const GuardrailWordPolicyConfig& GetWordPolicyConfig() const { return m_wordPolicyConfig; }
98 inline bool WordPolicyConfigHasBeenSet() const { return m_wordPolicyConfigHasBeenSet; }
99 template<typename WordPolicyConfigT = GuardrailWordPolicyConfig>
100 void SetWordPolicyConfig(WordPolicyConfigT&& value) { m_wordPolicyConfigHasBeenSet = true; m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value); }
101 template<typename WordPolicyConfigT = GuardrailWordPolicyConfig>
102 CreateGuardrailRequest& WithWordPolicyConfig(WordPolicyConfigT&& value) { SetWordPolicyConfig(std::forward<WordPolicyConfigT>(value)); return *this;}
104
106
109 inline const GuardrailSensitiveInformationPolicyConfig& GetSensitiveInformationPolicyConfig() const { return m_sensitiveInformationPolicyConfig; }
110 inline bool SensitiveInformationPolicyConfigHasBeenSet() const { return m_sensitiveInformationPolicyConfigHasBeenSet; }
111 template<typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
112 void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { m_sensitiveInformationPolicyConfigHasBeenSet = true; m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value); }
113 template<typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
114 CreateGuardrailRequest& WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { SetSensitiveInformationPolicyConfig(std::forward<SensitiveInformationPolicyConfigT>(value)); return *this;}
116
118
121 inline const GuardrailContextualGroundingPolicyConfig& GetContextualGroundingPolicyConfig() const { return m_contextualGroundingPolicyConfig; }
122 inline bool ContextualGroundingPolicyConfigHasBeenSet() const { return m_contextualGroundingPolicyConfigHasBeenSet; }
123 template<typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
124 void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { m_contextualGroundingPolicyConfigHasBeenSet = true; m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value); }
125 template<typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
126 CreateGuardrailRequest& WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { SetContextualGroundingPolicyConfig(std::forward<ContextualGroundingPolicyConfigT>(value)); return *this;}
128
130
134 inline const GuardrailAutomatedReasoningPolicyConfig& GetAutomatedReasoningPolicyConfig() const { return m_automatedReasoningPolicyConfig; }
135 inline bool AutomatedReasoningPolicyConfigHasBeenSet() const { return m_automatedReasoningPolicyConfigHasBeenSet; }
136 template<typename AutomatedReasoningPolicyConfigT = GuardrailAutomatedReasoningPolicyConfig>
137 void SetAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT&& value) { m_automatedReasoningPolicyConfigHasBeenSet = true; m_automatedReasoningPolicyConfig = std::forward<AutomatedReasoningPolicyConfigT>(value); }
138 template<typename AutomatedReasoningPolicyConfigT = GuardrailAutomatedReasoningPolicyConfig>
139 CreateGuardrailRequest& WithAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT&& value) { SetAutomatedReasoningPolicyConfig(std::forward<AutomatedReasoningPolicyConfigT>(value)); return *this;}
141
143
151 inline const GuardrailCrossRegionConfig& GetCrossRegionConfig() const { return m_crossRegionConfig; }
152 inline bool CrossRegionConfigHasBeenSet() const { return m_crossRegionConfigHasBeenSet; }
153 template<typename CrossRegionConfigT = GuardrailCrossRegionConfig>
154 void SetCrossRegionConfig(CrossRegionConfigT&& value) { m_crossRegionConfigHasBeenSet = true; m_crossRegionConfig = std::forward<CrossRegionConfigT>(value); }
155 template<typename CrossRegionConfigT = GuardrailCrossRegionConfig>
156 CreateGuardrailRequest& WithCrossRegionConfig(CrossRegionConfigT&& value) { SetCrossRegionConfig(std::forward<CrossRegionConfigT>(value)); return *this;}
158
160
163 inline const Aws::String& GetBlockedInputMessaging() const { return m_blockedInputMessaging; }
164 inline bool BlockedInputMessagingHasBeenSet() const { return m_blockedInputMessagingHasBeenSet; }
165 template<typename BlockedInputMessagingT = Aws::String>
166 void SetBlockedInputMessaging(BlockedInputMessagingT&& value) { m_blockedInputMessagingHasBeenSet = true; m_blockedInputMessaging = std::forward<BlockedInputMessagingT>(value); }
167 template<typename BlockedInputMessagingT = Aws::String>
168 CreateGuardrailRequest& WithBlockedInputMessaging(BlockedInputMessagingT&& value) { SetBlockedInputMessaging(std::forward<BlockedInputMessagingT>(value)); return *this;}
170
172
175 inline const Aws::String& GetBlockedOutputsMessaging() const { return m_blockedOutputsMessaging; }
176 inline bool BlockedOutputsMessagingHasBeenSet() const { return m_blockedOutputsMessagingHasBeenSet; }
177 template<typename BlockedOutputsMessagingT = Aws::String>
178 void SetBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { m_blockedOutputsMessagingHasBeenSet = true; m_blockedOutputsMessaging = std::forward<BlockedOutputsMessagingT>(value); }
179 template<typename BlockedOutputsMessagingT = Aws::String>
180 CreateGuardrailRequest& WithBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { SetBlockedOutputsMessaging(std::forward<BlockedOutputsMessagingT>(value)); return *this;}
182
184
187 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
188 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
189 template<typename KmsKeyIdT = Aws::String>
190 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
191 template<typename KmsKeyIdT = Aws::String>
192 CreateGuardrailRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
194
196
199 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
200 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
201 template<typename TagsT = Aws::Vector<Tag>>
202 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
203 template<typename TagsT = Aws::Vector<Tag>>
204 CreateGuardrailRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
205 template<typename TagsT = Tag>
206 CreateGuardrailRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
208
210
217 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
218 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
219 template<typename ClientRequestTokenT = Aws::String>
220 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
221 template<typename ClientRequestTokenT = Aws::String>
222 CreateGuardrailRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
224 private:
225
226 Aws::String m_name;
227 bool m_nameHasBeenSet = false;
228
229 Aws::String m_description;
230 bool m_descriptionHasBeenSet = false;
231
232 GuardrailTopicPolicyConfig m_topicPolicyConfig;
233 bool m_topicPolicyConfigHasBeenSet = false;
234
235 GuardrailContentPolicyConfig m_contentPolicyConfig;
236 bool m_contentPolicyConfigHasBeenSet = false;
237
238 GuardrailWordPolicyConfig m_wordPolicyConfig;
239 bool m_wordPolicyConfigHasBeenSet = false;
240
241 GuardrailSensitiveInformationPolicyConfig m_sensitiveInformationPolicyConfig;
242 bool m_sensitiveInformationPolicyConfigHasBeenSet = false;
243
244 GuardrailContextualGroundingPolicyConfig m_contextualGroundingPolicyConfig;
245 bool m_contextualGroundingPolicyConfigHasBeenSet = false;
246
247 GuardrailAutomatedReasoningPolicyConfig m_automatedReasoningPolicyConfig;
248 bool m_automatedReasoningPolicyConfigHasBeenSet = false;
249
250 GuardrailCrossRegionConfig m_crossRegionConfig;
251 bool m_crossRegionConfigHasBeenSet = false;
252
253 Aws::String m_blockedInputMessaging;
254 bool m_blockedInputMessagingHasBeenSet = false;
255
256 Aws::String m_blockedOutputsMessaging;
257 bool m_blockedOutputsMessagingHasBeenSet = false;
258
259 Aws::String m_kmsKeyId;
260 bool m_kmsKeyIdHasBeenSet = false;
261
262 Aws::Vector<Tag> m_tags;
263 bool m_tagsHasBeenSet = false;
264
265 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
266 bool m_clientRequestTokenHasBeenSet = true;
267 };
268
269} // namespace Model
270} // namespace Bedrock
271} // namespace Aws
CreateGuardrailRequest & WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
virtual const char * GetServiceRequestName() const override
const GuardrailSensitiveInformationPolicyConfig & GetSensitiveInformationPolicyConfig() const
void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
CreateGuardrailRequest & WithContentPolicyConfig(ContentPolicyConfigT &&value)
CreateGuardrailRequest & WithBlockedInputMessaging(BlockedInputMessagingT &&value)
const GuardrailTopicPolicyConfig & GetTopicPolicyConfig() const
void SetAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT &&value)
CreateGuardrailRequest & AddTags(TagsT &&value)
AWS_BEDROCK_API Aws::String SerializePayload() const override
const GuardrailContentPolicyConfig & GetContentPolicyConfig() const
CreateGuardrailRequest & WithDescription(DescriptionT &&value)
CreateGuardrailRequest & WithBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
void SetCrossRegionConfig(CrossRegionConfigT &&value)
void SetBlockedInputMessaging(BlockedInputMessagingT &&value)
AWS_BEDROCK_API CreateGuardrailRequest()=default
CreateGuardrailRequest & WithTopicPolicyConfig(TopicPolicyConfigT &&value)
void SetContentPolicyConfig(ContentPolicyConfigT &&value)
const GuardrailCrossRegionConfig & GetCrossRegionConfig() const
void SetClientRequestToken(ClientRequestTokenT &&value)
void SetTopicPolicyConfig(TopicPolicyConfigT &&value)
void SetWordPolicyConfig(WordPolicyConfigT &&value)
CreateGuardrailRequest & WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
CreateGuardrailRequest & WithTags(TagsT &&value)
CreateGuardrailRequest & WithWordPolicyConfig(WordPolicyConfigT &&value)
const GuardrailAutomatedReasoningPolicyConfig & GetAutomatedReasoningPolicyConfig() const
CreateGuardrailRequest & WithName(NameT &&value)
CreateGuardrailRequest & WithCrossRegionConfig(CrossRegionConfigT &&value)
CreateGuardrailRequest & WithAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT &&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