AWS SDK for C++

AWS SDK for C++ Version 1.11.610

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/GuardrailCrossRegionConfig.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17#include <aws/bedrock/model/Tag.h>
18#include <utility>
19#include <aws/core/utils/UUID.h>
20
21namespace Aws
22{
23namespace Bedrock
24{
25namespace Model
26{
27
31 {
32 public:
33 AWS_BEDROCK_API CreateGuardrailRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateGuardrail"; }
40
41 AWS_BEDROCK_API Aws::String SerializePayload() const override;
42
43
45
48 inline const Aws::String& GetName() const { return m_name; }
49 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
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>
53 CreateGuardrailRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
55
57
60 inline const Aws::String& GetDescription() const { return m_description; }
61 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
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>
65 CreateGuardrailRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
67
69
72 inline const GuardrailTopicPolicyConfig& GetTopicPolicyConfig() const { return m_topicPolicyConfig; }
73 inline bool TopicPolicyConfigHasBeenSet() const { return m_topicPolicyConfigHasBeenSet; }
74 template<typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
75 void SetTopicPolicyConfig(TopicPolicyConfigT&& value) { m_topicPolicyConfigHasBeenSet = true; m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value); }
76 template<typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
77 CreateGuardrailRequest& WithTopicPolicyConfig(TopicPolicyConfigT&& value) { SetTopicPolicyConfig(std::forward<TopicPolicyConfigT>(value)); return *this;}
79
81
84 inline const GuardrailContentPolicyConfig& GetContentPolicyConfig() const { return m_contentPolicyConfig; }
85 inline bool ContentPolicyConfigHasBeenSet() const { return m_contentPolicyConfigHasBeenSet; }
86 template<typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
87 void SetContentPolicyConfig(ContentPolicyConfigT&& value) { m_contentPolicyConfigHasBeenSet = true; m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value); }
88 template<typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
89 CreateGuardrailRequest& WithContentPolicyConfig(ContentPolicyConfigT&& value) { SetContentPolicyConfig(std::forward<ContentPolicyConfigT>(value)); return *this;}
91
93
96 inline const GuardrailWordPolicyConfig& GetWordPolicyConfig() const { return m_wordPolicyConfig; }
97 inline bool WordPolicyConfigHasBeenSet() const { return m_wordPolicyConfigHasBeenSet; }
98 template<typename WordPolicyConfigT = GuardrailWordPolicyConfig>
99 void SetWordPolicyConfig(WordPolicyConfigT&& value) { m_wordPolicyConfigHasBeenSet = true; m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value); }
100 template<typename WordPolicyConfigT = GuardrailWordPolicyConfig>
101 CreateGuardrailRequest& WithWordPolicyConfig(WordPolicyConfigT&& value) { SetWordPolicyConfig(std::forward<WordPolicyConfigT>(value)); return *this;}
103
105
108 inline const GuardrailSensitiveInformationPolicyConfig& GetSensitiveInformationPolicyConfig() const { return m_sensitiveInformationPolicyConfig; }
109 inline bool SensitiveInformationPolicyConfigHasBeenSet() const { return m_sensitiveInformationPolicyConfigHasBeenSet; }
110 template<typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
111 void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { m_sensitiveInformationPolicyConfigHasBeenSet = true; m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value); }
112 template<typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
113 CreateGuardrailRequest& WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { SetSensitiveInformationPolicyConfig(std::forward<SensitiveInformationPolicyConfigT>(value)); return *this;}
115
117
120 inline const GuardrailContextualGroundingPolicyConfig& GetContextualGroundingPolicyConfig() const { return m_contextualGroundingPolicyConfig; }
121 inline bool ContextualGroundingPolicyConfigHasBeenSet() const { return m_contextualGroundingPolicyConfigHasBeenSet; }
122 template<typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
123 void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { m_contextualGroundingPolicyConfigHasBeenSet = true; m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value); }
124 template<typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
125 CreateGuardrailRequest& WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { SetContextualGroundingPolicyConfig(std::forward<ContextualGroundingPolicyConfigT>(value)); return *this;}
127
129
137 inline const GuardrailCrossRegionConfig& GetCrossRegionConfig() const { return m_crossRegionConfig; }
138 inline bool CrossRegionConfigHasBeenSet() const { return m_crossRegionConfigHasBeenSet; }
139 template<typename CrossRegionConfigT = GuardrailCrossRegionConfig>
140 void SetCrossRegionConfig(CrossRegionConfigT&& value) { m_crossRegionConfigHasBeenSet = true; m_crossRegionConfig = std::forward<CrossRegionConfigT>(value); }
141 template<typename CrossRegionConfigT = GuardrailCrossRegionConfig>
142 CreateGuardrailRequest& WithCrossRegionConfig(CrossRegionConfigT&& value) { SetCrossRegionConfig(std::forward<CrossRegionConfigT>(value)); return *this;}
144
146
149 inline const Aws::String& GetBlockedInputMessaging() const { return m_blockedInputMessaging; }
150 inline bool BlockedInputMessagingHasBeenSet() const { return m_blockedInputMessagingHasBeenSet; }
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>
154 CreateGuardrailRequest& WithBlockedInputMessaging(BlockedInputMessagingT&& value) { SetBlockedInputMessaging(std::forward<BlockedInputMessagingT>(value)); return *this;}
156
158
161 inline const Aws::String& GetBlockedOutputsMessaging() const { return m_blockedOutputsMessaging; }
162 inline bool BlockedOutputsMessagingHasBeenSet() const { return m_blockedOutputsMessagingHasBeenSet; }
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>
166 CreateGuardrailRequest& WithBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { SetBlockedOutputsMessaging(std::forward<BlockedOutputsMessagingT>(value)); return *this;}
168
170
173 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
174 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
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>
178 CreateGuardrailRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
180
182
185 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
186 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
190 CreateGuardrailRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
191 template<typename TagsT = Tag>
192 CreateGuardrailRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
194
196
203 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
204 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
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>
208 CreateGuardrailRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
210 private:
211
212 Aws::String m_name;
213 bool m_nameHasBeenSet = false;
214
215 Aws::String m_description;
216 bool m_descriptionHasBeenSet = false;
217
218 GuardrailTopicPolicyConfig m_topicPolicyConfig;
219 bool m_topicPolicyConfigHasBeenSet = false;
220
221 GuardrailContentPolicyConfig m_contentPolicyConfig;
222 bool m_contentPolicyConfigHasBeenSet = false;
223
224 GuardrailWordPolicyConfig m_wordPolicyConfig;
225 bool m_wordPolicyConfigHasBeenSet = false;
226
227 GuardrailSensitiveInformationPolicyConfig m_sensitiveInformationPolicyConfig;
228 bool m_sensitiveInformationPolicyConfigHasBeenSet = false;
229
230 GuardrailContextualGroundingPolicyConfig m_contextualGroundingPolicyConfig;
231 bool m_contextualGroundingPolicyConfigHasBeenSet = false;
232
233 GuardrailCrossRegionConfig m_crossRegionConfig;
234 bool m_crossRegionConfigHasBeenSet = false;
235
236 Aws::String m_blockedInputMessaging;
237 bool m_blockedInputMessagingHasBeenSet = false;
238
239 Aws::String m_blockedOutputsMessaging;
240 bool m_blockedOutputsMessagingHasBeenSet = false;
241
242 Aws::String m_kmsKeyId;
243 bool m_kmsKeyIdHasBeenSet = false;
244
245 Aws::Vector<Tag> m_tags;
246 bool m_tagsHasBeenSet = false;
247
248 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
249 bool m_clientRequestTokenHasBeenSet = true;
250 };
251
252} // namespace Model
253} // namespace Bedrock
254} // 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
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)
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