From ac58203a9054cc9d901429bdd94edfc0a7a1de46 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Fri, 1 Dec 2023 14:19:40 -0500 Subject: [PATCH] Release v1.48.11 (2023-12-01) (#5093) Release v1.48.11 (2023-12-01) === ### Service Client Updates * `service/qconnect`: Updates service API and documentation * `service/rbin`: Updates service API and documentation * `service/verifiedpermissions`: Updates service API and documentation --- CHANGELOG.md | 8 + aws/version.go | 2 +- models/apis/qconnect/2020-10-19/api-2.json | 80 + models/apis/qconnect/2020-10-19/docs-2.json | 50 +- models/apis/rbin/2021-06-15/api-2.json | 21 +- models/apis/rbin/2021-06-15/docs-2.json | 10 +- .../rbin/2021-06-15/endpoint-rule-set-1.json | 367 +++-- .../rbin/2021-06-15/endpoint-tests-1.json | 1333 ++--------------- .../verifiedpermissions/2021-12-01/api-2.json | 22 +- .../2021-12-01/docs-2.json | 13 +- service/qconnect/api.go | 391 ++++- service/qconnect/doc.go | 6 + service/qconnect/qconnectiface/interface.go | 4 + service/recyclebin/api.go | 58 + service/recyclebin/doc.go | 2 +- service/verifiedpermissions/api.go | 78 + 16 files changed, 1056 insertions(+), 1389 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a6b59bd632..ec9b9ba321a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +Release v1.48.11 (2023-12-01) +=== + +### Service Client Updates +* `service/qconnect`: Updates service API and documentation +* `service/rbin`: Updates service API and documentation +* `service/verifiedpermissions`: Updates service API and documentation + Release v1.48.10 (2023-11-30) === diff --git a/aws/version.go b/aws/version.go index 0d9b5ea6200..a52a0ea2fb2 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.48.10" +const SDKVersion = "1.48.11" diff --git a/models/apis/qconnect/2020-10-19/api-2.json b/models/apis/qconnect/2020-10-19/api-2.json index 7f800701f0a..580a49fab8d 100644 --- a/models/apis/qconnect/2020-10-19/api-2.json +++ b/models/apis/qconnect/2020-10-19/api-2.json @@ -465,6 +465,22 @@ ], "idempotent":true }, + "PutFeedback":{ + "name":"PutFeedback", + "http":{ + "method":"PUT", + "requestUri":"/assistants/{assistantId}/feedback", + "responseCode":200 + }, + "input":{"shape":"PutFeedbackRequest"}, + "output":{"shape":"PutFeedbackResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "QueryAssistant":{ "name":"QueryAssistant", "http":{ @@ -921,6 +937,13 @@ "textData":{"shape":"TextData"} } }, + "ContentFeedbackData":{ + "type":"structure", + "members":{ + "generativeContentFeedbackData":{"shape":"GenerativeContentFeedbackData"} + }, + "union":true + }, "ContentMetadata":{ "type":"map", "key":{"shape":"NonEmptyString"}, @@ -1383,6 +1406,13 @@ "type":"string", "enum":["EQUALS"] }, + "GenerativeContentFeedbackData":{ + "type":"structure", + "required":["relevance"], + "members":{ + "relevance":{"shape":"Relevance"} + } + }, "GenerativeDataDetails":{ "type":"structure", "required":[ @@ -2102,6 +2132,42 @@ "LOW" ] }, + "PutFeedbackRequest":{ + "type":"structure", + "required":[ + "assistantId", + "contentFeedback", + "targetId", + "targetType" + ], + "members":{ + "assistantId":{ + "shape":"UuidOrArn", + "location":"uri", + "locationName":"assistantId" + }, + "contentFeedback":{"shape":"ContentFeedbackData"}, + "targetId":{"shape":"Uuid"}, + "targetType":{"shape":"TargetType"} + } + }, + "PutFeedbackResponse":{ + "type":"structure", + "required":[ + "assistantArn", + "assistantId", + "contentFeedback", + "targetId", + "targetType" + ], + "members":{ + "assistantArn":{"shape":"UuidOrArn"}, + "assistantId":{"shape":"Uuid"}, + "contentFeedback":{"shape":"ContentFeedbackData"}, + "targetId":{"shape":"Uuid"}, + "targetType":{"shape":"TargetType"} + } + }, "QueryAssistantRequest":{ "type":"structure", "required":[ @@ -2527,6 +2593,13 @@ "GENERATIVE_ANSWER" ] }, + "Relevance":{ + "type":"string", + "enum":[ + "HELPFUL", + "NOT_HELPFUL" + ] + }, "RelevanceLevel":{ "type":"string", "enum":[ @@ -2903,6 +2976,13 @@ "key":{"shape":"TagKey"}, "value":{"shape":"TagValue"} }, + "TargetType":{ + "type":"string", + "enum":[ + "RECOMMENDATION", + "RESULT" + ] + }, "TextData":{ "type":"structure", "members":{ diff --git a/models/apis/qconnect/2020-10-19/docs-2.json b/models/apis/qconnect/2020-10-19/docs-2.json index 08a2b6dd4b3..c7092115882 100644 --- a/models/apis/qconnect/2020-10-19/docs-2.json +++ b/models/apis/qconnect/2020-10-19/docs-2.json @@ -1,12 +1,12 @@ { "version": "2.0", - "service": "<p>Amazon Q in Connect is a generative AI customer service assistant. It is an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time recommendations to help contact center agents resolve customer issues quickly and accurately.</p> <p>Amazon Q automatically detects customer intent during calls and chats using conversational analytics and natural language understanding (NLU). It then provides agents with immediate, real-time generative responses and suggested actions, and links to relevant documents and articles. Agents can also query Amazon Q directly using natural language or keywords to answer customer requests.</p> <p>Use the Amazon Q in Connect APIs to create an assistant and a knowledge base, for example, or manage content by uploading custom files.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/amazon-q-connect.html\">Use Amazon Q in Connect for generative AI powered agent assistance in real-time</a> in the <i>Amazon Connect Administrator Guide</i>.</p>", + "service": "<note> <p> <b>Powered by Amazon Bedrock</b>: Amazon Web Services implements <a href=\"https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html\">automated abuse detection</a>. Because Amazon Q in Connect is built on Amazon Bedrock, users can take full advantage of the controls implemented in Amazon Bedrock to enforce safety, security, and the responsible use of artificial intelligence (AI).</p> </note> <p>Amazon Q in Connect is a generative AI customer service assistant. It is an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time recommendations to help contact center agents resolve customer issues quickly and accurately.</p> <p>Amazon Q automatically detects customer intent during calls and chats using conversational analytics and natural language understanding (NLU). It then provides agents with immediate, real-time generative responses and suggested actions, and links to relevant documents and articles. Agents can also query Amazon Q directly using natural language or keywords to answer customer requests.</p> <p>Use the Amazon Q in Connect APIs to create an assistant and a knowledge base, for example, or manage content by uploading custom files.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/amazon-q-connect.html\">Use Amazon Q in Connect for generative AI powered agent assistance in real-time</a> in the <i>Amazon Connect Administrator Guide</i>.</p>", "operations": { "CreateAssistant": "<p>Creates an Amazon Q in Connect assistant.</p>", "CreateAssistantAssociation": "<p>Creates an association between an Amazon Q in Connect assistant and another resource. Currently, the only supported association is with a knowledge base. An assistant can have only a single association.</p>", "CreateContent": "<p>Creates Amazon Q content. Before to calling this API, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a> to upload an asset.</p>", "CreateKnowledgeBase": "<p>Creates a knowledge base.</p> <note> <p>When using this API, you cannot reuse <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/Welcome.html\">Amazon AppIntegrations</a> DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, you'll get an <code>InvalidRequestException</code> error. </p> <p>For example, you're programmatically managing your external knowledge base, and you want to add or remove one of the fields that is being ingested from Salesforce. Do the following:</p> <ol> <li> <p>Call <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_DeleteKnowledgeBase.html\">DeleteKnowledgeBase</a>.</p> </li> <li> <p>Call <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html\">DeleteDataIntegration</a>.</p> </li> <li> <p>Call <a href=\"https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html\">CreateDataIntegration</a> to recreate the DataIntegration or a create different one.</p> </li> <li> <p>Call CreateKnowledgeBase.</p> </li> </ol> </note>", - "CreateQuickResponse": "<p>Creates a Amazon Q quick response.</p>", + "CreateQuickResponse": "<p>Creates an Amazon Q quick response.</p>", "CreateSession": "<p>Creates a session. A session is a contextual container used for generating recommendations. Amazon Connect creates a new Amazon Q session for each contact on which Amazon Q is enabled.</p>", "DeleteAssistant": "<p>Deletes an assistant.</p>", "DeleteAssistantAssociation": "<p>Deletes an assistant association.</p>", @@ -31,10 +31,11 @@ "ListQuickResponses": "<p>Lists information about quick response.</p>", "ListTagsForResource": "<p>Lists the tags for the specified resource.</p>", "NotifyRecommendationsReceived": "<p>Removes the specified recommendations from the specified assistant's queue of newly available recommendations. You can use this API in conjunction with <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html\">GetRecommendations</a> and a <code>waitTimeSeconds</code> input for long-polling behavior and avoiding duplicate recommendations.</p>", + "PutFeedback": "<p>Provides feedback against the specified assistant for the specified target. This API only supports generative targets.</p>", "QueryAssistant": "<p>Performs a manual search against the specified assistant. To retrieve recommendations for an assistant, use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_GetRecommendations.html\">GetRecommendations</a>. </p>", "RemoveKnowledgeBaseTemplateUri": "<p>Removes a URI template from a knowledge base.</p>", "SearchContent": "<p>Searches for content in a specified knowledge base. Can be used to get a specific content resource by its name.</p>", - "SearchQuickResponses": "<p>Searches existing Amazon Q quick responses in a Amazon Q knowledge base.</p>", + "SearchQuickResponses": "<p>Searches existing Amazon Q quick responses in an Amazon Q knowledge base.</p>", "SearchSessions": "<p>Searches for sessions.</p>", "StartContentUpload": "<p>Get a URL to upload content to a knowledge base. To upload content, first make a PUT request to the returned URL with your file, making sure to include the required headers. Then use <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_CreateContent.html\">CreateContent</a> to finalize the content creation process or <a href=\"https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_UpdateContent.html\">UpdateContent</a> to modify an existing resource. You can only upload content to a knowledge base of type CUSTOM.</p>", "StartImportJob": "<p>Start an asynchronous job to import Amazon Q resources from an uploaded source file. Before calling this API, use <a href=\"https://docs.aws.amazon.com/wisdom/latest/APIReference/API_StartContentUpload.html\">StartContentUpload</a> to upload an asset that contains the resource data.</p> <ul> <li> <p>For importing Amazon Q quick responses, you need to upload a csv file including the quick responses. For information about how to format the csv file for importing quick responses, see <a href=\"https://docs.aws.amazon.com/console/connect/quick-responses/add-data\">Import quick responses</a>.</p> </li> </ul>", @@ -123,7 +124,7 @@ } }, "AssistantCapabilityConfiguration": { - "base": "<p>The capability configuration for a Amazon Q assistant. </p>", + "base": "<p>The capability configuration for an Amazon Q assistant. </p>", "refs": { "AssistantData$capabilityConfiguration": "<p>The configuration information for the Amazon Q assistant capability. </p>", "AssistantSummary$capabilityConfiguration": "<p>The configuration information for the Amazon Q assistant capability. </p>" @@ -281,6 +282,13 @@ "DataDetails$contentData": "<p>Details about the content data.</p>" } }, + "ContentFeedbackData": { + "base": "<p>Information about the feedback.</p>", + "refs": { + "PutFeedbackRequest$contentFeedback": "<p>Information about the feedback provided.</p>", + "PutFeedbackResponse$contentFeedback": "<p>Information about the feedback provided.</p>" + } + }, "ContentMetadata": { "base": null, "refs": { @@ -551,6 +559,12 @@ "Filter$operator": "<p>The operator to use for comparing the field’s value with the provided value.</p>" } }, + "GenerativeContentFeedbackData": { + "base": "<p>The feedback information for a generative target type.</p>", + "refs": { + "ContentFeedbackData$generativeContentFeedbackData": "<p>Information about the feedback for a generative target type.</p>" + } + }, "GenerativeDataDetails": { "base": "<p>Details about generative data.</p>", "refs": { @@ -1008,6 +1022,16 @@ "QuickResponseQueryField$priority": "<p>The importance of the attribute field when calculating query result relevancy scores. The value set for this parameter affects the ordering of search results.</p>" } }, + "PutFeedbackRequest": { + "base": null, + "refs": { + } + }, + "PutFeedbackResponse": { + "base": null, + "refs": { + } + }, "QueryAssistantRequest": { "base": null, "refs": { @@ -1315,6 +1339,12 @@ "RecommendationData$type": "<p>The type of recommendation.</p>" } }, + "Relevance": { + "base": null, + "refs": { + "GenerativeContentFeedbackData$relevance": "<p>The relevance of the feedback.</p>" + } + }, "RelevanceLevel": { "base": null, "refs": { @@ -1586,6 +1616,13 @@ "TagResourceRequest$tags": "<p>The tags used to organize, track, or control access for this resource.</p>" } }, + "TargetType": { + "base": null, + "refs": { + "PutFeedbackRequest$targetType": "<p>The type of the feedback target.</p>", + "PutFeedbackResponse$targetType": "<p>The type of the feedback target.</p>" + } + }, "TextData": { "base": "<p>Details about the source content text data.</p>", "refs": { @@ -1700,6 +1737,9 @@ "KnowledgeBaseAssociationData$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.</p>", "KnowledgeBaseData$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.</p>", "KnowledgeBaseSummary$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it.</p>", + "PutFeedbackRequest$targetId": "<p>The identifier of the feedback target.</p>", + "PutFeedbackResponse$assistantId": "<p>The identifier of the Amazon Q assistant.</p>", + "PutFeedbackResponse$targetId": "<p>The identifier of the feedback target.</p>", "QuickResponseData$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", "QuickResponseData$quickResponseId": "<p>The identifier of the quick response.</p>", "QuickResponseSearchResultData$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", @@ -1751,6 +1791,8 @@ "ListQuickResponsesRequest$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", "NotifyRecommendationsReceivedRequest$assistantId": "<p>The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", "NotifyRecommendationsReceivedRequest$sessionId": "<p>The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", + "PutFeedbackRequest$assistantId": "<p>The identifier of the Amazon Q assistant.</p>", + "PutFeedbackResponse$assistantArn": "<p>The Amazon Resource Name (ARN) of the Amazon Q assistant.</p>", "QueryAssistantRequest$assistantId": "<p>The identifier of the Amazon Q assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", "QueryAssistantRequest$sessionId": "<p>The identifier of the Amazon Q session. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", "RemoveKnowledgeBaseTemplateUriRequest$knowledgeBaseId": "<p>The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Amazon Q Content resource to it. Can be either the ID or the ARN. URLs cannot contain the ARN.</p>", diff --git a/models/apis/rbin/2021-06-15/api-2.json b/models/apis/rbin/2021-06-15/api-2.json index 9e2bcb7c66b..8f0d93b453a 100644 --- a/models/apis/rbin/2021-06-15/api-2.json +++ b/models/apis/rbin/2021-06-15/api-2.json @@ -163,7 +163,8 @@ {"shape":"ValidationException"}, {"shape":"InternalServerException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ConflictException"} + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"} ] } }, @@ -207,7 +208,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "DeleteRuleRequest":{ @@ -253,7 +255,8 @@ "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "InternalServerException":{ @@ -332,7 +335,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "LockState":{ @@ -437,7 +441,8 @@ "Identifier":{"shape":"RuleIdentifier"}, "Description":{"shape":"Description"}, "RetentionPeriod":{"shape":"RetentionPeriod"}, - "LockState":{"shape":"LockState"} + "LockState":{"shape":"LockState"}, + "RuleArn":{"shape":"RuleArn"} } }, "RuleSummaryList":{ @@ -555,7 +560,8 @@ "Status":{"shape":"RuleStatus"}, "LockConfiguration":{"shape":"LockConfiguration"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "UntagResourceRequest":{ @@ -607,7 +613,8 @@ "ResourceTags":{"shape":"ResourceTags"}, "Status":{"shape":"RuleStatus"}, "LockState":{"shape":"LockState"}, - "LockEndTime":{"shape":"TimeStamp"} + "LockEndTime":{"shape":"TimeStamp"}, + "RuleArn":{"shape":"RuleArn"} } }, "ValidationException":{ diff --git a/models/apis/rbin/2021-06-15/docs-2.json b/models/apis/rbin/2021-06-15/docs-2.json index a0ec58f5c6b..87d5beb834c 100644 --- a/models/apis/rbin/2021-06-15/docs-2.json +++ b/models/apis/rbin/2021-06-15/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "<p>This is the <i>Recycle Bin API Reference</i>. This documentation provides descriptions and syntax for each of the actions and data types in Recycle Bin.</p> <p>Recycle Bin is a resource recovery feature that enables you to restore accidentally deleted snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify.</p> <p>You can restore a resource from the Recycle Bin at any time before its retention period expires. After you restore a resource from the Recycle Bin, the resource is removed from the Recycle Bin, and you can then use it in the same way you use any other resource of that type in your account. If the retention period expires and the resource is not restored, the resource is permanently deleted from the Recycle Bin and is no longer available for recovery. For more information about Recycle Bin, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-recycle-bin.html\"> Recycle Bin</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>", + "service": "<p>This is the <i>Recycle Bin API Reference</i>. This documentation provides descriptions and syntax for each of the actions and data types in Recycle Bin.</p> <p>Recycle Bin is a resource recovery feature that enables you to restore accidentally deleted snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify.</p> <p>You can restore a resource from the Recycle Bin at any time before its retention period expires. After you restore a resource from the Recycle Bin, the resource is removed from the Recycle Bin, and you can then use it in the same way you use any other resource of that type in your account. If the retention period expires and the resource is not restored, the resource is permanently deleted from the Recycle Bin and is no longer available for recovery. For more information about Recycle Bin, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html\"> Recycle Bin</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>", "operations": { "CreateRule": "<p>Creates a Recycle Bin retention rule. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin-working-with-rules.html#recycle-bin-create-rule\"> Create Recycle Bin retention rules</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>", "DeleteRule": "<p>Deletes a Recycle Bin retention rule. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin-working-with-rules.html#recycle-bin-delete-rule\"> Delete Recycle Bin retention rules</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>", @@ -232,9 +232,15 @@ "RuleArn": { "base": null, "refs": { + "CreateRuleResponse$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", + "GetRuleResponse$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", "ListTagsForResourceRequest$ResourceArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", + "LockRuleResponse$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", + "RuleSummary$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", "TagResourceRequest$ResourceArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", - "UntagResourceRequest$ResourceArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>" + "UnlockRuleResponse$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", + "UntagResourceRequest$ResourceArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>", + "UpdateRuleResponse$RuleArn": "<p>The Amazon Resource Name (ARN) of the retention rule.</p>" } }, "RuleIdentifier": { diff --git a/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json b/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json index 840204cdf88..0b0464f782c 100644 --- a/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json +++ b/models/apis/rbin/2021-06-15/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,38 +32,83 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "parseURL", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "Endpoint" + "ref": "Region" } ], - "assign": "url" + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -75,158 +120,103 @@ }, true ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://rbin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "type": "tree" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://rbin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", + ], "rules": [ { "conditions": [], @@ -237,79 +227,88 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://rbin.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://rbin.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://rbin.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://rbin.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/rbin/2021-06-15/endpoint-tests-1.json b/models/apis/rbin/2021-06-15/endpoint-tests-1.json index 28b11282600..807fbef5e61 100644 --- a/models/apis/rbin/2021-06-15/endpoint-tests-1.json +++ b/models/apis/rbin/2021-06-15/endpoint-tests-1.json @@ -1,1574 +1,539 @@ { "testCases": [ { - "documentation": "For region ap-south-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-2.api.aws" - } - }, - "params": { - "Region": "ap-south-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-2.amazonaws.com" - } - }, - "params": { - "Region": "ap-south-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-south-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-south-2.api.aws" - } - }, - "params": { - "Region": "ap-south-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-south-2.amazonaws.com" - } - }, - "params": { - "Region": "ap-south-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-1.api.aws" - } - }, - "params": { - "Region": "ap-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-south-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-south-1.api.aws" - } - }, - "params": { - "Region": "ap-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-south-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-south-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-1.api.aws" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-1.api.aws" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-2.api.aws" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-south-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-2.api.aws" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-south-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-south-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-east-1.api.aws" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-gov-east-1.api.aws" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region me-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-central-1.api.aws" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region me-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.me-central-1.amazonaws.com" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.me-central-1.api.aws" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.me-central-1.amazonaws.com" - } - }, - "params": { - "Region": "me-central-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ca-central-1.api.aws" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ca-central-1.api.aws" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ca-central-1.amazonaws.com" - } - }, - "params": { - "Region": "ca-central-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-1.api.aws" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-1.api.aws" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-2.api.aws" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-central-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-central-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-2.api.aws" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-central-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-central-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-central-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-1.api.aws" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-1.api.aws" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-west-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-2.api.aws" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-2.api.aws" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.af-south-1.api.aws" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.af-south-1.amazonaws.com" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.af-south-1.api.aws" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.af-south-1.amazonaws.com" - } - }, - "params": { - "Region": "af-south-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-north-1.api.aws" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-north-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-north-1.api.aws" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-north-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-north-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-3.api.aws" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-3.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-3.api.aws" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-3.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-3", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-2.api.aws" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-2.api.aws" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-2.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-1.api.aws" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.eu-west-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-1.api.aws" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.eu-west-1.amazonaws.com" - } - }, - "params": { - "Region": "eu-west-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-3.api.aws" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-3.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-3.api.aws" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-3.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-3", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-2.api.aws" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-2.api.aws" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-2", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-northeast-1.api.aws" - } - }, - "params": { - "Region": "ap-northeast-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-northeast-1.amazonaws.com" + "url": "https://rbin.af-south-1.amazonaws.com" } }, "params": { - "Region": "ap-northeast-1", + "Region": "af-south-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.me-south-1.api.aws" + "url": "https://rbin.ap-east-1.amazonaws.com" } }, "params": { - "Region": "me-south-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "ap-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.me-south-1.amazonaws.com" + "url": "https://rbin.ap-northeast-1.amazonaws.com" } }, "params": { - "Region": "me-south-1", - "UseFIPS": true, + "Region": "ap-northeast-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.me-south-1.api.aws" + "url": "https://rbin.ap-northeast-2.amazonaws.com" } }, "params": { - "Region": "me-south-1", + "Region": "ap-northeast-2", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.me-south-1.amazonaws.com" + "url": "https://rbin.ap-northeast-3.amazonaws.com" } }, "params": { - "Region": "me-south-1", + "Region": "ap-northeast-3", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.sa-east-1.api.aws" + "url": "https://rbin.ap-south-1.amazonaws.com" } }, "params": { - "Region": "sa-east-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.sa-east-1.amazonaws.com" + "url": "https://rbin.ap-southeast-1.amazonaws.com" } }, "params": { - "Region": "sa-east-1", - "UseFIPS": true, + "Region": "ap-southeast-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.sa-east-1.api.aws" + "url": "https://rbin.ap-southeast-2.amazonaws.com" } }, "params": { - "Region": "sa-east-1", + "Region": "ap-southeast-2", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.sa-east-1.amazonaws.com" + "url": "https://rbin.ca-central-1.amazonaws.com" } }, "params": { - "Region": "sa-east-1", + "Region": "ca-central-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-east-1.api.aws" + "url": "https://rbin.eu-central-1.amazonaws.com" } }, "params": { - "Region": "ap-east-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-east-1.amazonaws.com" + "url": "https://rbin.eu-north-1.amazonaws.com" } }, "params": { - "Region": "ap-east-1", - "UseFIPS": true, + "Region": "eu-north-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-east-1.api.aws" + "url": "https://rbin.eu-south-1.amazonaws.com" } }, "params": { - "Region": "ap-east-1", + "Region": "eu-south-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-east-1.amazonaws.com" + "url": "https://rbin.eu-west-1.amazonaws.com" } }, "params": { - "Region": "ap-east-1", + "Region": "eu-west-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://rbin.eu-west-2.amazonaws.com" } }, "params": { - "Region": "cn-north-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.cn-north-1.amazonaws.com.cn" + "url": "https://rbin.eu-west-3.amazonaws.com" } }, "params": { - "Region": "cn-north-1", - "UseFIPS": true, + "Region": "eu-west-3", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://rbin.me-south-1.amazonaws.com" } }, "params": { - "Region": "cn-north-1", + "Region": "me-south-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.cn-north-1.amazonaws.com.cn" + "url": "https://rbin.sa-east-1.amazonaws.com" } }, "params": { - "Region": "cn-north-1", + "Region": "sa-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.us-gov-west-1.api.aws" + "url": "https://rbin.us-east-1.amazonaws.com" } }, "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.us-gov-west-1.amazonaws.com" + "url": "https://rbin.us-east-2.amazonaws.com" } }, "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, + "Region": "us-east-2", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-gov-west-1.api.aws" + "url": "https://rbin.us-west-1.amazonaws.com" } }, "params": { - "Region": "us-gov-west-1", + "Region": "us-west-1", "UseFIPS": false, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-gov-west-1.amazonaws.com" + "url": "https://rbin.us-west-2.amazonaws.com" } }, "params": { - "Region": "us-gov-west-1", + "Region": "us-west-2", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-1.api.aws" + "url": "https://rbin-fips.us-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-1.amazonaws.com" + "url": "https://rbin-fips.us-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-1.api.aws" + "url": "https://rbin.us-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-1", + "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin.ap-southeast-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-southeast-1", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-2.api.aws" + "url": "https://rbin-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "ap-southeast-2", + "Region": "cn-north-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-2.amazonaws.com" + "url": "https://rbin-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "ap-southeast-2", + "Region": "cn-north-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-2.api.aws" + "url": "https://rbin.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "ap-southeast-2", + "Region": "cn-north-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-2.amazonaws.com" + "url": "https://rbin.cn-north-1.amazonaws.com.cn" } }, "params": { - "Region": "ap-southeast-2", + "Region": "cn-north-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-3.api.aws" + "url": "https://rbin-fips.us-gov-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.ap-southeast-3.amazonaws.com" + "url": "https://rbin-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-3.api.aws" + "url": "https://rbin.us-gov-east-1.api.aws" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.ap-southeast-3.amazonaws.com" + "url": "https://rbin.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "ap-southeast-3", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.us-east-1.amazonaws.com" + "url": "https://rbin-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-east-1.amazonaws.com" + "url": "https://rbin.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-east-1", + "Region": "us-iso-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin-fips.us-east-2.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "us-east-2", + "Region": "us-isob-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin-fips.us-east-2.amazonaws.com" + "url": "https://rbin-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "Region": "us-east-2", + "Region": "us-isob-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://rbin.us-east-2.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "Region": "us-east-2", + "Region": "us-isob-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://rbin.us-east-2.amazonaws.com" + "url": "https://rbin.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "Region": "us-east-2", + "Region": "us-isob-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.cn-northwest-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://rbin-fips.cn-northwest-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://rbin.cn-northwest-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-northwest-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://rbin.cn-northwest-1.amazonaws.com.cn" + "url": "https://example.com" } }, "params": { - "Region": "cn-northwest-1", + "Region": "us-east-1", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": false, + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Endpoint": "https://example.com" @@ -1597,6 +562,12 @@ "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/verifiedpermissions/2021-12-01/api-2.json b/models/apis/verifiedpermissions/2021-12-01/api-2.json index 6ca08888f27..e56db0b1a09 100644 --- a/models/apis/verifiedpermissions/2021-12-01/api-2.json +++ b/models/apis/verifiedpermissions/2021-12-01/api-2.json @@ -674,7 +674,8 @@ "shape":"IdempotencyToken", "idempotencyToken":true }, - "validationSettings":{"shape":"ValidationSettings"} + "validationSettings":{"shape":"ValidationSettings"}, + "description":{"shape":"PolicyStoreDescription"} } }, "CreatePolicyStoreOutput":{ @@ -960,7 +961,8 @@ "arn":{"shape":"ResourceArn"}, "validationSettings":{"shape":"ValidationSettings"}, "createdDate":{"shape":"TimestampFormat"}, - "lastUpdatedDate":{"shape":"TimestampFormat"} + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "description":{"shape":"PolicyStoreDescription"} } }, "GetPolicyTemplateInput":{ @@ -1011,7 +1013,8 @@ "policyStoreId":{"shape":"PolicyStoreId"}, "schema":{"shape":"SchemaJson"}, "createdDate":{"shape":"TimestampFormat"}, - "lastUpdatedDate":{"shape":"TimestampFormat"} + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "namespaces":{"shape":"NamespaceList"} } }, "IdempotencyToken":{ @@ -1322,6 +1325,12 @@ "min":1, "sensitive":true }, + "PolicyStoreDescription":{ + "type":"string", + "max":150, + "min":0, + "sensitive":true + }, "PolicyStoreId":{ "type":"string", "max":200, @@ -1338,7 +1347,9 @@ "members":{ "policyStoreId":{"shape":"PolicyStoreId"}, "arn":{"shape":"ResourceArn"}, - "createdDate":{"shape":"TimestampFormat"} + "createdDate":{"shape":"TimestampFormat"}, + "lastUpdatedDate":{"shape":"TimestampFormat"}, + "description":{"shape":"PolicyStoreDescription"} } }, "PolicyStoreList":{ @@ -1672,7 +1683,8 @@ ], "members":{ "policyStoreId":{"shape":"PolicyStoreId"}, - "validationSettings":{"shape":"ValidationSettings"} + "validationSettings":{"shape":"ValidationSettings"}, + "description":{"shape":"PolicyStoreDescription"} } }, "UpdatePolicyStoreOutput":{ diff --git a/models/apis/verifiedpermissions/2021-12-01/docs-2.json b/models/apis/verifiedpermissions/2021-12-01/docs-2.json index 0fc1b1aeb77..4388b9ce323 100644 --- a/models/apis/verifiedpermissions/2021-12-01/docs-2.json +++ b/models/apis/verifiedpermissions/2021-12-01/docs-2.json @@ -2,7 +2,7 @@ "version": "2.0", "service": "<p>Amazon Verified Permissions is a permissions management service from Amazon Web Services. You can use Verified Permissions to manage permissions for your application, and authorize user access based on those permissions. Using Verified Permissions, application developers can grant access based on information about the users, resources, and requested actions. You can also evaluate additional information like group membership, attributes of the resources, and session context, such as time of request and IP addresses. Verified Permissions manages these permissions by letting you create and store authorization policies for your applications, such as consumer-facing web sites and enterprise business systems.</p> <p>Verified Permissions uses Cedar as the policy language to express your permission requirements. Cedar supports both role-based access control (RBAC) and attribute-based access control (ABAC) authorization models.</p> <p>For more information about configuring, administering, and using Amazon Verified Permissions in your applications, see the <a href=\"https://docs.aws.amazon.com/verifiedpermissions/latest/userguide/\">Amazon Verified Permissions User Guide</a>.</p> <p>For more information about the Cedar policy language, see the <a href=\"https://docs.cedarpolicy.com/\">Cedar Policy Language Guide</a>.</p> <important> <p>When you write Cedar policies that reference principals, resources and actions, you can define the unique identifiers used for each of those elements. We strongly recommend that you follow these best practices:</p> <ul> <li> <p> <b>Use values like universally unique identifiers (UUIDs) for all principal and resource identifiers.</b> </p> <p>For example, if user <code>jane</code> leaves the company, and you later let someone else use the name <code>jane</code>, then that new user automatically gets access to everything granted by policies that still reference <code>User::\"jane\"</code>. Cedar can’t distinguish between the new user and the old. This applies to both principal and resource identifiers. Always use identifiers that are guaranteed unique and never reused to ensure that you don’t unintentionally grant access because of the presence of an old identifier in a policy.</p> <p>Where you use a UUID for an entity, we recommend that you follow it with the // comment specifier and the ‘friendly’ name of your entity. This helps to make your policies easier to understand. For example: principal == User::\"a1b2c3d4-e5f6-a1b2-c3d4-EXAMPLE11111\", // alice</p> </li> <li> <p> <b>Do not include personally identifying, confidential, or sensitive information as part of the unique identifier for your principals or resources.</b> These identifiers are included in log entries shared in CloudTrail trails.</p> </li> </ul> </important> <p>Several operations return structures that appear similar, but have different purposes. As new functionality is added to the product, the structure used in a parameter of one operation might need to change in a way that wouldn't make sense for the same parameter in a different operation. To help you understand the purpose of each, the following naming convention is used for the structures:</p> <ul> <li> <p>Parameter type structures that end in <code>Detail</code> are used in <code>Get</code> operations.</p> </li> <li> <p>Parameter type structures that end in <code>Item</code> are used in <code>List</code> operations.</p> </li> <li> <p>Parameter type structures that use neither suffix are used in the mutating (create and update) operations.</p> </li> </ul>", "operations": { - "BatchIsAuthorized": "<p>Makes a series of decisions about multiple authorization requests for one principal or resource. Each request contains the equivalent content of an <code>IsAuthorized</code> request: principal, action, resource, and context. Either the <code>principal</code> or the <code>resource</code> parameter must be identical across all requests. For example, Verified Permissions won't evaluate a pair of requests where <code>bob</code> views <code>photo1</code> and <code>alice</code> views <code>photo2</code>. Authorization of <code>bob</code> to view <code>photo1</code> and <code>photo2</code>, or <code>bob</code> and <code>alice</code> to view <code>photo1</code>, are valid batches. </p> <p>The request is evaluated against all policies in the specified policy store that match the entities that you declare. The result of the decisions is a series of <code>Allow</code> or <code>Deny</code> responses, along with the IDs of the policies that produced each decision.</p> <p>The <code>entities</code> of a <code>BatchIsAuthorized</code> API request can contain up to 100 principals and up to 100 resources. The <code>requests</code> of a <code>BatchIsAuthorized</code> API request can contain up to 30 requests.</p>", + "BatchIsAuthorized": "<p>Makes a series of decisions about multiple authorization requests for one principal or resource. Each request contains the equivalent content of an <code>IsAuthorized</code> request: principal, action, resource, and context. Either the <code>principal</code> or the <code>resource</code> parameter must be identical across all requests. For example, Verified Permissions won't evaluate a pair of requests where <code>bob</code> views <code>photo1</code> and <code>alice</code> views <code>photo2</code>. Authorization of <code>bob</code> to view <code>photo1</code> and <code>photo2</code>, or <code>bob</code> and <code>alice</code> to view <code>photo1</code>, are valid batches. </p> <p>The request is evaluated against all policies in the specified policy store that match the entities that you declare. The result of the decisions is a series of <code>Allow</code> or <code>Deny</code> responses, along with the IDs of the policies that produced each decision.</p> <p>The <code>entities</code> of a <code>BatchIsAuthorized</code> API request can contain up to 100 principals and up to 100 resources. The <code>requests</code> of a <code>BatchIsAuthorized</code> API request can contain up to 30 requests.</p> <note> <p>The <code>BatchIsAuthorized</code> operation doesn't have its own IAM permission. To authorize this operation for Amazon Web Services principals, include the permission <code>verifiedpermissions:IsAuthorized</code> in their IAM policies.</p> </note>", "CreateIdentitySource": "<p>Creates a reference to an Amazon Cognito user pool as an external identity provider (IdP). </p> <p>After you create an identity source, you can use the identities provided by the IdP as proxies for the principal in authorization queries that use the <a href=\"https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html\">IsAuthorizedWithToken</a> operation. These identities take the form of tokens that contain claims about the user, such as IDs, attributes and group memberships. Amazon Cognito provides both identity tokens and access tokens, and Verified Permissions can use either or both. Any combination of identity and access tokens results in the same Cedar principal. Verified Permissions automatically translates the information about the identities into the standard Cedar attributes that can be evaluated by your policies. Because the Amazon Cognito identity and access tokens can contain different information, the tokens you choose to use determine which principal attributes are available to access when evaluating Cedar policies.</p> <important> <p>If you delete a Amazon Cognito user pool or user, tokens from that deleted pool or that deleted user continue to be usable until they expire.</p> </important> <note> <p>To reference a user from this identity source in your Cedar policies, use the following syntax.</p> <p> <i>IdentityType::\"<CognitoUserPoolIdentifier>|<CognitoClientId></i> </p> <p>Where <code>IdentityType</code> is the string that you provide to the <code>PrincipalEntityType</code> parameter for this operation. The <code>CognitoUserPoolId</code> and <code>CognitoClientId</code> are defined by the Amazon Cognito user pool.</p> </note> <note> <p>Verified Permissions is <i> <a href=\"https://wikipedia.org/wiki/Eventual_consistency\">eventually consistent</a> </i>. It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.</p> </note>", "CreatePolicy": "<p>Creates a Cedar policy and saves it in the specified policy store. You can create either a static policy or a policy linked to a policy template.</p> <ul> <li> <p>To create a static policy, provide the Cedar policy text in the <code>StaticPolicy</code> section of the <code>PolicyDefinition</code>.</p> </li> <li> <p>To create a policy that is dynamically linked to a policy template, specify the policy template ID and the principal and resource to associate with this policy in the <code>templateLinked</code> section of the <code>PolicyDefinition</code>. If the policy template is ever updated, any policies linked to the policy template automatically use the updated template.</p> </li> </ul> <note> <p>Creating a policy causes it to be validated against the schema in the policy store. If the policy doesn't pass validation, the operation fails and the policy isn't stored.</p> </note> <note> <p>Verified Permissions is <i> <a href=\"https://wikipedia.org/wiki/Eventual_consistency\">eventually consistent</a> </i>. It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.</p> </note>", "CreatePolicyStore": "<p>Creates a policy store. A policy store is a container for policy resources.</p> <note> <p>Although <a href=\"https://docs.cedarpolicy.com/schema/schema.html#namespace\">Cedar supports multiple namespaces</a>, Verified Permissions currently supports only one namespace per policy store.</p> </note> <note> <p>Verified Permissions is <i> <a href=\"https://wikipedia.org/wiki/Eventual_consistency\">eventually consistent</a> </i>. It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.</p> </note>", @@ -553,6 +553,7 @@ "NamespaceList": { "base": null, "refs": { + "GetSchemaOutput$namespaces": "<p>The namespaces of the entities referenced by this schema.</p>", "PutSchemaOutput$namespaces": "<p>Identifies the namespaces of the entities referenced by this schema.</p>" } }, @@ -642,6 +643,15 @@ "UpdateStaticPolicyDefinition$statement": "<p>Specifies the Cedar policy language text to be added to or replaced on the static policy.</p> <important> <p>You can change only the following elements from the original content:</p> <ul> <li> <p>The <code>action</code> referenced by the policy.</p> </li> <li> <p>Any conditional clauses, such as <code>when</code> or <code>unless</code> clauses.</p> </li> </ul> <p>You <b>can't</b> change the following elements:</p> <ul> <li> <p>Changing from <code>StaticPolicy</code> to <code>TemplateLinkedPolicy</code>.</p> </li> <li> <p>The effect (<code>permit</code> or <code>forbid</code>) of the policy.</p> </li> <li> <p>The <code>principal</code> referenced by the policy.</p> </li> <li> <p>The <code>resource</code> referenced by the policy.</p> </li> </ul> </important>" } }, + "PolicyStoreDescription": { + "base": null, + "refs": { + "CreatePolicyStoreInput$description": "<p>Descriptive text that you can provide to help with identification of the current policy store.</p>", + "GetPolicyStoreOutput$description": "<p>Descriptive text that you can provide to help with identification of the current policy store.</p>", + "PolicyStoreItem$description": "<p>Descriptive text that you can provide to help with identification of the current policy store.</p>", + "UpdatePolicyStoreInput$description": "<p>Descriptive text that you can provide to help with identification of the current policy store.</p>" + } + }, "PolicyStoreId": { "base": null, "refs": { @@ -938,6 +948,7 @@ "PolicyItem$createdDate": "<p>The date and time the policy was created.</p>", "PolicyItem$lastUpdatedDate": "<p>The date and time the policy was most recently updated.</p>", "PolicyStoreItem$createdDate": "<p>The date and time the policy was created.</p>", + "PolicyStoreItem$lastUpdatedDate": "<p>The date and time the policy store was most recently updated.</p>", "PolicyTemplateItem$createdDate": "<p>The date and time that the policy template was created.</p>", "PolicyTemplateItem$lastUpdatedDate": "<p>The date and time that the policy template was most recently updated.</p>", "PutSchemaOutput$createdDate": "<p>The date and time that the schema was originally created.</p>", diff --git a/service/qconnect/api.go b/service/qconnect/api.go index 2ea0f192ec0..cbdb4f0a620 100644 --- a/service/qconnect/api.go +++ b/service/qconnect/api.go @@ -455,7 +455,7 @@ func (c *QConnect) CreateQuickResponseRequest(input *CreateQuickResponseInput) ( // CreateQuickResponse API operation for Amazon Q Connect. // -// Creates a Amazon Q quick response. +// Creates an Amazon Q quick response. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2915,6 +2915,92 @@ func (c *QConnect) NotifyRecommendationsReceivedWithContext(ctx aws.Context, inp return out, req.Send() } +const opPutFeedback = "PutFeedback" + +// PutFeedbackRequest generates a "aws/request.Request" representing the +// client's request for the PutFeedback operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutFeedback for more information on using the PutFeedback +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the PutFeedbackRequest method. +// req, resp := client.PutFeedbackRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/PutFeedback +func (c *QConnect) PutFeedbackRequest(input *PutFeedbackInput) (req *request.Request, output *PutFeedbackOutput) { + op := &request.Operation{ + Name: opPutFeedback, + HTTPMethod: "PUT", + HTTPPath: "/assistants/{assistantId}/feedback", + } + + if input == nil { + input = &PutFeedbackInput{} + } + + output = &PutFeedbackOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutFeedback API operation for Amazon Q Connect. +// +// Provides feedback against the specified assistant for the specified target. +// This API only supports generative targets. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Q Connect's +// API operation PutFeedback for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by a service. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The specified resource does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/PutFeedback +func (c *QConnect) PutFeedback(input *PutFeedbackInput) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + return out, req.Send() +} + +// PutFeedbackWithContext is the same as PutFeedback with the addition of +// the ability to pass a context and additional request options. +// +// See PutFeedback for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *QConnect) PutFeedbackWithContext(ctx aws.Context, input *PutFeedbackInput, opts ...request.Option) (*PutFeedbackOutput, error) { + req, out := c.PutFeedbackRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opQueryAssistant = "QueryAssistant" // QueryAssistantRequest generates a "aws/request.Request" representing the @@ -3342,7 +3428,7 @@ func (c *QConnect) SearchQuickResponsesRequest(input *SearchQuickResponsesInput) // SearchQuickResponses API operation for Amazon Q Connect. // -// Searches existing Amazon Q quick responses in a Amazon Q knowledge base. +// Searches existing Amazon Q quick responses in an Amazon Q knowledge base. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4642,7 +4728,7 @@ func (s *AssistantAssociationSummary) SetTags(v map[string]*string) *AssistantAs return s } -// The capability configuration for a Amazon Q assistant. +// The capability configuration for an Amazon Q assistant. type AssistantCapabilityConfiguration struct { _ struct{} `type:"structure"` @@ -5357,6 +5443,53 @@ func (s *ContentDataDetails) SetTextData(v *TextData) *ContentDataDetails { return s } +// Information about the feedback. +type ContentFeedbackData struct { + _ struct{} `type:"structure"` + + // Information about the feedback for a generative target type. + GenerativeContentFeedbackData *GenerativeContentFeedbackData `locationName:"generativeContentFeedbackData" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentFeedbackData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ContentFeedbackData) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ContentFeedbackData) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ContentFeedbackData"} + if s.GenerativeContentFeedbackData != nil { + if err := s.GenerativeContentFeedbackData.Validate(); err != nil { + invalidParams.AddNested("GenerativeContentFeedbackData", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGenerativeContentFeedbackData sets the GenerativeContentFeedbackData field's value. +func (s *ContentFeedbackData) SetGenerativeContentFeedbackData(v *GenerativeContentFeedbackData) *ContentFeedbackData { + s.GenerativeContentFeedbackData = v + return s +} + // Reference information about the content. type ContentReference struct { _ struct{} `type:"structure"` @@ -7456,6 +7589,53 @@ func (s *Filter) SetValue(v string) *Filter { return s } +// The feedback information for a generative target type. +type GenerativeContentFeedbackData struct { + _ struct{} `type:"structure"` + + // The relevance of the feedback. + // + // Relevance is a required field + Relevance *string `locationName:"relevance" type:"string" required:"true" enum:"Relevance"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeContentFeedbackData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GenerativeContentFeedbackData) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GenerativeContentFeedbackData) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GenerativeContentFeedbackData"} + if s.Relevance == nil { + invalidParams.Add(request.NewErrParamRequired("Relevance")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRelevance sets the Relevance field's value. +func (s *GenerativeContentFeedbackData) SetRelevance(v string) *GenerativeContentFeedbackData { + s.Relevance = &v + return s +} + // Details about generative data. type GenerativeDataDetails struct { _ struct{} `type:"structure"` @@ -10155,6 +10335,179 @@ func (s *PreconditionFailedException) RequestID() string { return s.RespMetadata.RequestID } +type PutFeedbackInput struct { + _ struct{} `type:"structure"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `location:"uri" locationName:"assistantId" type:"string" required:"true"` + + // Information about the feedback provided. + // + // ContentFeedback is a required field + ContentFeedback *ContentFeedbackData `locationName:"contentFeedback" type:"structure" required:"true"` + + // The identifier of the feedback target. + // + // TargetId is a required field + TargetId *string `locationName:"targetId" type:"string" required:"true"` + + // The type of the feedback target. + // + // TargetType is a required field + TargetType *string `locationName:"targetType" type:"string" required:"true" enum:"TargetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutFeedbackInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutFeedbackInput"} + if s.AssistantId == nil { + invalidParams.Add(request.NewErrParamRequired("AssistantId")) + } + if s.AssistantId != nil && len(*s.AssistantId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssistantId", 1)) + } + if s.ContentFeedback == nil { + invalidParams.Add(request.NewErrParamRequired("ContentFeedback")) + } + if s.TargetId == nil { + invalidParams.Add(request.NewErrParamRequired("TargetId")) + } + if s.TargetType == nil { + invalidParams.Add(request.NewErrParamRequired("TargetType")) + } + if s.ContentFeedback != nil { + if err := s.ContentFeedback.Validate(); err != nil { + invalidParams.AddNested("ContentFeedback", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssistantId sets the AssistantId field's value. +func (s *PutFeedbackInput) SetAssistantId(v string) *PutFeedbackInput { + s.AssistantId = &v + return s +} + +// SetContentFeedback sets the ContentFeedback field's value. +func (s *PutFeedbackInput) SetContentFeedback(v *ContentFeedbackData) *PutFeedbackInput { + s.ContentFeedback = v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *PutFeedbackInput) SetTargetId(v string) *PutFeedbackInput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *PutFeedbackInput) SetTargetType(v string) *PutFeedbackInput { + s.TargetType = &v + return s +} + +type PutFeedbackOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Amazon Q assistant. + // + // AssistantArn is a required field + AssistantArn *string `locationName:"assistantArn" type:"string" required:"true"` + + // The identifier of the Amazon Q assistant. + // + // AssistantId is a required field + AssistantId *string `locationName:"assistantId" type:"string" required:"true"` + + // Information about the feedback provided. + // + // ContentFeedback is a required field + ContentFeedback *ContentFeedbackData `locationName:"contentFeedback" type:"structure" required:"true"` + + // The identifier of the feedback target. + // + // TargetId is a required field + TargetId *string `locationName:"targetId" type:"string" required:"true"` + + // The type of the feedback target. + // + // TargetType is a required field + TargetType *string `locationName:"targetType" type:"string" required:"true" enum:"TargetType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutFeedbackOutput) GoString() string { + return s.String() +} + +// SetAssistantArn sets the AssistantArn field's value. +func (s *PutFeedbackOutput) SetAssistantArn(v string) *PutFeedbackOutput { + s.AssistantArn = &v + return s +} + +// SetAssistantId sets the AssistantId field's value. +func (s *PutFeedbackOutput) SetAssistantId(v string) *PutFeedbackOutput { + s.AssistantId = &v + return s +} + +// SetContentFeedback sets the ContentFeedback field's value. +func (s *PutFeedbackOutput) SetContentFeedback(v *ContentFeedbackData) *PutFeedbackOutput { + s.ContentFeedback = v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *PutFeedbackOutput) SetTargetId(v string) *PutFeedbackOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *PutFeedbackOutput) SetTargetType(v string) *PutFeedbackOutput { + s.TargetType = &v + return s +} + type QueryAssistantInput struct { _ struct{} `type:"structure"` @@ -14711,6 +15064,22 @@ func RecommendationType_Values() []string { } } +const ( + // RelevanceHelpful is a Relevance enum value + RelevanceHelpful = "HELPFUL" + + // RelevanceNotHelpful is a Relevance enum value + RelevanceNotHelpful = "NOT_HELPFUL" +) + +// Relevance_Values returns all elements of the Relevance enum +func Relevance_Values() []string { + return []string{ + RelevanceHelpful, + RelevanceNotHelpful, + } +} + const ( // RelevanceLevelHigh is a RelevanceLevel enum value RelevanceLevelHigh = "HIGH" @@ -14742,3 +15111,19 @@ func SourceContentType_Values() []string { SourceContentTypeKnowledgeContent, } } + +const ( + // TargetTypeRecommendation is a TargetType enum value + TargetTypeRecommendation = "RECOMMENDATION" + + // TargetTypeResult is a TargetType enum value + TargetTypeResult = "RESULT" +) + +// TargetType_Values returns all elements of the TargetType enum +func TargetType_Values() []string { + return []string{ + TargetTypeRecommendation, + TargetTypeResult, + } +} diff --git a/service/qconnect/doc.go b/service/qconnect/doc.go index 2e7efbdc25f..6b7dc38332d 100644 --- a/service/qconnect/doc.go +++ b/service/qconnect/doc.go @@ -3,6 +3,12 @@ // Package qconnect provides the client and types for making API // requests to Amazon Q Connect. // +// Powered by Amazon Bedrock: Amazon Web Services implements automated abuse +// detection (https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html). +// Because Amazon Q in Connect is built on Amazon Bedrock, users can take full +// advantage of the controls implemented in Amazon Bedrock to enforce safety, +// security, and the responsible use of artificial intelligence (AI). +// // Amazon Q in Connect is a generative AI customer service assistant. It is // an LLM-enhanced evolution of Amazon Connect Wisdom that delivers real-time // recommendations to help contact center agents resolve customer issues quickly diff --git a/service/qconnect/qconnectiface/interface.go b/service/qconnect/qconnectiface/interface.go index a0ebdd479b6..297e10718bb 100644 --- a/service/qconnect/qconnectiface/interface.go +++ b/service/qconnect/qconnectiface/interface.go @@ -194,6 +194,10 @@ type QConnectAPI interface { NotifyRecommendationsReceivedWithContext(aws.Context, *qconnect.NotifyRecommendationsReceivedInput, ...request.Option) (*qconnect.NotifyRecommendationsReceivedOutput, error) NotifyRecommendationsReceivedRequest(*qconnect.NotifyRecommendationsReceivedInput) (*request.Request, *qconnect.NotifyRecommendationsReceivedOutput) + PutFeedback(*qconnect.PutFeedbackInput) (*qconnect.PutFeedbackOutput, error) + PutFeedbackWithContext(aws.Context, *qconnect.PutFeedbackInput, ...request.Option) (*qconnect.PutFeedbackOutput, error) + PutFeedbackRequest(*qconnect.PutFeedbackInput) (*request.Request, *qconnect.PutFeedbackOutput) + QueryAssistant(*qconnect.QueryAssistantInput) (*qconnect.QueryAssistantOutput, error) QueryAssistantWithContext(aws.Context, *qconnect.QueryAssistantInput, ...request.Option) (*qconnect.QueryAssistantOutput, error) QueryAssistantRequest(*qconnect.QueryAssistantInput) (*request.Request, *qconnect.QueryAssistantOutput) diff --git a/service/recyclebin/api.go b/service/recyclebin/api.go index 2b7727b1c78..c2ff04aaae9 100644 --- a/service/recyclebin/api.go +++ b/service/recyclebin/api.go @@ -924,6 +924,10 @@ func (c *RecycleBin) UpdateRuleRequest(input *UpdateRuleInput) (req *request.Req // - ConflictException // The specified retention rule lock request can't be completed. // +// - ServiceQuotaExceededException +// The request would cause a service quota for the number of tags per resource +// to be exceeded. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rbin-2021-06-15/UpdateRule func (c *RecycleBin) UpdateRule(input *UpdateRuleInput) (*UpdateRuleOutput, error) { req, out := c.UpdateRuleRequest(input) @@ -1194,6 +1198,9 @@ type CreateRuleOutput struct { // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -1262,6 +1269,12 @@ func (s *CreateRuleOutput) SetRetentionPeriod(v *RetentionPeriod) *CreateRuleOut return s } +// SetRuleArn sets the RuleArn field's value. +func (s *CreateRuleOutput) SetRuleArn(v string) *CreateRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *CreateRuleOutput) SetStatus(v string) *CreateRuleOutput { s.Status = &v @@ -1438,6 +1451,9 @@ type GetRuleOutput struct { // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -1509,6 +1525,12 @@ func (s *GetRuleOutput) SetRetentionPeriod(v *RetentionPeriod) *GetRuleOutput { return s } +// SetRuleArn sets the RuleArn field's value. +func (s *GetRuleOutput) SetRuleArn(v string) *GetRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *GetRuleOutput) SetStatus(v string) *GetRuleOutput { s.Status = &v @@ -1961,6 +1983,9 @@ type LockRuleOutput struct { // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -2026,6 +2051,12 @@ func (s *LockRuleOutput) SetRetentionPeriod(v *RetentionPeriod) *LockRuleOutput return s } +// SetRuleArn sets the RuleArn field's value. +func (s *LockRuleOutput) SetRuleArn(v string) *LockRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *LockRuleOutput) SetStatus(v string) *LockRuleOutput { s.Status = &v @@ -2252,6 +2283,9 @@ type RuleSummary struct { // Information about the retention period for which the retention rule is to // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` } // String returns the string representation. @@ -2296,6 +2330,12 @@ func (s *RuleSummary) SetRetentionPeriod(v *RetentionPeriod) *RuleSummary { return s } +// SetRuleArn sets the RuleArn field's value. +func (s *RuleSummary) SetRuleArn(v string) *RuleSummary { + s.RuleArn = &v + return s +} + // The request would cause a service quota for the number of tags per resource // to be exceeded. type ServiceQuotaExceededException struct { @@ -2684,6 +2724,9 @@ type UnlockRuleOutput struct { // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -2755,6 +2798,12 @@ func (s *UnlockRuleOutput) SetRetentionPeriod(v *RetentionPeriod) *UnlockRuleOut return s } +// SetRuleArn sets the RuleArn field's value. +func (s *UnlockRuleOutput) SetRuleArn(v string) *UnlockRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *UnlockRuleOutput) SetStatus(v string) *UnlockRuleOutput { s.Status = &v @@ -3004,6 +3053,9 @@ type UpdateRuleOutput struct { // retain resources. RetentionPeriod *RetentionPeriod `type:"structure"` + // The Amazon Resource Name (ARN) of the retention rule. + RuleArn *string `type:"string"` + // The state of the retention rule. Only retention rules that are in the available // state retain resources. Status *string `type:"string" enum:"RuleStatus"` @@ -3069,6 +3121,12 @@ func (s *UpdateRuleOutput) SetRetentionPeriod(v *RetentionPeriod) *UpdateRuleOut return s } +// SetRuleArn sets the RuleArn field's value. +func (s *UpdateRuleOutput) SetRuleArn(v string) *UpdateRuleOutput { + s.RuleArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *UpdateRuleOutput) SetStatus(v string) *UpdateRuleOutput { s.Status = &v diff --git a/service/recyclebin/doc.go b/service/recyclebin/doc.go index 74ec9518649..e21524cf8c5 100644 --- a/service/recyclebin/doc.go +++ b/service/recyclebin/doc.go @@ -17,7 +17,7 @@ // you use any other resource of that type in your account. If the retention // period expires and the resource is not restored, the resource is permanently // deleted from the Recycle Bin and is no longer available for recovery. For -// more information about Recycle Bin, see Recycle Bin (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-recycle-bin.html) +// more information about Recycle Bin, see Recycle Bin (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html) // in the Amazon Elastic Compute Cloud User Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/rbin-2021-06-15 for more information on this service. diff --git a/service/verifiedpermissions/api.go b/service/verifiedpermissions/api.go index 3f150bc1bc6..25ad9f897ab 100644 --- a/service/verifiedpermissions/api.go +++ b/service/verifiedpermissions/api.go @@ -73,6 +73,10 @@ func (c *VerifiedPermissions) BatchIsAuthorizedRequest(input *BatchIsAuthorizedI // and up to 100 resources. The requests of a BatchIsAuthorized API request // can contain up to 30 requests. // +// The BatchIsAuthorized operation doesn't have its own IAM permission. To authorize +// this operation for Amazon Web Services principals, include the permission +// verifiedpermissions:IsAuthorized in their IAM policies. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5114,6 +5118,14 @@ type CreatePolicyStoreInput struct { // parameters, the retry fails with an IdempotentParameterMismatch error. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePolicyStoreInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // Specifies the validation setting for this policy store. // // Currently, the only valid and required value is Mode. @@ -5174,6 +5186,12 @@ func (s *CreatePolicyStoreInput) SetClientToken(v string) *CreatePolicyStoreInpu return s } +// SetDescription sets the Description field's value. +func (s *CreatePolicyStoreInput) SetDescription(v string) *CreatePolicyStoreInput { + s.Description = &v + return s +} + // SetValidationSettings sets the ValidationSettings field's value. func (s *CreatePolicyStoreInput) SetValidationSettings(v *ValidationSettings) *CreatePolicyStoreInput { s.ValidationSettings = v @@ -6547,6 +6565,14 @@ type GetPolicyStoreOutput struct { // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPolicyStoreOutput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // The date and time that the policy store was last updated. // // LastUpdatedDate is a required field @@ -6593,6 +6619,12 @@ func (s *GetPolicyStoreOutput) SetCreatedDate(v time.Time) *GetPolicyStoreOutput return s } +// SetDescription sets the Description field's value. +func (s *GetPolicyStoreOutput) SetDescription(v string) *GetPolicyStoreOutput { + s.Description = &v + return s +} + // SetLastUpdatedDate sets the LastUpdatedDate field's value. func (s *GetPolicyStoreOutput) SetLastUpdatedDate(v time.Time) *GetPolicyStoreOutput { s.LastUpdatedDate = &v @@ -6835,6 +6867,9 @@ type GetSchemaOutput struct { // LastUpdatedDate is a required field LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // The namespaces of the entities referenced by this schema. + Namespaces []*string `locationName:"namespaces" type:"list"` + // The ID of the policy store that contains the schema. // // PolicyStoreId is a required field @@ -6880,6 +6915,12 @@ func (s *GetSchemaOutput) SetLastUpdatedDate(v time.Time) *GetSchemaOutput { return s } +// SetNamespaces sets the Namespaces field's value. +func (s *GetSchemaOutput) SetNamespaces(v []*string) *GetSchemaOutput { + s.Namespaces = v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *GetSchemaOutput) SetPolicyStoreId(v string) *GetSchemaOutput { s.PolicyStoreId = &v @@ -8599,6 +8640,17 @@ type PolicyStoreItem struct { // CreatedDate is a required field CreatedDate *time.Time `locationName:"createdDate" type:"timestamp" timestampFormat:"iso8601" required:"true"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PolicyStoreItem's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + + // The date and time the policy store was most recently updated. + LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp" timestampFormat:"iso8601"` + // The unique identifier of the policy store. // // PolicyStoreId is a required field @@ -8635,6 +8687,18 @@ func (s *PolicyStoreItem) SetCreatedDate(v time.Time) *PolicyStoreItem { return s } +// SetDescription sets the Description field's value. +func (s *PolicyStoreItem) SetDescription(v string) *PolicyStoreItem { + s.Description = &v + return s +} + +// SetLastUpdatedDate sets the LastUpdatedDate field's value. +func (s *PolicyStoreItem) SetLastUpdatedDate(v time.Time) *PolicyStoreItem { + s.LastUpdatedDate = &v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *PolicyStoreItem) SetPolicyStoreId(v string) *PolicyStoreItem { s.PolicyStoreId = &v @@ -10094,6 +10158,14 @@ func (s *UpdatePolicyOutput) SetResource(v *EntityIdentifier) *UpdatePolicyOutpu type UpdatePolicyStoreInput struct { _ struct{} `type:"structure"` + // Descriptive text that you can provide to help with identification of the + // current policy store. + // + // Description is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePolicyStoreInput's + // String and GoString methods. + Description *string `locationName:"description" type:"string" sensitive:"true"` + // Specifies the ID of the policy store that you want to update // // PolicyStoreId is a required field @@ -10148,6 +10220,12 @@ func (s *UpdatePolicyStoreInput) Validate() error { return nil } +// SetDescription sets the Description field's value. +func (s *UpdatePolicyStoreInput) SetDescription(v string) *UpdatePolicyStoreInput { + s.Description = &v + return s +} + // SetPolicyStoreId sets the PolicyStoreId field's value. func (s *UpdatePolicyStoreInput) SetPolicyStoreId(v string) *UpdatePolicyStoreInput { s.PolicyStoreId = &v