From 0dbf897f4656e6745993c188bfc6e9bade2f8ecc Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Thu, 6 Aug 2026 18:23:05 +0000 Subject: [PATCH 01/22] feat: update AWS API models --- .../aws-models/agent-registry-control.json | 4418 ++++++++ codegen/sdk/aws-models/agent-registry.json | 1460 +++ codegen/sdk/aws-models/auto-scaling.json | 39 +- codegen/sdk/aws-models/backup.json | 1115 +- .../aws-models/bedrock-agentcore-control.json | 2926 ++++- codegen/sdk/aws-models/bedrock-agentcore.json | 165 + codegen/sdk/aws-models/cloudwatch-logs.json | 65 +- codegen/sdk/aws-models/device-farm.json | 319 + codegen/sdk/aws-models/ec2.json | 10 +- codegen/sdk/aws-models/gamelift.json | 202 +- codegen/sdk/aws-models/kafka.json | 36 + .../sdk/aws-models/marketplace-agreement.json | 32 + .../sdk/aws-models/marketplace-discovery.json | 117 +- codegen/sdk/aws-models/mediatailor.json | 1041 +- codegen/sdk/aws-models/s3.json | 9576 ++++++++--------- codegen/sdk/aws-models/sagemaker.json | 88 + codegen/sdk/aws-models/securityhub.json | 257 + codegen/sdk/aws-models/socialmessaging.json | 189 + 18 files changed, 16774 insertions(+), 5281 deletions(-) create mode 100644 codegen/sdk/aws-models/agent-registry-control.json create mode 100644 codegen/sdk/aws-models/agent-registry.json diff --git a/codegen/sdk/aws-models/agent-registry-control.json b/codegen/sdk/aws-models/agent-registry-control.json new file mode 100644 index 00000000000..c0de3091829 --- /dev/null +++ b/codegen/sdk/aws-models/agent-registry-control.json @@ -0,0 +1,4418 @@ +{ + "smithy": "2.0", + "shapes": { + "com.amazonaws.agentregistrycontrol#A2aAgentCardDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData", + "traits": { + "smithy.api#documentation": "

The A2A agent card content, serialized as descriptor payload data.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The schema version of the descriptor payload.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The optional source configuration used to synchronize the A2A agent card descriptor content.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Descriptor that defines the content of an A2A (Agent-to-Agent) agent card registry record. The content is validated against the A2A protocol schema.

" + } + }, + "com.amazonaws.agentregistrycontrol#AccessDeniedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The caller is not authorized to perform the requested action.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.agentregistrycontrol#AgentRegistryControl": { + "type": "service", + "version": "2025-12-01", + "operations": [ + { + "target": "com.amazonaws.agentregistrycontrol#ListTagsForResource" + }, + { + "target": "com.amazonaws.agentregistrycontrol#TagResource" + }, + { + "target": "com.amazonaws.agentregistrycontrol#UntagResource" + } + ], + "resources": [ + { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordResource" + }, + { + "target": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "Agent Registry Control", + "arnNamespace": "agent-registry", + "endpointPrefix": "agent-registry-control", + "cloudTrailEventSource": "agent-registry.amazonaws.com" + }, + "aws.auth#sigv4": { + "name": "agent-registry" + }, + "aws.protocols#restJson1": {}, + "smithy.api#cors": { + "additionalAllowedHeaders": [ + "*", + "content-type", + "x-amz-content-sha256", + "x-amz-user-agent", + "x-amzn-platform-id", + "x-amzn-trace-id" + ], + "additionalExposedHeaders": [ + "x-amzn-errortype", + "x-amzn-requestid", + "x-amzn-trace-id" + ], + "maxAge": 86400 + }, + "smithy.api#documentation": "

AWS Agent Registry is a managed catalog for publishing and discovering resources such as MCP servers, agents, and agent skills. Agent Registry Control is its control-plane API: use it to create and manage registries and the records they contain, configure discovery and authorization, govern record approval and curation workflows, and manage automatic detection of resources. Data-plane search and MCP invocation operations are provided by the companion Agent Registry API.

", + "smithy.api#title": "Agent Registry Control", + "smithy.rules#endpointBdd": { + "version": "1.1", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region of the service.", + "type": "string" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send requests.", + "type": "string" + } + }, + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "results": [ + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://agent-registry-control.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "documentation": "Region is required to resolve an endpoint.", + "conditions": [], + "error": "Unable to resolve an Agent Registry Control endpoint: Region was not set and no explicit Endpoint override was provided.", + "type": "error" + } + ], + "root": 2, + "nodeCount": 3, + "nodes": "/////wAAAAH/////AAAAAAX14QEAAAADAAAAAQX14QIF9eED" + }, + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Region": { + "required": false, + "type": "String", + "builtIn": "AWS::Region", + "documentation": "The AWS region of the service." + }, + "Endpoint": { + "required": false, + "type": "String", + "builtIn": "SDK::Endpoint", + "documentation": "Override the endpoint used to send requests." + } + }, + "rules": [ + { + "documentation": "Explicit endpoint override wins.", + "type": "endpoint", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "endpoint": { + "url": { + "ref": "Endpoint" + } + } + }, + { + "documentation": "Region-based production endpoint.", + "type": "endpoint", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "endpoint": { + "url": "https://agent-registry-control.{Region}.api.aws" + } + }, + { + "documentation": "Region is required to resolve an endpoint.", + "type": "error", + "conditions": [], + "error": "Unable to resolve an Agent Registry Control endpoint: Region was not set and no explicit Endpoint override was provided." + } + ] + }, + "smithy.rules#endpointTests": { + "version": "1.0", + "testCases": [ + { + "documentation": "Region us-west-2 -> region-based prod host.", + "params": { + "Region": "us-west-2" + }, + "expect": { + "endpoint": { + "url": "https://agent-registry-control.us-west-2.api.aws" + } + } + }, + { + "documentation": "Region us-east-1 -> region-based prod host.", + "params": { + "Region": "us-east-1" + }, + "expect": { + "endpoint": { + "url": "https://agent-registry-control.us-east-1.api.aws" + } + } + }, + { + "documentation": "Endpoint override wins over region.", + "params": { + "Region": "us-west-2", + "Endpoint": "https://custom.example.aws.dev" + }, + "expect": { + "endpoint": { + "url": "https://custom.example.aws.dev" + } + } + } + ] + } + } + }, + "com.amazonaws.agentregistrycontrol#AgentSkillsAdditionalData": { + "type": "structure", + "members": { + "skillMd": { + "target": "com.amazonaws.agentregistrycontrol#AgentSkillsMdDescriptor", + "traits": { + "smithy.api#documentation": "

The markdown skill content associated with an agent skills definition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Additional data associated with an agent skills definition descriptor.

" + } + }, + "com.amazonaws.agentregistrycontrol#AgentSkillsDefinitionDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData", + "traits": { + "smithy.api#documentation": "

The agent skills definition content, serialized as descriptor payload data.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The schema version of the descriptor payload.

" + } + }, + "additionalData": { + "target": "com.amazonaws.agentregistrycontrol#AgentSkillsAdditionalData", + "traits": { + "smithy.api#documentation": "

Additional data associated with the agent skills definition descriptor.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Descriptor that defines an agent skills registry record and its associated content.

" + } + }, + "com.amazonaws.agentregistrycontrol#AgentSkillsMdDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData", + "traits": { + "smithy.api#documentation": "

The agent skills markdown content, serialized as descriptor payload data.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The schema version of the descriptor payload.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The optional source configuration used to synchronize the agent skills markdown content.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Markdown-format descriptor containing an agent skills document.

" + } + }, + "com.amazonaws.agentregistrycontrol#AllowedAudience": { + "type": "string", + "traits": { + "smithy.api#documentation": "

An audience value that an inbound JWT must contain to be authorized.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#AllowedAudienceList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#AllowedAudience" + }, + "traits": { + "smithy.api#documentation": "

The list of audience values accepted during JWT validation.

", + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#AllowedClient": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A client identifier that an inbound JWT must be issued to in order to be authorized.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#AllowedClientsList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#AllowedClient" + }, + "traits": { + "smithy.api#documentation": "

The list of client identifiers accepted during JWT validation.

", + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#AllowedScopeType": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A scope value that an inbound JWT must carry to be authorized.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[\\x21\\x23-\\x5B\\x5D-\\x7E]+$" + } + }, + "com.amazonaws.agentregistrycontrol#AllowedScopesType": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#AllowedScopeType" + }, + "traits": { + "smithy.api#documentation": "

The list of scopes accepted during JWT validation.

", + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#ApprovalConfiguration": { + "type": "structure", + "members": { + "autoApprovalRules": { + "target": "com.amazonaws.agentregistrycontrol#AutoApprovalRuleList", + "traits": { + "smithy.api#documentation": "

The rules that determine which registry records are automatically approved on submission. When omitted or empty, submitted records require manual review.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration for the registry's record approval workflow. Controls whether records submitted for approval require manual review before they become approved and discoverable, or are auto-approved. When no auto-approval rules are configured, submitted records require manual review.

" + } + }, + "com.amazonaws.agentregistrycontrol#AuthorizerConfiguration": { + "type": "union", + "members": { + "customJWTAuthorizer": { + "target": "com.amazonaws.agentregistrycontrol#CustomJWTAuthorizerConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration for a custom JWT authorizer.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The authorizer configuration for a registry. Exactly one member is set.

" + } + }, + "com.amazonaws.agentregistrycontrol#AuthorizingClaimMatchValueType": { + "type": "structure", + "members": { + "claimMatchValue": { + "target": "com.amazonaws.agentregistrycontrol#ClaimMatchValueType", + "traits": { + "smithy.api#documentation": "

The expected value or values that the claim is compared against.

", + "smithy.api#required": {} + } + }, + "claimMatchOperator": { + "target": "com.amazonaws.agentregistrycontrol#ClaimMatchOperatorType", + "traits": { + "smithy.api#documentation": "

The operator used to compare the claim value against the expected value.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The value and match operator used to authorize a claim during JWT validation.

" + } + }, + "com.amazonaws.agentregistrycontrol#AutoApprovalRule": { + "type": "enum", + "members": { + "APPROVE_ALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APPROVE_ALL" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#AutoApprovalRuleList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#AutoApprovalRule" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.agentregistrycontrol#ClaimMatchOperatorType": { + "type": "enum", + "members": { + "EQUALS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQUALS" + } + }, + "CONTAINS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONTAINS" + } + }, + "CONTAINS_ANY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONTAINS_ANY" + } + } + }, + "traits": { + "smithy.api#documentation": "

The operator used to compare a claim value against the expected value during JWT validation.

" + } + }, + "com.amazonaws.agentregistrycontrol#ClaimMatchValueType": { + "type": "union", + "members": { + "matchValueString": { + "target": "com.amazonaws.agentregistrycontrol#MatchValueString", + "traits": { + "smithy.api#documentation": "

A single string value to match the claim against.

" + } + }, + "matchValueStringList": { + "target": "com.amazonaws.agentregistrycontrol#MatchValueStringList", + "traits": { + "smithy.api#documentation": "

A list of string values to match the claim against.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The expected value used to match a claim. Exactly one member is set.

" + } + }, + "com.amazonaws.agentregistrycontrol#ClientToken": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Client specified token used for idempotency checks

", + "smithy.api#length": { + "min": 33, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,256}$" + } + }, + "com.amazonaws.agentregistrycontrol#ConflictException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request conflicts with the current state of the resource.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistry": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistryRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistryResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a new registry, a catalog that organizes registry records and defines their discovery authorization and record approval behavior. Creation is asynchronous: the registry begins in the CREATING status and becomes usable once it reaches READY.

", + "smithy.api#http": { + "code": 202, + "method": "POST", + "uri": "/registries" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistryRecord": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistryRecordRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistryRecordResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a registry record within a registry. A registry record describes a discoverable resource, such as an MCP server, an agent, an agent skill, or a custom resource. Creation is asynchronous: the record is returned with the CREATING status while it is processed.

", + "smithy.api#http": { + "method": "POST", + "uri": "/registries/{registryId}/records", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistryRecordRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry in which to create the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordName", + "traits": { + "smithy.api#documentation": "

The name of the registry record

", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName", + "traits": { + "smithy.api#documentation": "

The human-readable display name of the registry record

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

The description of the registry record

" + } + }, + "recordType": { + "target": "com.amazonaws.agentregistrycontrol#RecordType", + "traits": { + "smithy.api#documentation": "

The type of the registry record, which determines the descriptor format

", + "smithy.api#required": {} + } + }, + "descriptors": { + "target": "com.amazonaws.agentregistrycontrol#Descriptors", + "traits": { + "smithy.api#documentation": "

The typed descriptor content for the registry record

", + "smithy.api#required": {} + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordVersion", + "traits": { + "smithy.api#documentation": "

The version of the registry record

" + } + }, + "clientToken": { + "target": "com.amazonaws.agentregistrycontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

Client token for idempotency

", + "smithy.api#idempotencyToken": {} + } + }, + "tags": { + "target": "com.amazonaws.agentregistrycontrol#TagsMap", + "traits": { + "smithy.api#documentation": "

Tags to associate with the registry record

" + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistryRecordResponse": { + "type": "structure", + "members": { + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The ARN of the created registry record

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The status of the registry record, set to CREATING while the asynchronous workflow is in progress

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for creating a registry record

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistryRequest": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryName", + "traits": { + "smithy.api#documentation": "

The name of the registry

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

The description of the registry

" + } + }, + "discoveryConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#DiscoveryConfiguration", + "traits": { + "smithy.api#documentation": "

Discovery configuration for the registry

" + } + }, + "clientToken": { + "target": "com.amazonaws.agentregistrycontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

Client token for idempotency

", + "smithy.api#idempotencyToken": {} + } + }, + "tags": { + "target": "com.amazonaws.agentregistrycontrol#TagsMap", + "traits": { + "smithy.api#documentation": "

Tags to associate with the registry

" + } + }, + "approvalConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#ApprovalConfiguration", + "traits": { + "smithy.api#documentation": "

Approval configuration for registry records

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Request structure for creating a registry

", + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#CreateRegistryResponse": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The ARN of the created registry

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for creating a registry

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#CredentialProviderArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock-agentcore:[a-z0-9-]+:[0-9]{12}:.*$" + } + }, + "com.amazonaws.agentregistrycontrol#CustomClaimValidationType": { + "type": "structure", + "members": { + "inboundTokenClaimName": { + "target": "com.amazonaws.agentregistrycontrol#InboundTokenClaimNameType", + "traits": { + "smithy.api#documentation": "

The name of the claim in the inbound token to validate.

", + "smithy.api#required": {} + } + }, + "inboundTokenClaimValueType": { + "target": "com.amazonaws.agentregistrycontrol#InboundTokenClaimValueType", + "traits": { + "smithy.api#documentation": "

The value type of the claim in the inbound token, either a string or an array of strings.

", + "smithy.api#required": {} + } + }, + "authorizingClaimMatchValue": { + "target": "com.amazonaws.agentregistrycontrol#AuthorizingClaimMatchValueType", + "traits": { + "smithy.api#documentation": "

The value and match operator used to authorize the claim.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A validation rule applied to a single claim of an inbound JWT.

" + } + }, + "com.amazonaws.agentregistrycontrol#CustomClaimValidationsType": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#CustomClaimValidationType" + }, + "traits": { + "smithy.api#documentation": "

The list of custom claim validations applied to an inbound JWT.

", + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#CustomDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData" + } + }, + "traits": { + "smithy.api#documentation": "

Custom descriptor for user-defined content

" + } + }, + "com.amazonaws.agentregistrycontrol#CustomJWTAuthorizerConfiguration": { + "type": "structure", + "members": { + "discoveryUrl": { + "target": "com.amazonaws.agentregistrycontrol#DiscoveryUrl", + "traits": { + "smithy.api#documentation": "

The OpenID Connect discovery URL used to retrieve the identity provider's metadata and signing keys.

", + "smithy.api#required": {} + } + }, + "allowedAudience": { + "target": "com.amazonaws.agentregistrycontrol#AllowedAudienceList", + "traits": { + "smithy.api#documentation": "

The audience values accepted during JWT validation. A token is rejected if none of its audience claims match.

" + } + }, + "allowedClients": { + "target": "com.amazonaws.agentregistrycontrol#AllowedClientsList", + "traits": { + "smithy.api#documentation": "

The client identifiers accepted during JWT validation. A token is rejected if it was not issued to one of these clients.

" + } + }, + "allowedScopes": { + "target": "com.amazonaws.agentregistrycontrol#AllowedScopesType", + "traits": { + "smithy.api#documentation": "

The scopes accepted during JWT validation. A token is rejected if it does not carry one of these scopes.

" + } + }, + "customClaims": { + "target": "com.amazonaws.agentregistrycontrol#CustomClaimValidationsType", + "traits": { + "smithy.api#documentation": "

Additional custom claim validations applied to the inbound JWT.

" + } + }, + "privateEndpoint": { + "target": "com.amazonaws.agentregistrycontrol#PrivateEndpoint", + "traits": { + "smithy.api#documentation": "

The private endpoint used to reach the identity provider's discovery URL over a private network path.

" + } + }, + "privateEndpointOverrides": { + "target": "com.amazonaws.agentregistrycontrol#PrivateEndpointOverrides", + "traits": { + "smithy.api#documentation": "

Per-domain private endpoint overrides that route specific identity provider domains through distinct private endpoints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration for a custom JWT authorizer that validates inbound bearer tokens against an OpenID Connect identity provider.

" + } + }, + "com.amazonaws.agentregistrycontrol#CustomParameterMap": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.agentregistrycontrol#DataSchemaVersion": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Version of the descriptor type schema

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#DateTimestamp": { + "type": "timestamp", + "traits": { + "smithy.api#documentation": "

Timestamp in ISO 8601 date-time format

", + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistry": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistryRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistryResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a registry. Deletion is asynchronous: the registry transitions to the DELETING status and is removed along with its registry records.

", + "smithy.api#http": { + "code": 202, + "method": "DELETE", + "uri": "/registries/{registryId}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistryRecord": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistryRecordRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistryRecordResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a registry record

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/registries/{registryId}/records/{recordId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistryRecordRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry containing the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry record to delete (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistryRecordResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Response structure for deleting a registry record

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistryRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry to delete (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#suppress": [ + "MemberShouldReferenceResource" + ] + } + } + }, + "traits": { + "smithy.api#documentation": "

Request structure for deleting a registry

", + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#DeleteRegistryResponse": { + "type": "structure", + "members": { + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryStatus", + "traits": { + "smithy.api#documentation": "

Current status of the registry, set to DELETING when deletion is initiated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for deleting a registry

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#Description": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Description of the Resource

", + "smithy.api#length": { + "min": 1, + "max": 4096 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistrycontrol#DescriptorData": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Descriptor payload data

", + "smithy.api#length": { + "min": 1, + "max": 102400 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistrycontrol#DescriptorSource": { + "type": "structure", + "members": { + "fromUrl": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSourceFromUrl", + "traits": { + "smithy.api#documentation": "

URL-based descriptor source, populated when descriptor content is synchronized from a URL.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The source configuration that defines where descriptor content is retrieved from.

" + } + }, + "com.amazonaws.agentregistrycontrol#DescriptorSourceFromUrl": { + "type": "structure", + "members": { + "url": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSourceUrl", + "traits": { + "smithy.api#documentation": "

The URL from which the descriptor content is retrieved.

", + "smithy.api#required": {} + } + }, + "credentialProviderConfigurations": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderConfigurationList", + "traits": { + "smithy.api#documentation": "

The credential providers used to authenticate when fetching descriptor content from the source URL.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

URL-based descriptor source configuration, with credential provider configurations for authenticated URL retrieval.

" + } + }, + "com.amazonaws.agentregistrycontrol#DescriptorSourceUrl": { + "type": "string", + "traits": { + "smithy.api#documentation": "

URL source for descriptor content

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^https://.*$" + } + }, + "com.amazonaws.agentregistrycontrol#Descriptors": { + "type": "structure", + "members": { + "mcpServer": { + "target": "com.amazonaws.agentregistrycontrol#McpServerDescriptor", + "traits": { + "smithy.api#documentation": "

The MCP server descriptor, populated when the record type is MCP.

" + } + }, + "a2aAgentCard": { + "target": "com.amazonaws.agentregistrycontrol#A2aAgentCardDescriptor", + "traits": { + "smithy.api#documentation": "

The A2A agent card descriptor, populated when the record type is AGENT.

" + } + }, + "agentSkillsDefinition": { + "target": "com.amazonaws.agentregistrycontrol#AgentSkillsDefinitionDescriptor", + "traits": { + "smithy.api#documentation": "

The agent skills definition descriptor, populated when the record type is SKILL.

" + } + }, + "custom": { + "target": "com.amazonaws.agentregistrycontrol#CustomDescriptor", + "traits": { + "smithy.api#documentation": "

The custom descriptor, populated when the record type is CUSTOM.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The typed set of descriptors for a registry record. Exactly one descriptor field is populated based on the record type.

" + } + }, + "com.amazonaws.agentregistrycontrol#DiscoveryConfiguration": { + "type": "structure", + "members": { + "authorizerConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#AuthorizerConfiguration", + "traits": { + "smithy.api#documentation": "

The authorizer configuration for the registry. Required when authorizerType is CUSTOM_JWT.

" + } + }, + "authorizerType": { + "target": "com.amazonaws.agentregistrycontrol#RegistryAuthorizerType", + "traits": { + "smithy.api#documentation": "

The type of authorizer that controls how consumers access the registry's search and MCP invoke operations.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Discovery configuration for the registry. Controls how consumers are authorized to search the registry and invoke its MCP endpoint.

" + } + }, + "com.amazonaws.agentregistrycontrol#DiscoveryUrl": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The OpenID Connect discovery URL, ending in /.well-known/openid-configuration, used to retrieve the identity provider's metadata and signing keys.

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^.+/\\.well-known/openid-configuration$" + } + }, + "com.amazonaws.agentregistrycontrol#EndpointIpAddressType": { + "type": "enum", + "members": { + "IPV4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IPV4" + } + }, + "IPV6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IPV6" + } + } + }, + "traits": { + "smithy.api#documentation": "

The IP address type used by a private endpoint.

" + } + }, + "com.amazonaws.agentregistrycontrol#FilterValue": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A single filter value. Constrained by length only; the accepted set of values is filter-specific and validated server-side so enum-style values such as READY or AWS_IAM are accepted.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#FilterValues": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#FilterValue" + }, + "traits": { + "smithy.api#documentation": "

The values supplied for a single filter.

", + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistry": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistryRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistryResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Gets a registry by identifier (ARN or ID)

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/registries/{registryId}" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "GetRegistryFailure", + "params": { + "registryId": "000000000000" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + } + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ], + "smithy.waiters#waitable": { + "RegistryReady": { + "minDelay": 30, + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "status", + "expected": "READY", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "CREATE_FAILED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "UPDATE_FAILED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "DELETE_FAILED", + "comparator": "stringEquals" + } + } + } + ] + } + } + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistryRecord": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistryRecordRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistryRecordResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the details of a registry record

", + "smithy.api#http": { + "method": "GET", + "uri": "/registries/{registryId}/records/{recordId}", + "code": 200 + }, + "smithy.api#readonly": {}, + "smithy.waiters#waitable": { + "RegistryRecordApproved": { + "minDelay": 30, + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "status", + "expected": "APPROVED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "REJECTED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "CREATE_FAILED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "UPDATE_FAILED", + "comparator": "stringEquals" + } + } + } + ] + } + } + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistryRecordRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry containing the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry record to retrieve (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistryRecordResponse": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the parent registry that owns the record.

", + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the registry record.

", + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the registry record.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordName", + "traits": { + "smithy.api#documentation": "

The name of the registry record. Names are unique within a registry.

", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName", + "traits": { + "smithy.api#documentation": "

The human-readable display name of the registry record.

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

A description of the registry record.

" + } + }, + "recordType": { + "target": "com.amazonaws.agentregistrycontrol#RecordType", + "traits": { + "smithy.api#documentation": "

The type of the registry record, such as MCP, AGENT, SKILL, or CUSTOM.

", + "smithy.api#required": {} + } + }, + "descriptors": { + "target": "com.amazonaws.agentregistrycontrol#Descriptors", + "traits": { + "smithy.api#documentation": "

The typed descriptors that define the content of the registry record.

" + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordVersion", + "traits": { + "smithy.api#documentation": "

The version identifier of the registry record.

" + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The lifecycle status of the registry record.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was last updated.

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the current status. Typically populated when the status indicates a failure state.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for retrieving a registry record

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistryRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry to retrieve (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#suppress": [ + "MemberShouldReferenceResource" + ] + } + } + }, + "traits": { + "smithy.api#documentation": "

Request structure for getting a registry

", + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#GetRegistryResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryName", + "traits": { + "smithy.api#documentation": "

The name of the registry

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

The description of the registry

" + } + }, + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the registry

", + "smithy.api#required": {} + } + }, + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry

", + "smithy.api#required": {} + } + }, + "discoveryConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#DiscoveryConfiguration", + "traits": { + "smithy.api#documentation": "

Discovery configuration for the registry

" + } + }, + "approvalConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#ApprovalConfiguration", + "traits": { + "smithy.api#documentation": "

Approval configuration for registry records

" + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryStatus", + "traits": { + "smithy.api#documentation": "

Current status of the registry

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the current status. Typically populated when the status indicates a failure state.

" + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was created

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was last updated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for getting a registry

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#IamRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+$" + } + }, + "com.amazonaws.agentregistrycontrol#IamSigningRegion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-z0-9-]+$" + } + }, + "com.amazonaws.agentregistrycontrol#IamSigningServiceName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$" + } + }, + "com.amazonaws.agentregistrycontrol#InboundTokenClaimNameType": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The name of a claim in an inbound JWT.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[A-Za-z0-9_.-:]+$" + } + }, + "com.amazonaws.agentregistrycontrol#InboundTokenClaimValueType": { + "type": "enum", + "members": { + "STRING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STRING" + } + }, + "STRING_ARRAY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STRING_ARRAY" + } + } + }, + "traits": { + "smithy.api#documentation": "

The value type of a claim in an inbound JWT.

" + } + }, + "com.amazonaws.agentregistrycontrol#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request failed due to an unexpected internal error; the caller may retry.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistries": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistriesRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistriesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the registries in the caller's account and Region, with optional filtering by status and discovery authorizer type

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/registries-list" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "registries" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListRegistriesSuccess", + "params": {}, + "expect": { + "success": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + } + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistriesRequest": { + "type": "structure", + "members": { + "maxResults": { + "target": "com.amazonaws.agentregistrycontrol#MaxResults", + "traits": { + "smithy.api#documentation": "

Maximum number of results to return

" + } + }, + "nextToken": { + "target": "com.amazonaws.agentregistrycontrol#NextToken", + "traits": { + "smithy.api#documentation": "

Token for pagination

" + } + }, + "filters": { + "target": "com.amazonaws.agentregistrycontrol#RegistryFilterList", + "traits": { + "smithy.api#documentation": "

Filters to apply to the registry list

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Request structure for listing registries

", + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistriesResponse": { + "type": "structure", + "members": { + "registries": { + "target": "com.amazonaws.agentregistrycontrol#RegistrySummaryList", + "traits": { + "smithy.api#documentation": "

List of registry summaries

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.agentregistrycontrol#NextToken", + "traits": { + "smithy.api#documentation": "

Token for next page of results

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for listing registries

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistryRecords": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistryRecordsRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistryRecordsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the registry records within a registry, with optional filtering by name, status, and record type

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/registries/{registryId}/records-list" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "registryRecords" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistryRecordsRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry to list records from (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.agentregistrycontrol#MaxResults", + "traits": { + "smithy.api#documentation": "

Maximum number of records to return

" + } + }, + "nextToken": { + "target": "com.amazonaws.agentregistrycontrol#NextToken", + "traits": { + "smithy.api#documentation": "

Token for pagination

" + } + }, + "filters": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordFilterList", + "traits": { + "smithy.api#documentation": "

Filters to apply to the registry record list

" + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#ListRegistryRecordsResponse": { + "type": "structure", + "members": { + "registryRecords": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordSummaryList", + "traits": { + "smithy.api#documentation": "

List of registry record summaries

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.agentregistrycontrol#NextToken", + "traits": { + "smithy.api#documentation": "

Token for next page of results

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for listing registry records

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#ListTagsForResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "List the tags on a resource", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/tags/{resourceArn+}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.agentregistrycontrol#ResourceArn", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.agentregistrycontrol#ResourceTagsMap" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#ManagedVpcResource": { + "type": "structure", + "members": { + "vpcIdentifier": { + "target": "com.amazonaws.agentregistrycontrol#VpcIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the VPC in which the private endpoint is provisioned.

", + "smithy.api#required": {} + } + }, + "subnetIds": { + "target": "com.amazonaws.agentregistrycontrol#SubnetIds", + "traits": { + "smithy.api#documentation": "

The identifiers of the subnets in which the private endpoint network interfaces are placed.

", + "smithy.api#required": {} + } + }, + "endpointIpAddressType": { + "target": "com.amazonaws.agentregistrycontrol#EndpointIpAddressType", + "traits": { + "smithy.api#documentation": "

The IP address type used by the private endpoint, either IPV4 or IPV6.

", + "smithy.api#required": {} + } + }, + "securityGroupIds": { + "target": "com.amazonaws.agentregistrycontrol#SecurityGroupIds", + "traits": { + "smithy.api#documentation": "

The identifiers of the security groups associated with the private endpoint network interfaces.

" + } + }, + "tags": { + "target": "com.amazonaws.agentregistrycontrol#TagsMap" + }, + "routingDomain": { + "target": "com.amazonaws.agentregistrycontrol#RoutingDomain", + "traits": { + "smithy.api#documentation": "

The routing domain used to resolve traffic through the private endpoint.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A service-managed private endpoint provisioned within a customer VPC.

" + } + }, + "com.amazonaws.agentregistrycontrol#MatchValueString": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A single value used to match a claim during JWT validation.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[A-Za-z0-9_.:/-]+$" + } + }, + "com.amazonaws.agentregistrycontrol#MatchValueStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#MatchValueString" + }, + "traits": { + "smithy.api#documentation": "

A list of values used to match a claim during JWT validation.

", + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#documentation": "

Maximum number of items to be listed

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.agentregistrycontrol#McpServerAdditionalData": { + "type": "structure", + "members": { + "tools": { + "target": "com.amazonaws.agentregistrycontrol#McpToolsDescriptor" + } + }, + "traits": { + "smithy.api#documentation": "

Additional data for an MCP server descriptor

" + } + }, + "com.amazonaws.agentregistrycontrol#McpServerDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData", + "traits": { + "smithy.api#documentation": "

The MCP server descriptor content, serialized as descriptor payload data.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The schema version of the descriptor payload.

" + } + }, + "additionalData": { + "target": "com.amazonaws.agentregistrycontrol#McpServerAdditionalData", + "traits": { + "smithy.api#documentation": "

Additional data associated with the MCP server descriptor, such as tool definitions.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The optional source configuration used to synchronize the MCP server descriptor content.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Descriptor that defines the content of an MCP (Model Context Protocol) server registry record, including the server definition and its tool definitions. The content is validated against the MCP protocol schema.

" + } + }, + "com.amazonaws.agentregistrycontrol#McpToolsDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion" + } + }, + "traits": { + "smithy.api#documentation": "

MCP tools descriptor containing tool definitions

" + } + }, + "com.amazonaws.agentregistrycontrol#NextToken": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Opaque continuation token of previous paginated response

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^\\S*$" + } + }, + "com.amazonaws.agentregistrycontrol#NonBlankString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[\\s\\S]+$" + } + }, + "com.amazonaws.agentregistrycontrol#PrivateEndpoint": { + "type": "union", + "members": { + "selfManagedLatticeResource": { + "target": "com.amazonaws.agentregistrycontrol#SelfManagedLatticeResource", + "traits": { + "smithy.api#documentation": "

A private endpoint backed by a self-managed VPC Lattice resource configuration.

" + } + }, + "managedVpcResource": { + "target": "com.amazonaws.agentregistrycontrol#ManagedVpcResource", + "traits": { + "smithy.api#documentation": "

A private endpoint backed by a service-managed VPC resource.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A private network endpoint used to reach a resource over a private path. Exactly one member is set.

" + } + }, + "com.amazonaws.agentregistrycontrol#PrivateEndpointOverride": { + "type": "structure", + "members": { + "domain": { + "target": "com.amazonaws.agentregistrycontrol#PrivateEndpointOverrideDomain", + "traits": { + "smithy.api#documentation": "

The domain name to which this private endpoint override applies.

", + "smithy.api#required": {} + } + }, + "privateEndpoint": { + "target": "com.amazonaws.agentregistrycontrol#PrivateEndpoint", + "traits": { + "smithy.api#documentation": "

The private endpoint used to reach the specified domain.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A mapping of a domain to the private endpoint used to reach it.

" + } + }, + "com.amazonaws.agentregistrycontrol#PrivateEndpointOverrideDomain": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A domain name for which a specific private endpoint override applies.

", + "smithy.api#length": { + "min": 1, + "max": 253 + } + } + }, + "com.amazonaws.agentregistrycontrol#PrivateEndpointOverrides": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#PrivateEndpointOverride" + }, + "traits": { + "smithy.api#documentation": "

The list of per-domain private endpoint overrides.

", + "smithy.api#length": { + "max": 5 + } + } + }, + "com.amazonaws.agentregistrycontrol#RecordIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Record identifier that accepts either ARN or ID format

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^(arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}/record/)?[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistrycontrol#RecordType": { + "type": "enum", + "members": { + "MCP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MCP" + } + }, + "AGENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AGENT" + } + }, + "CUSTOM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOM" + } + }, + "SKILL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SKILL" + } + } + }, + "traits": { + "smithy.api#documentation": "

Record type enum for registry record classification

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::AgentRegistry::Registry" + }, + "smithy.api#documentation": "

Registry Amazon Resource Name

", + "smithy.api#length": { + "min": 46, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryAuthorizerType": { + "type": "enum", + "members": { + "CUSTOM_JWT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOM_JWT" + } + }, + "AWS_IAM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_IAM" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryFilter": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryFilterName", + "traits": { + "smithy.api#documentation": "

The attribute to filter on

", + "smithy.api#required": {} + } + }, + "values": { + "target": "com.amazonaws.agentregistrycontrol#FilterValues", + "traits": { + "smithy.api#documentation": "

The values to match for the attribute

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A single filter applied to a ListRegistries request.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#RegistryFilter" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryFilterName": { + "type": "enum", + "members": { + "STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "status" + } + }, + "DISCOVERY_CONFIGURATION_AUTHORIZER_TYPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "discoveryConfiguration.authorizerType" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry unique identifier - 12-character alphanumeric string

", + "smithy.api#length": { + "min": 12, + "max": 16 + }, + "smithy.api#pattern": "^[a-zA-Z0-9]{12,16}$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry identifier that accepts either ARN or ID format

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^(arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/)?[a-zA-Z0-9]{12,16}$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry name with validation pattern

", + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-\\.\\/]*$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordArn": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record Amazon Resource Name

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}/record/[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderConfiguration": { + "type": "structure", + "members": { + "credentialProviderType": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderType", + "traits": { + "smithy.api#documentation": "

The type of credential provider.

", + "smithy.api#required": {} + } + }, + "credentialProvider": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderUnion", + "traits": { + "smithy.api#documentation": "

The credential provider details corresponding to the specified credential provider type.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A credential provider configuration that specifies how to authenticate when fetching descriptor content from a registry record's source URL.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderConfiguration" + }, + "traits": { + "smithy.api#length": { + "max": 1 + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderType": { + "type": "enum", + "members": { + "OAUTH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OAUTH" + } + }, + "IAM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IAM" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordCredentialProviderUnion": { + "type": "union", + "members": { + "oauthCredentialProvider": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordOAuthCredentialProvider", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 credential provider details.

" + } + }, + "iamCredentialProvider": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordIamCredentialProvider", + "traits": { + "smithy.api#documentation": "

The IAM role credential provider details.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The credential provider details for a registry record. Exactly one member is populated, matching the configured credential provider type.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Display name for a registry record

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordFilter": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordFilterName", + "traits": { + "smithy.api#documentation": "

The attribute to filter on

", + "smithy.api#required": {} + } + }, + "values": { + "target": "com.amazonaws.agentregistrycontrol#FilterValues", + "traits": { + "smithy.api#documentation": "

The values to match for the attribute

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A single filter applied to a ListRegistryRecords request.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordFilter" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordFilterName": { + "type": "enum", + "members": { + "NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "name" + } + }, + "STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "status" + } + }, + "RECORD_TYPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "recordType" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordIamCredentialProvider": { + "type": "structure", + "members": { + "roleArn": { + "target": "com.amazonaws.agentregistrycontrol#IamRoleArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the IAM role to assume for request signing.

" + } + }, + "service": { + "target": "com.amazonaws.agentregistrycontrol#IamSigningServiceName", + "traits": { + "smithy.api#documentation": "

The service name to use for request signing, such as execute-api.

" + } + }, + "region": { + "target": "com.amazonaws.agentregistrycontrol#IamSigningRegion", + "traits": { + "smithy.api#documentation": "

The AWS Region to use for request signing. If not specified, the Region is derived from the source URL hostname, falling back to the Region of the registry.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for an IAM role credential provider that signs requests to a registry record's source with AWS Signature Version 4 (SigV4).

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record unique identifier - 12-character alphanumeric string

", + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record name

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-\\.\\/]*$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordOAuthCredentialProvider": { + "type": "structure", + "members": { + "providerArn": { + "target": "com.amazonaws.agentregistrycontrol#CredentialProviderArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the OAuth 2.0 credential provider resource in Amazon Bedrock AgentCore Identity.

", + "smithy.api#required": {} + } + }, + "grantType": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordOAuthGrantType", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 grant type used to obtain access tokens.

" + } + }, + "scopes": { + "target": "com.amazonaws.agentregistrycontrol#ScopeList", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 scopes to request when obtaining access tokens.

" + } + }, + "customParameters": { + "target": "com.amazonaws.agentregistrycontrol#CustomParameterMap", + "traits": { + "smithy.api#documentation": "

Additional parameters to include in the OAuth 2.0 token request.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for an OAuth 2.0 credential provider that authenticates requests to a registry record's source.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordOAuthGrantType": { + "type": "enum", + "members": { + "CLIENT_CREDENTIALS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLIENT_CREDENTIALS" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordResource": { + "type": "resource", + "identifiers": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier" + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier" + } + }, + "create": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistryRecord" + }, + "read": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistryRecord" + }, + "update": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecord" + }, + "delete": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistryRecord" + }, + "list": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistryRecords" + }, + "operations": [ + { + "target": "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApproval" + }, + { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatus" + } + ] + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordStatus": { + "type": "enum", + "members": { + "DRAFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DRAFT" + } + }, + "PENDING_APPROVAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_APPROVAL" + } + }, + "APPROVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APPROVED" + } + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } + }, + "DEPRECATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEPRECATED" + } + }, + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "UPDATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE_FAILED" + } + } + }, + "traits": { + "smithy.api#documentation": "

Registry record status

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordSummary": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the parent registry that owns the record.

", + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the registry record.

", + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the registry record.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordName", + "traits": { + "smithy.api#documentation": "

The name of the registry record. Names are unique within a registry.

", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName", + "traits": { + "smithy.api#documentation": "

The human-readable display name of the registry record.

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

A description of the registry record.

" + } + }, + "recordType": { + "target": "com.amazonaws.agentregistrycontrol#RecordType", + "traits": { + "smithy.api#documentation": "

The type of the registry record, such as MCP, AGENT, SKILL, or CUSTOM.

", + "smithy.api#required": {} + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordVersion", + "traits": { + "smithy.api#documentation": "

The version identifier of the registry record.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The lifecycle status of the registry record.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a registry record returned by list operations. Contains identifying and lifecycle fields but omits descriptor content.

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordSummary" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryRecordVersion": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Version of the registry record

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9.-]+$" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryResource": { + "type": "resource", + "identifiers": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier" + } + }, + "create": { + "target": "com.amazonaws.agentregistrycontrol#CreateRegistry" + }, + "read": { + "target": "com.amazonaws.agentregistrycontrol#GetRegistry" + }, + "update": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistry" + }, + "delete": { + "target": "com.amazonaws.agentregistrycontrol#DeleteRegistry" + }, + "list": { + "target": "com.amazonaws.agentregistrycontrol#ListRegistries" + } + }, + "com.amazonaws.agentregistrycontrol#RegistryStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "READY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READY" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "UPDATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE_FAILED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#RegistrySummary": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryName", + "traits": { + "smithy.api#documentation": "

Registry name

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

Registry description

" + } + }, + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryId", + "traits": { + "smithy.api#documentation": "

Unique registry identifier

", + "smithy.api#required": {} + } + }, + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

Registry Amazon Resource Name

", + "smithy.api#required": {} + } + }, + "discoveryConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#DiscoveryConfiguration", + "traits": { + "smithy.api#documentation": "

Discovery configuration for the registry

" + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryStatus", + "traits": { + "smithy.api#documentation": "

Current status of the registry

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the current status. Typically populated when the status indicates a failure state.

" + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was created

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was last updated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Registry summary for list operations

" + } + }, + "com.amazonaws.agentregistrycontrol#RegistrySummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#RegistrySummary" + } + }, + "com.amazonaws.agentregistrycontrol#ResourceArn": { + "type": "string", + "traits": { + "smithy.api#documentation": "ARN of a taggable Agent Registry resource.", + "smithy.api#length": { + "min": 1, + "max": 1011 + } + } + }, + "com.amazonaws.agentregistrycontrol#ResourceConfigurationIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The identifier of a VPC Lattice resource configuration, specified as a resource configuration ID or ARN.

", + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^((rcfg-[0-9a-z]{17})|(arn:[a-z0-9\\-]+:vpc-lattice:[a-zA-Z0-9\\-]+:\\d{12}:resourceconfiguration/rcfg-[0-9a-z]{17}))$" + } + }, + "com.amazonaws.agentregistrycontrol#ResourceNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The requested resource was not found.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.agentregistrycontrol#ResourceTagsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.agentregistrycontrol#TagKey" + }, + "value": { + "target": "com.amazonaws.agentregistrycontrol#TagValue" + }, + "traits": { + "smithy.api#documentation": "A map of tag keys to tag values returned by read operations (may be empty).", + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.agentregistrycontrol#RoutingDomain": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The routing domain used to resolve traffic through a private endpoint.

", + "smithy.api#length": { + "min": 3, + "max": 255 + } + } + }, + "com.amazonaws.agentregistrycontrol#ScopeList": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.agentregistrycontrol#SecurityGroupIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The identifier of a security group.

", + "smithy.api#length": { + "min": 10, + "max": 48 + }, + "smithy.api#pattern": "^sg-(([0-9a-z]{8})|([0-9a-z]{17}))$" + } + }, + "com.amazonaws.agentregistrycontrol#SecurityGroupIds": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#SecurityGroupIdentifier" + }, + "traits": { + "smithy.api#documentation": "

The list of security group identifiers associated with a private endpoint.

", + "smithy.api#length": { + "min": 0, + "max": 5 + } + } + }, + "com.amazonaws.agentregistrycontrol#SelfManagedLatticeResource": { + "type": "union", + "members": { + "resourceConfigurationIdentifier": { + "target": "com.amazonaws.agentregistrycontrol#ResourceConfigurationIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the VPC Lattice resource configuration, specified as a resource configuration ID or ARN.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A self-managed private endpoint backed by a VPC Lattice resource configuration. Exactly one member is set.

" + } + }, + "com.amazonaws.agentregistrycontrol#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request would exceed a service quota.

", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApproval": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApprovalRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApprovalResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Submits a DRAFT registry record for approval, moving it into the registry's approval workflow. Depending on the registry's approval configuration, the record is either auto-approved or set to PENDING_APPROVAL for a curator to approve or reject.

", + "smithy.api#http": { + "method": "POST", + "uri": "/registries/{registryId}/records/{recordId}/submit-for-approval", + "code": 202 + } + } + }, + "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApprovalRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry containing the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry record to submit for approval (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#SubmitRegistryRecordForApprovalResponse": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry

", + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry record

", + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordId", + "traits": { + "smithy.api#documentation": "

The ID of the registry record

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The resulting status of the registry record

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the record was last updated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for submitting a registry record for approval

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#SubnetId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Subnet identifier

", + "smithy.api#length": { + "min": 15, + "max": 24 + }, + "smithy.api#pattern": "^subnet-[0-9a-zA-Z]{8,17}$" + } + }, + "com.amazonaws.agentregistrycontrol#SubnetIds": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#SubnetId" + }, + "traits": { + "smithy.api#documentation": "

The list of subnet identifiers in which the private endpoint network interfaces are placed.

" + } + }, + "com.amazonaws.agentregistrycontrol#TagKey": { + "type": "string", + "traits": { + "smithy.api#documentation": "Key of a tag.", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" + } + }, + "com.amazonaws.agentregistrycontrol#TagKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#TagKey" + }, + "traits": { + "smithy.api#documentation": "A list of tag keys.", + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.agentregistrycontrol#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Tag a resource with key-value pairs", + "smithy.api#http": { + "code": 204, + "method": "POST", + "uri": "/tags/{resourceArn+}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#TagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.agentregistrycontrol#ResourceArn", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.agentregistrycontrol#TagsMap", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#TagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#TagValue": { + "type": "string", + "traits": { + "smithy.api#documentation": "Value of a tag.", + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$" + } + }, + "com.amazonaws.agentregistrycontrol#TagsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.agentregistrycontrol#TagKey" + }, + "value": { + "target": "com.amazonaws.agentregistrycontrol#TagValue" + }, + "traits": { + "smithy.api#documentation": "A map of tag keys to tag values.", + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.agentregistrycontrol#ThrottlingException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistrycontrol#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request was denied due to request throttling; the caller may retry after a delay.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, + "com.amazonaws.agentregistrycontrol#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#UntagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Remove tags from a resource by key", + "smithy.api#http": { + "code": 204, + "method": "DELETE", + "uri": "/tags/{resourceArn+}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.agentregistrycontrol#UntagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.agentregistrycontrol#ResourceArn", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tagKeys": { + "target": "com.amazonaws.agentregistrycontrol#TagKeyList", + "traits": { + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#UntagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistry": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates an existing registry. This operation uses PATCH semantics: specify only the fields you want to change, and omit the rest to leave them unchanged. Updates are applied asynchronously and the registry transitions to the UPDATING status while they are processed.

", + "smithy.api#http": { + "code": 202, + "method": "PATCH", + "uri": "/registries/{registryId}" + } + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecord": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a registry record. The update is asynchronous: the record is returned with the UPDATING status while it is processed. Fields that use update wrappers follow PATCH semantics: omit the field to leave it unchanged.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/registries/{registryId}/records/{recordId}", + "code": 202 + } + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry containing the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry record to update (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordName", + "traits": { + "smithy.api#documentation": "

The updated name of the registry record. Omit to leave the name unchanged.

" + } + }, + "displayName": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDisplayName", + "traits": { + "smithy.api#documentation": "

The updated display name of the registry record. Omit to leave the display name unchanged; provide an empty wrapper to unset it.

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescription", + "traits": { + "smithy.api#documentation": "

The updated description of the registry record. Omit to leave the description unchanged; provide an empty wrapper to unset it.

" + } + }, + "recordType": { + "target": "com.amazonaws.agentregistrycontrol#RecordType", + "traits": { + "smithy.api#documentation": "

The updated type of the registry record. Omit to leave the record type unchanged.

" + } + }, + "descriptors": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptors", + "traits": { + "smithy.api#documentation": "

The updated typed descriptor content for the registry record. Omit to leave the descriptors unchanged.

" + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordVersion", + "traits": { + "smithy.api#documentation": "

The updated version of the registry record. Omit to leave the version unchanged.

" + } + }, + "triggerSynchronization": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Whether to trigger synchronization of the record's descriptor content from its source

" + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordResponse": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the parent registry that owns the record.

", + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The &ARN; of the registry record.

", + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the registry record.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordName", + "traits": { + "smithy.api#documentation": "

The name of the registry record. Names are unique within a registry.

", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName", + "traits": { + "smithy.api#documentation": "

The human-readable display name of the registry record.

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

A description of the registry record.

" + } + }, + "recordType": { + "target": "com.amazonaws.agentregistrycontrol#RecordType", + "traits": { + "smithy.api#documentation": "

The type of the registry record, such as MCP, AGENT, SKILL, or CUSTOM.

", + "smithy.api#required": {} + } + }, + "descriptors": { + "target": "com.amazonaws.agentregistrycontrol#Descriptors", + "traits": { + "smithy.api#documentation": "

The typed descriptors that define the content of the registry record.

" + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordVersion", + "traits": { + "smithy.api#documentation": "

The version identifier of the registry record.

" + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The lifecycle status of the registry record.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry record was last updated.

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the current status. Typically populated when the status indicates a failure state.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for updating a registry record

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatusRequest" + }, + "output": { + "target": "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatusResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistrycontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ConflictException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistrycontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the status of a registry record as part of the registry's curation workflow, for example to approve or reject a record that is pending approval, or to deprecate an approved record so that it is no longer discoverable

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/registries/{registryId}/records/{recordId}/status", + "code": 202 + } + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatusRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry containing the record (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RecordIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry record to update the status of (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The target status for the registry record

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the status change, for example why the record was approved, rejected, or deprecated

", + "smithy.api#length": { + "min": 0, + "max": 255 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.agentregistrycontrol#RegistryResource" + } + ] + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRecordStatusResponse": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry

", + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry record

", + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordId", + "traits": { + "smithy.api#documentation": "

The ID of the registry record

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordStatus", + "traits": { + "smithy.api#documentation": "

The resulting status of the registry record

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the status change

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the record was last updated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for updating a registry record status

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryIdentifier", + "traits": { + "smithy.api#documentation": "

The identifier of the registry to update (ARN or ID)

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#suppress": [ + "MemberShouldReferenceResource" + ] + } + }, + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryName", + "traits": { + "smithy.api#documentation": "

The updated name of the registry

" + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescription", + "traits": { + "smithy.api#documentation": "

The updated description of the registry

" + } + }, + "discoveryConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDiscoveryConfiguration", + "traits": { + "smithy.api#documentation": "

The updated discovery configuration. Changing the discovery authorization can break existing consumers that rely on the previous authorization type.

" + } + }, + "approvalConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedApprovalConfiguration", + "traits": { + "smithy.api#documentation": "

The updated approval configuration. The change applies only to records that move to PENDING_APPROVAL after the update; records already in PENDING_APPROVAL are unaffected.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Request structure for updating a registry

", + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistrycontrol#UpdateRegistryResponse": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistrycontrol#RegistryName", + "traits": { + "smithy.api#documentation": "

The name of the registry

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistrycontrol#Description", + "traits": { + "smithy.api#documentation": "

The description of the registry

" + } + }, + "registryId": { + "target": "com.amazonaws.agentregistrycontrol#RegistryId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the registry

", + "smithy.api#required": {} + } + }, + "registryArn": { + "target": "com.amazonaws.agentregistrycontrol#RegistryArn", + "traits": { + "smithy.api#documentation": "

The ARN of the registry

", + "smithy.api#required": {} + } + }, + "discoveryConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#DiscoveryConfiguration", + "traits": { + "smithy.api#documentation": "

Discovery configuration for the registry

" + } + }, + "approvalConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#ApprovalConfiguration", + "traits": { + "smithy.api#documentation": "

Approval configuration for registry records

" + } + }, + "status": { + "target": "com.amazonaws.agentregistrycontrol#RegistryStatus", + "traits": { + "smithy.api#documentation": "

Current status of the registry

", + "smithy.api#required": {} + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The reason for the current status. Typically populated when the status indicates a failure state.

" + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was created

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistrycontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the registry was last updated

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Response structure for updating a registry

", + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedA2aAgentCardDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedA2aAgentCardDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The A2A agent card descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedA2aAgentCardDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data schema version field.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorSource", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's source field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of A2A agent card descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsAdditionalData": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsAdditionalDataFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The agent skills additional-data patch wrapper. Omit to leave the additional data unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsAdditionalDataFields": { + "type": "structure", + "members": { + "skillMd": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsMdDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the agent skills markdown descriptor field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of agent skills additional-data fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsDefinitionDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsDefinitionDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The agent skills definition descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsDefinitionDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data schema version field.

" + } + }, + "additionalData": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsAdditionalData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's additional data field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of agent skills definition descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsMdDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsMdDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The agent skills markdown descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsMdDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data schema version field.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorSource", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's source field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of agent skills markdown descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedApprovalConfiguration": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#ApprovalConfiguration", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A wrapper for updating the approval configuration of a registry. Include this wrapper to replace the approval configuration with the specified value; omit it to leave the approval configuration unchanged.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedAuthorizerConfiguration": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#AuthorizerConfiguration", + "traits": { + "smithy.api#documentation": "

The new authorizer configuration to set. Omit to leave the existing configuration unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Wrapper for updating an optional authorizer configuration with PATCH semantics.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedCustomDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedCustomDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The custom descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedCustomDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of custom descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#DataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Leaf patch wrapper for a descriptor's data schema version. Omit to leave unchanged; supply an empty object to unset; supply optionalValue to set.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDescription": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#Description" + } + }, + "traits": { + "smithy.api#documentation": "

Wrapper for updating an optional Description field with PATCH semantics

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorData", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Leaf patch wrapper for descriptor data. Omit to leave unchanged; supply an empty object to unset; supply optionalValue to set.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDescriptorSource": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Leaf patch wrapper for a descriptor's source configuration. Omit to leave unchanged; supply an empty object to unset; supply optionalValue to set.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDescriptors": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorsFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The top-level descriptors patch wrapper used in UpdateRegistryRecord. Omit to leave the current descriptors unchanged; supply an empty object to clear them; supply optionalValue to apply a per-field patch.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDescriptorsFields": { + "type": "structure", + "members": { + "mcpServer": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpServerDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the MCP server descriptor.

" + } + }, + "a2aAgentCard": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedA2aAgentCardDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the A2A agent card descriptor.

" + } + }, + "agentSkillsDefinition": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAgentSkillsDefinitionDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the agent skills definition descriptor.

" + } + }, + "custom": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedCustomDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the custom descriptor.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The patchable descriptor fields applied during an UpdateRegistryRecord call. Each field is independently patchable.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDiscoveryConfiguration": { + "type": "structure", + "members": { + "authorizerConfiguration": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedAuthorizerConfiguration", + "traits": { + "smithy.api#documentation": "

Authorization configuration for the registry, with PATCH semantics

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The discovery configuration fields to update on a registry. Omit this structure to leave the discovery configuration unchanged.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedDisplayName": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#RegistryRecordDisplayName", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Leaf patch wrapper for a registry record's display name. Omit to leave unchanged; supply an empty object to unset; supply optionalValue to set.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpServerAdditionalData": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpServerAdditionalDataFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The MCP server additional-data patch wrapper. Omit to leave the additional data unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpServerAdditionalDataFields": { + "type": "structure", + "members": { + "tools": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpToolsDescriptor", + "traits": { + "smithy.api#documentation": "

The patch for the MCP tools descriptor field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of MCP server additional-data fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpServerDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpServerDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The MCP server descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpServerDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data schema version field.

" + } + }, + "source": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorSource", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's source field.

" + } + }, + "additionalData": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpServerAdditionalData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's additional data field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of MCP server descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpToolsDescriptor": { + "type": "structure", + "members": { + "optionalValue": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedMcpToolsDescriptorFields", + "traits": { + "smithy.api#documentation": "

The value to set for this field. Omit the wrapper to leave the field unchanged.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The MCP tools descriptor patch wrapper. Omit to leave the tools descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.

" + } + }, + "com.amazonaws.agentregistrycontrol#UpdatedMcpToolsDescriptorFields": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDescriptorData", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data field.

" + } + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistrycontrol#UpdatedDataSchemaVersion", + "traits": { + "smithy.api#documentation": "

The patch for the descriptor's data schema version field.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The set of MCP tools descriptor fields that can be individually updated.

" + } + }, + "com.amazonaws.agentregistrycontrol#ValidationException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + }, + "reason": { + "target": "com.amazonaws.agentregistrycontrol#ValidationExceptionReason", + "traits": { + "smithy.api#addedDefault": {}, + "smithy.api#default": "FieldValidationFailed", + "smithy.api#documentation": "

The reason the request failed validation.

", + "smithy.api#required": {} + } + }, + "fieldList": { + "target": "com.amazonaws.agentregistrycontrol#ValidationExceptionFieldList", + "traits": { + "smithy.api#documentation": "

The list of input fields that failed validation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The request failed validation of one or more input fields.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.agentregistrycontrol#ValidationExceptionField": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the field that failed validation.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of why the field failed validation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a single input field that failed validation.

" + } + }, + "com.amazonaws.agentregistrycontrol#ValidationExceptionFieldList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistrycontrol#ValidationExceptionField" + } + }, + "com.amazonaws.agentregistrycontrol#ValidationExceptionReason": { + "type": "enum", + "members": { + "CANNOT_PARSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CannotParse" + } + }, + "FIELD_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FieldValidationFailed" + } + }, + "IDEMPOTENT_PARAMETER_MISMATCH_EXCEPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IdempotentParameterMismatchException" + } + }, + "ROOT_EVENT_IN_OTHER_SESSION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EventInOtherSession" + } + }, + "RESOURCE_CONFLICT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ResourceConflict" + } + } + } + }, + "com.amazonaws.agentregistrycontrol#VpcIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The identifier of a VPC.

", + "smithy.api#length": { + "min": 10, + "max": 48 + }, + "smithy.api#pattern": "^vpc-(([0-9a-z]{8})|([0-9a-z]{17}))$" + } + } + } +} \ No newline at end of file diff --git a/codegen/sdk/aws-models/agent-registry.json b/codegen/sdk/aws-models/agent-registry.json new file mode 100644 index 00000000000..a1b3ed2aa11 --- /dev/null +++ b/codegen/sdk/aws-models/agent-registry.json @@ -0,0 +1,1460 @@ +{ + "smithy": "2.0", + "shapes": { + "com.amazonaws.agentregistry#A2aAgentCardDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistry#DataSchemaVersion" + }, + "source": { + "target": "com.amazonaws.agentregistry#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The source location from which the A2A (Agent-to-Agent) agent card descriptor content was retrieved.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Base mixin for A2A agent card descriptor content

" + } + }, + "com.amazonaws.agentregistry#AccessDeniedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistry#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The caller is not authorized to perform the requested action.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.agentregistry#AgentRegistry": { + "type": "service", + "version": "2025-12-01", + "operations": [ + { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecord" + }, + { + "target": "com.amazonaws.agentregistry#ListDiscoverableRegistryRecords" + }, + { + "target": "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecords" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "Agent Registry", + "arnNamespace": "agent-registry", + "endpointPrefix": "agent-registry" + }, + "aws.auth#sigv4": { + "name": "agent-registry" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "Agent Registry lets callers discover, list, and retrieve approved records published to a registry.", + "smithy.api#title": "Agent Registry", + "smithy.rules#endpointBdd": { + "version": "1.1", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region of the service.", + "type": "string" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send requests.", + "type": "string" + } + }, + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "results": [ + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://agent-registry.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "error": "Unable to resolve an Agent Registry endpoint: Region was not set and no explicit Endpoint override was provided.", + "type": "error" + } + ], + "root": 2, + "nodeCount": 3, + "nodes": "/////wAAAAH/////AAAAAAX14QEAAAADAAAAAQX14QIF9eED" + }, + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Region": { + "type": "String", + "required": false, + "builtIn": "AWS::Region", + "documentation": "The AWS region of the service." + }, + "Endpoint": { + "type": "String", + "required": false, + "builtIn": "SDK::Endpoint", + "documentation": "Override the endpoint used to send requests." + } + }, + "rules": [ + { + "type": "endpoint", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "endpoint": { + "url": { + "ref": "Endpoint" + } + } + }, + { + "type": "endpoint", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "endpoint": { + "url": "https://agent-registry.{Region}.api.aws" + } + }, + { + "type": "error", + "conditions": [], + "error": "Unable to resolve an Agent Registry endpoint: Region was not set and no explicit Endpoint override was provided." + } + ] + }, + "smithy.rules#endpointTests": { + "version": "1.0", + "testCases": [ + { + "documentation": "Region us-west-2 -> region-based prod host.", + "params": { + "Region": "us-west-2" + }, + "expect": { + "endpoint": { + "url": "https://agent-registry.us-west-2.api.aws" + } + } + }, + { + "documentation": "Region us-east-1 -> region-based prod host.", + "params": { + "Region": "us-east-1" + }, + "expect": { + "endpoint": { + "url": "https://agent-registry.us-east-1.api.aws" + } + } + }, + { + "documentation": "Endpoint override wins over region.", + "params": { + "Region": "us-west-2", + "Endpoint": "https://custom.example.aws.dev" + }, + "expect": { + "endpoint": { + "url": "https://custom.example.aws.dev" + } + } + } + ] + } + } + }, + "com.amazonaws.agentregistry#AgentSkillsAdditionalData": { + "type": "structure", + "members": { + "skillMd": { + "target": "com.amazonaws.agentregistry#AgentSkillsMdDescriptor" + } + }, + "traits": { + "smithy.api#documentation": "

Additional data for an agent skills definition descriptor.

" + } + }, + "com.amazonaws.agentregistry#AgentSkillsDefinitionDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistry#DataSchemaVersion" + }, + "additionalData": { + "target": "com.amazonaws.agentregistry#AgentSkillsAdditionalData", + "traits": { + "smithy.api#documentation": "

Additional data for the agent skills definition, such as the skills markdown descriptor.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Base mixin for agent skills definition descriptor content

" + } + }, + "com.amazonaws.agentregistry#AgentSkillsMdDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistry#DataSchemaVersion" + }, + "source": { + "target": "com.amazonaws.agentregistry#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The source location from which the agent skills markdown content was retrieved.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Base mixin for agent skills markdown descriptor content

" + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecord": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordRequest" + }, + "output": { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistry#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistry#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistry#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistry#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistry#UnauthorizedException" + }, + { + "target": "com.amazonaws.agentregistry#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves multiple discoverable registry records by ID from a single registry. Records that cannot be retrieved are reported individually in the errors list rather than failing the entire request.

", + "smithy.api#http": { + "method": "POST", + "uri": "/discoverable-records-batch", + "code": 200 + }, + "smithy.test#smokeTests": [ + { + "id": "BatchGetDiscoverableRegistryRecordNonexistentFailure", + "params": { + "entries": [ + { + "registryId": "aaaaaaaaaaaa", + "recordIds": [ + "bbbbbbbbbbbb" + ] + } + ] + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": {} + } + } + ] + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordError": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistry#RegistryIdentifier", + "traits": { + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistry#RecordIdentifier", + "traits": { + "smithy.api#required": {} + } + }, + "errorCode": { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordErrorCode", + "traits": { + "smithy.api#documentation": "

The machine-readable reason that the record could not be retrieved.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

An optional human-readable detail about the error. Do not parse this value programmatically.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes why a requested record could not be retrieved.

" + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordErrorCode": { + "type": "enum", + "members": { + "RESOURCE_NOT_FOUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE_NOT_FOUND" + } + }, + "ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_DENIED" + } + }, + "INTERNAL_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTERNAL_ERROR" + } + } + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordError" + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordRequest": { + "type": "structure", + "members": { + "entries": { + "target": "com.amazonaws.agentregistry#RegistryRecordsEntryList", + "traits": { + "smithy.api#documentation": "

The registry-scoped groups of record IDs to retrieve. Currently, you can specify exactly one entry.

", + "smithy.api#length": { + "min": 1, + "max": 1 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordResponse": { + "type": "structure", + "members": { + "registryRecords": { + "target": "com.amazonaws.agentregistry#RegistryRecordSummaryList", + "traits": { + "smithy.api#documentation": "

The records that were successfully retrieved. Each record correlates to the request by its recordId.

", + "smithy.api#required": {} + } + }, + "errors": { + "target": "com.amazonaws.agentregistry#BatchGetDiscoverableRegistryRecordErrorList", + "traits": { + "smithy.api#documentation": "

The per-record errors for records that could not be retrieved. This list is empty when all requested records were returned.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistry#CustomDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + } + }, + "traits": { + "smithy.api#documentation": "

Custom descriptor for user-defined content

" + } + }, + "com.amazonaws.agentregistry#DataSchemaVersion": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Version of the descriptor type schema

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistry#DateTimestamp": { + "type": "timestamp", + "traits": { + "smithy.api#documentation": "

Timestamp in ISO 8601 date-time format

", + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.agentregistry#Description": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Description of the Resource

", + "smithy.api#length": { + "min": 1, + "max": 4096 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistry#DescriptorData": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Descriptor payload data

", + "smithy.api#length": { + "min": 1, + "max": 102400 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistry#DescriptorSource": { + "type": "structure", + "members": { + "fromUrl": { + "target": "com.amazonaws.agentregistry#DescriptorSourceFromUrl" + } + }, + "traits": { + "smithy.api#documentation": "

The source location from which a descriptor's content was retrieved.

" + } + }, + "com.amazonaws.agentregistry#DescriptorSourceFromUrl": { + "type": "structure", + "members": { + "url": { + "target": "com.amazonaws.agentregistry#DescriptorSourceUrl", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Base mixin for descriptor source from URL

" + } + }, + "com.amazonaws.agentregistry#DescriptorSourceUrl": { + "type": "string", + "traits": { + "smithy.api#documentation": "

URL source for descriptor content

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^https://.*$" + } + }, + "com.amazonaws.agentregistry#Descriptors": { + "type": "structure", + "members": { + "mcpServer": { + "target": "com.amazonaws.agentregistry#McpServerDescriptor" + }, + "a2aAgentCard": { + "target": "com.amazonaws.agentregistry#A2aAgentCardDescriptor" + }, + "agentSkillsDefinition": { + "target": "com.amazonaws.agentregistry#AgentSkillsDefinitionDescriptor" + }, + "custom": { + "target": "com.amazonaws.agentregistry#CustomDescriptor" + } + }, + "traits": { + "smithy.api#documentation": "

The protocol-specific descriptors that describe how to connect to and use the registry record.

" + } + }, + "com.amazonaws.agentregistry#DiscoverableFilterValues": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#FilterValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.agentregistry#DiscoverableRegistryRecordSummary": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistry#RegistryArn", + "traits": { + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistry#RegistryRecordArn", + "traits": { + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistry#RegistryRecordId", + "traits": { + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistry#RegistryRecordName", + "traits": { + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistry#Description" + }, + "displayName": { + "target": "com.amazonaws.agentregistry#RegistryRecordDisplayName" + }, + "recordType": { + "target": "com.amazonaws.agentregistry#RecordType", + "traits": { + "smithy.api#required": {} + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistry#RegistryRecordVersion", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistry#RegistryRecordStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistry#DateTimestamp", + "traits": { + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistry#DateTimestamp", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information about a discoverable registry record returned by ListDiscoverableRegistryRecords. This summary does not include descriptors.

" + } + }, + "com.amazonaws.agentregistry#DiscoverableRegistryRecordSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#DiscoverableRegistryRecordSummary" + } + }, + "com.amazonaws.agentregistry#FilterValue": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A single filter value. Constrained by length only; the accepted set of values is filter-specific and validated server-side so enum-style values such as READY or AWS_IAM are accepted.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistry#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistry#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request failed due to an unexpected internal error; the caller may retry.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.agentregistry#ListDiscoverableRegistryRecords": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistry#ListDiscoverableRegistryRecordsRequest" + }, + "output": { + "target": "com.amazonaws.agentregistry#ListDiscoverableRegistryRecordsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistry#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistry#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistry#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistry#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistry#UnauthorizedException" + }, + { + "target": "com.amazonaws.agentregistry#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the discoverable registry records in a registry. You can optionally filter and paginate the results.

", + "smithy.api#http": { + "method": "POST", + "uri": "/registries/{registryId}/discoverable-records-list", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "registryRecords" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListDiscoverableRegistryRecordsNonexistentFailure", + "params": { + "registryId": "aaaaaaaaaaaa" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": {} + } + } + ] + } + }, + "com.amazonaws.agentregistry#ListDiscoverableRegistryRecordsRequest": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistry#RegistryIdentifier", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of records to return in a single page. Valid values are 1 through 100.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The pagination token returned by a previous request. Use this value to retrieve the next page of results.

", + "smithy.api#length": { + "min": 1, + "max": 4096 + } + } + }, + "filters": { + "target": "com.amazonaws.agentregistry#RegistryRecordFilterList", + "traits": { + "smithy.api#documentation": "

The filters to apply to the discoverable registry record list.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistry#ListDiscoverableRegistryRecordsResponse": { + "type": "structure", + "members": { + "registryRecords": { + "target": "com.amazonaws.agentregistry#DiscoverableRegistryRecordSummaryList", + "traits": { + "smithy.api#documentation": "

The page of discoverable registry record summaries.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The pagination token to pass to a subsequent request to retrieve the next page of results. This field is absent when there are no more results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistry#McpServerAdditionalData": { + "type": "structure", + "members": { + "tools": { + "target": "com.amazonaws.agentregistry#McpToolsDescriptor" + } + }, + "traits": { + "smithy.api#documentation": "

Additional data for an MCP server descriptor

" + } + }, + "com.amazonaws.agentregistry#McpServerDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistry#DataSchemaVersion" + }, + "additionalData": { + "target": "com.amazonaws.agentregistry#McpServerAdditionalData" + }, + "source": { + "target": "com.amazonaws.agentregistry#DescriptorSource", + "traits": { + "smithy.api#documentation": "

The source location from which the MCP (Model Context Protocol) server descriptor content was retrieved.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Base mixin for MCP server descriptor content

" + } + }, + "com.amazonaws.agentregistry#McpToolsDescriptor": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.agentregistry#DescriptorData" + }, + "dataSchemaVersion": { + "target": "com.amazonaws.agentregistry#DataSchemaVersion" + } + }, + "traits": { + "smithy.api#documentation": "

MCP tools descriptor containing tool definitions

" + } + }, + "com.amazonaws.agentregistry#MetadataFilterExpression": { + "type": "document", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistry#NonBlankString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[\\s\\S]+$" + } + }, + "com.amazonaws.agentregistry#RecordIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Record identifier that accepts either ARN or ID format

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^(arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}/record/)?[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistry#RecordType": { + "type": "enum", + "members": { + "MCP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MCP" + } + }, + "AGENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AGENT" + } + }, + "CUSTOM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOM" + } + }, + "SKILL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SKILL" + } + } + }, + "traits": { + "smithy.api#documentation": "

Record type enum for registry record classification

" + } + }, + "com.amazonaws.agentregistry#RegistryArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::AgentRegistry::Registry" + }, + "smithy.api#documentation": "

Registry Amazon Resource Name

", + "smithy.api#length": { + "min": 46, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}$" + } + }, + "com.amazonaws.agentregistry#RegistryIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#RegistryIdentifier" + } + }, + "com.amazonaws.agentregistry#RegistryIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry identifier that accepts either ARN or ID format

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^(arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/)?[a-zA-Z0-9]{12,16}$" + } + }, + "com.amazonaws.agentregistry#RegistryRecordArn": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record Amazon Resource Name

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}/record/[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistry#RegistryRecordDisplayName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Display name for a registry record

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.agentregistry#RegistryRecordFilter": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.agentregistry#RegistryRecordFilterName", + "traits": { + "smithy.api#documentation": "

The attribute to filter on.

", + "smithy.api#required": {} + } + }, + "values": { + "target": "com.amazonaws.agentregistry#DiscoverableFilterValues", + "traits": { + "smithy.api#documentation": "

The values to match for the attribute.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A single filter applied to a ListDiscoverableRegistryRecords request.

" + } + }, + "com.amazonaws.agentregistry#RegistryRecordFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#RegistryRecordFilter" + }, + "traits": { + "smithy.api#documentation": "

The list of filters applied to a ListDiscoverableRegistryRecords request.

", + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.agentregistry#RegistryRecordFilterName": { + "type": "enum", + "members": { + "RECORD_TYPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#documentation": "

Filters records by record type, such as MCP or AGENT.

", + "smithy.api#enumValue": "recordType" + } + }, + "DESCRIPTOR_TYPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "descriptorType" + } + } + }, + "traits": { + "smithy.api#documentation": "

The attribute to filter registry records on.

" + } + }, + "com.amazonaws.agentregistry#RegistryRecordId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record unique identifier - 12-character alphanumeric string

", + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[a-zA-Z0-9]{12}$" + } + }, + "com.amazonaws.agentregistry#RegistryRecordIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#RecordIdentifier" + } + }, + "com.amazonaws.agentregistry#RegistryRecordName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Registry Record name

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-\\.\\/]*$" + } + }, + "com.amazonaws.agentregistry#RegistryRecordStatus": { + "type": "enum", + "members": { + "DRAFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DRAFT" + } + }, + "PENDING_APPROVAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_APPROVAL" + } + }, + "APPROVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APPROVED" + } + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } + }, + "DEPRECATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEPRECATED" + } + }, + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "UPDATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE_FAILED" + } + } + }, + "traits": { + "smithy.api#documentation": "

Registry record status

" + } + }, + "com.amazonaws.agentregistry#RegistryRecordSummary": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.agentregistry#RegistryArn", + "traits": { + "smithy.api#required": {} + } + }, + "recordArn": { + "target": "com.amazonaws.agentregistry#RegistryRecordArn", + "traits": { + "smithy.api#required": {} + } + }, + "recordId": { + "target": "com.amazonaws.agentregistry#RegistryRecordId", + "traits": { + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.agentregistry#RegistryRecordName", + "traits": { + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.agentregistry#Description" + }, + "displayName": { + "target": "com.amazonaws.agentregistry#RegistryRecordDisplayName" + }, + "recordType": { + "target": "com.amazonaws.agentregistry#RecordType", + "traits": { + "smithy.api#required": {} + } + }, + "descriptors": { + "target": "com.amazonaws.agentregistry#Descriptors", + "traits": { + "smithy.api#documentation": "

The protocol-specific descriptors that describe how to connect to and use the record.

", + "smithy.api#required": {} + } + }, + "recordVersion": { + "target": "com.amazonaws.agentregistry#RegistryRecordVersion", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.agentregistry#RegistryRecordStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.agentregistry#DateTimestamp", + "traits": { + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.agentregistry#DateTimestamp", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information about a registry record, including its descriptors.

" + } + }, + "com.amazonaws.agentregistry#RegistryRecordSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#RegistryRecordSummary" + } + }, + "com.amazonaws.agentregistry#RegistryRecordVersion": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Version of the registry record

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9.-]+$" + } + }, + "com.amazonaws.agentregistry#RegistryRecordsEntry": { + "type": "structure", + "members": { + "registryId": { + "target": "com.amazonaws.agentregistry#RegistryIdentifier", + "traits": { + "smithy.api#required": {} + } + }, + "recordIds": { + "target": "com.amazonaws.agentregistry#RegistryRecordIdList", + "traits": { + "smithy.api#documentation": "

The record IDs to retrieve from the registry. You can specify 1 through 100 record IDs.

", + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Binds one registry to the record IDs requested from it.

" + } + }, + "com.amazonaws.agentregistry#RegistryRecordsEntryList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#RegistryRecordsEntry" + } + }, + "com.amazonaws.agentregistry#ResourceNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistry#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The requested resource was not found.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecords": { + "type": "operation", + "input": { + "target": "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecordsRequest" + }, + "output": { + "target": "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecordsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.agentregistry#AccessDeniedException" + }, + { + "target": "com.amazonaws.agentregistry#InternalServerException" + }, + { + "target": "com.amazonaws.agentregistry#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.agentregistry#ThrottlingException" + }, + { + "target": "com.amazonaws.agentregistry#UnauthorizedException" + }, + { + "target": "com.amazonaws.agentregistry#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Searches the discoverable registry records in a registry using a natural language query. Returns metadata for the matching records ordered by relevance.

", + "smithy.api#http": { + "method": "POST", + "uri": "/discoverable-records-search", + "code": 200 + }, + "smithy.test#smokeTests": [ + { + "id": "SearchDiscoverableRegistryRecordsNonexistentFailure", + "params": { + "searchQuery": "smoke-test", + "registryIds": [ + "aaaaaaaaaaaa" + ] + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": {} + } + } + ] + } + }, + "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecordsRequest": { + "type": "structure", + "members": { + "searchQuery": { + "target": "com.amazonaws.agentregistry#SearchQuery", + "traits": { + "smithy.api#documentation": "

The natural language query to search for matching registry records.

", + "smithy.api#required": {} + } + }, + "registryIds": { + "target": "com.amazonaws.agentregistry#RegistryIdList", + "traits": { + "smithy.api#documentation": "

The registry identifiers to search within. Currently, you must specify exactly one registry identifier. You can provide either the full Amazon Web Services Resource Name (ARN) or the registry ID.

", + "smithy.api#length": { + "min": 1, + "max": 1 + }, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#default": 10, + "smithy.api#documentation": "

The maximum number of results to return. Valid values are 1 through 20. The default value is 10.

", + "smithy.api#range": { + "min": 1, + "max": 20 + } + } + }, + "filters": { + "target": "com.amazonaws.agentregistry#MetadataFilterExpression", + "traits": { + "smithy.api#documentation": "

An optional structured JSON metadata filter that narrows the search results. Supports the field-level operators $eq, $ne, and $in, and the logical operators $and and $or on filterable fields.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.agentregistry#SearchDiscoverableRegistryRecordsResponse": { + "type": "structure", + "members": { + "registryRecords": { + "target": "com.amazonaws.agentregistry#RegistryRecordSummaryList", + "traits": { + "smithy.api#documentation": "

The registry records that match the search query, ordered by relevance.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.agentregistry#SearchQuery": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.agentregistry#ThrottlingException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistry#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request was denied due to request throttling; the caller may retry after a delay.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, + "com.amazonaws.agentregistry#UnauthorizedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.agentregistry#NonBlankString" + } + }, + "traits": { + "smithy.api#documentation": "

The request could not be authenticated.

", + "smithy.api#error": "client", + "smithy.api#httpError": 401 + } + }, + "com.amazonaws.agentregistry#ValidationException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + }, + "reason": { + "target": "com.amazonaws.agentregistry#ValidationExceptionReason", + "traits": { + "smithy.api#addedDefault": {}, + "smithy.api#default": "FieldValidationFailed", + "smithy.api#documentation": "

The reason the request failed validation.

", + "smithy.api#required": {} + } + }, + "fieldList": { + "target": "com.amazonaws.agentregistry#ValidationExceptionFieldList", + "traits": { + "smithy.api#documentation": "

The list of input fields that failed validation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The request failed validation of one or more input fields.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.agentregistry#ValidationExceptionField": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the field that failed validation.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of why the field failed validation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a single input field that failed validation.

" + } + }, + "com.amazonaws.agentregistry#ValidationExceptionFieldList": { + "type": "list", + "member": { + "target": "com.amazonaws.agentregistry#ValidationExceptionField" + } + }, + "com.amazonaws.agentregistry#ValidationExceptionReason": { + "type": "enum", + "members": { + "CANNOT_PARSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CannotParse" + } + }, + "FIELD_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FieldValidationFailed" + } + }, + "IDEMPOTENT_PARAMETER_MISMATCH_EXCEPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IdempotentParameterMismatchException" + } + }, + "ROOT_EVENT_IN_OTHER_SESSION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EventInOtherSession" + } + }, + "RESOURCE_CONFLICT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ResourceConflict" + } + } + } + } + } +} \ No newline at end of file diff --git a/codegen/sdk/aws-models/auto-scaling.json b/codegen/sdk/aws-models/auto-scaling.json index e1f24ca5b16..fd02deeef50 100644 --- a/codegen/sdk/aws-models/auto-scaling.json +++ b/codegen/sdk/aws-models/auto-scaling.json @@ -973,6 +973,12 @@ "traits": { "smithy.api#documentation": "

The instance lifecycle policy for the Auto Scaling group.

" } + }, + "Operator": { + "target": "com.amazonaws.autoscaling#Operator", + "traits": { + "smithy.api#documentation": "

The entity that manages the Auto Scaling group, if applicable. When set, only the designated\n operator can make changes to the group configuration.

" + } } }, "traits": { @@ -2549,7 +2555,7 @@ "CapacityDistributionStrategy": { "target": "com.amazonaws.autoscaling#CapacityDistributionStrategy", "traits": { - "smithy.api#documentation": "

\n If launches fail in an Availability Zone, the following strategies are available. The default is balanced-best-effort.

\n " + "smithy.api#documentation": "

\n If launches fail in an Availability Zone, the following strategies are available. The default is balanced-best-effort.

\n " } } }, @@ -3608,6 +3614,12 @@ "traits": { "smithy.api#documentation": "

\n The instance lifecycle policy for the Auto Scaling group. This policy controls instance behavior when an instance\n transitions through its lifecycle states. Configure retention triggers to specify when instances should\n move to a Retained state instead of automatic termination.\n

\n

For more information, see\n \n Control instance retention with instance lifecycle policies\n in the Amazon EC2 Auto Scaling User Guide.\n

\n \n

Instances in a Retained state will continue to incur standard EC2 charges until terminated.

\n
" } + }, + "Operator": { + "target": "com.amazonaws.autoscaling#Operator", + "traits": { + "smithy.api#documentation": "

The entity that manages the Auto Scaling group. If you specify this parameter, Amazon EC2 Auto Scaling\n passes the operator identity to EC2 for instance launches and only allows the\n designated operator to make changes to the Auto Scaling group. All mutating API calls from\n non-operator callers are rejected with an AccessDenied exception.

" + } } } }, @@ -8620,6 +8632,15 @@ "target": "com.amazonaws.autoscaling#LocalStorageType" } }, + "com.amazonaws.autoscaling#ManagerIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, "com.amazonaws.autoscaling#MaxGroupPreparedCapacity": { "type": "integer", "traits": { @@ -9120,6 +9141,22 @@ "com.amazonaws.autoscaling#OnDemandPercentageAboveBaseCapacity": { "type": "integer" }, + "com.amazonaws.autoscaling#Operator": { + "type": "structure", + "members": { + "Principal": { + "target": "com.amazonaws.autoscaling#ManagerIdentifier", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The service principal that is authorized to manage the Auto Scaling group. When an operator is\n specified, only the designated operator service principal can make mutating changes to\n the Auto Scaling group.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the entity that manages an Auto Scaling group.

" + } + }, "com.amazonaws.autoscaling#Overrides": { "type": "list", "member": { diff --git a/codegen/sdk/aws-models/backup.json b/codegen/sdk/aws-models/backup.json index cd9f9382267..cb9a60615f9 100644 --- a/codegen/sdk/aws-models/backup.json +++ b/codegen/sdk/aws-models/backup.json @@ -32,6 +32,106 @@ "com.amazonaws.backup#ARN": { "type": "string" }, + "com.amazonaws.backup#AccessPointArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws[a-z-]*:backup:[a-z-\\d]+:\\d{12}:accesspoint/)[\\da-z]{1}[\\da-z-]{1,48}[\\da-z]{1}(?Contains metadata about a BackupSelection object.

" } }, + "com.amazonaws.backup#BackupVaultArn": { + "type": "string" + }, "com.amazonaws.backup#BackupVaultEvent": { "type": "enum", "members": { @@ -1250,6 +1359,42 @@ "traits": { "smithy.api#enumValue": "EKS_BACKUP_OBJECT_FAILED" } + }, + "ACCESS_POINT_AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_AVAILABLE" + } + }, + "ACCESS_POINT_CREATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_CREATION_FAILED" + } + }, + "ACCESS_POINT_DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_DELETED" + } + }, + "ACCESS_POINT_DELETION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_DELETION_FAILED" + } + }, + "ACCESS_POINT_EXPIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_EXPIRED" + } + }, + "ACCESS_POINT_DISASSOCIATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESS_POINT_DISASSOCIATED" + } } } }, @@ -1314,7 +1459,7 @@ "target": "com.amazonaws.backup#Long2", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The number of recovery points that are stored in a backup vault.

" + "smithy.api#documentation": "

The number of recovery points that are stored in a backup vault. Recovery point count\n value displayed in the console can be an approximation.

" } }, "Locked": { @@ -2042,6 +2187,112 @@ "target": "com.amazonaws.backup#CopyJob" } }, + "com.amazonaws.backup#CreateBackupAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#CreateBackupAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.backup#CreateBackupAccessPointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backup#AlreadyExistsException" + }, + { + "target": "com.amazonaws.backup#ConflictException" + }, + { + "target": "com.amazonaws.backup#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.backup#InvalidRequestException" + }, + { + "target": "com.amazonaws.backup#LimitExceededException" + }, + { + "target": "com.amazonaws.backup#MissingParameterValueException" + }, + { + "target": "com.amazonaws.backup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a backup access point for an Amazon S3 recovery point. A backup access point provides\n on-demand, read-only access to the backup data in a recovery point through an Amazon S3 access point,\n without initiating a restore.

\n

While a backup access point is active for a recovery point, Backup pauses lifecycle transitions\n and blocks deletion of that recovery point.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/backup-access-point/create", + "code": 201 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backup#CreateBackupAccessPointRequest": { + "type": "structure", + "members": { + "AccessPointMetadata": { + "target": "com.amazonaws.backup#AccessPointMetadataMap", + "traits": { + "smithy.api#documentation": "

Metadata for the backup access point. For continuous (point-in-time) recovery points, you must include an\n AccessPointInTime timestamp (in format 2021-11-27T03:30:27Z). The access point\n provides access to the content present in the backup at that specific time. You can specify any time\n within the continuous backup's retention period, up to the latest restorable time. For snapshot recovery\n points, do not include AccessPointInTime.

" + } + }, + "AccessPointPolicy": { + "target": "com.amazonaws.backup#AccessPointPolicy", + "traits": { + "smithy.api#documentation": "

An optional resource-based policy, in JSON format, to apply to the underlying Amazon S3 access\n point. The policy controls how backup data can be accessed through the access point. If you do not specify\n a policy, access is governed by the caller's IAM permissions. For more information, see Configuring IAM policies\n for using access points in the Amazon S3 User Guide.

" + } + }, + "Name": { + "target": "com.amazonaws.backup#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the backup access point. This name is shared with the Amazon S3 access point namespace.\n It must be unique within your account and Region and cannot conflict with an existing Amazon S3 access\n point. For more information about access point naming, see Access points naming rules, restrictions, and limitations in the Amazon S3 User\n Guide.

", + "smithy.api#required": {} + } + }, + "RecoveryPointArn": { + "target": "com.amazonaws.backup#RecoveryPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recovery point for which to create the backup access point. The\n recovery point must be an Amazon S3 recovery point in the AVAILABLE, STOPPED,\n or COMPLETED state.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.backup#TagMap", + "traits": { + "smithy.api#documentation": "

The tags to assign to the backup access point.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backup#CreateBackupAccessPointResponse": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.backup#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the created backup access point.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.backup#AccessPointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the backup access point. A newly created backup access point begins in the\n CREATING state and becomes usable when it reaches AVAILABLE.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.backup#CreateBackupPlan": { "type": "operation", "input": { @@ -3195,6 +3446,9 @@ { "target": "com.amazonaws.backup#CancelLegalHold" }, + { + "target": "com.amazonaws.backup#CreateBackupAccessPoint" + }, { "target": "com.amazonaws.backup#CreateBackupPlan" }, @@ -3228,6 +3482,9 @@ { "target": "com.amazonaws.backup#CreateTieringConfiguration" }, + { + "target": "com.amazonaws.backup#DeleteBackupAccessPoint" + }, { "target": "com.amazonaws.backup#DeleteBackupPlan" }, @@ -3264,6 +3521,9 @@ { "target": "com.amazonaws.backup#DeleteTieringConfiguration" }, + { + "target": "com.amazonaws.backup#DescribeBackupAccessPoint" + }, { "target": "com.amazonaws.backup#DescribeBackupJob" }, @@ -3360,6 +3620,15 @@ { "target": "com.amazonaws.backup#GetTieringConfiguration" }, + { + "target": "com.amazonaws.backup#ListBackupAccessPoints" + }, + { + "target": "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPoint" + }, + { + "target": "com.amazonaws.backup#ListBackupAccessPointsByResource" + }, { "target": "com.amazonaws.backup#ListBackupJobs" }, @@ -4626,6 +4895,57 @@ "smithy.api#documentation": "

This is a resource filter containing FromDate: DateTime \n and ToDate: DateTime. Both values are required. Future DateTime \n values are not permitted.

\n

The date and time are in Unix format and Coordinated \n Universal Time (UTC), and it is accurate to milliseconds \n ((milliseconds are optional). \n For example, the value 1516925490.087 represents Friday, January \n 26, 2018 12:11:30.087 AM.

" } }, + "com.amazonaws.backup#DeleteBackupAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#DeleteBackupAccessPointInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.backup#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.backup#InvalidRequestException" + }, + { + "target": "com.amazonaws.backup#MissingParameterValueException" + }, + { + "target": "com.amazonaws.backup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a backup access point. This deletes the underlying Amazon S3 access point and, if no other\n backup access points remain for the recovery point, resumes lifecycle transitions for that recovery point.

\n

Always delete backup access points using this operation rather than deleting the underlying Amazon S3\n access point directly.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/backup-access-point/delete/{AccessPointArn}", + "code": 204 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.backup#DeleteBackupAccessPointInput": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.backup#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the backup access point to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, "com.amazonaws.backup#DeleteBackupPlan": { "type": "operation", "input": { @@ -5298,20 +5618,20 @@ "smithy.api#error": "server" } }, - "com.amazonaws.backup#DescribeBackupJob": { + "com.amazonaws.backup#DescribeBackupAccessPoint": { "type": "operation", "input": { - "target": "com.amazonaws.backup#DescribeBackupJobInput" + "target": "com.amazonaws.backup#DescribeBackupAccessPointInput" }, "output": { - "target": "com.amazonaws.backup#DescribeBackupJobOutput" + "target": "com.amazonaws.backup#DescribeBackupAccessPointResponse" }, "errors": [ { - "target": "com.amazonaws.backup#DependencyFailureException" + "target": "com.amazonaws.backup#InvalidParameterValueException" }, { - "target": "com.amazonaws.backup#InvalidParameterValueException" + "target": "com.amazonaws.backup#InvalidRequestException" }, { "target": "com.amazonaws.backup#MissingParameterValueException" @@ -5324,13 +5644,146 @@ } ], "traits": { - "smithy.api#documentation": "

Returns backup job details for the specified BackupJobId.

", + "smithy.api#documentation": "

Returns metadata about a backup access point, including its status and the details of the underlying\n Amazon S3 access point.

\n

After a backup access point reaches the AVAILABLE status, use this operation to retrieve the\n Amazon S3 access point ARN and alias that you need to read the backup data.

", "smithy.api#http": { "method": "GET", - "uri": "/backup-jobs/{BackupJobId}", + "uri": "/backup-access-point/{AccessPointArn}", "code": 200 }, - "smithy.api#idempotent": {} + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backup#DescribeBackupAccessPointInput": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.backup#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the backup access point to describe.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.backup#DescribeBackupAccessPointResponse": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.backup#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the backup access point.

", + "smithy.api#required": {} + } + }, + "AccessPointMetadata": { + "target": "com.amazonaws.backup#AccessPointMetadataMap", + "traits": { + "smithy.api#documentation": "

Metadata for the backup access point. After the backup access point reaches the AVAILABLE\n status, this map contains S3AccessPointArn and S3AccessPointAlias, which you use with\n standard Amazon S3 read APIs to access the backup data. For continuous recovery points, this map also\n contains AccessPointInTime (in format 2021-11-27T03:30:27Z). The access point\n provides access to the content present in the backup at that specific time.

" + } + }, + "BackupVaultArn": { + "target": "com.amazonaws.backup#BackupVaultArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the backup vault that contains the recovery point.

" + } + }, + "BackupVaultName": { + "target": "com.amazonaws.backup#BackupVaultName", + "traits": { + "smithy.api#documentation": "

The name of the backup vault that contains the recovery point.

", + "smithy.api#required": {} + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the backup access point was created, in Unix format and Coordinated Universal Time\n (UTC). The value of CreationTime is accurate to milliseconds. For example, the value\n 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.backup#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the backup access point.

", + "smithy.api#required": {} + } + }, + "RecoveryPointArn": { + "target": "com.amazonaws.backup#RecoveryPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recovery point that the backup access point provides access to.

", + "smithy.api#required": {} + } + }, + "ResourceArn": { + "target": "com.amazonaws.backup#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource that was backed up, such as an Amazon S3 bucket.

", + "smithy.api#required": {} + } + }, + "ResourceType": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The type of Amazon Web Services resource associated with the recovery point. For example, S3 for\n Amazon Simple Storage Service.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.backup#AccessPointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the backup access point.

", + "smithy.api#required": {} + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A message that provides additional detail about the status of the backup access point, such as the reason a\n creation or deletion attempt failed.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backup#DescribeBackupJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#DescribeBackupJobInput" + }, + "output": { + "target": "com.amazonaws.backup#DescribeBackupJobOutput" + }, + "errors": [ + { + "target": "com.amazonaws.backup#DependencyFailureException" + }, + { + "target": "com.amazonaws.backup#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.backup#MissingParameterValueException" + }, + { + "target": "com.amazonaws.backup#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns backup job details for the specified BackupJobId.

", + "smithy.api#http": { + "method": "GET", + "uri": "/backup-jobs/{BackupJobId}", + "code": 200 + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.backup#DescribeBackupJobInput": { @@ -8830,200 +9283,554 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about the latest update to an MPA approval team association.

" + "smithy.api#documentation": "

Contains information about the latest update to an MPA approval team association.

" + } + }, + "com.amazonaws.backup#LatestRevokeRequest": { + "type": "structure", + "members": { + "MpaSessionArn": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

The ARN of the MPA session associated with this revoke request.

" + } + }, + "Status": { + "target": "com.amazonaws.backup#MpaRevokeSessionStatus", + "traits": { + "smithy.api#documentation": "

The current status of the revoke request.

" + } + }, + "StatusMessage": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

A message describing the current status of the revoke request.

" + } + }, + "InitiationDate": { + "target": "com.amazonaws.backup#timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the revoke request was initiated.

" + } + }, + "ExpiryDate": { + "target": "com.amazonaws.backup#timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the revoke request will expire.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about the latest request to revoke access to a backup vault.

" + } + }, + "com.amazonaws.backup#LegalHold": { + "type": "structure", + "members": { + "Title": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

The title of a legal hold.

" + } + }, + "Status": { + "target": "com.amazonaws.backup#LegalHoldStatus", + "traits": { + "smithy.api#documentation": "

The status of the legal hold.

" + } + }, + "Description": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

The description of a legal hold.

" + } + }, + "LegalHoldId": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

The ID of the legal hold.

" + } + }, + "LegalHoldArn": { + "target": "com.amazonaws.backup#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the legal hold; for example, \n arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

" + } + }, + "CreationDate": { + "target": "com.amazonaws.backup#timestamp", + "traits": { + "smithy.api#documentation": "

The time when the legal hold was created.

" + } + }, + "CancellationDate": { + "target": "com.amazonaws.backup#timestamp", + "traits": { + "smithy.api#documentation": "

The time when the legal hold was cancelled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A legal hold is an administrative tool that helps prevent backups \n from being deleted while under a hold. While the hold is in place, \n backups under a hold cannot be deleted and lifecycle policies that \n would alter the backup status (such as transition to cold storage) are \n delayed until the legal hold is removed. A backup can have more than \n one legal hold. Legal holds are applied to one or more backups \n (also known as recovery points). These backups can be filtered by resource \n types and by resource IDs.

" + } + }, + "com.amazonaws.backup#LegalHoldStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "CANCELING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CANCELING" + } + }, + "CANCELED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CANCELED" + } + } + } + }, + "com.amazonaws.backup#LegalHoldsList": { + "type": "list", + "member": { + "target": "com.amazonaws.backup#LegalHold" + } + }, + "com.amazonaws.backup#Lifecycle": { + "type": "structure", + "members": { + "MoveToColdStorageAfterDays": { + "target": "com.amazonaws.backup#Long", + "traits": { + "smithy.api#documentation": "

The number of days after creation that a recovery point is moved to cold\n storage.

" + } + }, + "DeleteAfterDays": { + "target": "com.amazonaws.backup#Long", + "traits": { + "smithy.api#documentation": "

The number of days after creation that a recovery point is deleted. This value must be\n at least 90 days after the number of days specified in MoveToColdStorageAfterDays.

" + } + }, + "OptInToArchiveForSupportedResources": { + "target": "com.amazonaws.backup#Boolean", + "traits": { + "smithy.api#documentation": "

If the value is true, your backup plan transitions supported resources to \n archive (cold) storage tier in accordance with your lifecycle settings.

" + } + }, + "DeleteAfterEvent": { + "target": "com.amazonaws.backup#LifecycleDeleteAfterEvent", + "traits": { + "smithy.api#documentation": "

The event after which a recovery point is deleted. A recovery point with both\n DeleteAfterDays and DeleteAfterEvent will delete after\n whichever condition is satisfied first. Not valid as an input.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the time period, in days, before a recovery point transitions to cold storage \n or is deleted.

\n

Backups transitioned to cold storage must be stored in cold storage for a minimum of 90\n days. Therefore, on the console, the retention setting must be 90 days greater than the\n transition to cold after days setting. The transition to cold after days setting can't\n be changed after a backup has been transitioned to cold.

\n

Resource types that can transition to cold storage are listed in the Feature \n availability by resource table. Backup ignores this expression for\n other resource types.

\n

To remove the existing lifecycle and retention periods and keep your recovery points indefinitely, \n specify -1 for MoveToColdStorageAfterDays and DeleteAfterDays.

" + } + }, + "com.amazonaws.backup#LifecycleDeleteAfterEvent": { + "type": "enum", + "members": { + "DELETE_AFTER_COPY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_AFTER_COPY" + } + } + } + }, + "com.amazonaws.backup#LimitExceededException": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.backup#string" + }, + "Message": { + "target": "com.amazonaws.backup#string" + }, + "Type": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

" + } + }, + "Context": { + "target": "com.amazonaws.backup#string", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A limit in the request has been exceeded; for example, a maximum number of items allowed\n in a request.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.backup#ListAccessPointsMember": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.backup#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the backup access point.

", + "smithy.api#required": {} + } + }, + "AccessPointMetadata": { + "target": "com.amazonaws.backup#AccessPointMetadataMap", + "traits": { + "smithy.api#documentation": "

Metadata for the backup access point. After the backup access point reaches the AVAILABLE\n status, this map contains S3AccessPointArn and S3AccessPointAlias, which you use with\n standard Amazon S3 read APIs to access the backup data. For continuous recovery points, this map also\n contains AccessPointInTime (in format 2021-11-27T03:30:27Z). The access point\n provides access to the content present in the backup at that specific time.

", + "smithy.api#required": {} + } + }, + "BackupVaultArn": { + "target": "com.amazonaws.backup#BackupVaultArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the backup vault that contains the recovery point.

" + } + }, + "BackupVaultName": { + "target": "com.amazonaws.backup#BackupVaultName", + "traits": { + "smithy.api#documentation": "

The name of the backup vault that contains the recovery point.

", + "smithy.api#required": {} + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the backup access point was created, in Unix format and Coordinated Universal Time\n (UTC). The value of CreationTime is accurate to milliseconds. For example, the value\n 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.backup#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the backup access point.

", + "smithy.api#required": {} + } + }, + "RecoveryPointArn": { + "target": "com.amazonaws.backup#RecoveryPointArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recovery point that the backup access point provides access to.

", + "smithy.api#required": {} + } + }, + "ResourceArn": { + "target": "com.amazonaws.backup#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource that was backed up, such as an Amazon S3 bucket.

", + "smithy.api#required": {} + } + }, + "ResourceType": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The type of Amazon Web Services resource associated with the recovery point. For example, S3 for\n Amazon Simple Storage Service.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.backup#AccessPointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the backup access point.

", + "smithy.api#required": {} + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A message that provides additional detail about the status of the backup access point, such as the reason a\n creation or deletion attempt failed.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains metadata about a backup access point.

" + } + }, + "com.amazonaws.backup#ListBackupAccessPoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#ListBackupAccessPointsRequest" + }, + "output": { + "target": "com.amazonaws.backup#ListBackupAccessPointsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backup#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of the backup access points in your account and Region.

", + "smithy.api#http": { + "method": "GET", + "uri": "/backup-access-point", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "BackupAccessPoints", + "pageSize": "MaxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointRequest" + }, + "output": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backup#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the backup access points associated with the specified recovery point.

\n

If you own the recovery point and have shared it with other accounts, the response includes backup access\n points created by those accounts.

", + "smithy.api#http": { + "method": "POST", + "uri": "/backup-access-point/recovery-point/{RecoveryPointArn}", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "BackupAccessPoints", + "pageSize": "MaxResults" + }, + "smithy.api#readonly": {} } }, - "com.amazonaws.backup#LatestRevokeRequest": { + "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointRequest": { "type": "structure", "members": { - "MpaSessionArn": { - "target": "com.amazonaws.backup#string", - "traits": { - "smithy.api#documentation": "

The ARN of the MPA session associated with this revoke request.

" - } - }, - "Status": { - "target": "com.amazonaws.backup#MpaRevokeSessionStatus", - "traits": { - "smithy.api#documentation": "

The current status of the revoke request.

" - } - }, - "StatusMessage": { - "target": "com.amazonaws.backup#string", + "MaxResults": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointRequestMaxResultsInteger", "traits": { - "smithy.api#documentation": "

A message describing the current status of the revoke request.

" + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of items to be returned.

", + "smithy.api#httpQuery": "MaxResults" } }, - "InitiationDate": { - "target": "com.amazonaws.backup#timestamp", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The date and time when the revoke request was initiated.

" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

", + "smithy.api#httpQuery": "NextToken" } }, - "ExpiryDate": { - "target": "com.amazonaws.backup#timestamp", + "RecoveryPointArn": { + "target": "com.amazonaws.backup#RecoveryPointArn", "traits": { - "smithy.api#documentation": "

The date and time when the revoke request will expire.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recovery point whose backup access points you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains information about the latest request to revoke access to a backup vault.

" + "smithy.api#input": {} } }, - "com.amazonaws.backup#LegalHold": { + "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointRequestMaxResultsInteger": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.backup#ListBackupAccessPointsByRecoveryPointResponse": { "type": "structure", "members": { - "Title": { - "target": "com.amazonaws.backup#string", + "BackupAccessPoints": { + "target": "com.amazonaws.backup#BackupAccessPoints", "traits": { - "smithy.api#documentation": "

The title of a legal hold.

" + "smithy.api#documentation": "

A list of backup access points, each containing metadata such as its name, ARN, status, and associated\n recovery point.

", + "smithy.api#required": {} } }, - "Status": { - "target": "com.amazonaws.backup#LegalHoldStatus", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The status of the legal hold.

" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

" } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.backup#ListBackupAccessPointsByResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByResourceRequest" + }, + "output": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.backup#InvalidParameterValueException" }, - "Description": { - "target": "com.amazonaws.backup#string", - "traits": { - "smithy.api#documentation": "

The description of a legal hold.

" - } + { + "target": "com.amazonaws.backup#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the backup access points associated with the specified resource, such as an Amazon S3\n bucket.

", + "smithy.api#http": { + "method": "POST", + "uri": "/backup-access-point/resource/{ResourceArn}", + "code": 200 }, - "LegalHoldId": { - "target": "com.amazonaws.backup#string", - "traits": { - "smithy.api#documentation": "

The ID of the legal hold.

" - } + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "BackupAccessPoints", + "pageSize": "MaxResults" }, - "LegalHoldArn": { - "target": "com.amazonaws.backup#ARN", + "smithy.api#readonly": {} + } + }, + "com.amazonaws.backup#ListBackupAccessPointsByResourceRequest": { + "type": "structure", + "members": { + "MaxResults": { + "target": "com.amazonaws.backup#ListBackupAccessPointsByResourceRequestMaxResultsInteger", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the legal hold; for example, \n arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

" + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of items to be returned.

", + "smithy.api#httpQuery": "MaxResults" } }, - "CreationDate": { - "target": "com.amazonaws.backup#timestamp", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The time when the legal hold was created.

" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

", + "smithy.api#httpQuery": "NextToken" } }, - "CancellationDate": { - "target": "com.amazonaws.backup#timestamp", + "ResourceArn": { + "target": "com.amazonaws.backup#ResourceArn", "traits": { - "smithy.api#documentation": "

The time when the legal hold was cancelled.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource whose backup access points you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

A legal hold is an administrative tool that helps prevent backups \n from being deleted while under a hold. While the hold is in place, \n backups under a hold cannot be deleted and lifecycle policies that \n would alter the backup status (such as transition to cold storage) are \n delayed until the legal hold is removed. A backup can have more than \n one legal hold. Legal holds are applied to one or more backups \n (also known as recovery points). These backups can be filtered by resource \n types and by resource IDs.

" + "smithy.api#input": {} } }, - "com.amazonaws.backup#LegalHoldStatus": { - "type": "enum", + "com.amazonaws.backup#ListBackupAccessPointsByResourceRequestMaxResultsInteger": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.backup#ListBackupAccessPointsByResourceResponse": { + "type": "structure", "members": { - "CREATING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CREATING" - } - }, - "ACTIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ACTIVE" - } - }, - "CANCELING": { - "target": "smithy.api#Unit", + "BackupAccessPoints": { + "target": "com.amazonaws.backup#BackupAccessPoints", "traits": { - "smithy.api#enumValue": "CANCELING" + "smithy.api#documentation": "

A list of backup access points, each containing metadata such as its name, ARN, status, and associated\n recovery point.

", + "smithy.api#required": {} } }, - "CANCELED": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "CANCELED" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.backup#LegalHoldsList": { - "type": "list", - "member": { - "target": "com.amazonaws.backup#LegalHold" - } - }, - "com.amazonaws.backup#Lifecycle": { + "com.amazonaws.backup#ListBackupAccessPointsRequest": { "type": "structure", "members": { - "MoveToColdStorageAfterDays": { - "target": "com.amazonaws.backup#Long", - "traits": { - "smithy.api#documentation": "

The number of days after creation that a recovery point is moved to cold\n storage.

" - } - }, - "DeleteAfterDays": { - "target": "com.amazonaws.backup#Long", - "traits": { - "smithy.api#documentation": "

The number of days after creation that a recovery point is deleted. This value must be\n at least 90 days after the number of days specified in MoveToColdStorageAfterDays.

" - } - }, - "OptInToArchiveForSupportedResources": { - "target": "com.amazonaws.backup#Boolean", + "MaxResults": { + "target": "com.amazonaws.backup#ListBackupAccessPointsRequestMaxResultsInteger", "traits": { - "smithy.api#documentation": "

If the value is true, your backup plan transitions supported resources to \n archive (cold) storage tier in accordance with your lifecycle settings.

" + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of items to be returned.

", + "smithy.api#httpQuery": "MaxResults" } }, - "DeleteAfterEvent": { - "target": "com.amazonaws.backup#LifecycleDeleteAfterEvent", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The event after which a recovery point is deleted. A recovery point with both\n DeleteAfterDays and DeleteAfterEvent will delete after\n whichever condition is satisfied first. Not valid as an input.

" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

", + "smithy.api#httpQuery": "NextToken" } } }, "traits": { - "smithy.api#documentation": "

Specifies the time period, in days, before a recovery point transitions to cold storage \n or is deleted.

\n

Backups transitioned to cold storage must be stored in cold storage for a minimum of 90\n days. Therefore, on the console, the retention setting must be 90 days greater than the\n transition to cold after days setting. The transition to cold after days setting can't\n be changed after a backup has been transitioned to cold.

\n

Resource types that can transition to cold storage are listed in the Feature \n availability by resource table. Backup ignores this expression for\n other resource types.

\n

To remove the existing lifecycle and retention periods and keep your recovery points indefinitely, \n specify -1 for MoveToColdStorageAfterDays and DeleteAfterDays.

" + "smithy.api#input": {} } }, - "com.amazonaws.backup#LifecycleDeleteAfterEvent": { - "type": "enum", - "members": { - "DELETE_AFTER_COPY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DELETE_AFTER_COPY" - } + "com.amazonaws.backup#ListBackupAccessPointsRequestMaxResultsInteger": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 } } }, - "com.amazonaws.backup#LimitExceededException": { + "com.amazonaws.backup#ListBackupAccessPointsResponse": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.backup#string" - }, - "Message": { - "target": "com.amazonaws.backup#string" - }, - "Type": { - "target": "com.amazonaws.backup#string", + "BackupAccessPoints": { + "target": "com.amazonaws.backup#BackupAccessPoints", "traits": { - "smithy.api#documentation": "

" + "smithy.api#documentation": "

A list of backup access points, each containing metadata such as its name, ARN, status, and associated\n recovery point.

", + "smithy.api#required": {} } }, - "Context": { - "target": "com.amazonaws.backup#string", + "NextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

" + "smithy.api#documentation": "

The next item following a partial list of returned items. For example, if a request is made to return\n MaxResults number of items, NextToken allows you to return more items in your list\n starting at the location pointed to by the next token.

" } } }, "traits": { - "smithy.api#documentation": "

A limit in the request has been exceeded; for example, a maximum number of items allowed\n in a request.

", - "smithy.api#error": "client" + "smithy.api#output": {} } }, "com.amazonaws.backup#ListBackupJobSummaries": { @@ -10278,7 +11085,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns an array of resources successfully backed up by Backup, including\n the time the resource was saved, an Amazon Resource Name (ARN) of the resource, and a\n resource type.

", + "smithy.api#documentation": "

Returns an array of resources with recovery points created by Backup\n (regardless of the recovery point's status),\n including the time the resource was saved, an Amazon Resource Name (ARN) of the resource,\n and a resource type.

", "smithy.api#http": { "method": "GET", "uri": "/resources", @@ -10715,7 +11522,7 @@ "target": "com.amazonaws.backup#Boolean2", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This attribute filters recovery points based on ownership.

\n

If this is \n set to TRUE, the response will contain recovery points associated \n with the selected resources that are managed by Backup.

\n

If this is set to FALSE, the response will contain all \n recovery points associated with the selected resource.

\n

Type: Boolean

", + "smithy.api#documentation": "

This attribute filters recovery points based on ownership.

\n

If this is \n set to TRUE, the response will contain recovery points associated \n with the selected resources that are managed by Backup.

\n

If this is set to FALSE, the response will contain all \n recovery points associated with the selected resource, except for EBS\n snapshots copied within the same Region and account.

\n

Type: Boolean

", "smithy.api#httpQuery": "managedByAWSBackupOnly" } } @@ -12437,6 +13244,12 @@ "smithy.api#input": {} } }, + "com.amazonaws.backup#RecoveryPointArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws[a-z-]*:[a-z-\\d]+:[a-z-\\d]+:).+$" + } + }, "com.amazonaws.backup#RecoveryPointByBackupVault": { "type": "structure", "members": { @@ -13145,6 +13958,12 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.backup#ResourceArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(arn:aws[a-z-]*:[a-z-\\d]+:).+$" + } + }, "com.amazonaws.backup#ResourceArns": { "type": "list", "member": { @@ -15567,6 +16386,40 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.backup#TagMap": { + "type": "map", + "key": { + "target": "com.amazonaws.backup#TagMapKeyString" + }, + "value": { + "target": "com.amazonaws.backup#TagMapValueString" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.backup#TagMapKeyString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.backup#TagMapValueString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + } + } + }, "com.amazonaws.backup#TagResource": { "type": "operation", "input": { diff --git a/codegen/sdk/aws-models/bedrock-agentcore-control.json b/codegen/sdk/aws-models/bedrock-agentcore-control.json index da9ffae69ba..63500e17cc9 100644 --- a/codegen/sdk/aws-models/bedrock-agentcore-control.json +++ b/codegen/sdk/aws-models/bedrock-agentcore-control.json @@ -667,6 +667,41 @@ "smithy.api#pattern": "^([1-9][0-9]{0,4})$" } }, + "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersionSummary": { + "type": "structure", + "members": { + "agentRuntimeArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the agent runtime.

", + "smithy.api#required": {} + } + }, + "agentRuntimeVersion": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersion", + "traits": { + "smithy.api#documentation": "

The version of the agent runtime.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeStatus", + "traits": { + "smithy.api#documentation": "

The current status of the agent runtime version.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information about an agent runtime version associated with a capacity provider. This is returned by ListAgentRuntimeVersionsByCapacityProvider.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersionSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersionSummary" + } + }, "com.amazonaws.bedrockagentcorecontrol#AgentRuntimes": { "type": "list", "member": { @@ -890,6 +925,9 @@ { "target": "com.amazonaws.bedrockagentcorecontrol#BrowserResource" }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderResource" + }, { "target": "com.amazonaws.bedrockagentcorecontrol#CodeInterpreterResource" }, @@ -902,6 +940,9 @@ { "target": "com.amazonaws.bedrockagentcorecontrol#Evaluator" }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitResource" + }, { "target": "com.amazonaws.bedrockagentcorecontrol#GatewayResource" }, @@ -2239,6 +2280,136 @@ "smithy.api#pattern": "^[0-9]{12}$" } }, + "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimits": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimitsRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimitsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Atomically creates or updates multiple rate limits for a gateway. The operation updates existing limits with matching keys and creates new limits for new keys. If the operation fails, the service applies no changes. Retry the request after resolving the issue.

", + "smithy.api#http": { + "code": 200, + "method": "PUT", + "uri": "/gateways/{gatewayIdentifier}/rate-limits/batch" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimitsRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "rateLimits": { + "target": "com.amazonaws.bedrockagentcorecontrol#BatchPutLimitEntries", + "traits": { + "smithy.api#documentation": "Complete set of rate limits for this gateway. Replaces all existing limits atomically.", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimitsResponse": { + "type": "structure", + "members": { + "rateLimits": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimits", + "traits": { + "smithy.api#documentation": "The resulting set of rate limits after the batch operation.", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#BatchPutLimitEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#BatchPutLimitEntry" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#BatchPutLimitEntry": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#documentation": "Optional — if provided, used for upsert matching against existing limits." + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "A limit definition within a BatchPut request (rateLimitId used for upsert matching)" + } + }, "com.amazonaws.bedrockagentcorecontrol#BedrockAgentcoreResourceArn": { "type": "string", "traits": { @@ -2701,6 +2872,324 @@ "smithy.api#documentation": "

Contains summary information about a browser. A browser enables Amazon Bedrock AgentCore Agent to interact with web content.

" } }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::BedrockAgentCore::CapacityProvider" + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock-agentcore:[a-z0-9-]+:[0-9]{12}:capacity-provider/[a-zA-Z][a-zA-Z0-9_]{0,47}-[a-zA-Z0-9]{10}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderConfiguration": { + "type": "structure", + "members": { + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider to use for the AgentCore Runtime.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration for customer-managed compute capacity for the AgentCore Runtime. A capacity provider runs the AgentCore Runtime on the Instances compute type, using Amazon Web Services managed compute in your account.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 59 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,47}-[a-zA-Z0-9]{10}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderSummary" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 48 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,47}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderResource": { + "type": "resource", + "identifiers": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId" + } + }, + "create": { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProvider" + }, + "read": { + "target": "com.amazonaws.bedrockagentcorecontrol#GetCapacityProvider" + }, + "update": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProvider" + }, + "delete": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProvider" + }, + "list": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListCapacityProviders" + }, + "operations": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProvider" + } + ] + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "UPDATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE_FAILED" + } + }, + "READY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READY" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } + }, + "traits": { + "smithy.api#documentation": "

The status of a capacity provider. Possible values:

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatusCode": { + "type": "enum", + "members": { + "VALIDATION_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALIDATION_ERROR" + } + }, + "QUOTA_EXCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QUOTA_EXCEEDED" + } + }, + "THROTTLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "THROTTLED" + } + }, + "INTERNAL_SERVER_EXCEPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTERNAL_SERVER_EXCEPTION" + } + } + }, + "traits": { + "smithy.api#documentation": "

A reason code for a capacity provider that is not in the READY state. Possible values:

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderSummary": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider.

", + "smithy.api#required": {} + } + }, + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName", + "traits": { + "smithy.api#documentation": "

The name of the capacity provider.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider. For possible values, see CapacityProviderStatus.

", + "smithy.api#required": {} + } + }, + "lastUpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the capacity provider was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a capacity provider, as returned by ListCapacityProviders. Each summary includes the capacity provider identifier, Amazon Resource Name (ARN), name, status, and last-updated timestamp.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderVolumeConfiguration": { + "type": "structure", + "members": { + "volumeName": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderVolumeName", + "traits": { + "smithy.api#documentation": "

The logical name of the capacity provider volume to mount. This name must match a volume that is defined in the capacity provider's list of volumes.

", + "smithy.api#required": {} + } + }, + "mountPath": { + "target": "com.amazonaws.bedrockagentcorecontrol#MountPath", + "traits": { + "smithy.api#documentation": "

The mount path for the capacity provider volume inside the AgentCore Runtime. The path must be under /mnt with exactly one subdirectory level (for example, /mnt/data).

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration for a capacity provider volume mounted into the AgentCore Runtime. This references a persistent volume by its logical name, as defined in the capacity provider's list of volumes.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityProviderVolumeName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The logical name of a capacity provider volume. This name must match a volume that is defined in the capacity provider's list of volumes.

", + "smithy.api#length": { + "min": 1, + "max": 48 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,47}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityReservationId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^cr-[0-9a-z]+$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityReservationPreference": { + "type": "enum", + "members": { + "CAPACITY_RESERVATIONS_ONLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "capacity-reservations-only" + } + }, + "OPEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "open" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "none" + } + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityReservationResourceGroupArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:resource-groups:[a-z0-9-]+:[0-9]{12}:group/[a-zA-Z0-9_-]+$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityReservationSpecification": { + "type": "structure", + "members": { + "capacityReservationPreference": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityReservationPreference", + "traits": { + "smithy.api#documentation": "

The Capacity Reservation preference for the instances.

" + } + }, + "capacityReservationTarget": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityReservationTarget", + "traits": { + "smithy.api#documentation": "

The target Capacity Reservation or Capacity Reservation group for the instances.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Capacity Reservation targeting option for the instances.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#CapacityReservationTarget": { + "type": "structure", + "members": { + "capacityReservationId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityReservationId", + "traits": { + "smithy.api#documentation": "

The ID of the Capacity Reservation in which to run the instances.

" + } + }, + "capacityReservationResourceGroupArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityReservationResourceGroupArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Capacity Reservation resource group in which to run the instances.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation group for the instances.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#CategoricalScaleDefinition": { "type": "structure", "members": { @@ -3369,6 +3858,20 @@ "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_:/.\\-]{0,2047}$" } }, + "com.amazonaws.bedrockagentcorecontrol#ComputeConfiguration": { + "type": "union", + "members": { + "ec2Configuration": { + "target": "com.amazonaws.bedrockagentcorecontrol#Ec2Configuration", + "traits": { + "smithy.api#documentation": "

The Amazon EC2 compute configuration for the capacity provider.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The compute configuration for a capacity provider. This structure defines the type and settings of the compute resources used to launch instances.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#ConcurrentModificationException": { "type": "structure", "members": { @@ -3789,7 +4292,7 @@ "com.amazonaws.bedrockagentcorecontrol#ConnectorParameterValue": { "type": "string", "traits": { - "smithy.api#documentation": "

The value of a connector parameter.

", + "smithy.api#documentation": "

The value of a connector parameter. Length: 1–1,024 characters.

", "smithy.api#length": { "min": 1, "max": 1024 @@ -4162,8 +4665,7 @@ "networkConfiguration": { "target": "com.amazonaws.bedrockagentcorecontrol#NetworkConfiguration", "traits": { - "smithy.api#documentation": "

The network configuration for the AgentCore Runtime.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The network configuration for the AgentCore Runtime.

" } }, "clientToken": { @@ -4212,6 +4714,12 @@ "smithy.api#documentation": "

The filesystem configurations to mount into the AgentCore Runtime. Use filesystem configurations to provide persistent storage to your AgentCore Runtime sessions.

" } }, + "capacityProviderConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderConfiguration", + "traits": { + "smithy.api#documentation": "

The capacity provider configuration for the AgentCore Runtime. Use a capacity provider to run the AgentCore Runtime on the Instances compute type, which provisions Amazon Web Services managed compute in your account.

" + } + }, "tags": { "target": "com.amazonaws.bedrockagentcorecontrol#TagsMap", "traits": { @@ -4671,6 +5179,134 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProviderInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProviderOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#RetryableConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a capacity provider. A capacity provider defines the Amazon EC2 infrastructure for AgentCore Runtime, including the operating system, allowed instance types, networking, and storage. It also specifies the IAM permissions that AgentCore uses to manage those instances.

The capacity provider name must be unique within your account. After you create the capacity provider, it enters a CREATING state and transitions to READY when it is available for use.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/capacity-providers", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProviderInput": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName", + "traits": { + "smithy.api#documentation": "

The name of the capacity provider. The name must be unique within your account.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#Description", + "traits": { + "smithy.api#documentation": "

An optional description of the capacity provider. If you don't specify a description, the service creates the capacity provider without one.

" + } + }, + "permissionsConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#PermissionsConfiguration", + "traits": { + "smithy.api#documentation": "

The permissions configuration for the capacity provider. This specifies the IAM role that AgentCore uses to manage the Amazon EC2 instances on your behalf.

", + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "tags": { + "target": "com.amazonaws.bedrockagentcorecontrol#TagsMap", + "traits": { + "smithy.api#documentation": "

A map of tag keys and values to associate with the capacity provider. If you don't specify tags, the capacity provider is created with no tags.

" + } + }, + "computeConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#ComputeConfiguration", + "traits": { + "smithy.api#documentation": "

The compute configuration for the capacity provider. This defines the Amazon EC2 compute resources used to launch instances: the operating system, allowed instance types, networking, and storage.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#CreateCapacityProviderOutput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the created capacity provider.

", + "smithy.api#required": {} + } + }, + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName", + "traits": { + "smithy.api#documentation": "

The name of the capacity provider.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider. For possible values, see CapacityProviderStatus.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#CreateCodeInterpreter": { "type": "operation", "input": { @@ -5347,6 +5983,156 @@ "smithy.api#idempotent": {} } }, + "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimit": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimitRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimitResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a rate limit for a gateway. Rate limits define throttling rules for each dimension that control request rates, token consumption rates, and concurrent connections through the gateway.

", + "smithy.api#http": { + "code": 201, + "method": "POST", + "uri": "/gateways/{gatewayIdentifier}/rate-limits" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimitRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway to create the rate limit for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#documentation": "Optional customer-defined limit ID. If not provided, system generates one." + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#documentation": "Ordered list of dimension names defining the scope of this limit.\nUnique per gateway — no two limits can share the same dimensionKeys.", + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#documentation": "Rule entries mapping dimension values to rate configurations.", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimitResponse": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#required": {} + } + }, + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Shared fields for GatewayRateLimit responses", + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRequest": { "type": "structure", "members": { @@ -9025,7 +9811,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes an Amazon Bedrock AgentCore Runtime.

", + "smithy.api#documentation": "

Deletes an Amazon Bedrock AgentCore Runtime, or a single version of an AgentCore Runtime when you provide the version qualifier.

", "smithy.api#http": { "code": 202, "method": "DELETE", @@ -9060,7 +9846,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes an AAgentCore Runtime endpoint.

", + "smithy.api#documentation": "

Deletes an AgentCore Runtime endpoint.

", "smithy.api#http": { "code": 202, "method": "DELETE", @@ -9139,6 +9925,13 @@ "smithy.api#required": {} } }, + "agentRuntimeVersion": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersion", + "traits": { + "smithy.api#documentation": "

The version of the AgentCore Runtime to delete. When you provide this value, only that version is deleted. When you omit it, the entire AgentCore Runtime and all of its versions are deleted.

", + "smithy.api#httpQuery": "version" + } + }, "clientToken": { "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", "traits": { @@ -9167,6 +9960,12 @@ "traits": { "smithy.api#documentation": "

The unique identifier of the AgentCore Runtime.

" } + }, + "agentRuntimeVersion": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersion", + "traits": { + "smithy.api#documentation": "

The version of the AgentCore Runtime that was deleted. This value is present only when you delete a single version.

" + } } }, "traits": { @@ -9432,6 +10231,93 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProviderInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProviderOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#RetryableConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a capacity provider. Before you delete a capacity provider, disassociate all agent runtimes and runtime versions that reference it. If any references remain, the operation fails.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/capacity-providers/{capacityProviderId}", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProviderInput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

", + "smithy.api#httpQuery": "clientToken", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteCapacityProviderOutput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the deleted capacity provider.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider. For possible values, see CapacityProviderStatus.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#DeleteCodeInterpreter": { "type": "operation", "input": { @@ -9849,67 +10735,105 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a custom evaluator. Builtin evaluators cannot be deleted. The evaluator must not be referenced by any active online evaluation configurations.

", + "smithy.api#documentation": "

Deletes a custom evaluator. Builtin evaluators cannot be deleted. The evaluator must not be referenced by any active online evaluation configurations.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/evaluators/{evaluatorId}", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteEvaluatorRequest": { + "type": "structure", + "members": { + "evaluatorId": { + "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the evaluator to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteEvaluatorResponse": { + "type": "structure", + "members": { + "evaluatorArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the deleted evaluator.

", + "smithy.api#required": {} + } + }, + "evaluatorId": { + "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the deleted evaluator.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorStatus", + "traits": { + "smithy.api#documentation": "

The status of the evaluator deletion operation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteGateway": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a gateway.

", "smithy.api#http": { + "code": 202, "method": "DELETE", - "uri": "/evaluators/{evaluatorId}", - "code": 202 + "uri": "/gateways/{gatewayIdentifier}/" }, "smithy.api#idempotent": {} } }, - "com.amazonaws.bedrockagentcorecontrol#DeleteEvaluatorRequest": { - "type": "structure", - "members": { - "evaluatorId": { - "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the evaluator to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.bedrockagentcorecontrol#DeleteEvaluatorResponse": { - "type": "structure", - "members": { - "evaluatorArn": { - "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the deleted evaluator.

", - "smithy.api#required": {} - } - }, - "evaluatorId": { - "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the deleted evaluator.

", - "smithy.api#required": {} - } - }, - "status": { - "target": "com.amazonaws.bedrockagentcorecontrol#EvaluatorStatus", - "traits": { - "smithy.api#documentation": "

The status of the evaluator deletion operation.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.bedrockagentcorecontrol#DeleteGateway": { + "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimit": { "type": "operation", "input": { - "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRequest" + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimitRequest" }, "output": { - "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayResponse" + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimitResponse" }, "errors": [ { @@ -9932,15 +10856,59 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a gateway.

", + "smithy.api#documentation": "

Deletes a gateway rate limit.

", "smithy.api#http": { - "code": 202, + "code": 200, "method": "DELETE", - "uri": "/gateways/{gatewayIdentifier}/" + "uri": "/gateways/{gatewayIdentifier}/rate-limits/{rateLimitId}" }, "smithy.api#idempotent": {} } }, + "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimitRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the rate limit to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimitResponse": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRequest": { "type": "structure", "members": { @@ -11423,6 +12391,66 @@ "smithy.api#documentation": "

Contains descriptor-type-specific configurations for a registry record. Only the descriptor matching the record's descriptorType should be populated.

" } }, + "com.amazonaws.bedrockagentcorecontrol#DeviceName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9/._-]+$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#DimensionKey": { + "type": "string", + "traits": { + "smithy.api#documentation": "A dimension key specifying the scope dimension for rate limiting.\nAllowed values: \"targetName\", \"toolName\", \"qualifiedModelId\",\nor context-path expressions: \"$.context.iam.principal\", \"$.context.iam.sourceIdentity\",\n\"$.context.jwt.\" where is a JWT claim name (e.g., \"$.context.jwt.sub\").\nValidated server-side to enforce allowed prefixes and patterns.", + "smithy.api#length": { + "min": 1, + "max": 80 + }, + "smithy.api#pattern": "^(targetName|toolName|qualifiedModelId|\\$\\.context\\.iam\\.principal|\\$\\.context\\.iam\\.sourceIdentity|\\$\\.context\\.jwt\\.[a-zA-Z_][a-zA-Z0-9_\\-\\.]{0,61}[a-zA-Z0-9_])$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#DimensionKeys": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKey" + }, + "traits": { + "smithy.api#documentation": "Ordered list of dimension key names defining the scope of a limit", + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#DimensionValue": { + "type": "string", + "traits": { + "smithy.api#documentation": "A dimension value in a rule entry (exact value or \"*\" wildcard)", + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#Dimensions": { + "type": "map", + "key": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKey" + }, + "value": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionValue" + }, + "traits": { + "smithy.api#documentation": "Map of dimension name to dimension value for a rule entry", + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.bedrockagentcorecontrol#DiscoveryUrl": { "type": "string", "traits": { @@ -11466,6 +12494,191 @@ "smithy.api#documentation": "

Publish synchronization state of the DRAFT working copy.

" } }, + "com.amazonaws.bedrockagentcorecontrol#EC2InstanceType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#EbsCardIndex": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#EbsSnapshotId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 13, + "max": 64 + }, + "smithy.api#pattern": "^snap-[a-f0-9]{8,17}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#EbsVolumeConfiguration": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeName", + "traits": { + "smithy.api#documentation": "

The logical name of the volume. Use this name to reference the volume when you mount it into an agent runtime.

", + "smithy.api#required": {} + } + }, + "sizeGiB": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeSizeGiB", + "traits": { + "smithy.api#documentation": "

The size of the volume, in GiB.

", + "smithy.api#required": {} + } + }, + "volumeType": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsVolumeType", + "traits": { + "smithy.api#default": "gp3", + "smithy.api#documentation": "

The Amazon EBS volume type. If you do not specify a type, the default is gp3.

" + } + }, + "iops": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeIops", + "traits": { + "smithy.api#documentation": "

The number of IOPS to provision. Valid only for gp3, io1, and io2 volumes.

" + } + }, + "throughput": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeThroughput", + "traits": { + "smithy.api#documentation": "

The throughput, in MiB/s. Valid only for gp3 volumes.

" + } + }, + "encrypted": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to encrypt the volume. If true, the service encrypts the volume with the KMS key that you specify in kmsKeyId, or the default KMS key for Amazon EBS if you do not specify one. The default is true.

" + } + }, + "kmsKeyId": { + "target": "com.amazonaws.bedrockagentcorecontrol#KmsKeyId", + "traits": { + "smithy.api#documentation": "

The identifier of the KMS key to use for encryption.

" + } + }, + "snapshotId": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsSnapshotId", + "traits": { + "smithy.api#documentation": "

An optional Amazon EBS snapshot ID. If provided, the volume is initialized from this snapshot the first time it is created. On subsequent restarts, the existing volume is used and the snapshot is ignored.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for an Amazon EBS-backed persistent volume. The service creates persistent volumes when a session first launches, and the volumes survive instance termination. The volumes persist until you delete the session.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#EbsVolumeInitializationRate": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 100, + "max": 300 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#EbsVolumeType": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "standard" + } + }, + "IO1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "io1" + } + }, + "IO2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "io2" + } + }, + "GP2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gp2" + } + }, + "SC1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sc1" + } + }, + "ST1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "st1" + } + }, + "GP3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gp3" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of Amazon EBS volume.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#Ec2Configuration": { + "type": "structure", + "members": { + "launchTemplateSource": { + "target": "com.amazonaws.bedrockagentcorecontrol#LaunchTemplateSource", + "traits": { + "smithy.api#documentation": "

The source of the launch template configuration that defines how instances are launched.

", + "smithy.api#required": {} + } + }, + "vpcConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#VpcConfiguration", + "traits": { + "smithy.api#documentation": "

The VPC configuration for launching instances, including subnets and security groups.

", + "smithy.api#required": {} + } + }, + "volumes": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeConfigurationList", + "traits": { + "smithy.api#documentation": "

The named persistent Amazon EBS volumes for the capacity provider. A capacity provider can define up to five volumes.

" + } + }, + "lifecycleConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#InstanceLifecycleConfiguration", + "traits": { + "smithy.api#documentation": "

The lifecycle configuration for instances in the capacity provider.

" + } + }, + "rootVolume": { + "target": "com.amazonaws.bedrockagentcorecontrol#RootVolumeConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for the instance root volume. Specify the amount of free space to guarantee and, optionally, the Amazon EBS performance and encryption settings. The device name and delete-on-termination behavior are not configurable.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for Amazon EC2-based compute, including the launch template source, networking, storage volumes, and instance lifecycle settings.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#EfsAccessPointArn": { "type": "string", "traits": { @@ -11649,6 +12862,106 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.bedrockagentcorecontrol#EphemeralBlockDeviceMapping": { + "type": "structure", + "members": { + "deviceName": { + "target": "com.amazonaws.bedrockagentcorecontrol#DeviceName", + "traits": { + "smithy.api#documentation": "

The device name, for example /dev/sdh or xvdh.

" + } + }, + "virtualName": { + "target": "com.amazonaws.bedrockagentcorecontrol#VirtualDeviceName", + "traits": { + "smithy.api#documentation": "

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

" + } + }, + "ebs": { + "target": "com.amazonaws.bedrockagentcorecontrol#EphemeralEBSVolumeConfiguration" + } + }, + "traits": { + "smithy.api#documentation": "

A block device mapping for an instance store (ephemeral) volume.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#EphemeralBlockDeviceMappingList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#EphemeralBlockDeviceMapping" + } + }, + "com.amazonaws.bedrockagentcorecontrol#EphemeralEBSVolumeConfiguration": { + "type": "structure", + "members": { + "volumeType": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsVolumeType", + "traits": { + "smithy.api#default": "gp3", + "smithy.api#documentation": "

The Amazon EBS volume type. If you do not specify a type, the default is gp3.

" + } + }, + "iops": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeIops", + "traits": { + "smithy.api#documentation": "

The number of IOPS to provision. For gp3, io1, and io2 volumes, this is the number of IOPS provisioned for the volume. For gp2 volumes, this sets the baseline IOPS performance. It also controls the rate at which the volume accumulates I/O credits for bursting. Supported values: gp3, 3,000–80,000; io1, 100–64,000; io2, 100–256,000.

" + } + }, + "throughput": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeThroughput", + "traits": { + "smithy.api#documentation": "

The throughput to provision, in MiB/s. Valid only for gp3 volumes. Valid range: 125–2,000 MiB/s.

", + "smithy.api#range": { + "min": 125, + "max": 2000 + } + } + }, + "encrypted": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to encrypt the volume. Encrypted volumes can be attached only to instances that support Amazon EBS encryption. If you create a volume from a snapshot, you cannot specify an encryption value.

" + } + }, + "kmsKeyId": { + "target": "com.amazonaws.bedrockagentcorecontrol#KmsKeyId", + "traits": { + "smithy.api#documentation": "

The identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for Amazon EBS encryption.

" + } + }, + "snapshotId": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsSnapshotId", + "traits": { + "smithy.api#documentation": "

The ID of the snapshot.

" + } + }, + "volumeSize": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeSizeGiB", + "traits": { + "smithy.api#documentation": "

The size of the volume, in GiB. You must specify either a snapshot ID or a volume size. Supported sizes: gp2, 1–16,384; gp3, 1–65,536; io1, 4–16,384; io2, 4–65,536.

", + "smithy.api#range": { + "min": 1, + "max": 65536 + } + } + }, + "volumeInitializationRate": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsVolumeInitializationRate", + "traits": { + "smithy.api#documentation": "

The rate at which the volume is initialized after creation, in MiB/s. Supported only for volumes created from snapshots. Valid range: 100–300 MiB/s.

" + } + }, + "ebsCardIndex": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsCardIndex", + "traits": { + "smithy.api#documentation": "

The index of the Amazon EBS card. Applies to instances with multiple Amazon EBS cards.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The shared Amazon EBS performance and encryption properties for a volume. These properties are common across the different volume configurations for a capacity provider.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#EpisodicConsolidationOverride": { "type": "structure", "members": { @@ -12374,6 +13687,12 @@ "traits": { "smithy.api#documentation": "

Configuration for an Amazon EFS access point to mount into the AgentCore Runtime.

" } + }, + "capacityProviderVolume": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderVolumeConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration for a capacity provider volume to mount into the AgentCore Runtime. This mounts a persistent volume that is defined on the capacity provider, referenced by its logical name.

" + } } }, "traits": { @@ -12852,6 +14171,166 @@ } } }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription": { + "type": "string", + "traits": { + "smithy.api#documentation": "Optional human-readable description for a gateway limit.", + "smithy.api#length": { + "min": 0, + "max": 512 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDetail": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#required": {} + } + }, + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Shared fields for GatewayRateLimit responses" + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId": { + "type": "string", + "traits": { + "smithy.api#documentation": "Limit identifier. Optional on Create (system-generates if not provided by customer).\nAlways present in responses.", + "smithy.api#length": { + "min": 2, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_\\.]{0,62}[a-zA-Z0-9]$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitNextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^\\S*$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitResource": { + "type": "resource", + "operations": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#BatchPutGatewayRateLimits" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#CreateGatewayRateLimit" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#DeleteGatewayRateLimit" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimit" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimits" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimit" + } + ] + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + } + }, + "traits": { + "smithy.api#documentation": "Status of a gateway limit" + } + }, + "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimits": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDetail" + } + }, "com.amazonaws.bedrockagentcorecontrol#GatewayResource": { "type": "resource", "operations": [ @@ -13632,6 +15111,12 @@ "traits": { "smithy.api#documentation": "

The filesystem configurations mounted into the AgentCore Runtime.

" } + }, + "capacityProviderConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderConfiguration", + "traits": { + "smithy.api#documentation": "

The capacity provider configuration for the AgentCore Runtime.

" + } } }, "traits": { @@ -14029,6 +15514,139 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#GetCapacityProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#GetCapacityProviderInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#GetCapacityProviderOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves information about a capacity provider, including its status, permissions configuration, and compute configuration.

", + "smithy.api#http": { + "method": "GET", + "uri": "/capacity-providers/{capacityProviderId}", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#GetCapacityProviderInput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#GetCapacityProviderOutput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider.

", + "smithy.api#required": {} + } + }, + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName", + "traits": { + "smithy.api#documentation": "

The name of the capacity provider.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider. For possible values, see CapacityProviderStatus.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#Description", + "traits": { + "smithy.api#documentation": "

The description of the capacity provider, if one was provided.

" + } + }, + "statusCode": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatusCode", + "traits": { + "smithy.api#documentation": "

A reason code for a capacity provider that is not in the READY state. Use this code for programmatic error handling.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A human-readable message that describes why the capacity provider is not in the READY state. Because these messages can change, use statusCode for programmatic error handling.

" + } + }, + "permissionsConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#PermissionsConfiguration", + "traits": { + "smithy.api#documentation": "

The permissions configuration for the capacity provider.

", + "smithy.api#required": {} + } + }, + "computeConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#ComputeConfiguration", + "traits": { + "smithy.api#documentation": "

The compute configuration for the capacity provider.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the capacity provider was created.

", + "smithy.api#required": {} + } + }, + "lastUpdatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the capacity provider was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#GetCodeInterpreter": { "type": "operation", "input": { @@ -14778,6 +16396,125 @@ "smithy.api#readonly": {} } }, + "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimit": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimitRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimitResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves information about a gateway rate limit.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/gateways/{gatewayIdentifier}/rate-limits/{rateLimitId}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimitRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the rate limit to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#GetGatewayRateLimitResponse": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#required": {} + } + }, + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Shared fields for GatewayRateLimit responses", + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#GetGatewayRequest": { "type": "structure", "members": { @@ -20211,6 +21948,69 @@ } } }, + "com.amazonaws.bedrockagentcorecontrol#InstanceLifecycleConfiguration": { + "type": "structure", + "members": { + "idleInstanceTimeout": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of seconds an instance can remain idle before it is stopped. An instance is considered idle when all of its agents are idle. The default is 900 seconds (15 minutes).

", + "smithy.api#range": { + "min": 60, + "max": 1209600 + } + } + }, + "maxLifetime": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The maximum lifetime of an instance, in seconds. When an instance reaches this limit, the service terminates it regardless of activity. The default is 28800 seconds (8 hours). The maximum is 1209600 seconds (14 days).

", + "smithy.api#range": { + "min": 60, + "max": 1209600 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration that manages the lifecycle of instances in a capacity provider, including idle timeout and maximum lifetime.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#InstanceProfileArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::[0-9]{12}:instance-profile/([!-~]{1,510}/)?([\\w+=,.@-]{1,128})$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#InstanceRequirements": { + "type": "structure", + "members": { + "allowedInstanceTypes": { + "target": "com.amazonaws.bedrockagentcorecontrol#InstanceTypeList", + "traits": { + "smithy.api#documentation": "

The list of allowed instance types. You can specify up to 30 instance types.

", + "smithy.api#length": { + "min": 1, + "max": 30 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The requirements for Amazon EC2 instance types in a capacity provider.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#InstanceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#EC2InstanceType" + } + }, "com.amazonaws.bedrockagentcorecontrol#InterceptorConfiguration": { "type": "union", "members": { @@ -20433,6 +22233,16 @@ "smithy.api#pattern": "^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$" } }, + "com.amazonaws.bedrockagentcorecontrol#KmsKeyId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:kms:[a-z0-9-]+:[0-9]{12}:key/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" + } + }, "com.amazonaws.bedrockagentcorecontrol#KmsKeySourceType": { "type": "structure", "members": { @@ -20518,6 +22328,121 @@ "smithy.api#documentation": "

The Lambda configuration for custom transformations. This structure defines the Lambda function that the gateway invokes to transform data.

" } }, + "com.amazonaws.bedrockagentcorecontrol#LaunchParameters": { + "type": "structure", + "members": { + "operatingSystem": { + "target": "com.amazonaws.bedrockagentcorecontrol#OperatingSystem", + "traits": { + "smithy.api#documentation": "

The operating system and CPU architecture for the instances.

", + "smithy.api#required": {} + } + }, + "instanceRequirements": { + "target": "com.amazonaws.bedrockagentcorecontrol#InstanceRequirements", + "traits": { + "smithy.api#documentation": "

The requirements that determine which instance types can be launched.

", + "smithy.api#required": {} + } + }, + "ephemeralVolumes": { + "target": "com.amazonaws.bedrockagentcorecontrol#EphemeralBlockDeviceMappingList", + "traits": { + "smithy.api#documentation": "

The block device mappings for instance store (ephemeral) volumes. You can specify up to five mappings.

", + "smithy.api#length": { + "max": 5 + } + } + }, + "monitoring": { + "target": "com.amazonaws.bedrockagentcorecontrol#Monitoring", + "traits": { + "smithy.api#documentation": "

The monitoring level for the instances.

" + } + }, + "licenseSpecifications": { + "target": "com.amazonaws.bedrockagentcorecontrol#LicenseSpecificationList", + "traits": { + "smithy.api#documentation": "

The license configurations to associate with the instances. You can specify up to five configurations.

", + "smithy.api#length": { + "max": 5 + } + } + }, + "capacityReservationSpecification": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityReservationSpecification", + "traits": { + "smithy.api#documentation": "

The Capacity Reservation targeting option for the instances.

" + } + }, + "sshKeyName": { + "target": "com.amazonaws.bedrockagentcorecontrol#SSHKeyName", + "traits": { + "smithy.api#documentation": "

The name of the SSH key pair to configure on the instances for SSH connectivity.

" + } + }, + "instanceProfileArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#InstanceProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM instance profile to associate with launched instances. If provided, this overrides the default instance profile.

" + } + }, + "propagatedTags": { + "target": "com.amazonaws.bedrockagentcorecontrol#TagsMap", + "traits": { + "smithy.api#documentation": "

The tags to propagate to all Amazon EC2 resources (instances, volumes, and network interfaces) that the capacity provider creates.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The parameters for launching Amazon EC2 instances in a capacity provider.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#LaunchTemplateSource": { + "type": "union", + "members": { + "launchParameters": { + "target": "com.amazonaws.bedrockagentcorecontrol#LaunchParameters", + "traits": { + "smithy.api#documentation": "

The parameters that AgentCore uses to create the launch template.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The source of the launch template configuration for a capacity provider. The launchParameters member specifies the operating system, instance requirements, and other settings used to launch instances.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#LicenseConfigurationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:license-manager:[a-z0-9-]+:[0-9]{12}:license-configuration:[a-zA-Z0-9_-]+$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#LicenseSpecification": { + "type": "structure", + "members": { + "licenseConfigurationArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#LicenseConfigurationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A license configuration to associate with the instances.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#LicenseSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#LicenseSpecification" + } + }, "com.amazonaws.bedrockagentcorecontrol#LifecycleConfiguration": { "type": "structure", "members": { @@ -20527,7 +22452,7 @@ "smithy.api#documentation": "

Timeout in seconds for idle runtime sessions. When a session remains idle for this duration, it will be automatically terminated. Default: 900 seconds (15 minutes).

", "smithy.api#range": { "min": 60, - "max": 28800 + "max": 1209600 } } }, @@ -20537,7 +22462,7 @@ "smithy.api#documentation": "

Maximum lifetime for the instance in seconds. Once reached, instances will be automatically terminated and replaced. Default: 28800 seconds (8 hours).

", "smithy.api#range": { "min": 60, - "max": 28800 + "max": 1209600 } } } @@ -20546,6 +22471,56 @@ "smithy.api#documentation": "

LifecycleConfiguration lets you manage the lifecycle of runtime sessions and resources in AgentCore Runtime. This configuration helps optimize resource utilization by automatically cleaning up idle sessions and preventing long-running instances from consuming resources indefinitely.

" } }, + "com.amazonaws.bedrockagentcorecontrol#LimitEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntry" + }, + "traits": { + "smithy.api#documentation": "List of rule entries within a limit", + "smithy.api#length": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#LimitEntry": { + "type": "structure", + "members": { + "dimensions": { + "target": "com.amazonaws.bedrockagentcorecontrol#Dimensions", + "traits": { + "smithy.api#documentation": "Map of dimension name to dimension value, matching the parent limit's dimensionKeys.\nKeys must exactly match the dimensionKeys. Values may be \"*\" as a wildcard.\n\"*\" may only appear at trailing positions (based on dimensionKeys ordering).", + "smithy.api#length": { + "min": 1, + "max": 10 + }, + "smithy.api#required": {} + } + }, + "requests": { + "target": "com.amazonaws.bedrockagentcorecontrol#RateConfigs", + "traits": { + "smithy.api#documentation": "Request rate limits (RPS or RPM). Limited to 1 entry for now." + } + }, + "tokens": { + "target": "com.amazonaws.bedrockagentcorecontrol#RateConfigs", + "traits": { + "smithy.api#documentation": "Token rate limits (TPM). Limited to 1 entry for now. — P1" + } + }, + "connections": { + "target": "com.amazonaws.bedrockagentcorecontrol#RateConfigs", + "traits": { + "smithy.api#documentation": "Connection rate limits (per second only). Limited to 1 entry for now. — P2" + } + } + }, + "traits": { + "smithy.api#documentation": "A single rule entry within a limit, mapping dimension values to rate configurations" + } + }, "com.amazonaws.bedrockagentcorecontrol#LinkedinOauth2ProviderConfigInput": { "type": "structure", "members": { @@ -20731,6 +22706,95 @@ "smithy.api#readonly": {} } }, + "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProviderInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProviderOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the agent runtime versions that are associated with a capacity provider. Use this operation to identify the runtimes you must disassociate before you can delete the capacity provider. Results are paginated; use the nextToken parameter to retrieve additional results.

", + "smithy.api#http": { + "method": "POST", + "uri": "/capacity-providers/{capacityProviderId}/runtime-versions", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "agentRuntimes" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProviderInput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.bedrockagentcorecontrol#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#NextToken", + "traits": { + "smithy.api#documentation": "

If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsByCapacityProviderOutput": { + "type": "structure", + "members": { + "agentRuntimes": { + "target": "com.amazonaws.bedrockagentcorecontrol#AgentRuntimeVersionSummaryList", + "traits": { + "smithy.api#documentation": "

The list of agent runtime versions that are associated with the capacity provider.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#ListAgentRuntimeVersionsRequest": { "type": "structure", "members": { @@ -21124,6 +23188,87 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#ListCapacityProviders": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListCapacityProvidersInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListCapacityProvidersOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the capacity providers in your account and returns summary information for each one. To retrieve the full configuration for a specific capacity provider, use GetCapacityProvider. Results are paginated; use the nextToken parameter to retrieve additional results.

", + "smithy.api#http": { + "method": "POST", + "uri": "/capacity-providers", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "capacityProviders" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListCapacityProvidersInput": { + "type": "structure", + "members": { + "maxResults": { + "target": "com.amazonaws.bedrockagentcorecontrol#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#NextToken", + "traits": { + "smithy.api#documentation": "

If the total number of results is greater than the maxResults value provided in the request, enter the token returned in the nextToken field in the response in this field to return the next batch of results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListCapacityProvidersOutput": { + "type": "structure", + "members": { + "capacityProviders": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderList", + "traits": { + "smithy.api#documentation": "

The list of capacity provider summaries.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#NextToken", + "traits": { + "smithy.api#documentation": "

If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#ListCodeInterpreters": { "type": "operation", "input": { @@ -21792,6 +23937,98 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimits": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimitsRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimitsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists all rate limits for a gateway. Results are paginated. Use the nextToken parameter to retrieve additional results.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/gateways/{gatewayIdentifier}/rate-limits" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "rateLimits" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimitsRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "maxResults": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the nextToken field when making another request to return the next batch of results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitNextToken", + "traits": { + "smithy.api#documentation": "

The token to use to retrieve the next page of results. Use the value returned in a previous ListGatewayRateLimits response.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#ListGatewayRateLimitsResponse": { + "type": "structure", + "members": { + "rateLimits": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimits", + "traits": { + "smithy.api#documentation": "

The list of rate limits for the gateway.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitNextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results. If this value is absent, there are no more results to retrieve.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#ListGatewayRules": { "type": "operation", "input": { @@ -25308,6 +27545,23 @@ "smithy.api#documentation": "

Contains information for modifying a strategy configuration.

" } }, + "com.amazonaws.bedrockagentcorecontrol#Monitoring": { + "type": "enum", + "members": { + "BASIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BASIC" + } + }, + "DETAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DETAILED" + } + } + } + }, "com.amazonaws.bedrockagentcorecontrol#MountPath": { "type": "string", "traits": { @@ -26217,6 +28471,26 @@ "smithy.api#documentation": "

The configuration for using models served through the OpenResponses API in evaluator assessments, including model selection and inference parameters.

" } }, + "com.amazonaws.bedrockagentcorecontrol#OperatingSystem": { + "type": "enum", + "members": { + "LINUX_X86_64": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LINUX_X86_64" + } + }, + "LINUX_ARM64": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LINUX_ARM64" + } + } + }, + "traits": { + "smithy.api#documentation": "

The operating system and CPU architecture for capacity provider instances.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#OutputConfig": { "type": "structure", "members": { @@ -26899,6 +29173,41 @@ "smithy.api#pattern": "^[a-zA-Z0-9\\s]+$" } }, + "com.amazonaws.bedrockagentcorecontrol#Period": { + "type": "enum", + "members": { + "SECOND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "second" + } + }, + "MINUTE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "minute" + } + } + }, + "traits": { + "smithy.api#documentation": "Time period for rate limiting" + } + }, + "com.amazonaws.bedrockagentcorecontrol#PermissionsConfiguration": { + "type": "structure", + "members": { + "capacityProviderOperatorRoleArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#RoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that AgentCore assumes to manage the capacity provider, including launching, tagging, and terminating instances and their network interfaces. We recommend scoping this role to the minimum permissions that your workloads require.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The permissions configuration for a capacity provider. This specifies the IAM role that AgentCore uses to manage the Amazon EC2 instances for the capacity provider on your behalf.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#Policies": { "type": "list", "member": { @@ -28084,6 +30393,44 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#RateConfig": { + "type": "structure", + "members": { + "rate": { + "target": "smithy.api#Double", + "traits": { + "smithy.api#documentation": "

The rate value for the limit. For request limits, this is the number of requests allowed per period. For token limits, this is the number of tokens allowed per period. For connection limits, this is the number of concurrent connections allowed.

", + "smithy.api#range": { + "min": 0, + "max": 10000000 + }, + "smithy.api#required": {} + } + }, + "period": { + "target": "com.amazonaws.bedrockagentcorecontrol#Period", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Rate configuration for a metric (requests or tokens)" + } + }, + "com.amazonaws.bedrockagentcorecontrol#RateConfigs": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#RateConfig" + }, + "traits": { + "smithy.api#documentation": "List of rate configs (limited to 1 for now, array for future multi-period support)", + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, "com.amazonaws.bedrockagentcorecontrol#RatingScale": { "type": "union", "members": { @@ -28950,6 +31297,23 @@ "target": "com.amazonaws.bedrockagentcorecontrol#RestApiMethod" } }, + "com.amazonaws.bedrockagentcorecontrol#RetryableConflictException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The operation failed because of a conflicting request. Retry the request.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409, + "smithy.api#retryable": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#RoleArn": { "type": "string", "traits": { @@ -28960,6 +31324,59 @@ "smithy.api#pattern": "^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$" } }, + "com.amazonaws.bedrockagentcorecontrol#RootVolumeConfiguration": { + "type": "structure", + "members": { + "volumeType": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsVolumeType", + "traits": { + "smithy.api#default": "gp3", + "smithy.api#documentation": "

The Amazon EBS volume type. If you do not specify a type, the default is gp3.

" + } + }, + "iops": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeIops", + "traits": { + "smithy.api#documentation": "

The number of IOPS to provision. For gp3, io1, and io2 volumes, this is the number of IOPS provisioned for the volume. For gp2 volumes, this sets the baseline IOPS performance. It also controls the rate at which the volume accumulates I/O credits for bursting. Supported values: gp3, 3,000–80,000; io1, 100–64,000; io2, 100–256,000.

" + } + }, + "throughput": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeThroughput", + "traits": { + "smithy.api#documentation": "

The throughput to provision, in MiB/s. Valid only for gp3 volumes. Valid range: 125–2,000 MiB/s.

", + "smithy.api#range": { + "min": 125, + "max": 2000 + } + } + }, + "encrypted": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to encrypt the volume. Encrypted volumes can be attached only to instances that support Amazon EBS encryption. If you create a volume from a snapshot, you cannot specify an encryption value.

" + } + }, + "kmsKeyId": { + "target": "com.amazonaws.bedrockagentcorecontrol#KmsKeyId", + "traits": { + "smithy.api#documentation": "

The identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for Amazon EBS encryption.

" + } + }, + "freeSpaceGiB": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeSizeGiB", + "traits": { + "smithy.api#documentation": "

The free space guaranteed on the root volume, in GiB. AgentCore adds the operating system overhead on top of this value. The default is 8 GiB.

", + "smithy.api#range": { + "min": 2, + "max": 65000 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the root volume of a capacity provider instance. Specify the amount of free space to guarantee on the root volume. The device name and delete-on-termination settings are fixed and cannot be changed.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#RouteToTargetAction": { "type": "union", "members": { @@ -29238,6 +31655,16 @@ "smithy.api#pattern": "^s3://[a-z0-9][a-z0-9.\\-]{1,61}[a-z0-9]/.{1,1024}$" } }, + "com.amazonaws.bedrockagentcorecontrol#SSHKeyName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[!-~][ -~]*[!-~]$|^[!-~]$" + } + }, "com.amazonaws.bedrockagentcorecontrol#SalesforceOauth2ProviderConfigInput": { "type": "structure", "members": { @@ -29557,6 +31984,12 @@ "smithy.api#pattern": "^sg-[0-9a-zA-Z]{8,17}$" } }, + "com.amazonaws.bedrockagentcorecontrol#SecurityGroupIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#SecurityGroupId" + } + }, "com.amazonaws.bedrockagentcorecontrol#SecurityGroupIdentifier": { "type": "string", "traits": { @@ -30874,6 +33307,12 @@ "smithy.api#pattern": "^subnet-[0-9a-zA-Z]{8,17}$" } }, + "com.amazonaws.bedrockagentcorecontrol#SubnetIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#SubnetId" + } + }, "com.amazonaws.bedrockagentcorecontrol#SubnetIds": { "type": "list", "member": { @@ -32386,8 +34825,7 @@ "networkConfiguration": { "target": "com.amazonaws.bedrockagentcorecontrol#NetworkConfiguration", "traits": { - "smithy.api#documentation": "

The updated network configuration for the AgentCore Runtime.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The updated network configuration for the AgentCore Runtime.

" } }, "description": { @@ -32435,6 +34873,12 @@ "smithy.api#documentation": "

The updated filesystem configurations to mount into the AgentCore Runtime.

" } }, + "capacityProviderConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderConfiguration", + "traits": { + "smithy.api#documentation": "

The updated capacity provider configuration for the AgentCore Runtime.

" + } + }, "clientToken": { "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", "traits": { @@ -32646,6 +35090,126 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProviderInput" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProviderOutput" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#RetryableConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a capacity provider. Only the description can be changed. To change other configuration, such as instance types, networking, or storage, create a new capacity provider.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/capacity-providers/{capacityProviderId}", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProviderInput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdatedDescription", + "traits": { + "smithy.api#documentation": "

The updated description of the capacity provider.

" + } + }, + "clientToken": { + "target": "com.amazonaws.bedrockagentcorecontrol#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#UpdateCapacityProviderOutput": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider.

", + "smithy.api#required": {} + } + }, + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderName", + "traits": { + "smithy.api#documentation": "

The name of the capacity provider.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#CapacityProviderStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider. For possible values, see CapacityProviderStatus.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the capacity provider was created.

", + "smithy.api#required": {} + } + }, + "lastUpdatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the capacity provider was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#UpdateConfigurationBundle": { "type": "operation", "input": { @@ -33174,6 +35738,140 @@ "smithy.api#idempotent": {} } }, + "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimit": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimitRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimitResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcorecontrol#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ConflictException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcorecontrol#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the entries of a gateway rate limit. The dimension keys are immutable after creation.

", + "smithy.api#http": { + "code": 200, + "method": "PATCH", + "uri": "/gateways/{gatewayIdentifier}/rate-limits/{rateLimitId}" + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimitRequest": { + "type": "structure", + "members": { + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the rate limit to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#documentation": "Updated rule entries. key and dimensionKeys are immutable and cannot be changed.", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRateLimitResponse": { + "type": "structure", + "members": { + "rateLimitId": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitId", + "traits": { + "smithy.api#required": {} + } + }, + "gatewayIdentifier": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the gateway.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitDescription", + "traits": { + "smithy.api#documentation": "Optional human-readable description for this limit." + } + }, + "dimensionKeys": { + "target": "com.amazonaws.bedrockagentcorecontrol#DimensionKeys", + "traits": { + "smithy.api#required": {} + } + }, + "entries": { + "target": "com.amazonaws.bedrockagentcorecontrol#LimitEntries", + "traits": { + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcorecontrol#GatewayRateLimitStatus", + "traits": { + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.bedrockagentcorecontrol#DateTimestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the rate limit was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Shared fields for GatewayRateLimit responses", + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcorecontrol#UpdateGatewayRequest": { "type": "structure", "members": { @@ -36469,6 +39167,78 @@ "smithy.api#documentation": "

The version lineage metadata that tracks parent versions and creation source. Supports git-like two-parent merges for branch management.

" } }, + "com.amazonaws.bedrockagentcorecontrol#VirtualDeviceName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^ephemeral[0-9]+$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeConfiguration": { + "type": "union", + "members": { + "ebsConfiguration": { + "target": "com.amazonaws.bedrockagentcorecontrol#EbsVolumeConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for an Amazon EBS-backed persistent volume.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for a persistent volume attached to a capacity provider. This structure defines the storage backing for the persistent volumes used by agents that run on capacity provider instances.

" + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockagentcorecontrol#VolumeConfiguration" + }, + "traits": { + "smithy.api#length": { + "max": 5 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeIops": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 100, + "max": 256000 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 48 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,47}$" + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeSizeGiB": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 65536 + } + } + }, + "com.amazonaws.bedrockagentcorecontrol#VolumeThroughput": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 125, + "max": 2000 + } + } + }, "com.amazonaws.bedrockagentcorecontrol#VpcConfig": { "type": "structure", "members": { @@ -36497,6 +39267,36 @@ "smithy.api#documentation": "

VpcConfig for the Agent.

" } }, + "com.amazonaws.bedrockagentcorecontrol#VpcConfiguration": { + "type": "structure", + "members": { + "subnets": { + "target": "com.amazonaws.bedrockagentcorecontrol#SubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets in which to launch instances. You must specify at least one subnet.

", + "smithy.api#length": { + "min": 1, + "max": 16 + }, + "smithy.api#required": {} + } + }, + "securityGroups": { + "target": "com.amazonaws.bedrockagentcorecontrol#SecurityGroupIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the security groups to associate with the instances. You must specify at least one security group.

", + "smithy.api#length": { + "min": 1, + "max": 16 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The VPC configuration for launching Amazon EC2 instances.

" + } + }, "com.amazonaws.bedrockagentcorecontrol#VpcIdentifier": { "type": "string", "traits": { diff --git a/codegen/sdk/aws-models/bedrock-agentcore.json b/codegen/sdk/aws-models/bedrock-agentcore.json index 7cd5a2b80c9..ca4d65d0b24 100644 --- a/codegen/sdk/aws-models/bedrock-agentcore.json +++ b/codegen/sdk/aws-models/bedrock-agentcore.json @@ -481,6 +481,9 @@ { "target": "com.amazonaws.bedrockagentcore#BrowserSessionResource" }, + { + "target": "com.amazonaws.bedrockagentcore#CapacityProviderResource" + }, { "target": "com.amazonaws.bedrockagentcore#CodeInterpreterSessionResource" }, @@ -2424,6 +2427,80 @@ } } }, + "com.amazonaws.bedrockagentcore#CapacityProviderArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::BedrockAgentCore::CapacityProvider" + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock-agentcore:[a-z0-9-]+:[0-9]{12}:capacity-provider/[a-zA-Z][a-zA-Z0-9_]{0,47}-[a-zA-Z0-9]{10}$" + } + }, + "com.amazonaws.bedrockagentcore#CapacityProviderId": { + "type": "string", + "traits": { + "smithy.api#documentation": "Capacity provider identifier. Pattern matches MiskiModel definition.", + "smithy.api#length": { + "min": 12, + "max": 59 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,47}-[a-zA-Z0-9]{10}$" + } + }, + "com.amazonaws.bedrockagentcore#CapacityProviderResource": { + "type": "resource", + "identifiers": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcore#CapacityProviderId" + } + }, + "operations": [ + { + "target": "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSession" + } + ] + }, + "com.amazonaws.bedrockagentcore#CapacityProviderSessionStatus": { + "type": "enum", + "members": { + "PROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Provisioning" + } + }, + "DEPROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deprovisioning" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Active" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deleting" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deleted" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Stopped" + } + } + } + }, "com.amazonaws.bedrockagentcore#Certificate": { "type": "structure", "members": { @@ -4214,6 +4291,94 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSession": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSessionRequest" + }, + "output": { + "target": "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSessionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockagentcore#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockagentcore#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockagentcore#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockagentcore#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockagentcore#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a session associated with a capacity provider in Amazon Bedrock AgentCore and makes the session unavailable for further use. To delete a capacity provider session, specify both the capacity provider identifier and the session ID. After you delete a session, you cannot restart it.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/capacity-providers/{capacityProviderId}/sessions/{sessionId}", + "code": 202 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSessionRequest": { + "type": "structure", + "members": { + "capacityProviderId": { + "target": "com.amazonaws.bedrockagentcore#CapacityProviderId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider associated with the session.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "sessionId": { + "target": "com.amazonaws.bedrockagentcore#SessionId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the capacity provider session to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockagentcore#DeleteCapacityProviderSessionResponse": { + "type": "structure", + "members": { + "capacityProviderArn": { + "target": "com.amazonaws.bedrockagentcore#CapacityProviderArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the capacity provider associated with the deleted session.

", + "smithy.api#required": {} + } + }, + "sessionId": { + "target": "com.amazonaws.bedrockagentcore#SessionId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the deleted capacity provider session.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.bedrockagentcore#CapacityProviderSessionStatus", + "traits": { + "smithy.api#documentation": "

The current status of the capacity provider session. When the status is Deleting, the session is being deleted and is not available. When the status is Deleted, the session is no longer available.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockagentcore#DeleteEvent": { "type": "operation", "input": { diff --git a/codegen/sdk/aws-models/cloudwatch-logs.json b/codegen/sdk/aws-models/cloudwatch-logs.json index 3bda57a513f..1e9ae32cb01 100644 --- a/codegen/sdk/aws-models/cloudwatch-logs.json +++ b/codegen/sdk/aws-models/cloudwatch-logs.json @@ -1647,7 +1647,7 @@ "queryId": { "target": "com.amazonaws.cloudwatchlogs#QueryId", "traits": { - "smithy.api#documentation": "

The ID of a completed CloudWatch Logs query whose results populate\n the lookup table.

\n

You must specify either tableBody or queryId, but not\n both.

" + "smithy.api#documentation": "

The ID of a completed or cancelled CloudWatch Logs query whose results populate\n the lookup table. A cancelled query populates the table with the partial results that were\n available when the query was stopped.

\n

You must specify either tableBody or queryId, but not\n both.

" } }, "kmsKeyId": { @@ -4041,7 +4041,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of custom and default field indexes which are discovered in log data. For\n more information about field index policies, see PutIndexPolicy.

" + "smithy.api#documentation": "

Returns a list of field indexes discovered in log data. By default, the response includes\n the DEFAULT, CUSTOM, and INACTIVE index categories. To\n return indexes from other categories, use the indexCategories parameter.

\n

For more information about field index policies, see PutIndexPolicy.

" } }, "com.amazonaws.cloudwatchlogs#DescribeFieldIndexesLogGroupIdentifiers": { @@ -4066,6 +4066,12 @@ "smithy.api#required": {} } }, + "indexCategories": { + "target": "com.amazonaws.cloudwatchlogs#IndexCategories", + "traits": { + "smithy.api#documentation": "

The index categories to return. The following values are supported:

\n
    \n
  • \n

    \n DEFAULT: Fields that CloudWatch Logs indexes by default. Examples\n include @logStream and @data_format.

    \n
  • \n
  • \n

    \n CUSTOM: Fields that you added manually to the field index policy.\n CloudWatch Logs always indexes these fields. These fields count toward the quota of\n 20 fields for each log group.

    \n
  • \n
  • \n

    \n AUTO: Fields that CloudWatch Logs indexes automatically based on your\n query patterns and usage. These fields do not count toward the field index quota.\n CloudWatch Logs might update these fields based on changes in your query patterns. To\n keep a field indexed permanently, add it to an account-level or log-group level field\n index policy.

    \n
  • \n
  • \n

    \n INACTIVE: Fields that CloudWatch Logs indexed before but does not\n index now. This happens if you remove a field from the field index policy or if\n CloudWatch Logs automatically selects a different field based on your queries.

    \n
  • \n
\n

If you omit this parameter, the response includes the DEFAULT,\n CUSTOM, and INACTIVE categories.

\n

For more information about automatically indexed fields and using the AUTO\n category, see Automatically indexed fields.

" + } + }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken" } @@ -5906,6 +5912,12 @@ "traits": { "smithy.api#documentation": "

The type of index. Specify FACET for facet-based indexing or\n FIELD_INDEX for field-based indexing. This determines how the field is indexed\n and can be queried.

" } + }, + "indexCategory": { + "target": "com.amazonaws.cloudwatchlogs#IndexCategory", + "traits": { + "smithy.api#documentation": "

The category of the field index:

\n
    \n
  • \n

    \n DEFAULT: Fields that CloudWatch Logs indexes by default. Examples\n include @logStream and @data_format.

    \n
  • \n
  • \n

    \n CUSTOM: Fields that you added manually to the field index policy.\n CloudWatch Logs always indexes these fields. These fields count toward the quota of\n 20 fields for each log group.

    \n
  • \n
  • \n

    \n AUTO: Fields that CloudWatch Logs indexes automatically based on your\n query patterns and usage. These fields do not count toward the field index quota.\n CloudWatch Logs might update these fields based on changes in your query patterns. To\n keep a field indexed permanently, add it to an account-level or log-group level field\n index policy.

    \n
  • \n
  • \n

    \n INACTIVE: Fields that CloudWatch Logs indexed before but does not\n index now. This happens if you remove a field from the field index policy or if\n CloudWatch Logs automatically selects a different field based on your queries.

    \n
  • \n
\n

For more information about automatically indexed fields, see Automatically indexed fields.

" + } } }, "traits": { @@ -6024,7 +6036,7 @@ "startTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The start of the time range, expressed as the number of milliseconds after Jan 1,\n 1970 00:00:00 UTC. Events with a timestamp before this time are not\n returned.

" + "smithy.api#documentation": "

The start of the time range, expressed as the number of milliseconds after Jan 1,\n 1970 00:00:00 UTC. Events with a timestamp before this time are not\n returned.

\n \n

Set startTime explicitly to reduce the chances of empty pages in the\n response.

\n
" } }, "endTime": { @@ -6744,7 +6756,7 @@ "startTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The start of the time range, expressed as the number of milliseconds after Jan 1,\n 1970 00:00:00 UTC. Events with a timestamp equal to this time or later than this time\n are included. Events with a timestamp earlier than this time are not included.

" + "smithy.api#documentation": "

The start of the time range, expressed as the number of milliseconds after Jan 1,\n 1970 00:00:00 UTC. Events with a timestamp equal to this time or later than this time\n are included. Events with a timestamp earlier than this time are not included.

\n \n

Set startTime explicitly to reduce the chances of empty pages in the\n response.

\n
" } }, "endTime": { @@ -7963,6 +7975,47 @@ "com.amazonaws.cloudwatchlogs#IncludeLinkedAccounts": { "type": "boolean" }, + "com.amazonaws.cloudwatchlogs#IndexCategories": { + "type": "list", + "member": { + "target": "com.amazonaws.cloudwatchlogs#IndexCategory" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 4 + } + } + }, + "com.amazonaws.cloudwatchlogs#IndexCategory": { + "type": "enum", + "members": { + "DEFAULT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEFAULT" + } + }, + "CUSTOM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOM" + } + }, + "AUTO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUTO" + } + }, + "INACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INACTIVE" + } + } + } + }, "com.amazonaws.cloudwatchlogs#IndexPolicies": { "type": "list", "member": { @@ -13360,7 +13413,7 @@ "logType": { "target": "com.amazonaws.cloudwatchlogs#LogType", "traits": { - "smithy.api#documentation": "

Defines the type of log that the source is sending.

\n
    \n
  • \n

    For Amazon Bedrock Agents, the valid values are APPLICATION_LOGS and\n EVENT_LOGS.

    \n
  • \n
  • \n

    For Amazon Bedrock Knowledge Bases, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Runtime, the valid values are\n APPLICATION_LOGS, USAGE_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Tools, the valid values are\n APPLICATION_LOGS, USAGE_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Identity, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Memory, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Gateway, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Payments, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For CloudFront, the valid value is ACCESS_LOGS.

    \n
  • \n
  • \n

    For DevOps Agent, the valid value is APPLICATION_LOGS.

    \n
  • \n
  • \n

    For Amazon CodeWhisperer, the valid value is EVENT_LOGS.

    \n
  • \n
  • \n

    For Elemental MediaPackage, the valid values are EGRESS_ACCESS_LOGS and\n INGRESS_ACCESS_LOGS.

    \n
  • \n
  • \n

    For Elemental MediaTailor, the valid values are AD_DECISION_SERVER_LOGS,\n MANIFEST_SERVICE_LOGS, and TRANSCODE_LOGS.

    \n
  • \n
  • \n

    For Amazon EKS Auto Mode, the valid values are AUTO_MODE_BLOCK_STORAGE_LOGS,\n AUTO_MODE_COMPUTE_LOGS, AUTO_MODE_IPAM_LOGS, and\n AUTO_MODE_LOAD_BALANCING_LOGS.

    \n
  • \n
  • \n

    For Amazon EKS Capability Logs, the valid values are EKS_CAPABILITY_ACK_LOGS,\n EKS_CAPABILITY_ARGOCD_APPLICATION_LOGS,\n EKS_CAPABILITY_ARGOCD_APPLICATIONSET_LOGS,\n EKS_CAPABILITY_ARGOCD_COMMITSERVER_LOGS,\n EKS_CAPABILITY_ARGOCD_REPOSERVER_LOGS,\n EKS_CAPABILITY_ARGOCD_SERVER_LOGS, and\n EKS_CAPABILITY_KRO_LOGS.

    \n
  • \n
  • \n

    For Entity Resolution, the valid value is WORKFLOW_LOGS.

    \n
  • \n
  • \n

    For IAM Identity Center, the valid value is\n ERROR_LOGS.

    \n
  • \n
  • \n

    For Network Firewall Proxy, the valid values are ALERT_LOGS,\n ALLOW_LOGS, and DENY_LOGS.

    \n
  • \n
  • \n

    For Network Load Balancer, the valid value is NLB_ACCESS_LOGS.

    \n
  • \n
  • \n

    For PCS, the valid values are PCS_SCHEDULER_LOGS,\n PCS_JOBCOMP_LOGS, and PCS_SCHEDULER_AUDIT_LOGS.

    \n
  • \n
  • \n

    For Quick, the valid values are AGENT_HOURS_LOGS,\n CHAT_LOGS, FEEDBACK_LOGS, and\n INDEX_USAGE_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services RTB Fabric, the valid values is\n APPLICATION_LOGS.

    \n
  • \n
  • \n

    For Amazon Q, the valid values are EVENT_LOGS and\n SYNC_JOB_LOGS.

    \n
  • \n
  • \n

    For Amazon S3, the valid value is\n S3_SERVER_ACCESS_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services Security Hub CSPM, the valid value is\n SECURITY_FINDING_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services Security Hub, the valid value is\n SECURITY_FINDING_LOGS.

    \n
  • \n
  • \n

    For Amazon SES mail manager, the valid values are\n APPLICATION_LOGS and TRAFFIC_POLICY_DEBUG_LOGS.

    \n
  • \n
  • \n

    For Amazon WorkMail, the valid values are ACCESS_CONTROL_LOGS,\n AUTHENTICATION_LOGS, WORKMAIL_AVAILABILITY_PROVIDER_LOGS,\n WORKMAIL_MAILBOX_ACCESS_LOGS, and\n WORKMAIL_PERSONAL_ACCESS_TOKEN_LOGS.

    \n
  • \n
  • \n

    For Amazon VPC Route Server, the valid value is\n EVENT_LOGS.

    \n
  • \n
", + "smithy.api#documentation": "

Defines the type of log that the source is sending.

\n
    \n
  • \n

    For Application Load Balancer, the valid values are ALB_ACCESS_LOGS,\n ALB_CONNECTION_LOGS, and ALB_HEALTH_CHECK_LOGS.

    \n
  • \n
  • \n

    For Amazon Bedrock Agents, the valid values are APPLICATION_LOGS and\n EVENT_LOGS.

    \n
  • \n
  • \n

    For Amazon Bedrock Knowledge Bases, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Runtime, the valid values are\n APPLICATION_LOGS, USAGE_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Tools, the valid values are\n APPLICATION_LOGS, USAGE_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Identity, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Memory, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Gateway, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For Amazon Bedrock AgentCore Payments, the valid values are\n APPLICATION_LOGS and TRACES.

    \n
  • \n
  • \n

    For CloudFront, the valid value is ACCESS_LOGS.

    \n
  • \n
  • \n

    For DevOps Agent, the valid value is APPLICATION_LOGS.

    \n
  • \n
  • \n

    For Amazon CodeWhisperer, the valid value is EVENT_LOGS.

    \n
  • \n
  • \n

    For Elemental MediaPackage, the valid values are EGRESS_ACCESS_LOGS and\n INGRESS_ACCESS_LOGS.

    \n
  • \n
  • \n

    For Elemental MediaTailor, the valid values are AD_DECISION_SERVER_LOGS,\n MANIFEST_SERVICE_LOGS, and TRANSCODE_LOGS.

    \n
  • \n
  • \n

    For Amazon EKS Auto Mode, the valid values are AUTO_MODE_BLOCK_STORAGE_LOGS,\n AUTO_MODE_COMPUTE_LOGS, AUTO_MODE_IPAM_LOGS, and\n AUTO_MODE_LOAD_BALANCING_LOGS.

    \n
  • \n
  • \n

    For Amazon EKS Capability Logs, the valid values are EKS_CAPABILITY_ACK_LOGS,\n EKS_CAPABILITY_ARGOCD_APPLICATION_LOGS,\n EKS_CAPABILITY_ARGOCD_APPLICATIONSET_LOGS,\n EKS_CAPABILITY_ARGOCD_COMMITSERVER_LOGS,\n EKS_CAPABILITY_ARGOCD_REPOSERVER_LOGS,\n EKS_CAPABILITY_ARGOCD_SERVER_LOGS, and\n EKS_CAPABILITY_KRO_LOGS.

    \n
  • \n
  • \n

    For Entity Resolution, the valid value is WORKFLOW_LOGS.

    \n
  • \n
  • \n

    For IAM Identity Center, the valid value is\n ERROR_LOGS.

    \n
  • \n
  • \n

    For Network Firewall Proxy, the valid values are ALERT_LOGS,\n ALLOW_LOGS, and DENY_LOGS.

    \n
  • \n
  • \n

    For Network Load Balancer, the valid value is NLB_ACCESS_LOGS.

    \n
  • \n
  • \n

    For PCS, the valid values are PCS_SCHEDULER_LOGS,\n PCS_JOBCOMP_LOGS, and PCS_SCHEDULER_AUDIT_LOGS.

    \n
  • \n
  • \n

    For Quick, the valid values are AGENT_HOURS_LOGS,\n CHAT_LOGS, FEEDBACK_LOGS, and\n INDEX_USAGE_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services RTB Fabric, the valid values is\n APPLICATION_LOGS.

    \n
  • \n
  • \n

    For Amazon Q, the valid values are EVENT_LOGS and\n SYNC_JOB_LOGS.

    \n
  • \n
  • \n

    For Amazon S3, the valid value is\n S3_SERVER_ACCESS_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services Security Hub CSPM, the valid value is\n SECURITY_FINDING_LOGS.

    \n
  • \n
  • \n

    For Amazon Web Services Security Hub, the valid value is\n SECURITY_FINDING_LOGS.

    \n
  • \n
  • \n

    For Amazon SES mail manager, the valid values are\n APPLICATION_LOGS and TRAFFIC_POLICY_DEBUG_LOGS.

    \n
  • \n
  • \n

    For Amazon WorkMail, the valid values are ACCESS_CONTROL_LOGS,\n AUTHENTICATION_LOGS, WORKMAIL_AVAILABILITY_PROVIDER_LOGS,\n WORKMAIL_MAILBOX_ACCESS_LOGS, and\n WORKMAIL_PERSONAL_ACCESS_TOKEN_LOGS.

    \n
  • \n
  • \n

    For Amazon VPC Route Server, the valid value is\n EVENT_LOGS.

    \n
  • \n
", "smithy.api#required": {} } }, @@ -17538,7 +17591,7 @@ "queryId": { "target": "com.amazonaws.cloudwatchlogs#QueryId", "traits": { - "smithy.api#documentation": "

The ID of a completed CloudWatch Logs query whose results replace\n the lookup table content.

\n

You must specify either tableBody or queryId, but not\n both.

" + "smithy.api#documentation": "

The ID of a completed or cancelled CloudWatch Logs query whose results replace\n the lookup table content. A cancelled query replaces the content with the partial results\n that were available when the query was stopped.

\n

You must specify either tableBody or queryId, but not\n both.

" } }, "kmsKeyId": { diff --git a/codegen/sdk/aws-models/device-farm.json b/codegen/sdk/aws-models/device-farm.json index 9e786cfac2f..6a87fd261e7 100644 --- a/codegen/sdk/aws-models/device-farm.json +++ b/codegen/sdk/aws-models/device-farm.json @@ -5061,6 +5061,32 @@ "target": "com.amazonaws.devicefarm#IncompatibilityMessage" } }, + "com.amazonaws.devicefarm#InsightsType": { + "type": "enum", + "members": { + "TEST_REPORT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEST_REPORT" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of insights to generate.

" + } + }, + "com.amazonaws.devicefarm#InsightsTypes": { + "type": "list", + "member": { + "target": "com.amazonaws.devicefarm#InsightsType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, "com.amazonaws.devicefarm#InstallToRemoteAccessSession": { "type": "operation", "input": { @@ -5378,12 +5404,132 @@ "traits": { "smithy.api#documentation": "

This value is set to true if video capture is enabled. Otherwise, it is set to false.

" } + }, + "insights": { + "target": "com.amazonaws.devicefarm#JobInsights", + "traits": { + "smithy.api#documentation": "

The insights for the job, including the report status and test-level metrics. This field contains data only if you specified insightsTypes when you scheduled the run.

" + } } }, "traits": { "smithy.api#documentation": "

Represents a device.

" } }, + "com.amazonaws.devicefarm#JobInsights": { + "type": "structure", + "members": { + "status": { + "target": "com.amazonaws.devicefarm#ReportStatus", + "traits": { + "smithy.api#documentation": "

The status of the insights report for the job.

" + } + }, + "testReport": { + "target": "com.amazonaws.devicefarm#TestReport", + "traits": { + "smithy.api#documentation": "

The test-level aggregated report for the job.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains insights for a job, including report status, and test-level aggregated metrics such as per test execution time and median test execution time.

" + } + }, + "com.amazonaws.devicefarm#JobReport": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.devicefarm#ReportMessage", + "traits": { + "smithy.api#documentation": "

A message associated with the job report.

" + } + }, + "metrics": { + "target": "com.amazonaws.devicefarm#JobReportMetrics", + "traits": { + "smithy.api#documentation": "

The aggregated job-level metrics for the run.

" + } + }, + "jobDetailsUrl": { + "target": "com.amazonaws.devicefarm#SensitiveURL", + "traits": { + "smithy.api#documentation": "

A URL to the detailed job results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains aggregated job-level metrics for a run.

" + } + }, + "com.amazonaws.devicefarm#JobReportMetrics": { + "type": "structure", + "members": { + "jobsTotal": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The total number of jobs in the run.

" + } + }, + "jobsPassed": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of jobs that passed.

" + } + }, + "jobsFailed": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of jobs that failed.

" + } + }, + "jobsSkipped": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of jobs that were skipped.

" + } + }, + "jobsErrored": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of jobs that errored.

" + } + }, + "jobsStopped": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of jobs that were stopped.

" + } + }, + "jobsPassedPercentage": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The percentage of jobs that passed.

" + } + }, + "totalJobExecutionDurationSeconds": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The total execution duration of all jobs in the run, in seconds.

" + } + }, + "averageJobExecutionDurationSeconds": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The average execution duration of jobs in the run, in seconds.

" + } + }, + "medianJobExecutionDurationSeconds": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The median execution duration of jobs in the run, in seconds.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains aggregated metrics across all jobs in a run.

" + } + }, "com.amazonaws.devicefarm#JobTimeoutMinutes": { "type": "integer" }, @@ -8352,6 +8498,53 @@ "smithy.api#output": {} } }, + "com.amazonaws.devicefarm#ReportMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 4096 + } + } + }, + "com.amazonaws.devicefarm#ReportStatus": { + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "RUNNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RUNNING" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "SKIPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SKIPPED" + } + }, + "ERRORED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ERRORED" + } + } + }, + "traits": { + "smithy.api#documentation": "

The status of an insights report. Possible values are:

\n
    \n
  • \n

    PENDING: The service has queued the report and generation has not started.

    \n
  • \n
  • \n

    RUNNING: The service is generating the report.

    \n
  • \n
  • \n

    COMPLETED: The service successfully generated the report.

    \n
  • \n
  • \n

    SKIPPED: The service did not generate the report because the necessary conditions were not met. For more information about why the service could not generate the report, view the message field in TestReport or JobReport.

    \n
  • \n
  • \n

    ERRORED: An error occurred while generating the report. For more information about why the service could not generate the report, view the message field in TestReport or JobReport.

    \n
  • \n
" + } + }, "com.amazonaws.devicefarm#Resolution": { "type": "structure", "members": { @@ -8699,12 +8892,44 @@ "traits": { "smithy.api#documentation": "

Environment variables associated with the run.

" } + }, + "insightsTypes": { + "target": "com.amazonaws.devicefarm#InsightsTypes", + "traits": { + "smithy.api#documentation": "

The types of insights requested for the run.

" + } + }, + "insights": { + "target": "com.amazonaws.devicefarm#RunInsights", + "traits": { + "smithy.api#documentation": "

The insights for the run, including the report status and job-level metrics. This field contains data only if you specified insightsTypes when you scheduled the run.

" + } } }, "traits": { "smithy.api#documentation": "

Represents a test run on a set of devices with a given app package, test parameters, and so\n on.

" } }, + "com.amazonaws.devicefarm#RunInsights": { + "type": "structure", + "members": { + "status": { + "target": "com.amazonaws.devicefarm#ReportStatus", + "traits": { + "smithy.api#documentation": "

The status of the insights report for the run.

" + } + }, + "jobReport": { + "target": "com.amazonaws.devicefarm#JobReport", + "traits": { + "smithy.api#documentation": "

The job-level aggregated report for the run.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains insights for a run, including report status, and job-level aggregated metrics such as per job execution time and median job execution time.

" + } + }, "com.amazonaws.devicefarm#Runs": { "type": "list", "member": { @@ -8971,6 +9196,12 @@ "traits": { "smithy.api#documentation": "

An IAM role to be assumed by the test host for the run.

" } + }, + "insightsTypes": { + "target": "com.amazonaws.devicefarm#InsightsTypes", + "traits": { + "smithy.api#documentation": "

The types of insights to generate for a run. Specify one or more values to opt in to\n insights generation when scheduling a run.

\n

Insights are currently supported for custom mode runs with Instrumentation, Appium Java TestNG,\n and XCTest UI test types.

" + } } }, "traits": { @@ -9949,6 +10180,94 @@ "target": "com.amazonaws.devicefarm#String" } }, + "com.amazonaws.devicefarm#TestReport": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.devicefarm#ReportMessage", + "traits": { + "smithy.api#documentation": "

A message associated with the test report.

" + } + }, + "metrics": { + "target": "com.amazonaws.devicefarm#TestReportMetrics", + "traits": { + "smithy.api#documentation": "

The aggregated test-level metrics for the job.

" + } + }, + "testDetailsUrl": { + "target": "com.amazonaws.devicefarm#SensitiveURL", + "traits": { + "smithy.api#documentation": "

A URL to the detailed test results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains aggregated test-level metrics for a job.

" + } + }, + "com.amazonaws.devicefarm#TestReportMetrics": { + "type": "structure", + "members": { + "testsTotal": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The total number of tests in the job.

" + } + }, + "testsPassed": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of tests that passed.

" + } + }, + "testsFailed": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of tests that failed.

" + } + }, + "testsSkipped": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of tests that were skipped.

" + } + }, + "testsErrored": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of tests that errored.

" + } + }, + "testsOther": { + "target": "com.amazonaws.devicefarm#Integer", + "traits": { + "smithy.api#documentation": "

The number of tests with other result types.

" + } + }, + "testsPassedPercentage": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The percentage of tests that passed.

" + } + }, + "totalTestExecutionDurationSeconds": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The total execution duration of all tests in the job, in seconds.

" + } + }, + "medianTestExecutionDurationSeconds": { + "target": "com.amazonaws.devicefarm#Double", + "traits": { + "smithy.api#documentation": "

The median execution duration of tests in the job, in seconds.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains aggregated metrics across all tests in a job.

" + } + }, "com.amazonaws.devicefarm#TestType": { "type": "enum", "members": { diff --git a/codegen/sdk/aws-models/ec2.json b/codegen/sdk/aws-models/ec2.json index 25f1c4b5745..c2783f34efe 100644 --- a/codegen/sdk/aws-models/ec2.json +++ b/codegen/sdk/aws-models/ec2.json @@ -24843,7 +24843,9 @@ "Ipv4CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IPv4 CIDR block for the secondary network. The CIDR block size must be between /12 and /28.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IPv4 CIDR block for the secondary network. The CIDR block size must be between /12 and /28.

", + "smithy.api#required": {} } }, "NetworkType": { @@ -70329,6 +70331,12 @@ "traits": { "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } + }, + "IncludeLocalZones": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specify true so that the response returns scores that include Local Zones. Otherwise, the response ignores Local Zones.

\n

When you request regional scores, Local Zone capacity counts toward its parent Region.

" + } } }, "traits": { diff --git a/codegen/sdk/aws-models/gamelift.json b/codegen/sdk/aws-models/gamelift.json index 35a3ff49fe2..b94e1cf89f5 100644 --- a/codegen/sdk/aws-models/gamelift.json +++ b/codegen/sdk/aws-models/gamelift.json @@ -180,7 +180,7 @@ "min": 1, "max": 512 }, - "smithy.api#pattern": "^alias-\\S+|^arn:.*:alias\\/alias-\\S+$" + "smithy.api#pattern": "^(alias-\\S+|arn:.*:alias\\/alias-\\S+)$" } }, "com.amazonaws.gamelift#AliasList": { @@ -417,7 +417,7 @@ "min": 1, "max": 512 }, - "smithy.api#pattern": "^build-\\S+|^arn:.*:build\\/build-\\S+$" + "smithy.api#pattern": "^(build-\\S+|arn:.*:build\\/build-\\S+)$" } }, "com.amazonaws.gamelift#BuildList": { @@ -752,7 +752,7 @@ "min": 0, "max": 1024 }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-]+(\\/[a-zA-Z0-9\\-]+)?$|^arn:.*:compute\\/[a-zA-Z0-9\\-]+(\\/[a-zA-Z0-9\\-]+)?$" + "smithy.api#pattern": "^([a-zA-Z0-9\\-]+(\\/[a-zA-Z0-9\\-]+)?|arn:.*:compute\\/[a-zA-Z0-9\\-]+(\\/[a-zA-Z0-9\\-]+)?)$" } }, "com.amazonaws.gamelift#ComputeStatus": { @@ -2528,7 +2528,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Adds remote locations to an EC2 and begins populating the new locations with\n instances. The new instances conform to the fleet's instance type, auto-scaling, and\n other configuration settings.

\n \n

You can't add remote locations to a fleet that resides in an Amazon Web Services Region that\n doesn't support multiple locations. Fleets created prior to March 2021 can't support\n multiple locations.

\n
\n

To add fleet locations, specify the fleet to be updated and provide a list of one or\n more locations.

\n

If successful, this operation returns the list of added locations with their status\n set to NEW. Amazon GameLift Servers initiates the process of starting an instance in each\n added location. You can track the status of each new location by monitoring location\n creation events using DescribeFleetEvents.

\n

\n Learn more\n

\n

\n Setting up\n fleets\n

\n

\n Update fleet locations\n

\n

\n \n Amazon GameLift Servers service locations for managed hosting.

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Adds remote locations to an EC2 and begins populating the new locations with\n instances. The new instances conform to the fleet's instance type, auto-scaling, and\n other configuration settings.

\n \n

You can't add remote locations to a fleet that resides in an Amazon Web Services Region that\n doesn't support multiple locations. Fleets created prior to March 2021 can't support\n multiple locations.

\n
\n

To add fleet locations, specify the fleet to be updated and provide a list of one or\n more locations.

\n

If successful, this operation returns the list of added locations with their status\n set to NEW. Amazon GameLift Servers initiates the process of starting an instance in each\n added location. You can track the status of each new location by monitoring location\n creation events using DescribeFleetEvents.

\n

\n Learn more\n

\n

\n Setting up\n fleets\n

\n

\n Update fleet locations\n

\n

\n \n Amazon GameLift Servers service locations for managed hosting.

" } }, "com.amazonaws.gamelift#CreateFleetLocationsInput": { @@ -3649,7 +3649,8 @@ "smithy.api#length": { "min": 0, "max": 256 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#CustomInputLocationStringModel": { @@ -3669,7 +3670,7 @@ "min": 1, "max": 128 }, - "smithy.api#pattern": "^custom-[A-Za-z0-9\\-]+|^arn:.*:location\\/custom-\\S+$" + "smithy.api#pattern": "^(custom-[A-Za-z0-9\\-]+|arn:.*:location\\/custom-\\S+)$" } }, "com.amazonaws.gamelift#DeleteAlias": { @@ -3913,7 +3914,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Deletes all resources and information related to a fleet and shuts down any currently\n running fleet instances, including those in remote locations.

\n \n

If the fleet being deleted has a VPC peering connection, you first need to get a\n valid authorization (good for 24 hours) by calling CreateVpcPeeringAuthorization. You don't need to explicitly delete the\n VPC peering connection.

\n
\n

To delete a fleet, specify the fleet ID to be terminated. During the deletion process,\n the fleet status is changed to DELETING. When completed, the status\n switches to TERMINATED and the fleet event FLEET_DELETED is\n emitted.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n Fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere

\n

Deletes all resources and information related to a fleet and shuts down any currently\n running fleet instances, including those in remote locations.

\n \n

If the fleet being deleted has a VPC peering connection, you first need to get a\n valid authorization (good for 24 hours) by calling CreateVpcPeeringAuthorization. You don't need to explicitly delete the\n VPC peering connection.

\n
\n

To delete a fleet, specify the fleet ID to be terminated. During the deletion process,\n the fleet status is changed to DELETING. When completed, the status\n switches to TERMINATED and the fleet event FLEET_DELETED is\n emitted.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n Fleets\n

" } }, "com.amazonaws.gamelift#DeleteFleetInput": { @@ -3958,7 +3959,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Removes locations from a multi-location fleet. When deleting a location, all game\n server process and all instances that are still active in the location are shut down.

\n

To delete fleet locations, identify the fleet ID and provide a list of the locations\n to be deleted.

\n

If successful, GameLift sets the location status to DELETING, and begins\n to shut down existing server processes and terminate instances in each location being\n deleted. When completed, the location status changes to TERMINATED.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Removes locations from a multi-location fleet. When deleting a location, all game\n server process and all instances that are still active in the location are shut down.

\n

To delete fleet locations, identify the fleet ID and provide a list of the locations\n to be deleted.

\n

If successful, GameLift sets the location status to DELETING, and begins\n to shut down existing server processes and terminate instances in each location being\n deleted. When completed, the location status changes to TERMINATED.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" } }, "com.amazonaws.gamelift#DeleteFleetLocationsInput": { @@ -4307,7 +4308,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Deletes a fleet scaling policy. Once deleted, the policy is no longer in force and\n Amazon GameLift Servers removes all record of it. To delete a scaling policy, specify both the scaling\n policy name and the fleet ID it is associated with.

\n

To temporarily suspend scaling policies, use StopFleetActions. This operation suspends all policies for the\n fleet.

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Deletes a fleet scaling policy. Once deleted, the policy is no longer in force and\n Amazon GameLift Servers removes all record of it. To delete a scaling policy, specify both the scaling\n policy name and the fleet ID it is associated with.

\n

To temporarily suspend scaling policies, use StopFleetActions. This operation suspends all policies for the\n fleet.

" } }, "com.amazonaws.gamelift#DeleteScalingPolicyInput": { @@ -5578,7 +5579,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Retrieves information on a fleet's remote locations, including life-cycle status and\n any suspended fleet activity.

\n

This operation can be used in the following ways:

\n
    \n
  • \n

    To get data for specific locations, provide a fleet identifier and a list of\n locations. Location data is returned in the order that it is requested.

    \n
  • \n
  • \n

    To get data for all locations, provide a fleet identifier only. Location data\n is returned in no particular order.

    \n
  • \n
\n

When requesting attributes for multiple locations, use the pagination parameters to\n retrieve results as a set of sequential pages.

\n

If successful, a LocationAttributes object is returned for each requested\n location. If the fleet does not have a requested location, no information is returned.\n

\n

\n Learn more\n

\n

\n Setting\n up Amazon GameLift Servers fleets\n

\n

\n \n Amazon GameLift Servers service locations for managed hosting

", + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Retrieves information on a fleet's remote locations, including life-cycle status and\n any suspended fleet activity.

\n

This operation can be used in the following ways:

\n
    \n
  • \n

    To get data for specific locations, provide a fleet identifier and a list of\n locations. Location data is returned in the order that it is requested.

    \n
  • \n
  • \n

    To get data for all locations, provide a fleet identifier only. Location data\n is returned in no particular order.

    \n
  • \n
\n

When requesting attributes for multiple locations, use the pagination parameters to\n retrieve results as a set of sequential pages.

\n

If successful, a LocationAttributes object is returned for each requested\n location. If the fleet does not have a requested location, no information is returned.\n

\n

\n Learn more\n

\n

\n Setting\n up Amazon GameLift Servers fleets\n

\n

\n \n Amazon GameLift Servers service locations for managed hosting

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -5678,7 +5679,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Retrieves the resource capacity settings for a fleet location. The data returned\n includes the current capacity (number of EC2 instances) and some scaling settings for\n the requested fleet location. For a managed container fleet, this operation also returns counts\n for game server container groups.

\n

Use this operation to retrieve capacity information for a fleet's remote location or\n home Region (you can also retrieve home Region capacity by calling\n DescribeFleetCapacity).

\n

To retrieve capacity data, identify a fleet and location.

\n

If successful, a FleetCapacity object is returned for the requested fleet\n location.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

\n

\n Amazon GameLift Servers service locations for managed hosting

\n

\n GameLift metrics for fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Retrieves the resource capacity settings for a fleet location. The data returned\n includes the current capacity (number of EC2 instances) and some scaling settings for\n the requested fleet location. For a managed container fleet, this operation also returns counts\n for game server container groups.

\n

Use this operation to retrieve capacity information for a fleet's remote location or\n home Region (you can also retrieve home Region capacity by calling\n DescribeFleetCapacity).

\n

To retrieve capacity data, identify a fleet and location.

\n

If successful, a FleetCapacity object is returned for the requested fleet\n location.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

\n

\n Amazon GameLift Servers service locations for managed hosting

\n

\n GameLift metrics for fleets\n

" } }, "com.amazonaws.gamelift#DescribeFleetLocationCapacityInput": { @@ -5745,7 +5746,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Retrieves current usage data for a fleet location. Utilization data provides a\n snapshot of current game hosting activity at the requested location. Use this operation\n to retrieve utilization information for a fleet's remote location or home Region (you\n can also retrieve home Region utilization by calling\n DescribeFleetUtilization).

\n

To retrieve utilization data, identify a fleet and location.

\n

If successful, a FleetUtilization object is returned for the requested\n fleet location.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

\n

\n Amazon GameLift Servers service locations for managed hosting

\n

\n GameLift metrics for fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere

\n

Retrieves current usage data for a fleet location. Utilization data provides a\n snapshot of current game hosting activity at the requested location. Use this operation\n to retrieve utilization information for a fleet's remote location or home Region (you\n can also retrieve home Region utilization by calling\n DescribeFleetUtilization).

\n

To retrieve utilization data, identify a fleet and location.

\n

If successful, a FleetUtilization object is returned for the requested\n fleet location.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

\n

\n Amazon GameLift Servers service locations for managed hosting

\n

\n GameLift metrics for fleets\n

" } }, "com.amazonaws.gamelift#DescribeFleetLocationUtilizationInput": { @@ -5812,7 +5813,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Retrieves a fleet's inbound connection permissions. Connection permissions specify IP\n addresses and port settings that incoming traffic can use to access server processes in\n the fleet. Game server processes that are running in the fleet must use a port that\n falls within this range.

\n

Use this operation in the following ways:

\n
    \n
  • \n

    To retrieve the port settings for a fleet, identify the fleet's unique\n identifier.

    \n
  • \n
  • \n

    To check the status of recent updates to a fleet remote location, specify the\n fleet ID and a location. Port setting updates can take time to propagate across\n all locations.

    \n
  • \n
\n

If successful, a set of IpPermission objects is returned for the\n requested fleet ID. When specifying a location, this operation returns a pending status.\n If the requested fleet has been deleted, the result set is empty.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Retrieves a fleet's inbound connection permissions. Connection permissions specify IP\n addresses and port settings that incoming traffic can use to access server processes in\n the fleet. Game server processes that are running in the fleet must use a port that\n falls within this range.

\n

Use this operation in the following ways:

\n
    \n
  • \n

    To retrieve the port settings for a fleet, identify the fleet's unique\n identifier.

    \n
  • \n
  • \n

    To check the status of recent updates to a fleet remote location, specify the\n fleet ID and a location. Port setting updates can take time to propagate across\n all locations.

    \n
  • \n
\n

If successful, a set of IpPermission objects is returned for the\n requested fleet ID. When specifying a location, this operation returns a pending status.\n If the requested fleet has been deleted, the result set is empty.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" } }, "com.amazonaws.gamelift#DescribeFleetPortSettingsInput": { @@ -5898,7 +5899,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Retrieves utilization statistics for one or more fleets. Utilization data provides a\n snapshot of how the fleet's hosting resources are currently being used. For fleets with\n remote locations, this operation retrieves data for the fleet's home Region only. See\n DescribeFleetLocationUtilization to get utilization statistics for a\n fleet's remote locations.

\n

This operation can be used in the following ways:

\n
    \n
  • \n

    To get utilization data for one or more specific fleets, provide a list of\n fleet IDs or fleet ARNs.

    \n
  • \n
  • \n

    To get utilization data for all fleets, do not provide a fleet identifier.\n

    \n
  • \n
\n

When requesting multiple fleets, use the pagination parameters to retrieve results as\n a set of sequential pages.

\n

If successful, a FleetUtilization object is returned for each requested fleet ID, unless the\n fleet identifier is not found. Each fleet utilization object includes a\n Location property, which is set to the fleet's home Region.

\n \n

Some API operations may limit the number of fleet IDs allowed in one request. If a\n request exceeds this limit, the request fails and the error message includes the\n maximum allowed.

\n
\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n Fleets\n

\n

\n GameLift Metrics for Fleets\n

", + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Retrieves utilization statistics for one or more fleets. Utilization data provides a\n snapshot of how the fleet's hosting resources are currently being used. For fleets with\n remote locations, this operation retrieves data for the fleet's home Region only. See\n DescribeFleetLocationUtilization to get utilization statistics for a\n fleet's remote locations.

\n

This operation can be used in the following ways:

\n
    \n
  • \n

    To get utilization data for one or more specific fleets, provide a list of\n fleet IDs or fleet ARNs.

    \n
  • \n
  • \n

    To get utilization data for all fleets, do not provide a fleet identifier.\n

    \n
  • \n
\n

When requesting multiple fleets, use the pagination parameters to retrieve results as\n a set of sequential pages.

\n

If successful, a FleetUtilization object is returned for each requested fleet ID, unless the\n fleet identifier is not found. Each fleet utilization object includes a\n Location property, which is set to the fleet's home Region.

\n \n

Some API operations may limit the number of fleet IDs allowed in one request. If a\n request exceeds this limit, the request fails and the error message includes the\n maximum allowed.

\n
\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n Fleets\n

\n

\n GameLift Metrics for Fleets\n

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -6996,7 +6997,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Retrieves all scaling policies applied to a fleet.

\n

To get a fleet's scaling policies, specify the fleet ID. You can filter this request\n by policy status, such as to retrieve only active scaling policies. Use the pagination\n parameters to retrieve results as a set of sequential pages. If successful, set of\n ScalingPolicy objects is returned for the fleet.

\n

A fleet may have all of its scaling policies suspended. This operation does not affect\n the status of the scaling policies, which remains ACTIVE.

", + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Retrieves all scaling policies applied to a fleet.

\n

To get a fleet's scaling policies, specify the fleet ID. You can filter this request\n by policy status, such as to retrieve only active scaling policies. Use the pagination\n parameters to retrieve results as a set of sequential pages. If successful, set of\n ScalingPolicy objects is returned for the fleet.

\n

A fleet may have all of its scaling policies suspended. This operation does not affect\n the status of the scaling policies, which remains ACTIVE.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -10384,6 +10385,132 @@ "traits": { "smithy.api#enumValue": "r7a.48xlarge" } + }, + "c8a_medium": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8a.medium" + } + }, + "c8a_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8a.large" + } + }, + "c8a_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8a.xlarge" + } + }, + "c8a_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8a.2xlarge" + } + }, + "c8i_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8i.large" + } + }, + "c8i_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8i.xlarge" + } + }, + "c8i_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8i.2xlarge" + } + }, + "c9g_medium": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c9g.medium" + } + }, + "c9g_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c9g.large" + } + }, + "c9g_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c9g.xlarge" + } + }, + "c9g_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c9g.2xlarge" + } + }, + "m8a_medium": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8a.medium" + } + }, + "m8a_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8a.large" + } + }, + "m8a_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8a.xlarge" + } + }, + "m8a_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8a.2xlarge" + } + }, + "m8i_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8i.large" + } + }, + "m8i_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8i.xlarge" + } + }, + "m8i_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m8i.2xlarge" + } + }, + "m9g_large": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m9g.large" + } + }, + "m9g_xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m9g.xlarge" + } + }, + "m9g_2xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m9g.2xlarge" + } } } }, @@ -12903,7 +13030,8 @@ "smithy.api#length": { "min": 0, "max": 96 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#GameServer": { @@ -12998,7 +13126,7 @@ "min": 1, "max": 512 }, - "smithy.api#pattern": "\\S" + "smithy.api#pattern": "^.*\\S.*$" } }, "com.amazonaws.gamelift#GameServerContainerDefinition": { @@ -13175,7 +13303,8 @@ "min": 1, "max": 1024 }, - "smithy.api#pattern": "\\S" + "smithy.api#pattern": "^.*\\S.*$", + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#GameServerGroup": { @@ -13886,7 +14015,7 @@ "min": 1, "max": 256 }, - "smithy.api#pattern": "^[a-zA-Z0-9-\\.]+|^arn:.*:gameservergroup\\/[a-zA-Z0-9-\\.]+$" + "smithy.api#pattern": "^([a-zA-Z0-9-\\.]+|arn:.*:gameservergroup\\/[a-zA-Z0-9-\\.]+)$" } }, "com.amazonaws.gamelift#GameServerGroupStatus": { @@ -14316,7 +14445,8 @@ "smithy.api#length": { "min": 1, "max": 4096 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#GameSessionDetail": { @@ -14641,7 +14771,7 @@ "min": 1, "max": 256 }, - "smithy.api#pattern": "^[a-zA-Z0-9-]+|^arn:.*:gamesessionqueue\\/[a-zA-Z0-9-]+$" + "smithy.api#pattern": "^([a-zA-Z0-9-]+|arn:.*:gamesessionqueue\\/[a-zA-Z0-9-]+)$" } }, "com.amazonaws.gamelift#GameSessionQueueNameOrArnList": { @@ -15515,7 +15645,8 @@ "smithy.api#length": { "min": 1, "max": 262144 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#LatencyMap": { @@ -17280,7 +17411,8 @@ "smithy.api#length": { "min": 1, "max": 390000 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#MatchmakingAcceptanceTimeoutInteger": { @@ -17422,7 +17554,7 @@ "min": 1, "max": 256 }, - "smithy.api#pattern": "^[a-zA-Z0-9-\\.]*|^arn:.*:matchmakingconfiguration\\/[a-zA-Z0-9-\\.]*$" + "smithy.api#pattern": "^([a-zA-Z0-9-\\.]*|arn:.*:matchmakingconfiguration\\/[a-zA-Z0-9-\\.]*)$" } }, "com.amazonaws.gamelift#MatchmakingConfigurationNameList": { @@ -17563,7 +17695,7 @@ "min": 1, "max": 256 }, - "smithy.api#pattern": "^[a-zA-Z0-9-\\.]*|^arn:.*:matchmakingruleset\\/[a-zA-Z0-9-\\.]*$" + "smithy.api#pattern": "^([a-zA-Z0-9-\\.]*|arn:.*:matchmakingruleset\\/[a-zA-Z0-9-\\.]*)$" } }, "com.amazonaws.gamelift#MatchmakingRuleSetNameList": { @@ -17809,7 +17941,7 @@ "min": 1, "max": 1024 }, - "smithy.api#pattern": "\\S" + "smithy.api#pattern": "^.*\\S.*$" } }, "com.amazonaws.gamelift#NonEmptyString": { @@ -18140,7 +18272,8 @@ "smithy.api#length": { "min": 1, "max": 2048 - } + }, + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#PlayerDataMap": { @@ -18605,7 +18738,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Creates or updates a scaling policy for a fleet. Scaling policies are used to\n automatically scale a fleet's hosting capacity to meet player demand. An active scaling\n policy instructs Amazon GameLift Servers to track a fleet metric and automatically change the fleet's\n capacity when a certain threshold is reached. There are two types of scaling policies:\n target-based and rule-based. Use a target-based policy to quickly and efficiently manage\n fleet scaling; this option is the most commonly used. Use rule-based policies when you\n need to exert fine-grained control over auto-scaling.

\n

Fleets can have multiple scaling policies of each type in force at the same time; you\n can have one target-based policy, one or multiple rule-based scaling policies, or both.\n We recommend caution, however, because multiple auto-scaling policies can have\n unintended consequences.

\n

Learn more about how to work with auto-scaling in Set Up Fleet Automatic\n Scaling.

\n

\n Target-based policy\n

\n

A target-based policy tracks a single metric: PercentAvailableGameSessions. This\n metric tells us how much of a fleet's hosting capacity is ready to host game sessions\n but is not currently in use. This is the fleet's buffer; it measures the additional\n player demand that the fleet could handle at current capacity. With a target-based\n policy, you set your ideal buffer size and leave it to Amazon GameLift Servers to take whatever action is\n needed to maintain that target.

\n

For example, you might choose to maintain a 10% buffer for a fleet that has the\n capacity to host 100 simultaneous game sessions. This policy tells Amazon GameLift Servers to take action\n whenever the fleet's available capacity falls below or rises above 10 game sessions.\n Amazon GameLift Servers will start new instances or stop unused instances in order to return to the 10%\n buffer.

\n

To create or update a target-based policy, specify a fleet ID and name, and set the\n policy type to \"TargetBased\". Specify the metric to track (PercentAvailableGameSessions)\n and reference a TargetConfiguration object with your desired buffer value.\n Exclude all other parameters. On a successful request, the policy name is returned. The\n scaling policy is automatically in force as soon as it's successfully created. If the\n fleet's auto-scaling actions are temporarily suspended, the new policy will be in force\n once the fleet actions are restarted.

\n

\n Rule-based policy\n

\n

A rule-based policy tracks specified fleet metric, sets a threshold value, and\n specifies the type of action to initiate when triggered. With a rule-based policy, you\n can select from several available fleet metrics. Each policy specifies whether to scale\n up or scale down (and by how much), so you need one policy for each type of action.

\n

For example, a policy may make the following statement: \"If the percentage of idle\n instances is greater than 20% for more than 15 minutes, then reduce the fleet capacity\n by 10%.\"

\n

A policy's rule statement has the following structure:

\n

If [MetricName] is [ComparisonOperator]\n [Threshold] for [EvaluationPeriods] minutes, then\n [ScalingAdjustmentType] to/by [ScalingAdjustment].

\n

To implement the example, the rule statement would look like this:

\n

If [PercentIdleInstances] is [GreaterThanThreshold]\n [20] for [15] minutes, then\n [PercentChangeInCapacity] to/by [10].

\n

To create or update a scaling policy, specify a unique combination of name and fleet\n ID, and set the policy type to \"RuleBased\". Specify the parameter values for a policy\n rule statement. On a successful request, the policy name is returned. Scaling policies\n are automatically in force as soon as they're successfully created. If the fleet's\n auto-scaling actions are temporarily suspended, the new policy will be in force once the\n fleet actions are restarted.

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Creates or updates a scaling policy for a fleet. Scaling policies are used to\n automatically scale a fleet's hosting capacity to meet player demand. An active scaling\n policy instructs Amazon GameLift Servers to track a fleet metric and automatically change the fleet's\n capacity when a certain threshold is reached. There are two types of scaling policies:\n target-based and rule-based. Use a target-based policy to quickly and efficiently manage\n fleet scaling; this option is the most commonly used. Use rule-based policies when you\n need to exert fine-grained control over auto-scaling.

\n

Fleets can have multiple scaling policies of each type in force at the same time; you\n can have one target-based policy, one or multiple rule-based scaling policies, or both.\n We recommend caution, however, because multiple auto-scaling policies can have\n unintended consequences.

\n

Learn more about how to work with auto-scaling in Set Up Fleet Automatic\n Scaling.

\n

\n Target-based policy\n

\n

A target-based policy tracks a single metric: PercentAvailableGameSessions. This\n metric tells us how much of a fleet's hosting capacity is ready to host game sessions\n but is not currently in use. This is the fleet's buffer; it measures the additional\n player demand that the fleet could handle at current capacity. With a target-based\n policy, you set your ideal buffer size and leave it to Amazon GameLift Servers to take whatever action is\n needed to maintain that target.

\n

For example, you might choose to maintain a 10% buffer for a fleet that has the\n capacity to host 100 simultaneous game sessions. This policy tells Amazon GameLift Servers to take action\n whenever the fleet's available capacity falls below or rises above 10 game sessions.\n Amazon GameLift Servers will start new instances or stop unused instances in order to return to the 10%\n buffer.

\n

To create or update a target-based policy, specify a fleet ID and name, and set the\n policy type to \"TargetBased\". Specify the metric to track (PercentAvailableGameSessions)\n and reference a TargetConfiguration object with your desired buffer value.\n Exclude all other parameters. On a successful request, the policy name is returned. The\n scaling policy is automatically in force as soon as it's successfully created. If the\n fleet's auto-scaling actions are temporarily suspended, the new policy will be in force\n once the fleet actions are restarted.

\n

\n Rule-based policy\n

\n

A rule-based policy tracks specified fleet metric, sets a threshold value, and\n specifies the type of action to initiate when triggered. With a rule-based policy, you\n can select from several available fleet metrics. Each policy specifies whether to scale\n up or scale down (and by how much), so you need one policy for each type of action.

\n

For example, a policy may make the following statement: \"If the percentage of idle\n instances is greater than 20% for more than 15 minutes, then reduce the fleet capacity\n by 10%.\"

\n

A policy's rule statement has the following structure:

\n

If [MetricName] is [ComparisonOperator]\n [Threshold] for [EvaluationPeriods] minutes, then\n [ScalingAdjustmentType] to/by [ScalingAdjustment].

\n

To implement the example, the rule statement would look like this:

\n

If [PercentIdleInstances] is [GreaterThanThreshold]\n [20] for [15] minutes, then\n [PercentChangeInCapacity] to/by [10].

\n

To create or update a scaling policy, specify a unique combination of name and fleet\n ID, and set the policy type to \"RuleBased\". Specify the parameter values for a policy\n rule statement. On a successful request, the policy name is returned. Scaling policies\n are automatically in force as soon as they're successfully created. If the fleet's\n auto-scaling actions are temporarily suspended, the new policy will be in force once the\n fleet actions are restarted.

" } }, "com.amazonaws.gamelift#PutScalingPolicyInput": { @@ -18709,7 +18842,8 @@ "min": 0, "max": 256 }, - "smithy.api#pattern": "^[\\s\\S]*$" + "smithy.api#pattern": "^[\\s\\S]*$", + "smithy.api#sensitive": {} } }, "com.amazonaws.gamelift#QueueSnsArnStringModel": { @@ -18754,7 +18888,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: Anywhere, Container

\n

Registers a compute resource in an Amazon GameLift Servers Anywhere fleet.

\n

For an Anywhere fleet that's running the Amazon GameLift Servers Agent, the Agent\n handles all compute registry tasks for you. For an Anywhere fleet that doesn't use the\n Agent, call this operation to register fleet computes.

\n

To register a compute, give the compute a name (must be unique within the\n fleet) and specify the compute resource's DNS name or IP address. Provide a \n fleet ID and a fleet location to associate with the compute being registered. You can\n optionally include the path to a TLS certificate on the compute resource.

\n

If successful, this operation returns compute details, including an Amazon GameLift Servers SDK\n endpoint or Agent endpoint. Game server processes running on the compute can use this\n endpoint to communicate with the Amazon GameLift Servers service. Each server process includes the SDK\n endpoint in its call to the Amazon GameLift Servers server SDK action InitSDK().

\n

To view compute details, call DescribeCompute with the compute name.

\n

\n Learn more\n

\n " + "smithy.api#documentation": "

\n This API works with the following fleet types: Anywhere

\n

Registers a compute resource in an Amazon GameLift Servers Anywhere fleet.

\n

For an Anywhere fleet that's running the Amazon GameLift Servers Agent, the Agent\n handles all compute registry tasks for you. For an Anywhere fleet that doesn't use the\n Agent, call this operation to register fleet computes.

\n

To register a compute, give the compute a name (must be unique within the\n fleet) and specify the compute resource's DNS name or IP address. Provide a \n fleet ID and a fleet location to associate with the compute being registered. You can\n optionally include the path to a TLS certificate on the compute resource.

\n

If successful, this operation returns compute details, including an Amazon GameLift Servers SDK\n endpoint or Agent endpoint. Game server processes running on the compute can use this\n endpoint to communicate with the Amazon GameLift Servers service. Each server process includes the SDK\n endpoint in its call to the Amazon GameLift Servers server SDK action InitSDK().

\n

To view compute details, call DescribeCompute with the compute name.

\n

\n Learn more\n

\n " } }, "com.amazonaws.gamelift#RegisterComputeInput": { @@ -19488,7 +19622,7 @@ "min": 1, "max": 512 }, - "smithy.api#pattern": "^script-\\S+|^arn:.*:script\\/script-\\S+$" + "smithy.api#pattern": "^(script-\\S+|arn:.*:script\\/script-\\S+)$" } }, "com.amazonaws.gamelift#ScriptList": { @@ -19680,7 +19814,7 @@ "min": 0, "max": 300 }, - "smithy.api#pattern": "^[a-zA-Z0-9:_/-]*(.fifo)?$" + "smithy.api#pattern": "^[a-zA-Z0-9:_/-]*(\\.fifo)?$" } }, "com.amazonaws.gamelift#SortOrder": { @@ -21269,7 +21403,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere, Container

\n

Updates a fleet's mutable attributes, such as game session protection and resource\n creation limits.

\n

To update fleet attributes, specify the fleet ID and the property values that you want\n to change. If successful, Amazon GameLift Servers returns the identifiers for the updated fleet.

\n \n

A managed fleet's runtime environment, which depends on the fleet's \n Amazon Machine Image {AMI} version, can't be updated. You must create a new\n fleet. As a best practice, we recommend replacing your managed fleets every 30\n days to maintain a secure and up-to-date runtime environment for your hosted game\n servers. For guidance, see \n Security best practices for Amazon GameLift Servers.

\n
\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Anywhere

\n

Updates a fleet's mutable attributes, such as game session protection and resource\n creation limits.

\n

To update fleet attributes, specify the fleet ID and the property values that you want\n to change. If successful, Amazon GameLift Servers returns the identifiers for the updated fleet.

\n \n

A managed fleet's runtime environment, which depends on the fleet's \n Amazon Machine Image {AMI} version, can't be updated. You must create a new\n fleet. As a best practice, we recommend replacing your managed fleets every 30\n days to maintain a secure and up-to-date runtime environment for your hosted game\n servers. For guidance, see \n Security best practices for Amazon GameLift Servers.

\n
\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" } }, "com.amazonaws.gamelift#UpdateFleetAttributesInput": { @@ -21492,7 +21626,7 @@ } ], "traits": { - "smithy.api#documentation": "

\n This API works with the following fleet types: EC2, Container

\n

Updates permissions that allow inbound traffic to connect to game sessions in the\n fleet.

\n

To update settings, specify the fleet ID to be updated and specify the changes to be\n made. List the permissions you want to add in\n InboundPermissionAuthorizations, and permissions you want to remove in\n InboundPermissionRevocations. Permissions to be removed must match\n existing fleet permissions.

\n

If successful, the fleet identifiers for the updated fleet are returned. For fleets with remote\n locations, port setting updates can take time to propagate across all locations. You can\n check the status of updates in each location by calling\n DescribeFleetPortSettings with a location name.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" + "smithy.api#documentation": "

\n This API works with the following fleet types: EC2

\n

Updates permissions that allow inbound traffic to connect to game sessions in the\n fleet.

\n

To update settings, specify the fleet ID to be updated and specify the changes to be\n made. List the permissions you want to add in\n InboundPermissionAuthorizations, and permissions you want to remove in\n InboundPermissionRevocations. Permissions to be removed must match\n existing fleet permissions.

\n

If successful, the fleet identifiers for the updated fleet are returned. For fleets with remote\n locations, port setting updates can take time to propagate across all locations. You can\n check the status of updates in each location by calling\n DescribeFleetPortSettings with a location name.

\n

\n Learn more\n

\n

\n Setting up Amazon GameLift Servers\n fleets\n

" } }, "com.amazonaws.gamelift#UpdateFleetPortSettingsInput": { diff --git a/codegen/sdk/aws-models/kafka.json b/codegen/sdk/aws-models/kafka.json index 3b74288cac3..da712427f7c 100644 --- a/codegen/sdk/aws-models/kafka.json +++ b/codegen/sdk/aws-models/kafka.json @@ -72,6 +72,35 @@ "smithy.api#documentation": "

Details of an Apache Kafka Cluster.

" } }, + "com.amazonaws.kafka#AuthorizerLogs": { + "type": "structure", + "members": { + "CloudWatchLogs": { + "target": "com.amazonaws.kafka#CloudWatchLogs", + "traits": { + "smithy.api#documentation": "

Details of the CloudWatch Logs destination for authorizer logs.

", + "smithy.api#jsonName": "cloudWatchLogs" + } + }, + "Firehose": { + "target": "com.amazonaws.kafka#Firehose", + "traits": { + "smithy.api#documentation": "

Details of the Kinesis Data Firehose delivery stream that is the destination for authorizer logs.

", + "smithy.api#jsonName": "firehose" + } + }, + "S3": { + "target": "com.amazonaws.kafka#S3", + "traits": { + "smithy.api#documentation": "

Details of the Amazon S3 destination for authorizer logs.

", + "smithy.api#jsonName": "s3" + } + } + }, + "traits": { + "smithy.api#documentation": "

The authorizer logs configuration for this MSK cluster.

" + } + }, "com.amazonaws.kafka#BadRequestException": { "type": "structure", "members": { @@ -8534,6 +8563,13 @@ "com.amazonaws.kafka#LoggingInfo": { "type": "structure", "members": { + "AuthorizerLogs": { + "target": "com.amazonaws.kafka#AuthorizerLogs", + "traits": { + "smithy.api#documentation": "

You can configure your MSK cluster to send authorizer logs to different destination types.

", + "smithy.api#jsonName": "authorizerLogs" + } + }, "BrokerLogs": { "target": "com.amazonaws.kafka#BrokerLogs", "traits": { diff --git a/codegen/sdk/aws-models/marketplace-agreement.json b/codegen/sdk/aws-models/marketplace-agreement.json index 595dbd54b1f..6651f65bfea 100644 --- a/codegen/sdk/aws-models/marketplace-agreement.json +++ b/codegen/sdk/aws-models/marketplace-agreement.json @@ -1284,6 +1284,12 @@ "traits": { "smithy.api#documentation": "

Defines a payment model where sellers can submit variable payment requests up to a maximum charge amount, with configurable approval strategies and expiration timelines.

" } + }, + "netPaymentTerm": { + "target": "com.amazonaws.marketplaceagreement#NetPaymentTerm", + "traits": { + "smithy.api#documentation": "

Defines the net payment due period for the agreement, specifying when payment is due after an invoice is issued.

" + } } }, "traits": { @@ -5008,6 +5014,32 @@ } } }, + "com.amazonaws.marketplaceagreement#NetPaymentTerm": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.marketplaceagreement#UnversionedTermType", + "traits": { + "smithy.api#documentation": "

Type of the term being updated.

" + } + }, + "id": { + "target": "com.amazonaws.marketplaceagreement#TermId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the term.

" + } + }, + "paymentDuePeriod": { + "target": "com.amazonaws.marketplaceagreement#BoundedString", + "traits": { + "smithy.api#documentation": "

The duration after an invoice is issued within which the payment is due. The duration is represented in the ISO 8601 format (for example, P30D for 30 days or P60D for 60 days).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines the net payment due period for the agreement, specifying when payment is due after an invoice is issued.

" + } + }, "com.amazonaws.marketplaceagreement#NextToken": { "type": "string", "traits": { diff --git a/codegen/sdk/aws-models/marketplace-discovery.json b/codegen/sdk/aws-models/marketplace-discovery.json index b40dbc967e9..cb86cc68031 100644 --- a/codegen/sdk/aws-models/marketplace-discovery.json +++ b/codegen/sdk/aws-models/marketplace-discovery.json @@ -2404,13 +2404,6 @@ "smithy.api#documentation": "

The display name of the offer. This is free-form text provided by the seller.

" } }, - "agreementProposalId": { - "target": "com.amazonaws.marketplacediscovery#AgreementResourceId", - "traits": { - "smithy.api#documentation": "

An encoded string to be passed by the acceptor of the terms when creating an agreement.

", - "smithy.api#required": {} - } - }, "expirationTime": { "target": "smithy.api#Timestamp", "traits": { @@ -2430,6 +2423,20 @@ "smithy.api#required": {} } }, + "associatedEntities": { + "target": "com.amazonaws.marketplacediscovery#OfferAssociatedEntityList", + "traits": { + "smithy.api#documentation": "

The products and offer sets associated with this offer.

", + "smithy.api#required": {} + } + }, + "agreementProposalId": { + "target": "com.amazonaws.marketplacediscovery#AgreementResourceId", + "traits": { + "smithy.api#documentation": "

An encoded string to be passed by the acceptor of the terms when creating an agreement.

", + "smithy.api#required": {} + } + }, "replacementAgreementId": { "target": "com.amazonaws.marketplacediscovery#AgreementResourceId", "traits": { @@ -2449,13 +2456,6 @@ "smithy.api#documentation": "

Badges indicating special attributes of the offer, such as private pricing, future dated, or replacement offer.

", "smithy.api#required": {} } - }, - "associatedEntities": { - "target": "com.amazonaws.marketplacediscovery#OfferAssociatedEntityList", - "traits": { - "smithy.api#documentation": "

The products and offer sets associated with this offer.

", - "smithy.api#required": {} - } } }, "traits": { @@ -3047,6 +3047,23 @@ } ] } + }, + { + "title": "GetOfferTerms for net payment term", + "input": { + "offerId": "offer-sampleNetPaymentId" + }, + "output": { + "offerTerms": [ + { + "netPaymentTerm": { + "id": "term-netpay-001", + "type": "NetPaymentTerm", + "paymentDuePeriod": "P30D" + } + } + ] + } } ], "smithy.api#http": { @@ -3057,7 +3074,8 @@ "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", - "items": "offerTerms" + "items": "offerTerms", + "pageSize": "maxResults" }, "smithy.api#readonly": {}, "smithy.test#smokeTests": [ @@ -3429,6 +3447,13 @@ "smithy.api#required": {} } }, + "manufacturer": { + "target": "com.amazonaws.marketplacediscovery#SellerInformation", + "traits": { + "smithy.api#documentation": "

The entity who manufactured the product.

", + "smithy.api#required": {} + } + }, "deployedOnAws": { "target": "com.amazonaws.marketplacediscovery#DeployedOnAwsStatus", "traits": { @@ -3453,13 +3478,6 @@ "smithy.api#required": {} } }, - "manufacturer": { - "target": "com.amazonaws.marketplacediscovery#SellerInformation", - "traits": { - "smithy.api#documentation": "

The entity who manufactured the product.

", - "smithy.api#required": {} - } - }, "logoThumbnailUrl": { "target": "com.amazonaws.marketplacediscovery#URL", "traits": { @@ -4580,6 +4598,13 @@ "smithy.api#required": {} } }, + "fulfillmentOptionSummaries": { + "target": "com.amazonaws.marketplacediscovery#FulfillmentOptionSummaryList", + "traits": { + "smithy.api#documentation": "

A summary of fulfillment options available for the listing.

", + "smithy.api#required": {} + } + }, "catalog": { "target": "com.amazonaws.marketplacediscovery#Catalog", "traits": { @@ -4608,13 +4633,6 @@ "smithy.api#required": {} } }, - "fulfillmentOptionSummaries": { - "target": "com.amazonaws.marketplacediscovery#FulfillmentOptionSummaryList", - "traits": { - "smithy.api#documentation": "

A summary of fulfillment options available for the listing.

", - "smithy.api#required": {} - } - }, "badges": { "target": "com.amazonaws.marketplacediscovery#ListingBadgeList", "traits": { @@ -4696,6 +4714,35 @@ } } }, + "com.amazonaws.marketplacediscovery#NetPaymentTerm": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.marketplacediscovery#TermId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the term.

", + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.marketplacediscovery#TermType", + "traits": { + "smithy.api#documentation": "

The category of the term.

", + "smithy.api#required": {} + } + }, + "paymentDuePeriod": { + "target": "com.amazonaws.marketplacediscovery#BoundedString", + "traits": { + "smithy.api#documentation": "

The duration after invoice date by which payment is due.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines a net payment term that sets how many days after the invoice date the payment is due.

" + } + }, "com.amazonaws.marketplacediscovery#NextToken": { "type": "string", "traits": { @@ -4905,6 +4952,12 @@ }, "variablePaymentTerm": { "target": "com.amazonaws.marketplacediscovery#VariablePaymentTerm" + }, + "netPaymentTerm": { + "target": "com.amazonaws.marketplacediscovery#NetPaymentTerm", + "traits": { + "smithy.api#documentation": "

A net payment term.

" + } } }, "traits": { @@ -6972,6 +7025,12 @@ "traits": { "smithy.api#enumValue": "VariablePaymentTerm" } + }, + "NET_PAYMENT_TERM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NetPaymentTerm" + } } } }, diff --git a/codegen/sdk/aws-models/mediatailor.json b/codegen/sdk/aws-models/mediatailor.json index c1a29f5f85a..41cb7feee0d 100644 --- a/codegen/sdk/aws-models/mediatailor.json +++ b/codegen/sdk/aws-models/mediatailor.json @@ -914,6 +914,7 @@ "aws.cloudformation#cfnResource": { "name": "ChannelPolicy" }, + "aws.iam#disableConditionKeyInference": {}, "smithy.api#unstable": {} } }, @@ -968,9 +969,19 @@ "aws.api#arn": { "template": "channel/{ChannelName}" }, + "aws.api#taggable": {}, "aws.cloudformation#cfnResource": { "name": "Channel" }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "channel", + "relativeDocumentation": "channel-channelname.html" + }, + "smithy.api#documentation": "Represents a linear stream assembled from source manifests", "smithy.api#noReplace": {}, "smithy.api#unstable": {} } @@ -1031,6 +1042,49 @@ } } }, + "com.amazonaws.mediatailor#ConcurrentExecutorConfiguration": { + "type": "structure", + "members": { + "Runtime": { + "target": "com.amazonaws.mediatailor#RuntimeType", + "traits": { + "smithy.api#documentation": "

The expression language used to evaluate expressions in the function configuration. Set this to JSONata.

", + "smithy.api#required": {} + } + }, + "Output": { + "target": "com.amazonaws.mediatailor#__mapOf__string", + "traits": { + "smithy.api#documentation": "

A map of output bindings that controls which bindings the executor commits to the session state after all child functions complete. Each key is a namespaced output path, and each value is an expression that MediaTailor evaluates against the combined results of the child functions.

", + "smithy.api#required": {} + } + }, + "FunctionList": { + "target": "com.amazonaws.mediatailor#__listOfFunctionsRef", + "traits": { + "smithy.api#documentation": "

The list of child functions that MediaTailor runs in parallel. Each entry specifies a child function to execute and an optional run condition expression that controls whether the function runs.

", + "smithy.api#required": {} + } + }, + "TimeoutMilliseconds": { + "target": "com.amazonaws.mediatailor#__integer", + "traits": { + "smithy.api#documentation": "

The maximum time, in milliseconds, for all child functions to complete. This timeout covers every function in the list, including any HTTP calls the child functions make. If the executor exceeds this timeout, MediaTailor discards all output from the executor and proceeds with default behavior.

", + "smithy.api#required": {} + } + }, + "MaxConcurrency": { + "target": "com.amazonaws.mediatailor#__integer", + "traits": { + "smithy.api#documentation": "

The maximum number of child functions that MediaTailor runs simultaneously. When the list contains more functions than MaxConcurrency, MediaTailor starts additional functions as running ones complete, so that no more than MaxConcurrency functions run at the same time.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for a CONCURRENT_EXECUTOR function. A CONCURRENT_EXECUTOR runs a set of child functions in parallel, up to a maximum concurrency, and combines their output when all functions complete. For more information about functions, see Working with functions in the MediaTailor User Guide.

" + } + }, "com.amazonaws.mediatailor#ConfigurationAliasesRequest": { "type": "map", "key": { @@ -1076,6 +1130,19 @@ "target": "com.amazonaws.mediatailor#ConfigureLogsForChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to configure logs on the channel with the specified channel name", + "relativeDocumentation": "configurelogs-channel.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Configures Amazon CloudWatch log settings for a channel.

", "smithy.api#http": { "method": "PUT", @@ -1129,6 +1196,22 @@ "target": "com.amazonaws.mediatailor#ConfigureLogsForPlaybackConfigurationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to configure logs for a playback configuration", + "relativeDocumentation": "configurelogs-playbackconfiguration.html", + "requiredActions": [ + "iam:CreateServiceLinkedRole" + ], + "resources": { + "required": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Defines where AWS Elemental MediaTailor sends logs for the playback configuration.

", "smithy.api#http": { "method": "PUT", @@ -1225,6 +1308,27 @@ "target": "com.amazonaws.mediatailor#CreateChannelResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create a new channel", + "relativeDocumentation": "channel-channelname.html", + "createsResources": [ + "channel" + ], + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ] + } + } + } + }, "smithy.api#documentation": "

Creates a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "POST", @@ -1385,6 +1489,27 @@ "target": "com.amazonaws.mediatailor#CreateLiveSourceResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create a new live source on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesource-livesourcename.html", + "createsResources": [ + "liveSource" + ], + "resources": { + "required": { + "liveSource": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ] + } + } + } + }, "smithy.api#documentation": "

The live source configuration.

", "smithy.api#http": { "method": "POST", @@ -1486,6 +1611,18 @@ "target": "com.amazonaws.mediatailor#CreatePrefetchScheduleResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to create a prefetch schedule for the playback configuration with the specified playback configuration name", + "relativeDocumentation": "prefetchschedule-playbackconfigurationname-name.html", + "createsResources": [ + "prefetchSchedule" + ], + "resources": { + "required": { + "playbackConfiguration": {} + } + } + }, "smithy.api#documentation": "

Creates a prefetch schedule for a playback configuration. A prefetch schedule allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the MediaTailor User Guide.

", "smithy.api#http": { "method": "POST", @@ -1622,6 +1759,10 @@ "target": "com.amazonaws.mediatailor#CreateProgramResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to create a new program on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-program-programname.html" + }, "smithy.api#documentation": "

Creates a program within a channel. For information about programs, see Working with programs in the MediaTailor User Guide.

", "smithy.api#http": { "method": "POST", @@ -1790,6 +1931,27 @@ "target": "com.amazonaws.mediatailor#CreateSourceLocationResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create a new source location", + "relativeDocumentation": "sourcelocation-sourcelocationname.html", + "createsResources": [ + "sourceLocation" + ], + "resources": { + "required": { + "sourceLocation": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ] + } + } + } + }, "smithy.api#documentation": "

Creates a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the MediaTailor User Guide.

", "smithy.api#http": { "method": "POST", @@ -1913,6 +2075,27 @@ "target": "com.amazonaws.mediatailor#CreateVodSourceResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create a new VOD source on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsource-vodsourcename.html", + "createsResources": [ + "vodSource" + ], + "resources": { + "required": { + "vodSource": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ] + } + } + } + }, "smithy.api#documentation": "

The VOD source configuration parameters.

", "smithy.api#http": { "method": "POST", @@ -2133,6 +2316,19 @@ "target": "com.amazonaws.mediatailor#DeleteChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the channel with the specified channel name", + "relativeDocumentation": "channel-channelname.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Deletes a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "DELETE", @@ -2151,6 +2347,19 @@ "target": "com.amazonaws.mediatailor#DeleteChannelPolicyResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the IAM policy on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-policy.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The channel policy to delete.

", "smithy.api#http": { "method": "DELETE", @@ -2171,6 +2380,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "aws.api#data": "permissions" } }, "com.amazonaws.mediatailor#DeleteChannelPolicyResponse": { @@ -2249,6 +2461,19 @@ "target": "com.amazonaws.mediatailor#DeleteLiveSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the live source with the specified live source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesource-livesourcename.html", + "resources": { + "required": { + "liveSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The live source to delete.

", "smithy.api#http": { "method": "DELETE", @@ -2292,6 +2517,19 @@ "target": "com.amazonaws.mediatailor#DeletePlaybackConfigurationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the specified playback configuration", + "relativeDocumentation": "playbackconfiguration-name.html", + "resources": { + "required": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Deletes a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor.

", "smithy.api#http": { "method": "DELETE", @@ -2327,6 +2565,16 @@ "target": "com.amazonaws.mediatailor#DeletePrefetchScheduleResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete a prefetch schedule for a playback configuration with the specified prefetch schedule name", + "relativeDocumentation": "prefetchschedule-playbackconfigurationname-name.html", + "resources": { + "required": { + "playbackConfiguration": {}, + "prefetchSchedule": {} + } + } + }, "smithy.api#documentation": "

Deletes a prefetch schedule for a specific playback configuration. If you call DeletePrefetchSchedule on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code. For more information about ad prefetching, see Using ad prefetching in the MediaTailor User Guide.

", "smithy.api#http": { "method": "DELETE", @@ -2370,6 +2618,15 @@ "target": "com.amazonaws.mediatailor#DeleteProgramResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the program with the specified program name on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-program-programname.html", + "resources": { + "required": { + "program": {} + } + } + }, "smithy.api#documentation": "

Deletes a program within a channel. For information about programs, see Working with programs in the MediaTailor User Guide.

", "smithy.api#http": { "method": "DELETE", @@ -2413,6 +2670,19 @@ "target": "com.amazonaws.mediatailor#DeleteSourceLocationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname.html", + "resources": { + "required": { + "sourceLocation": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Deletes a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the MediaTailor User Guide.

", "smithy.api#http": { "method": "DELETE", @@ -2448,6 +2718,19 @@ "target": "com.amazonaws.mediatailor#DeleteVodSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the VOD source with the specified VOD source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsource-vodsourcename.html", + "resources": { + "required": { + "vodSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The video on demand (VOD) source to delete.

", "smithy.api#http": { "method": "DELETE", @@ -2491,6 +2774,19 @@ "target": "com.amazonaws.mediatailor#DescribeChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the channel with the specified channel name", + "relativeDocumentation": "channel-channelname.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Describes a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "GET", @@ -2613,6 +2909,19 @@ "target": "com.amazonaws.mediatailor#DescribeLiveSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the live source with the specified live source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesource-livesourcename.html", + "resources": { + "required": { + "liveSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The live source to describe.

", "smithy.api#http": { "method": "GET", @@ -2700,6 +3009,15 @@ "target": "com.amazonaws.mediatailor#DescribeProgramResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the program with the specified program name on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-program-programname.html", + "resources": { + "required": { + "program": {} + } + } + }, "smithy.api#documentation": "

Describes a program within a channel. For information about programs, see Working with programs in the MediaTailor User Guide.

", "smithy.api#http": { "method": "GET", @@ -2823,6 +3141,19 @@ "target": "com.amazonaws.mediatailor#DescribeSourceLocationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname.html", + "resources": { + "required": { + "sourceLocation": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Describes a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the MediaTailor User Guide.

", "smithy.api#http": { "method": "GET", @@ -2914,6 +3245,19 @@ "target": "com.amazonaws.mediatailor#DescribeVodSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the VOD source with the specified VOD source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsource-vodsourcename.html", + "resources": { + "required": { + "vodSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Provides details about a specific video on demand (VOD) source in a specific source location.

", "smithy.api#http": { "method": "GET", @@ -3067,6 +3411,12 @@ "smithy.api#documentation": "

The configuration for a CUSTOM_OUTPUT function.

" } }, + "ConcurrentExecutorConfiguration": { + "target": "com.amazonaws.mediatailor#ConcurrentExecutorConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for a CONCURRENT_EXECUTOR function.

" + } + }, "SequentialExecutorConfiguration": { "target": "com.amazonaws.mediatailor#SequentialExecutorConfiguration", "traits": { @@ -3114,6 +3464,12 @@ "traits": { "smithy.api#documentation": "

The identifier of the child function to execute in this step.

" } + }, + "Alias": { + "target": "com.amazonaws.mediatailor#__string", + "traits": { + "smithy.api#documentation": "

An optional alternate name for the function within the executor. If omitted, MediaTailor uses the function identifier.

" + } } }, "traits": { @@ -3142,6 +3498,14 @@ "traits": { "aws.api#arn": { "template": "function/{FunctionId}" + }, + "aws.api#taggable": {}, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "function" } } }, @@ -3160,6 +3524,12 @@ "smithy.api#enumValue": "CUSTOM_OUTPUT" } }, + "CONCURRENT_EXECUTOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONCURRENT_EXECUTOR" + } + }, "SEQUENTIAL_EXECUTOR": { "target": "smithy.api#Unit", "traits": { @@ -3180,6 +3550,19 @@ "target": "com.amazonaws.mediatailor#GetChannelPolicyResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to read the IAM policy on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-policy.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Returns the channel's IAM policy. IAM policies are used to control access to your channel.

", "smithy.api#http": { "method": "GET", @@ -3222,6 +3605,19 @@ "target": "com.amazonaws.mediatailor#GetChannelScheduleResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the schedule of programs on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-schedule.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Retrieves information about your channel's schedule.

", "smithy.api#http": { "method": "GET", @@ -3370,6 +3766,12 @@ "smithy.api#documentation": "

The configuration for a CUSTOM_OUTPUT function.

" } }, + "ConcurrentExecutorConfiguration": { + "target": "com.amazonaws.mediatailor#ConcurrentExecutorConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for a CONCURRENT_EXECUTOR function.

" + } + }, "SequentialExecutorConfiguration": { "target": "com.amazonaws.mediatailor#SequentialExecutorConfiguration", "traits": { @@ -3409,6 +3811,19 @@ "target": "com.amazonaws.mediatailor#GetPlaybackConfigurationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the configuration for the specified name", + "relativeDocumentation": "playbackconfiguration-name.html", + "resources": { + "required": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Retrieves a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor.

", "smithy.api#http": { "method": "GET", @@ -3609,6 +4024,16 @@ "target": "com.amazonaws.mediatailor#GetPrefetchScheduleResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve prefetch schedule for a playback configuration with the specified prefetch schedule name", + "relativeDocumentation": "prefetchschedule-playbackconfigurationname-name.html", + "resources": { + "required": { + "playbackConfiguration": {}, + "prefetchSchedule": {} + } + } + }, "smithy.api#documentation": "

Retrieves a prefetch schedule for a playback configuration. A prefetch schedule allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the MediaTailor User Guide.

", "smithy.api#http": { "method": "GET", @@ -3929,6 +4354,10 @@ "target": "com.amazonaws.mediatailor#ListAlertsResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of alerts on a resource", + "relativeDocumentation": "alerts.html" + }, "smithy.api#documentation": "

Lists the alerts that are associated with a MediaTailor channel assembly resource.

", "smithy.api#http": { "method": "GET", @@ -3997,6 +4426,10 @@ "target": "com.amazonaws.mediatailor#ListChannelsResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of existing channels", + "relativeDocumentation": "channels.html" + }, "smithy.api#documentation": "

Retrieves information about the channels that are associated with the current AWS account.

", "smithy.api#http": { "method": "GET", @@ -4123,6 +4556,10 @@ "target": "com.amazonaws.mediatailor#ListLiveSourcesResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of existing live sources on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesources.html" + }, "smithy.api#documentation": "

Lists the live sources contained in a source location. A source represents a piece of content.

", "smithy.api#http": { "method": "GET", @@ -4191,6 +4628,10 @@ "target": "com.amazonaws.mediatailor#ListPlaybackConfigurationsResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of available configurations", + "relativeDocumentation": "playbackconfigurations.html" + }, "smithy.api#documentation": "

Retrieves existing playback configurations. For information about MediaTailor configurations, see Working with Configurations in AWS Elemental MediaTailor.

", "smithy.api#http": { "method": "GET", @@ -4274,6 +4715,15 @@ "target": "com.amazonaws.mediatailor#ListPrefetchSchedulesResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of prefetch schedules for a playback configuration", + "relativeDocumentation": "prefetchschedule-playbackconfigurationname.html", + "resources": { + "required": { + "playbackConfiguration": {} + } + } + }, "smithy.api#documentation": "

Lists the prefetch schedules for a playback configuration.

", "smithy.api#http": { "method": "POST", @@ -4355,6 +4805,10 @@ "target": "com.amazonaws.mediatailor#ListSourceLocationsResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of existing source locations", + "relativeDocumentation": "sourcelocations.html" + }, "smithy.api#documentation": "

Lists the source locations for a channel. A source location defines the host server URL, and contains a list of sources.

", "smithy.api#http": { "method": "GET", @@ -4420,6 +4874,44 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to list the tags assigned to the specified playback configuration resource", + "relativeDocumentation": "tags-resourcearn.html", + "resources": { + "optional": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + }, + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + }, + "sourceLocation": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + }, + "vodSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + }, + "liveSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + }, + "function": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

A list of tags that are associated with this resource. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources.

", "smithy.api#http": { "method": "GET", @@ -4463,6 +4955,10 @@ "target": "com.amazonaws.mediatailor#ListVodSourcesResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve the list of existing VOD sources on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsources.html" + }, "smithy.api#documentation": "

Lists the VOD sources contained in a source location. A source represents a piece of content.

", "smithy.api#http": { "method": "GET", @@ -4631,9 +5127,19 @@ "aws.api#arn": { "template": "liveSource/{SourceLocationName}/{LiveSourceName}" }, + "aws.api#taggable": {}, "aws.cloudformation#cfnResource": { "name": "LiveSource" }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "liveSource", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesource-livesourcename.html" + }, + "smithy.api#documentation": "Represents a single live stream that can be added to a source location", "smithy.api#unstable": {} } }, @@ -5041,6 +5547,7 @@ "cloudTrailEventSource": "mediatailor.amazonaws.com", "endpointPrefix": "api.mediatailor" }, + "aws.api#tagEnabled": {}, "aws.auth#sigv4": { "name": "mediatailor" }, @@ -5057,17 +5564,17 @@ "aws.iam#defineConditionKeys": { "aws:ResourceTag/${TagKey}": { "type": "String", - "documentation": "Filters access by tags associated with the resource", + "documentation": "Filters access by tag key-value pairs attached to the resource", "externalDocumentation": "${DocHomeURL}IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag" }, "aws:RequestTag/${TagKey}": { "type": "String", - "documentation": "Filters access by tags that are passed in the request", + "documentation": "Filters access by the presence of tag key-value pairs in the request", "externalDocumentation": "${DocHomeURL}IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag" }, "aws:TagKeys": { "type": "ArrayOfString", - "documentation": "Filters access by tag keys that are passed in the request", + "documentation": "Filters access by the presence of tag keys in the request", "externalDocumentation": "${DocHomeURL}IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys" } }, @@ -5704,325 +6211,324 @@ ] }, "smithy.rules#endpointTests": { - "version": "1.0", "testCases": [ { "documentation": "For custom endpoint with region not set and fips disabled", - "params": { - "Endpoint": "https://example.com", - "UseFIPS": false - }, "expect": { "endpoint": { "url": "https://example.com" } + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": false } }, { "documentation": "For custom endpoint with fips enabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, "params": { "Endpoint": "https://example.com", "UseFIPS": true - }, - "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" } }, { "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, "params": { "Endpoint": "https://example.com", "UseFIPS": false, "UseDualStack": true - }, - "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" } }, { "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-east-1.api.aws" } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-east-1.amazonaws.com" } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://mediatailor.us-east-1.api.aws" } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-east-1.amazonaws.com" } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://api.mediatailor-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", - "params": { - "Region": "cn-northwest-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-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", - "params": { - "Region": "cn-northwest-1", - "UseFIPS": false, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://api.mediatailor.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", - "params": { - "Region": "cn-northwest-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.cn-northwest-1.amazonaws.com.cn" } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region eusc-de-east-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "eusc-de-east-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.eusc-de-east-1.amazonaws.eu" } + }, + "params": { + "Region": "eusc-de-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region eusc-de-east-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "eusc-de-east-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.eusc-de-east-1.amazonaws.eu" } + }, + "params": { + "Region": "eusc-de-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-iso-east-1.c2s.ic.gov" } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-iso-east-1.c2s.ic.gov" } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-isob-east-1.sc2s.sgov.gov" } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-isob-east-1.sc2s.sgov.gov" } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region eu-isoe-west-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "eu-isoe-west-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.eu-isoe-west-1.cloud.adc-e.uk" } + }, + "params": { + "Region": "eu-isoe-west-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "eu-isoe-west-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.eu-isoe-west-1.cloud.adc-e.uk" } + }, + "params": { + "Region": "eu-isoe-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region us-isof-south-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "us-isof-south-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-isof-south-1.csp.hci.ic.gov" } + }, + "params": { + "Region": "us-isof-south-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "us-isof-south-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-isof-south-1.csp.hci.ic.gov" } + }, + "params": { + "Region": "us-isof-south-1", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", - "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-gov-west-1.api.aws" } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": true } }, { "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", - "params": { - "Region": "us-gov-west-1", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor-fips.us-gov-west-1.amazonaws.com" } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", - "params": { - "Region": "us-gov-west-1", - "UseFIPS": false, - "UseDualStack": true - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-gov-west-1.api.aws" } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": true } }, { "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", - "params": { - "Region": "us-gov-west-1", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { "url": "https://api.mediatailor.us-gov-west-1.amazonaws.com" } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -6031,7 +6537,8 @@ "error": "Invalid Configuration: Missing Region" } } - ] + ], + "version": "1.0" } } }, @@ -6333,7 +6840,17 @@ "traits": { "aws.api#arn": { "template": "playbackConfiguration/{Name}" - } + }, + "aws.api#taggable": {}, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "playbackConfiguration", + "relativeDocumentation": "playbackconfiguration.html" + }, + "smithy.api#documentation": "Represents a configuration with mapping information for the origin server and the ad decision server (ADS)" } }, "com.amazonaws.mediatailor#PlaybackMode": { @@ -6522,6 +7039,12 @@ "aws.api#arn": { "template": "prefetchSchedule/{PlaybackConfigurationName}/{Name}" }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "prefetchSchedule", + "relativeDocumentation": "prefetchschedule-playbackconfigurationname-name.html" + }, + "smithy.api#documentation": "Represents a configuration that is used to fetch and prepare ads in advance of the ad break.", "smithy.api#noReplace": {} } }, @@ -6568,6 +7091,13 @@ "aws.api#arn": { "template": "program/{ChannelName}/{ProgramName}" }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "program", + "relativeDocumentation": "channel-channelname-program-programname.html", + "disableConditionKeyInheritance": true + }, + "smithy.api#documentation": "Represents a piece of content scheduled on a channel", "smithy.api#noReplace": {} } }, @@ -6580,6 +7110,19 @@ "target": "com.amazonaws.mediatailor#PutChannelPolicyResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to set the IAM policy on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-policy.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Creates an IAM policy for the channel. IAM policies are used to control access to your channel.

", "smithy.api#http": { "method": "PUT", @@ -6603,6 +7146,7 @@ "Policy": { "target": "com.amazonaws.mediatailor#__string", "traits": { + "aws.api#data": "permissions", "smithy.api#documentation": "

Adds an IAM role that determines the permissions of your channel.

", "smithy.api#required": {} } @@ -6622,6 +7166,10 @@ "target": "com.amazonaws.mediatailor#PutFunctionResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], "smithy.api#documentation": "

Creates or updates a function. A function defines reusable logic that MediaTailor executes at lifecycle hooks during ad insertion. For more information about functions, see Working with functions in the MediaTailor User Guide.

", "smithy.api#http": { "method": "PUT", @@ -6667,6 +7215,12 @@ "smithy.api#documentation": "

The configuration for a CUSTOM_OUTPUT function. Specifies the runtime and output expressions. Required when FunctionType is CUSTOM_OUTPUT.

" } }, + "ConcurrentExecutorConfiguration": { + "target": "com.amazonaws.mediatailor#ConcurrentExecutorConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for a CONCURRENT_EXECUTOR function. Specifies the list of child functions to run in parallel, the maximum concurrency, an optional output block, and a timeout. Required when FunctionType is CONCURRENT_EXECUTOR.

" + } + }, "SequentialExecutorConfiguration": { "target": "com.amazonaws.mediatailor#SequentialExecutorConfiguration", "traits": { @@ -6726,6 +7280,12 @@ "smithy.api#documentation": "

The configuration for a CUSTOM_OUTPUT function.

" } }, + "ConcurrentExecutorConfiguration": { + "target": "com.amazonaws.mediatailor#ConcurrentExecutorConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for a CONCURRENT_EXECUTOR function.

" + } + }, "SequentialExecutorConfiguration": { "target": "com.amazonaws.mediatailor#SequentialExecutorConfiguration", "traits": { @@ -6760,6 +7320,27 @@ "target": "com.amazonaws.mediatailor#PutPlaybackConfigurationResponse" }, "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to add a new configuration", + "relativeDocumentation": "playbackconfiguration.html", + "createsResources": [ + "playbackConfiguration" + ], + "resources": { + "required": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ] + } + } + } + }, "smithy.api#documentation": "

Creates a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor.

", "smithy.api#http": { "method": "PUT", @@ -7697,9 +8278,19 @@ "aws.api#arn": { "template": "sourceLocation/{SourceLocationName}" }, + "aws.api#taggable": {}, "aws.cloudformation#cfnResource": { "name": "SourceLocation" }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "sourceLocation", + "relativeDocumentation": "sourcelocation-sourcelocationname.html" + }, + "smithy.api#documentation": "Represents an origin server where source content is stored", "smithy.api#noReplace": {}, "smithy.api#unstable": {} } @@ -7745,6 +8336,19 @@ "target": "com.amazonaws.mediatailor#StartChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to start the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-start.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Starts a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "PUT", @@ -7780,6 +8384,19 @@ "target": "com.amazonaws.mediatailor#StopChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to stop the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-stop.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Stops a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "PUT", @@ -7846,6 +8463,60 @@ } ], "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to add tags to the specified playback configuration resource", + "relativeDocumentation": "tags-resourcearn.html", + "resources": { + "optional": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "channel": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "sourceLocation": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "vodSource": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "liveSource": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "function": { + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The resource to tag. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources.

", "smithy.api#http": { "method": "POST", @@ -8043,6 +8714,53 @@ } ], "traits": { + "aws.iam#conditionKeys": [ + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to remove tags from the specified playback configuration resource", + "relativeDocumentation": "tags-resourcearn.html", + "resources": { + "optional": { + "playbackConfiguration": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "channel": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "sourceLocation": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "vodSource": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "liveSource": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + }, + "function": { + "conditionKeys": [ + "aws:TagKeys", + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

The resource to untag.

", "smithy.api#http": { "method": "DELETE", @@ -8082,6 +8800,19 @@ "target": "com.amazonaws.mediatailor#UpdateChannelResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the channel with the specified channel name", + "relativeDocumentation": "channel-channelname.html", + "resources": { + "required": { + "channel": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Updates a channel. For information about MediaTailor channels, see Working with channels in the MediaTailor User Guide.

", "smithy.api#http": { "method": "PUT", @@ -8222,6 +8953,19 @@ "target": "com.amazonaws.mediatailor#UpdateLiveSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the live source with the specified live source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-livesource-livesourcename.html", + "resources": { + "required": { + "liveSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Updates a live source's configuration.

", "smithy.api#http": { "method": "PUT", @@ -8316,6 +9060,15 @@ "target": "com.amazonaws.mediatailor#UpdateProgramResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the program with the specified program name on the channel with the specified channel name", + "relativeDocumentation": "channel-channelname-program-programname.html", + "resources": { + "required": { + "program": {} + } + } + }, "smithy.api#documentation": "

Updates a program within a channel.

", "smithy.api#http": { "method": "PUT", @@ -8498,6 +9251,19 @@ "target": "com.amazonaws.mediatailor#UpdateSourceLocationResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname.html", + "resources": { + "required": { + "sourceLocation": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Updates a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the MediaTailor User Guide.

", "smithy.api#http": { "method": "PUT", @@ -8614,6 +9380,19 @@ "target": "com.amazonaws.mediatailor#UpdateVodSourceResponse" }, "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the VOD source with the specified VOD source name on the source location with the specified source location name", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsource-vodsourcename.html", + "resources": { + "required": { + "vodSource": { + "conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ] + } + } + } + }, "smithy.api#documentation": "

Updates a VOD source's configuration.

", "smithy.api#http": { "method": "PUT", @@ -8788,9 +9567,19 @@ "aws.api#arn": { "template": "vodSource/{SourceLocationName}/{VodSourceName}" }, + "aws.api#taggable": {}, "aws.cloudformation#cfnResource": { "name": "VodSource" }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "vodSource", + "relativeDocumentation": "sourcelocation-sourcelocationname-vodsource-vodsourcename.html" + }, + "smithy.api#documentation": "Represents a single piece of content that can be added to a source location", "smithy.api#noReplace": {}, "smithy.api#unstable": {} } diff --git a/codegen/sdk/aws-models/s3.json b/codegen/sdk/aws-models/s3.json index f9719a0d850..30665e6c9c3 100644 --- a/codegen/sdk/aws-models/s3.json +++ b/codegen/sdk/aws-models/s3.json @@ -15641,176 +15641,148 @@ ] }, "smithy.rules#endpointTests": { - "version": "1.0", "testCases": [ { "documentation": "region is not a valid DNS-suffix", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, "params": { "Region": "a b", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Invalid region: region was not a valid DNS name." } }, { "documentation": "Invalid access point ARN: Not S3", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint" + "expect": { + "error": "Invalid ARN: The ARN was not for the S3 service, found: not-s3" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: The ARN was not for the S3 service, found: not-s3" - } - }, - { - "documentation": "Invalid access point ARN: invalid resource", "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data" + "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Invalid access point ARN: invalid resource", + "expect": { + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." - } - }, - { - "documentation": "Invalid access point ARN: invalid no ap name", "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:" + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data" + } + }, + { + "documentation": "Invalid access point ARN: invalid no ap name", + "expect": { + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" - } - }, - { - "documentation": "Invalid access point ARN: AccountId is invalid", "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname" + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:" + } + }, + { + "documentation": "Invalid access point ARN: AccountId is invalid", + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123456_789012`" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123456_789012`" - } - }, - { - "documentation": "Invalid access point ARN: access point name is invalid", "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name" + "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname" + } + }, + { + "documentation": "Invalid access point ARN: access point name is invalid", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `ap_name`" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `ap_name`" - } - }, - { - "documentation": "Access points (disable access points explicitly false)", "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} - } - ], + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name" + } + }, + { + "documentation": "Access points (disable access points explicitly false)", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -15820,39 +15792,74 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" } } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" } }, { "documentation": "Access points: partition does not support FIPS", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], "params": { "Region": "cn-north-1", "UseFIPS": true, "UseDualStack": false, "Accelerate": false, "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Bucket region is invalid", + "expect": { + "error": "Invalid region in ARN: `us-west -2` (invalid DNS name)" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Partition does not support FIPS" - } - }, - { - "documentation": "Bucket region is invalid", "params": { "Region": "us-east-1", "UseFIPS": false, @@ -15860,26 +15867,24 @@ "Accelerate": false, "DisableAccessPoints": false, "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Access points when Access points explicitly disabled (used for CreateBucket)", + "expect": { + "error": "Access points are not supported for this operation" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } } ], - "expect": { - "error": "Invalid region in ARN: `us-west -2` (invalid DNS name)" - } - }, - { - "documentation": "Access points when Access points explicitly disabled (used for CreateBucket)", "params": { "Region": "us-east-1", "UseFIPS": false, @@ -15887,25 +15892,25 @@ "Accelerate": false, "DisableAccessPoints": true, "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "missing arn type", + "expect": { + "error": "Invalid ARN: `arn:aws:s3:us-west-2:123456789012:` was not a valid ARN" }, "operationInputs": [ { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:", + "Key": "key" + } } ], - "expect": { - "error": "Access points are not supported for this operation" - } - }, - { - "documentation": "missing arn type", "params": { "Region": "us-east-1", "UseFIPS": false, @@ -15913,26 +15918,27 @@ "Accelerate": false, "DisableAccessPoints": true, "Bucket": "arn:aws:s3:us-west-2:123456789012:" + } + }, + { + "documentation": "SDK::Host + access point + Dualstack is an error", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://beta.example.com" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:", + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid ARN: `arn:aws:s3:us-west-2:123456789012:` was not a valid ARN" - } - }, - { - "documentation": "SDK::Host + access point + Dualstack is an error", "params": { "Accelerate": false, "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", @@ -15941,54 +15947,12 @@ "Region": "cn-north-1", "UseDualStack": true, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://beta.example.com" - }, - "clientParams": {} - } - ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "Access point ARN with FIPS & Dualstack", - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -15998,37 +15962,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Access point ARN with Dualstack", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Access point ARN with Dualstack", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -16038,36 +16002,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "vanilla MRAP", - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": false, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "vanilla MRAP", "expect": { "endpoint": { - "url": "https://mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com", "properties": { "authSchemes": [ { @@ -16079,12 +16043,49 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" } } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": false, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } }, { "documentation": "MRAP does not support FIPS", + "expect": { + "error": "S3 MRAP does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], "params": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Region": "us-east-1", @@ -16092,27 +16093,26 @@ "UseFIPS": true, "UseDualStack": false, "Accelerate": false + } + }, + { + "documentation": "MRAP does not support DualStack", + "expect": { + "error": "S3 MRAP does not support dual-stack" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "S3 MRAP does not support FIPS" - } - }, - { - "documentation": "MRAP does not support DualStack", "params": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Region": "us-east-1", @@ -16120,27 +16120,26 @@ "UseFIPS": false, "UseDualStack": true, "Accelerate": false + } + }, + { + "documentation": "MRAP does not support S3 Accelerate", + "expect": { + "error": "S3 MRAP does not support S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "S3 MRAP does not support dual-stack" - } - }, - { - "documentation": "MRAP does not support S3 Accelerate", "params": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Region": "us-east-1", @@ -16148,27 +16147,26 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": true + } + }, + { + "documentation": "MRAP explicitly disabled", + "expect": { + "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::DisableMultiRegionAccessPoints": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "S3 MRAP does not support S3 Accelerate" - } - }, - { - "documentation": "MRAP explicitly disabled", "params": { "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Region": "us-east-1", @@ -16176,53 +16174,12 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::DisableMultiRegionAccessPoints": true - }, - "clientParams": {} - } - ], - "expect": { - "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled." } }, { "documentation": "Dual-stack endpoint with path-style forced", - "params": { - "Bucket": "bucketname", - "Region": "us-west-2", - "ForcePathStyle": true, - "UseFIPS": false, - "Accelerate": false, - "UseDualStack": true - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucketname", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucketname", "properties": { "authSchemes": [ { @@ -16232,43 +16189,81 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucketname" } - } - }, - { - "documentation": "Dual-stack endpoint + SDK::Host is error", + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } + } + ], "params": { "Bucket": "bucketname", "Region": "us-west-2", "ForcePathStyle": true, "UseFIPS": false, "Accelerate": false, - "UseDualStack": true, - "Endpoint": "https://abc.com" + "UseDualStack": true + } + }, + { + "documentation": "Dual-stack endpoint + SDK::Host is error", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucketname", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseDualStack": true, "SDK::Endpoint": "https://abc.com", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } } ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." + "params": { + "Bucket": "bucketname", + "Region": "us-west-2", + "ForcePathStyle": true, + "UseFIPS": false, + "Accelerate": false, + "UseDualStack": true, + "Endpoint": "https://abc.com" } }, { "documentation": "path style + ARN bucket", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], "params": { "Accelerate": false, "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", @@ -16276,51 +16271,78 @@ "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "implicit path style bucket + dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com/99_ab" + } }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true + "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "99_ab", + "Key": "key" + } } ], - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - } - }, - { - "documentation": "implicit path style bucket + dualstack", "params": { "Accelerate": false, "Bucket": "99_ab", "Region": "us-west-2", "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "implicit path style bucket + dualstack", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "http://abc.com" + }, "operationName": "GetObject", "operationParams": { "Bucket": "99_ab", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false, + "Endpoint": "http://abc.com" + } + }, + { + "documentation": "don't allow URL injections in the bucket", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-west-2.amazonaws.com/99_ab", "properties": { "authSchemes": [ { @@ -16330,64 +16352,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/example.com%23" } - } - }, - { - "documentation": "implicit path style bucket + dualstack", - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false, - "Endpoint": "http://abc.com" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "99_ab", + "Bucket": "example.com#", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "http://abc.com" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - } - }, - { - "documentation": "don't allow URL injections in the bucket", "params": { "Bucket": "example.com#", "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false, "Accelerate": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "example.com#", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "URI encode bucket names in the path", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/example.com%23", "properties": { "authSchemes": [ { @@ -16397,50 +16389,47 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/bucket%20name" } - } - }, - { - "documentation": "URI encode bucket names in the path", - "params": { - "Bucket": "bucket name", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "bucket name", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false + } + }, + { + "documentation": "scheme is respected", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/bucket%20name", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "af-south-1", "disableDoubleEncoding": true } ] - } + }, + "url": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" } - } - }, - { - "documentation": "scheme is respected", + }, "params": { "Accelerate": false, "Bucket": "99_ab", @@ -16448,10 +16437,12 @@ "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false - }, + } + }, + { + "documentation": "scheme is respected (virtual addressing)", "expect": { "endpoint": { - "url": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab", "properties": { "authSchemes": [ { @@ -16461,12 +16452,10 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://bucketname.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo" } - } - }, - { - "documentation": "scheme is respected (virtual addressing)", + }, "params": { "Accelerate": false, "Bucket": "bucketname", @@ -16474,10 +16463,12 @@ "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false - }, + } + }, + { + "documentation": "path style + implicit private link", "expect": { "endpoint": { - "url": "http://bucketname.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo", "properties": { "authSchemes": [ { @@ -16487,52 +16478,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" } - } - }, - { - "documentation": "path style + implicit private link", - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "99_ab", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "99_ab", + "Key": "key" + } } ], - "expect": { - "endpoint": { - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - } - } + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "invalid Endpoint override", + "expect": { + "error": "Custom endpoint `abcde://nota#url` was not a valid URI" + }, "params": { "Accelerate": false, "Bucket": "bucketname", @@ -16540,13 +16516,38 @@ "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false - }, - "expect": { - "error": "Custom endpoint `abcde://nota#url` was not a valid URI" } }, { "documentation": "using an IPv4 address forces path style", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123.123.0.1/bucketname" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://123.123.0.1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } + } + ], "params": { "Accelerate": false, "Bucket": "bucketname", @@ -16554,68 +16555,65 @@ "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucketname", + "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://123.123.0.1" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion unset", "expect": { "endpoint": { - "url": "https://123.123.0.1/bucketname", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "af-south-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion=false", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - } - }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion unset", "params": { "Accelerate": false, "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", @@ -16623,23 +16621,12 @@ "Region": "us-east-1", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion=true", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -16649,73 +16636,71 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion=true", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "UseArnRegion": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::UseArnRegion": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "subdomains are not allowed in virtual buckets", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3.us-east-1.amazonaws.com/bucket.name" } - } - }, - { - "documentation": "subdomains are not allowed in virtual buckets", - "params": { - "Bucket": "bucket.name", - "Region": "us-east-1" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket.name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "bucket.name", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with 3 characters are allowed in virtual buckets", "expect": { "endpoint": { - "url": "https://s3.us-east-1.amazonaws.com/bucket.name", "properties": { "authSchemes": [ { @@ -16725,32 +16710,31 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://aaa.s3.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "bucket names with 3 characters are allowed in virtual buckets", - "params": { - "Bucket": "aaa", - "Region": "us-east-1" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "aaa", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "aaa", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with fewer than 3 characters are not allowed in virtual host", "expect": { "endpoint": { - "url": "https://aaa.s3.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -16760,32 +16744,31 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3.us-east-1.amazonaws.com/aa" } - } - }, - { - "documentation": "bucket names with fewer than 3 characters are not allowed in virtual host", - "params": { - "Bucket": "aa", - "Region": "us-east-1" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "aa", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "aa", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with uppercase characters are not allowed in virtual host", "expect": { "endpoint": { - "url": "https://s3.us-east-1.amazonaws.com/aa", "properties": { "authSchemes": [ { @@ -16795,32 +16778,31 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3.us-east-1.amazonaws.com/BucketName" } - } - }, - { - "documentation": "bucket names with uppercase characters are not allowed in virtual host", - "params": { - "Bucket": "BucketName", - "Region": "us-east-1" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "BucketName", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "BucketName", + "Region": "us-east-1" + } + }, + { + "documentation": "subdomains are allowed in virtual buckets on http endpoints", "expect": { "endpoint": { - "url": "https://s3.us-east-1.amazonaws.com/BucketName", "properties": { "authSchemes": [ { @@ -16830,188 +16812,179 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "http://bucket.name.example.com" } - } - }, - { - "documentation": "subdomains are allowed in virtual buckets on http endpoints", - "params": { - "Bucket": "bucket.name", - "Region": "us-east-1", - "Endpoint": "http://example.com" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket.name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "SDK::Endpoint": "http://example.com" }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "http://bucket.name.example.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket.name", + "Key": "key" } } + ], + "params": { + "Bucket": "bucket.name", + "Region": "us-east-1", + "Endpoint": "http://example.com" } }, { "documentation": "no region set", - "params": { - "Bucket": "bucket-name" - }, "expect": { "error": "A region must be set when sending requests to S3." + }, + "params": { + "Bucket": "bucket-name" } }, { "documentation": "UseGlobalEndpoints=true, region=us-east-1 uses the global endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com" + } }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-west-2 uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-west-2 uses the regional endpoint", - "params": { - "Region": "us-west-2", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-west-2", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=cn-north-1 uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "cn-north-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=cn-north-1 uses the regional endpoint", - "params": { - "Region": "cn-north-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "cn-north-1", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "cn-north-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, fips=true uses the regional endpoint with fips", "expect": { "endpoint": { - "url": "https://s3.cn-north-1.amazonaws.com.cn", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "cn-north-1", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, fips=true uses the regional endpoint with fips", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack=true uses the regional endpoint with dualstack", "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17021,34 +16994,32 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack=true uses the regional endpoint with dualstack", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack and fips uses the regional endpoint with fips/dualstack", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17058,35 +17029,33 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack and fips uses the regional endpoint with fips/dualstack", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true, "AWS::UseDualStack": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1 with custom endpoint, uses custom", "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17096,110 +17065,104 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://example.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1 with custom endpoint, uses custom", - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "SDK::Endpoint": "https://example.com", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-west-2 with custom endpoint, uses custom", "expect": { "endpoint": { - "url": "https://example.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://example.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-west-2 with custom endpoint, uses custom", - "params": { - "Region": "us-west-2", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://example.com", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-west-2", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1 with accelerate on non bucket case uses the global endpoint and ignores accelerate", "expect": { "endpoint": { - "url": "https://example.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com" } - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1 with accelerate on non bucket case uses the global endpoint and ignores accelerate", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::Accelerate": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "aws-global region uses the global endpoint", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17209,31 +17172,29 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com" } - } - }, - { - "documentation": "aws-global region uses the global endpoint", - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global" }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with fips uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17243,32 +17204,30 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "aws-global region with fips uses the regional endpoint", - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with dualstack uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17278,32 +17237,30 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "aws-global region with dualstack uses the regional endpoint", - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with fips and dualstack uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17313,33 +17270,31 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "aws-global region with fips and dualstack uses the regional endpoint", - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with accelerate on non-bucket case, uses global endpoint and ignores accelerate", "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17349,32 +17304,30 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com" } - } - }, - { - "documentation": "aws-global region with accelerate on non-bucket case, uses global endpoint and ignores accelerate", - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global", "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "aws-global region with custom endpoint, uses custom", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17384,34 +17337,32 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://example.com" } - } - }, - { - "documentation": "aws-global region with custom endpoint, uses custom", - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": false, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "ListBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "aws-global", "SDK::Endpoint": "https://example.com" }, - "clientParams": {} + "operationName": "ListBuckets" } ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": false, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region uses the global endpoint", "expect": { "endpoint": { - "url": "https://example.com", "properties": { "authSchemes": [ { @@ -17421,35 +17372,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region uses the global endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "aws-global" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "aws-global" - }, - "clientParams": {} + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with Prefix, and Key uses the global endpoint. Prefix and Key parameters should not be used in endpoint evaluation.", "expect": { "endpoint": { - "url": "https://bucket-name.s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17459,37 +17409,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with Prefix, and Key uses the global endpoint. Prefix and Key parameters should not be used in endpoint evaluation.", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Prefix": "prefix", - "Key": "key" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "aws-global" + }, "operationName": "ListObjects", "operationParams": { "Bucket": "bucket-name", "Prefix": "prefix" - }, - "builtInParams": { - "AWS::Region": "aws-global" - }, - "clientParams": {} + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Prefix": "prefix", + "Key": "key" + } + }, + { + "documentation": "virtual addressing, aws-global region with Copy Source, and Key uses the global endpoint. Copy Source and Key parameters should not be used in endpoint evaluation.", "expect": { "endpoint": { - "url": "https://bucket-name.s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17499,12 +17448,10 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with Copy Source, and Key uses the global endpoint. Copy Source and Key parameters should not be used in endpoint evaluation.", + }, "params": { "Region": "aws-global", "Bucket": "bucket-name", @@ -17513,10 +17460,12 @@ "Accelerate": false, "CopySource": "/copy/source", "Key": "key" - }, + } + }, + { + "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3.amazonaws.com", "properties": { "authSchemes": [ { @@ -17526,36 +17475,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with dualstack uses the regional dualstack endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17565,36 +17513,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with dualstack uses the regional dualstack endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with fips/dualstack uses the regional fips/dualstack endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17604,37 +17551,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with fips/dualstack uses the regional fips/dualstack endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with accelerate uses the global accelerate endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17644,36 +17590,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with accelerate uses the global accelerate endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "virtual addressing, aws-global region with custom endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.amazonaws.com", "properties": { "authSchemes": [ { @@ -17683,37 +17628,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.example.com" } - } - }, - { - "documentation": "virtual addressing, aws-global region with custom endpoint", - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "SDK::Endpoint": "https://example.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region uses the global endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.example.com", "properties": { "authSchemes": [ { @@ -17723,118 +17667,115 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region uses the global endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-west-2 region uses the regional endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-west-2 region uses the regional endpoint", - "params": { - "Region": "us-west-2", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and fips uses the regional fips endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and fips uses the regional fips endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and dualstack uses the regional dualstack endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -17844,39 +17785,38 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and dualstack uses the regional dualstack endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "endpoint": { - "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com", - "properties": { + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and accelerate uses the global accelerate endpoint", + "expect": { + "endpoint": { + "properties": { "authSchemes": [ { "name": "sigv4", @@ -17885,38 +17825,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and accelerate uses the global accelerate endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::Accelerate": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region with custom endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.amazonaws.com", "properties": { "authSchemes": [ { @@ -17926,39 +17865,38 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.example.com" } - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region with custom endpoint", - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "SDK::Endpoint": "https://example.com", "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region uses the global endpoint", "expect": { "endpoint": { - "url": "https://bucket-name.example.com", "properties": { "authSchemes": [ { @@ -17968,52 +17906,49 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, aws-global region uses the global endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region with fips is invalid", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { - "name": "sigv4", "signingName": "s3", "signingRegion": "us-east-1", - "disableDoubleEncoding": true + "disableDoubleEncoding": true, + "name": "sigv4" } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, aws-global region with fips is invalid", + }, "params": { "Region": "aws-global", "Bucket": "bucket-name", @@ -18021,51 +17956,52 @@ "UseFIPS": true, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "ForcePathStyle, aws-global region with dualstack uses regional dualstack endpoint", "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { + "name": "sigv4", "signingName": "s3", "signingRegion": "us-east-1", - "disableDoubleEncoding": true, - "name": "sigv4" + "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, aws-global region with dualstack uses regional dualstack endpoint", - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::UseDualStack": true, "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region custom endpoint uses the custom endpoint", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -18075,39 +18011,38 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://example.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, aws-global region custom endpoint uses the custom endpoint", - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "SDK::Endpoint": "https://example.com", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region uses the global endpoint", "expect": { "endpoint": { - "url": "https://example.com/bucket-name", "properties": { "authSchemes": [ { @@ -18117,168 +18052,121 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region uses the global endpoint", - "params": { - "Region": "us-east-1", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::ForcePathStyle": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "bucket-name", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-west-2 region uses the regional endpoint", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-west-2 region uses the regional endpoint", - "params": { - "Region": "us-west-2", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::ForcePathStyle": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "bucket-name", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region, dualstack uses the regional dualstack endpoint", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region, dualstack uses the regional dualstack endpoint", - "params": { - "Region": "us-east-1", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true, "AWS::S3::ForcePathStyle": true, "AWS::S3::UseGlobalEndpoint": true }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region custom endpoint uses the custom endpoint", + ], "params": { "Region": "us-east-1", "Bucket": "bucket-name", - "Endpoint": "https://example.com", "UseGlobalEndpoint": true, "ForcePathStyle": true, "UseFIPS": false, - "UseDualStack": false, + "UseDualStack": true, "Accelerate": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://example.com", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region custom endpoint uses the custom endpoint", "expect": { "endpoint": { - "url": "https://example.com/bucket-name", "properties": { "authSchemes": [ { @@ -18288,37 +18176,40 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://example.com/bucket-name" } - } - }, - { - "documentation": "ARN with aws-global region and UseArnRegion uses the regional endpoint", - "params": { - "Region": "aws-global", - "UseArnRegion": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://example.com", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::UseGlobalEndpoint": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": true - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "bucket-name", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ARN with aws-global region and UseArnRegion uses the regional endpoint", "expect": { "endpoint": { - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -18336,57 +18227,58 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "cross partition MRAP ARN is an error", - "params": { - "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-west-1" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Client was configured for partition `aws` but bucket referred to partition `aws-cn`" + "params": { + "Region": "aws-global", + "UseArnRegion": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" } }, { - "documentation": "Endpoint override, accesspoint with HTTP, port", - "params": { - "Endpoint": "http://beta.example.com:1234", - "Region": "us-west-2", - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + "documentation": "cross partition MRAP ARN is an error", + "expect": { + "error": "Client was configured for partition `aws` but bucket referred to partition `aws-cn`" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-1" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "http://beta.example.com:1234" - }, - "clientParams": {} + } } ], + "params": { + "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-west-1" + } + }, + { + "documentation": "Endpoint override, accesspoint with HTTP, port", "expect": { "endpoint": { - "url": "http://myendpoint-123456789012.beta.example.com:1234", "properties": { "authSchemes": [ { @@ -18396,23 +18288,33 @@ "disableDoubleEncoding": true } ] + }, + "url": "http://myendpoint-123456789012.beta.example.com:1234" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "http://beta.example.com:1234" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" } } + ], + "params": { + "Endpoint": "http://beta.example.com:1234", + "Region": "us-west-2", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" } }, { "documentation": "Endpoint override, accesspoint with http, path, query, and port", - "params": { - "Region": "us-west-2", - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - }, "expect": { "endpoint": { - "url": "http://myendpoint-123456789012.beta.example.com:1234/path", "properties": { "authSchemes": [ { @@ -18422,57 +18324,59 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://myendpoint-123456789012.beta.example.com:1234/path" } + }, + "params": { + "Region": "us-west-2", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } }, { "documentation": "non-bucket endpoint override with FIPS = error", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-west-2", "Endpoint": "http://beta.example.com:1234/path", "UseFIPS": true, "UseDualStack": false - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "FIPS + dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "us-west-2", "Endpoint": "http://beta.example.com:1234/path", "UseFIPS": true, "UseDualStack": true - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "us-west-2", "Endpoint": "http://beta.example.com:1234/path", "UseFIPS": false, "UseDualStack": true - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "custom endpoint without FIPS/dualstack", - "params": { - "Region": "us-west-2", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { - "url": "http://beta.example.com:1234/path", "properties": { "authSchemes": [ { @@ -18482,31 +18386,32 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://beta.example.com:1234/path" } + }, + "params": { + "Region": "us-west-2", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "s3 object lambda with access points disabled", - "params": { + "expect": { + "error": "Access points are not supported for this operation" + }, + "params": { "Region": "us-west-2", "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:myendpoint", "DisableAccessPoints": true - }, - "expect": { - "error": "Access points are not supported for this operation" } }, { "documentation": "non bucket + FIPS", - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": false - }, "expect": { "endpoint": { - "url": "https://s3-fips.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -18516,20 +18421,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.us-west-2.amazonaws.com" } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false } }, { "documentation": "standard non bucket endpoint", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false - }, "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -18539,20 +18444,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com" } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { "documentation": "non bucket endpoint with FIPS + Dualstack", - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": true - }, "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -18562,20 +18467,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.dualstack.us-west-2.amazonaws.com" } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": true } }, { "documentation": "non bucket endpoint with dualstack", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true - }, "expect": { "endpoint": { - "url": "https://s3.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -18585,23 +18490,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com" } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true } }, { "documentation": "use global endpoint + IP address endpoint override", - "params": { - "Region": "us-east-1", - "Bucket": "bucket", - "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "http://127.0.0.1", - "UseGlobalEndpoint": true - }, "expect": { "endpoint": { - "url": "http://127.0.0.1/bucket", "properties": { "authSchemes": [ { @@ -18611,22 +18513,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "http://127.0.0.1/bucket" } - } - }, - { - "documentation": "non-dns endpoint + global endpoint", + }, "params": { "Region": "us-east-1", - "Bucket": "bucket!", + "Bucket": "bucket", "UseFIPS": false, "UseDualStack": false, + "Endpoint": "http://127.0.0.1", "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "non-dns endpoint + global endpoint", "expect": { "endpoint": { - "url": "https://s3.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18636,23 +18539,22 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "endpoint override + use global endpoint", + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", "UseFIPS": false, "UseDualStack": false, - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - }, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "endpoint override + use global endpoint", "expect": { "endpoint": { - "url": "http://foo.com/bucket%21", "properties": { "authSchemes": [ { @@ -18662,21 +18564,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "http://foo.com/bucket%21" } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": false, + "UseDualStack": false, + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" } }, { "documentation": "FIPS + dualstack + non-bucket endpoint", - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": true, - "UseDualStack": true - }, "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18686,22 +18590,21 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "FIPS + dualstack + non-DNS endpoint", + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", - "ForcePathStyle": true, "UseFIPS": true, "UseDualStack": true - }, + } + }, + { + "documentation": "FIPS + dualstack + non-DNS endpoint", "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18711,12 +18614,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": true } }, { "documentation": "endpoint override + FIPS + dualstack (BUG)", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18724,37 +18638,25 @@ "UseFIPS": true, "UseDualStack": false, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "endpoint override + non-dns bucket + FIPS (BUG)", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", "UseFIPS": true, "UseDualStack": false, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "FIPS + bucket endpoint + force path style", - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": false, - "UseGlobalEndpoint": true - }, "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18764,23 +18666,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "bucket + FIPS + force path style", + }, "params": { "Region": "us-east-1", - "Bucket": "bucket", + "Bucket": "bucket!", "ForcePathStyle": true, "UseFIPS": true, - "UseDualStack": true, + "UseDualStack": false, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "bucket + FIPS + force path style", "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket", "properties": { "authSchemes": [ { @@ -18790,22 +18692,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket" } - } - }, - { - "documentation": "FIPS + dualstack + use global endpoint", + }, "params": { "Region": "us-east-1", "Bucket": "bucket", + "ForcePathStyle": true, "UseFIPS": true, "UseDualStack": true, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "FIPS + dualstack + use global endpoint", "expect": { "endpoint": { - "url": "https://bucket.s3-fips.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -18815,12 +18718,23 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://bucket.s3-fips.dualstack.us-east-1.amazonaws.com" } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket", + "UseFIPS": true, + "UseDualStack": true, + "UseGlobalEndpoint": true } }, { "documentation": "URI encoded bucket + use global endpoint", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18828,13 +18742,25 @@ "UseDualStack": false, "UseGlobalEndpoint": true, "Endpoint": "https://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "FIPS + path based endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18842,10 +18768,12 @@ "UseDualStack": false, "Accelerate": false, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "accelerate + dualstack + global endpoint", "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18855,12 +18783,10 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://bucket.s3-accelerate.dualstack.amazonaws.com" } - } - }, - { - "documentation": "accelerate + dualstack + global endpoint", + }, "params": { "Region": "us-east-1", "Bucket": "bucket", @@ -18868,10 +18794,12 @@ "UseDualStack": true, "Accelerate": true, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "dualstack + global endpoint + non URI safe bucket", "expect": { "endpoint": { - "url": "https://bucket.s3-accelerate.dualstack.amazonaws.com", "properties": { "authSchemes": [ { @@ -18881,12 +18809,10 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "dualstack + global endpoint + non URI safe bucket", + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18894,10 +18820,12 @@ "UseDualStack": true, "UseFIPS": false, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "FIPS + uri encoded bucket", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18907,12 +18835,25 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "Accelerate": false, + "UseDualStack": false, + "UseFIPS": true, + "UseGlobalEndpoint": true } }, { - "documentation": "FIPS + uri encoded bucket", + "documentation": "endpoint override + non-uri safe endpoint + force path style", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18920,11 +18861,14 @@ "Accelerate": false, "UseDualStack": false, "UseFIPS": true, + "Endpoint": "http://foo.com", "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "FIPS + Dualstack + global endpoint + non-dns bucket", "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -18934,28 +18878,10 @@ "signingRegion": "us-east-1" } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "endpoint override + non-uri safe endpoint + force path style", - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "Accelerate": false, - "UseDualStack": false, - "UseFIPS": true, - "Endpoint": "http://foo.com", - "UseGlobalEndpoint": true }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - } - }, - { - "documentation": "FIPS + Dualstack + global endpoint + non-dns bucket", "params": { "Region": "us-east-1", "Bucket": "bucket!", @@ -18963,86 +18889,63 @@ "UseDualStack": true, "UseFIPS": true, "UseGlobalEndpoint": true - }, - "expect": { - "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - } - } } }, { "documentation": "endpoint override + FIPS + dualstack", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "us-east-1", "UseDualStack": true, "UseFIPS": true, "UseGlobalEndpoint": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "non-bucket endpoint override + dualstack + global endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, "UseGlobalEndpoint": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "Endpoint override + UseGlobalEndpoint + us-east-1", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, "UseGlobalEndpoint": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "non-FIPS partition with FIPS set + custom endpoint", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Region": "cn-north-1", "UseFIPS": true, "UseDualStack": false, "UseGlobalEndpoint": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "aws-global signs as us-east-1", - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseFIPS": true, - "Accelerate": false, - "UseDualStack": true - }, "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19052,23 +18955,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseFIPS": true, + "Accelerate": false, + "UseDualStack": true } }, { "documentation": "aws-global signs as us-east-1", - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false, - "Endpoint": "https://foo.com" - }, "expect": { "endpoint": { - "url": "https://bucket.foo.com", "properties": { "authSchemes": [ { @@ -19078,22 +18980,23 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket.foo.com" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false, + "Endpoint": "https://foo.com" } }, { "documentation": "aws-global + dualstack + path-only bucket", - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseDualStack": true, - "UseFIPS": false, - "Accelerate": false - }, "expect": { "endpoint": { - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19103,19 +19006,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseDualStack": true, + "UseFIPS": false, + "Accelerate": false } }, { "documentation": "aws-global + path-only bucket", - "params": { - "Region": "aws-global", - "Bucket": "bucket!" - }, "expect": { "endpoint": { - "url": "https://s3.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19125,12 +19031,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!" } }, { "documentation": "aws-global + fips + custom endpoint", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "aws-global", "Bucket": "bucket!", @@ -19138,24 +19052,12 @@ "UseFIPS": true, "Accelerate": false, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "aws-global, endpoint override & path only-bucket", - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false, - "Endpoint": "http://foo.com" - }, "expect": { "endpoint": { - "url": "http://foo.com/bucket%21", "properties": { "authSchemes": [ { @@ -19165,35 +19067,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://foo.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false, + "Endpoint": "http://foo.com" } }, { "documentation": "aws-global + dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "aws-global", "UseDualStack": true, "UseFIPS": false, "Accelerate": false, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "accelerate, dualstack + aws-global", - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "UseDualStack": true, - "UseFIPS": false, - "Accelerate": true - }, "expect": { "endpoint": { - "url": "https://bucket.s3-accelerate.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -19203,23 +19106,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket.s3-accelerate.dualstack.us-east-1.amazonaws.com" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "UseDualStack": true, + "UseFIPS": false, + "Accelerate": true } }, { "documentation": "FIPS + aws-global + path only bucket. This is not supported by S3 but we allow garbage in garbage out", - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseDualStack": true, - "UseFIPS": true, - "Accelerate": false - }, "expect": { "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19229,44 +19131,47 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseDualStack": true, + "UseFIPS": true, + "Accelerate": false } }, { "documentation": "aws-global + FIPS + endpoint override.", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "aws-global", "UseFIPS": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "force path style, FIPS, aws-global & endpoint override", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, "params": { "Region": "aws-global", "Bucket": "bucket!", "ForcePathStyle": true, "UseFIPS": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" } }, { "documentation": "ip address causes path style to be forced", - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "Endpoint": "http://192.168.1.1" - }, "expect": { "endpoint": { - "url": "http://192.168.1.1/bucket", "properties": { "authSchemes": [ { @@ -19276,32 +19181,32 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://192.168.1.1/bucket" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "Endpoint": "http://192.168.1.1" } }, { "documentation": "endpoint override with aws-global region", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, "params": { "Region": "aws-global", "UseFIPS": true, "UseDualStack": true, "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." } }, { "documentation": "FIPS + path-only (TODO: consider making this an error)", - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseFIPS": true - }, "expect": { "endpoint": { - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19311,167 +19216,190 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseFIPS": true } }, { "documentation": "empty arn type", + "expect": { + "error": "Invalid ARN: No ARN type specified" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:not-s3:us-west-2:123456789012::myendpoint" - }, - "expect": { - "error": "Invalid ARN: No ARN type specified" } }, { "documentation": "path style can't be used with accelerate", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" + }, "params": { "Region": "us-east-2", "Bucket": "bucket!", "Accelerate": true - }, - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" } }, { "documentation": "invalid region", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, "params": { "Region": "us-east-2!", "Bucket": "bucket.subdomain", "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Invalid region: region was not a valid DNS name." } }, { "documentation": "invalid region", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, "params": { "Region": "us-east-2!", "Bucket": "bucket", "Endpoint": "http://foo.com" - }, - "expect": { - "error": "Invalid region: region was not a valid DNS name." } }, { "documentation": "empty arn type", + "expect": { + "error": "Invalid Access Point Name" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3::123456789012:accesspoint:my_endpoint" - }, - "expect": { - "error": "Invalid Access Point Name" } }, { "documentation": "empty arn type", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint`) has `aws-cn`" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint", "UseArnRegion": true - }, - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint`) has `aws-cn`" } }, { "documentation": "invalid arn region", + "expect": { + "error": "Invalid region in ARN: `us-east_2` (invalid DNS name)" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-object-lambda:us-east_2:123456789012:accesspoint:my-endpoint", "UseArnRegion": true - }, - "expect": { - "error": "Invalid region in ARN: `us-east_2` (invalid DNS name)" } }, { "documentation": "invalid ARN outpost", + "expect": { + "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `op_01234567890123456`" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op_01234567890123456/accesspoint/reports", "UseArnRegion": true - }, - "expect": { - "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `op_01234567890123456`" } }, { "documentation": "invalid ARN", + "expect": { + "error": "Invalid ARN: expected an access point name" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/reports" - }, - "expect": { - "error": "Invalid ARN: expected an access point name" } }, { "documentation": "invalid ARN", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456" - }, - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" } }, { "documentation": "invalid outpost type", + "expect": { + "error": "Expected an outpost type `accesspoint`, found not-accesspoint" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" - }, - "expect": { - "error": "Expected an outpost type `accesspoint`, found not-accesspoint" } }, { "documentation": "invalid outpost type", + "expect": { + "error": "Invalid region in ARN: `us-east_1` (invalid DNS name)" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east_1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" - }, - "expect": { - "error": "Invalid region in ARN: `us-east_1` (invalid DNS name)" } }, { "documentation": "invalid outpost type", + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `12345_789012`" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:12345_789012:outpost/op-01234567890123456/not-accesspoint/reports" - }, - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `12345_789012`" } }, { "documentation": "invalid outpost type", + "expect": { + "error": "Invalid ARN: The Outpost Id was not set" + }, "params": { "Region": "us-east-2", "Bucket": "arn:aws:s3-outposts:us-east-1:12345789012:outpost" - }, - "expect": { - "error": "Invalid ARN: The Outpost Id was not set" } }, { "documentation": "use global endpoint virtual addressing", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://bucket.example.com" + } + }, "params": { "Region": "us-east-2", "Bucket": "bucket", "Endpoint": "http://example.com", "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "global endpoint + ip address", "expect": { "endpoint": { - "url": "http://bucket.example.com", "properties": { "authSchemes": [ { @@ -19481,21 +19409,21 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://192.168.0.1/bucket" } - } - }, - { - "documentation": "global endpoint + ip address", + }, "params": { "Region": "us-east-2", "Bucket": "bucket", "Endpoint": "http://192.168.0.1", "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "invalid outpost type", "expect": { "endpoint": { - "url": "http://192.168.0.1/bucket", "properties": { "authSchemes": [ { @@ -19505,20 +19433,20 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-east-2.amazonaws.com/bucket%21" } - } - }, - { - "documentation": "invalid outpost type", + }, "params": { "Region": "us-east-2", "Bucket": "bucket!", "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "invalid outpost type", "expect": { "endpoint": { - "url": "https://s3.us-east-2.amazonaws.com/bucket%21", "properties": { "authSchemes": [ { @@ -19528,21 +19456,21 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket.s3-accelerate.amazonaws.com" } - } - }, - { - "documentation": "invalid outpost type", + }, "params": { "Region": "us-east-2", "Bucket": "bucket", "Accelerate": true, "UseGlobalEndpoint": true - }, + } + }, + { + "documentation": "use global endpoint + custom endpoint", "expect": { "endpoint": { - "url": "https://bucket.s3-accelerate.amazonaws.com", "properties": { "authSchemes": [ { @@ -19552,21 +19480,21 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://foo.com/bucket%21" } - } - }, - { - "documentation": "use global endpoint + custom endpoint", + }, "params": { "Region": "us-east-2", "Bucket": "bucket!", "UseGlobalEndpoint": true, "Endpoint": "http://foo.com" - }, + } + }, + { + "documentation": "use global endpoint, not us-east-1, force path style", "expect": { "endpoint": { - "url": "http://foo.com/bucket%21", "properties": { "authSchemes": [ { @@ -19576,61 +19504,60 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://foo.com/bucket%21" } - } - }, - { - "documentation": "use global endpoint, not us-east-1, force path style", + }, "params": { "Region": "us-east-2", "Bucket": "bucket!", "UseGlobalEndpoint": true, "ForcePathStyle": true, "Endpoint": "http://foo.com" - }, + } + }, + { + "documentation": "vanilla virtual addressing@us-west-2", "expect": { "endpoint": { - "url": "http://foo.com/bucket%21", "properties": { "authSchemes": [ { - "signingRegion": "us-east-2", "name": "sigv4", "signingName": "s3", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "vanilla virtual addressing@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + dualstack@us-west-2", "expect": { "endpoint": { - "url": "https://bucket-name.s3.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -19640,37 +19567,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + dualstack@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate + dualstack@us-west-2", "expect": { "endpoint": { - "url": "https://bucket-name.s3.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -19680,38 +19606,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" } - } - }, - { - "documentation": "accelerate + dualstack@us-west-2", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseDualStack": true, "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate (dualstack=false)@us-west-2", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com", "properties": { "authSchemes": [ { @@ -19721,12 +19646,23 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "accelerate (dualstack=false)@us-west-2", + ], "params": { "Accelerate": true, "Bucket": "bucket-name", @@ -19734,24 +19670,12 @@ "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::Accelerate": true - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "virtual addressing + fips@us-west-2", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.amazonaws.com", "properties": { "authSchemes": [ { @@ -19761,37 +19685,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + fips@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "virtual addressing + dualstack + fips@us-west-2", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -19801,12 +19724,24 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://bucket-name.s3-fips.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "virtual addressing + dualstack + fips@us-west-2", + ], "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -19814,69 +19749,65 @@ "Region": "us-west-2", "UseDualStack": true, "UseFIPS": true + } + }, + { + "documentation": "accelerate + fips = error@us-west-2", + "expect": { + "error": "Accelerate cannot be used with FIPS" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true, - "AWS::UseDualStack": true + "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "vanilla virtual addressing@cn-north-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "us-west-2", + "signingRegion": "cn-north-1", "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.cn-north-1.amazonaws.com.cn" } - } - }, - { - "documentation": "accelerate + fips = error@us-west-2", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Accelerate cannot be used with FIPS" - } - }, - { - "documentation": "vanilla virtual addressing@cn-north-1", "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -19884,23 +19815,12 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "virtual addressing + dualstack@cn-north-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3.cn-north-1.amazonaws.com.cn", "properties": { "authSchemes": [ { @@ -19910,52 +19830,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.dualstack.cn-north-1.amazonaws.com.cn" } - } - }, - { - "documentation": "virtual addressing + dualstack@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", "AWS::UseDualStack": true }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "https://bucket-name.s3.dualstack.cn-north-1.amazonaws.com.cn", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false } }, { "documentation": "accelerate (dualstack=false)@cn-north-1", + "expect": { + "error": "S3 Accelerate cannot be used in this region" + }, "params": { "Accelerate": true, "Bucket": "bucket-name", @@ -19963,13 +19868,13 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": false - }, - "expect": { - "error": "S3 Accelerate cannot be used in this region" } }, { "documentation": "virtual addressing + fips@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -19977,37 +19882,12 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "vanilla virtual addressing@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://bucket-name.s3.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -20017,37 +19897,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + dualstack@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + dualstack@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3.dualstack.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -20057,38 +19935,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3.dualstack.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "accelerate + dualstack@af-south-1", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true, - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate + dualstack@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com", "properties": { "authSchemes": [ { @@ -20098,37 +19974,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" } - } - }, - { - "documentation": "accelerate (dualstack=false)@af-south-1", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", + "AWS::UseDualStack": true, "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate (dualstack=false)@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3-accelerate.amazonaws.com", "properties": { "authSchemes": [ { @@ -20138,37 +20014,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + fips@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + fips@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -20178,38 +20053,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + dualstack + fips@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "virtual addressing + dualstack + fips@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.s3-fips.dualstack.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -20219,66 +20092,65 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.s3-fips.dualstack.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "accelerate + fips = error@af-south-1", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "AWS::UseFIPS": true, - "AWS::S3::Accelerate": true + "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Accelerate cannot be used with FIPS" - } - }, - { - "documentation": "vanilla path style@us-west-2", "params": { "Accelerate": false, "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "accelerate + fips = error@af-south-1", + "expect": { + "error": "Accelerate cannot be used with FIPS" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "vanilla path style@us-west-2", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -20288,37 +20160,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "fips@us-gov-west-2, bucket is not S3-dns-compatible (subdomains)", - "params": { - "Accelerate": false, - "Bucket": "bucket.with.dots", - "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket.with.dots", - "Key": "key" - }, "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true, + "AWS::Region": "us-west-2", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "fips@us-gov-west-2, bucket is not S3-dns-compatible (subdomains)", "expect": { "endpoint": { - "url": "https://s3-fips.us-gov-west-1.amazonaws.com/bucket.with.dots", "properties": { "authSchemes": [ { @@ -20328,67 +20199,64 @@ "name": "sigv4" } ] - } + }, + "url": "https://s3-fips.us-gov-west-1.amazonaws.com/bucket.with.dots" } - } - }, - { - "documentation": "path style + accelerate = error@us-west-2", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "bucket.with.dots", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" + "params": { + "Accelerate": false, + "Bucket": "bucket.with.dots", + "Region": "us-gov-west-1", + "UseDualStack": false, + "UseFIPS": true } }, { - "documentation": "path style + dualstack@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false + "documentation": "path style + accelerate = error@us-west-2", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@us-west-2", "expect": { "endpoint": { - "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -20398,65 +20266,64 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "path style + arn is error@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - } - }, - { - "documentation": "path style + invalid DNS name@us-west-2", "params": { "Accelerate": false, - "Bucket": "99a_b", + "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "us-west-2", - "UseDualStack": false, + "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@us-west-2", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@us-west-2", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/99a_b", "properties": { "authSchemes": [ { @@ -20466,35 +20333,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/99a_b" } - } - }, - { - "documentation": "no path style + invalid DNS name@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "99a_b", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@us-west-2", "expect": { "endpoint": { - "url": "https://s3.us-west-2.amazonaws.com/99a_b", "properties": { "authSchemes": [ { @@ -20504,37 +20372,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.us-west-2.amazonaws.com/99a_b" } - } - }, - { - "documentation": "vanilla path style@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "99a_b", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla path style@cn-north-1", "expect": { "endpoint": { - "url": "https://s3.cn-north-1.amazonaws.com.cn/bucket-name", "properties": { "authSchemes": [ { @@ -20544,96 +20409,92 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn/bucket-name" } - } - }, - { - "documentation": "path style + fips@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true, "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Partition does not support FIPS" - } - }, - { - "documentation": "path style + accelerate = error@cn-north-1", "params": { - "Accelerate": true, + "Accelerate": false, "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "path style + fips@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - } - }, - { - "documentation": "path style + dualstack@cn-north-1", "params": { "Accelerate": false, "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "path style + accelerate = error@cn-north-1", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@cn-north-1", "expect": { "endpoint": { - "url": "https://s3.dualstack.cn-north-1.amazonaws.com.cn/bucket-name", "properties": { "authSchemes": [ { @@ -20643,65 +20504,64 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.dualstack.cn-north-1.amazonaws.com.cn/bucket-name" } - } - }, - { - "documentation": "path style + arn is error@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true, "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - } - }, - { - "documentation": "path style + invalid DNS name@cn-north-1", "params": { "Accelerate": false, - "Bucket": "99a_b", + "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "cn-north-1", - "UseDualStack": false, + "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@cn-north-1", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@cn-north-1", "expect": { "endpoint": { - "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b", "properties": { "authSchemes": [ { @@ -20711,35 +20571,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" } - } - }, - { - "documentation": "no path style + invalid DNS name@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "99a_b", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@cn-north-1", "expect": { "endpoint": { - "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b", "properties": { "authSchemes": [ { @@ -20749,37 +20610,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" } - } - }, - { - "documentation": "vanilla path style@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "99a_b", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla path style@af-south-1", "expect": { "endpoint": { - "url": "https://s3.af-south-1.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -20789,38 +20647,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.af-south-1.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "path style + fips@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + fips@af-south-1", "expect": { "endpoint": { - "url": "https://s3-fips.af-south-1.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -20830,67 +20686,65 @@ "name": "sigv4" } ] - } + }, + "url": "https://s3-fips.af-south-1.amazonaws.com/bucket-name" } - } - }, - { - "documentation": "path style + accelerate = error@af-south-1", - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - } - }, - { - "documentation": "path style + dualstack@af-south-1", "params": { "Accelerate": false, "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "path style + accelerate = error@af-south-1", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@af-south-1", "expect": { "endpoint": { - "url": "https://s3.dualstack.af-south-1.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -20900,65 +20754,103 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://s3.dualstack.af-south-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "path style + arn is error@af-south-1", + ], "params": { "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Bucket": "bucket-name", "ForcePathStyle": true, "Region": "af-south-1", - "UseDualStack": false, + "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@af-south-1", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" + } } ], - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - } - }, - { - "documentation": "path style + invalid DNS name@af-south-1", "params": { "Accelerate": false, - "Bucket": "99a_b", + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", "ForcePathStyle": true, "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.af-south-1.amazonaws.com/99a_b" + } }, "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - }, + { "builtInParams": { "AWS::Region": "af-south-1", "AWS::S3::ForcePathStyle": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@af-south-1", "expect": { "endpoint": { - "url": "https://s3.af-south-1.amazonaws.com/99a_b", "properties": { "authSchemes": [ { @@ -20968,76 +20860,74 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3.af-south-1.amazonaws.com/99a_b" } - } - }, - { - "documentation": "no path style + invalid DNS name@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "99a_b", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@us-west-2", "expect": { "endpoint": { - "url": "https://s3.af-south-1.amazonaws.com/99a_b", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3", - "signingRegion": "af-south-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ] - } + }, + "url": "http://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" } - } - }, - { - "documentation": "virtual addressing + private link@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@us-west-2", "expect": { "endpoint": { - "url": "http://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "properties": { "authSchemes": [ { @@ -21047,12 +20937,24 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "path style + private link@us-west-2", + ], "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -21061,40 +20963,27 @@ "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + FIPS@us-west-2", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] } } - } - }, - { - "documentation": "SDK::Host + FIPS@us-west-2", + ], "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -21103,28 +20992,27 @@ "Region": "us-west-2", "UseDualStack": false, "UseFIPS": true + } + }, + { + "documentation": "SDK::Host + DualStack@us-west-2", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, + "AWS::UseDualStack": true, "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - } - }, - { - "documentation": "SDK::Host + DualStack@us-west-2", "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -21133,28 +21021,27 @@ "Region": "us-west-2", "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "SDK::HOST + accelerate@us-west-2", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - } - }, - { - "documentation": "SDK::HOST + accelerate@us-west-2", "params": { "Accelerate": true, "Bucket": "bucket-name", @@ -21163,54 +21050,12 @@ "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::Accelerate": true - }, - "clientParams": {} - } - ], - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" } }, { "documentation": "SDK::Host + access point ARN@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.beta.example.com", "properties": { "authSchemes": [ { @@ -21220,38 +21065,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.beta.example.com" } - } - }, - { - "documentation": "virtual addressing + private link@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@cn-north-1", "expect": { "endpoint": { - "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "properties": { "authSchemes": [ { @@ -21261,39 +21105,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" } - } - }, - { - "documentation": "path style + private link@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@cn-north-1", "expect": { "endpoint": { - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -21303,12 +21145,39 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "FIPS@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Accelerate": false, "Bucket": "bucket-name", @@ -21316,43 +21185,42 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "SDK::Host + DualStack@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", "AWS::UseDualStack": true, "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false } }, { "documentation": "SDK::HOST + accelerate@cn-north-1", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" + }, "params": { "Accelerate": true, "Bucket": "bucket-name", @@ -21361,39 +21229,12 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": false - }, - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" } }, { "documentation": "SDK::Host + access point ARN@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://beta.example.com" - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.beta.example.com", "properties": { "authSchemes": [ { @@ -21403,38 +21244,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.beta.example.com" } - } - }, - { - "documentation": "virtual addressing + private link@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://beta.example.com" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@af-south-1", "expect": { "endpoint": { - "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "properties": { "authSchemes": [ { @@ -21444,39 +21284,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" } - } - }, - { - "documentation": "path style + private link@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, "operationName": "GetObject", "operationParams": { "Bucket": "bucket-name", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@af-south-1", "expect": { "endpoint": { - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name", "properties": { "authSchemes": [ { @@ -21486,128 +21324,125 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } } - } - }, - { - "documentation": "SDK::Host + FIPS@af-south-1", + ], "params": { "Accelerate": false, "Bucket": "bucket-name", - "ForcePathStyle": false, + "ForcePathStyle": true, "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "Region": "af-south-1", "UseDualStack": false, - "UseFIPS": true + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + FIPS@af-south-1", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "AWS::UseFIPS": true, "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - } - }, - { - "documentation": "SDK::Host + DualStack@af-south-1", "params": { "Accelerate": false, "Bucket": "bucket-name", "ForcePathStyle": false, "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "SDK::Host + DualStack@af-south-1", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "AWS::UseDualStack": true, "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - } - }, - { - "documentation": "SDK::HOST + accelerate@af-south-1", "params": { - "Accelerate": true, + "Accelerate": false, "Bucket": "bucket-name", "ForcePathStyle": false, "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "Region": "af-south-1", - "UseDualStack": false, + "UseDualStack": true, "UseFIPS": false + } + }, + { + "documentation": "SDK::HOST + accelerate@af-south-1", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - }, "builtInParams": { "AWS::Region": "af-south-1", "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } } ], - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" - } - }, - { - "documentation": "SDK::Host + access point ARN@af-south-1", "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Accelerate": true, + "Bucket": "bucket-name", "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", "Region": "af-south-1", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://beta.example.com" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "SDK::Host + access point ARN@af-south-1", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.beta.example.com", "properties": { "authSchemes": [ { @@ -21617,36 +21452,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.beta.example.com" } - } - }, - { - "documentation": "vanilla access point arn@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://beta.example.com" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn@us-west-2", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -21656,37 +21492,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "access point arn + FIPS@us-west-2", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS@us-west-2", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -21696,66 +21530,63 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "access point arn + accelerate = error@us-west-2", - "params": { - "Accelerate": true, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Access Points do not support S3 Accelerate" - } - }, - { - "documentation": "access point arn + FIPS + DualStack@us-west-2", "params": { "Accelerate": false, "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "ForcePathStyle": false, "Region": "us-west-2", - "UseDualStack": true, + "UseDualStack": false, "UseFIPS": true + } + }, + { + "documentation": "access point arn + accelerate = error@us-west-2", + "expect": { + "error": "Access Points do not support S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS + DualStack@us-west-2", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -21765,36 +21596,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "vanilla access point arn@cn-north-1", - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "vanilla access point arn@cn-north-1", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.cn-north-1.amazonaws.com.cn", "properties": { "authSchemes": [ { @@ -21804,12 +21636,36 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" } } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "access point arn + FIPS@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Accelerate": false, "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", @@ -21817,41 +21673,40 @@ "Region": "cn-north-1", "UseDualStack": false, "UseFIPS": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "access point arn + accelerate = error@cn-north-1", - "params": { - "Accelerate": true, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false + "expect": { + "error": "Access Points do not support S3 Accelerate" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "cn-north-1", "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } } ], - "expect": { - "error": "Access Points do not support S3 Accelerate" + "params": { + "Accelerate": true, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "access point arn + FIPS + DualStack@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Accelerate": false, "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", @@ -21859,37 +21714,12 @@ "Region": "cn-north-1", "UseDualStack": true, "UseFIPS": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "vanilla access point arn@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -21899,37 +21729,35 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "access point arn + FIPS@af-south-1", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS@af-south-1", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -21939,66 +21767,63 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "access point arn + accelerate = error@af-south-1", - "params": { - "Accelerate": true, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "Access Points do not support S3 Accelerate" - } - }, - { - "documentation": "access point arn + FIPS + DualStack@af-south-1", "params": { "Accelerate": false, "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "ForcePathStyle": false, "Region": "af-south-1", - "UseDualStack": true, + "UseDualStack": false, "UseFIPS": true + } + }, + { + "documentation": "access point arn + accelerate = error@af-south-1", + "expect": { + "error": "Access Points do not support S3 Accelerate" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": true, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS + DualStack@af-south-1", "expect": { "endpoint": { - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.af-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22008,35 +21833,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.af-south-1.amazonaws.com" } - } - }, - { - "documentation": "S3 outposts vanilla test", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "S3 outposts vanilla test", "expect": { "endpoint": { - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -22054,37 +21881,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "S3 outposts custom endpoint", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Endpoint": "https://example.amazonaws.com" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://example.amazonaws.com" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "S3 outposts custom endpoint", "expect": { "endpoint": { - "url": "https://reports-123456789012.op-01234567890123456.example.amazonaws.com", "properties": { "authSchemes": [ { @@ -22102,98 +21926,94 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://reports-123456789012.op-01234567890123456.example.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://example.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" } } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Endpoint": "https://example.amazonaws.com" } }, { "documentation": "outposts arn with region mismatch and UseArnRegion=false", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" }, "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - }, + { "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - } - }, - { - "documentation": "outposts arn with region mismatch, custom region and UseArnRegion=false", "params": { "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Endpoint": "https://example.com", "ForcePathStyle": false, "UseArnRegion": false, "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "outposts arn with region mismatch, custom region and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://example.com", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - } - }, - { - "documentation": "outposts arn with region mismatch and UseArnRegion=true", "params": { "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Endpoint": "https://example.com", "ForcePathStyle": false, - "UseArnRegion": true, + "UseArnRegion": false, "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "outposts arn with region mismatch and UseArnRegion=true", "expect": { "endpoint": { - "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22211,36 +22031,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "outposts arn with region mismatch and UseArnRegion unset", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outposts arn with region mismatch and UseArnRegion unset", "expect": { "endpoint": { - "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22258,66 +22079,63 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" } } - } - }, - { - "documentation": "outposts arn with partition mismatch and UseArnRegion=true", + ], "params": { "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", "ForcePathStyle": false, - "UseArnRegion": true, "Region": "us-west-2", "UseDualStack": false, "UseFIPS": false + } + }, + { + "documentation": "outposts arn with partition mismatch and UseArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint`) has `aws-cn`" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseArnRegion": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } } ], - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint`) has `aws-cn`" + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "ARN with UseGlobalEndpoint and use-east-1 region uses the regional endpoint", - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseGlobalEndpoint": true - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22335,102 +22153,101 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" } } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" } }, { "documentation": "S3 outposts does not support dualstack", + "expect": { + "error": "S3 Outposts does not support Dual-stack" + }, "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": true, "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - }, - "expect": { - "error": "S3 Outposts does not support Dual-stack" } }, { "documentation": "S3 outposts does not support fips", + "expect": { + "error": "S3 Outposts does not support FIPS" + }, "params": { "Region": "us-east-1", "UseFIPS": true, "UseDualStack": false, "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - }, - "expect": { - "error": "S3 Outposts does not support FIPS" } }, { "documentation": "S3 outposts does not support accelerate", + "expect": { + "error": "S3 Outposts does not support S3 Accelerate" + }, "params": { "Region": "us-east-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": true, "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - }, - "expect": { - "error": "S3 Outposts does not support S3 Accelerate" } }, { "documentation": "validates against subresource", + "expect": { + "error": "Invalid Arn: Outpost Access Point ARN contains sub resources" + }, "params": { "Region": "us-west-2", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:mybucket:object:foo" - }, - "expect": { - "error": "Invalid Arn: Outpost Access Point ARN contains sub resources" } }, { "documentation": "validates against access point host label", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `invalid.bucket#`" + }, "params": { "Region": "us-west-2", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:invalid.bucket#" - }, - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `invalid.bucket#`" } }, { "documentation": "object lambda @us-east-1", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseArnRegion": false - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22440,37 +22257,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "object lambda @us-west-2", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { - "AWS::Region": "us-west-2", + "AWS::Region": "us-east-1", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-west-2", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -22480,37 +22296,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "object lambda, colon resource deliminator @us-west-2", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda, colon resource deliminator @us-west-2", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -22520,37 +22335,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "object lambda @us-east-1, client region us-west-2, useArnRegion=true", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true + "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region us-west-2, useArnRegion=true", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22560,37 +22374,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=true", - "params": { - "Region": "s3-external-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "s3-external-1", - "AWS::S3::UseArnRegion": true - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=true", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22600,65 +22413,63 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=false", - "params": { - "Region": "s3-external-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "s3-external-1", + "AWS::S3::UseArnRegion": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "s3-external-1", - "AWS::S3::UseArnRegion": false - }, - "clientParams": {} + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `s3-external-1` and UseArnRegion is `false`" - } - }, - { - "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=true", "params": { - "Region": "aws-global", + "Region": "s3-external-1", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `s3-external-1` and UseArnRegion is `false`" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "s3-external-1", + "AWS::S3::UseArnRegion": false + }, "operationName": "GetObject", "operationParams": { "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": true - }, - "clientParams": {} + } } ], + "params": { + "Region": "s3-external-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=true", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22668,108 +22479,118 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" } } - } - }, - { - "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=false", + ], "params": { "Region": "aws-global", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "UseArnRegion": false, + "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `aws-global` and UseArnRegion is `false`" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `aws-global` and UseArnRegion is `false`" - } - }, - { - "documentation": "object lambda @cn-north-1, client region us-west-2 (cross partition), useArnRegion=true", "params": { "Region": "aws-global", "UseFIPS": false, "UseDualStack": false, "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @cn-north-1, client region us-west-2 (cross partition), useArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner`) has `aws-cn`" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "aws-global", "AWS::S3::UseArnRegion": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner`) has `aws-cn`" + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" } }, { "documentation": "object lambda with dualstack", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + "expect": { + "error": "S3 Object Lambda does not support Dual-stack" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseDualStack": true, "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], - "expect": { - "error": "S3 Object Lambda does not support Dual-stack" - } - }, - { - "documentation": "object lambda @us-gov-east-1", "params": { - "Region": "us-gov-east-1", + "Region": "us-west-2", "UseFIPS": false, - "UseDualStack": false, + "UseDualStack": true, "Accelerate": false, "UseArnRegion": false, - "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" - }, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-gov-east-1", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda.us-gov-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22779,23 +22600,23 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-gov-east-1.amazonaws.com" } - } - }, - { - "documentation": "object lambda @us-gov-east-1, with fips", + }, "params": { "Region": "us-gov-east-1", - "UseFIPS": true, + "UseFIPS": false, "UseDualStack": false, "Accelerate": false, "UseArnRegion": false, "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" - }, + } + }, + { + "documentation": "object lambda @us-gov-east-1, with fips", "expect": { "endpoint": { - "url": "https://mybanner-123456789012.s3-object-lambda-fips.us-gov-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -22805,12 +22626,24 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.s3-object-lambda-fips.us-gov-east-1.amazonaws.com" } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" } }, { "documentation": "object lambda @cn-north-1, with fips", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Region": "cn-north-1", "UseFIPS": true, @@ -22818,70 +22651,68 @@ "Accelerate": false, "UseArnRegion": false, "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "object lambda with accelerate", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + "expect": { + "error": "S3 Object Lambda does not support S3 Accelerate" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::Accelerate": true, "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], - "expect": { - "error": "S3 Object Lambda does not support S3 Accelerate" - } - }, - { - "documentation": "object lambda with invalid arn - bad service and someresource", "params": { "Region": "us-west-2", "UseFIPS": false, "UseDualStack": false, - "Accelerate": false, + "Accelerate": true, "UseArnRegion": false, - "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource" + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with invalid arn - bad service and someresource", + "expect": { + "error": "Invalid ARN: Unrecognized format: arn:aws:sqs:us-west-2:123456789012:someresource (type: someresource)" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource", + "Key": "key" + } } ], - "expect": { - "error": "Invalid ARN: Unrecognized format: arn:aws:sqs:us-west-2:123456789012:someresource (type: someresource)" + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource" } }, { "documentation": "object lambda with invalid arn - invalid resource", + "expect": { + "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `bucket_name`" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22889,13 +22720,13 @@ "Accelerate": false, "UseArnRegion": false, "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:bucket_name:mybucket" - }, - "expect": { - "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `bucket_name`" } }, { "documentation": "object lambda with invalid arn - missing region", + "expect": { + "error": "Invalid ARN: bucket ARN is missing a region" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22903,13 +22734,13 @@ "Accelerate": false, "UseArnRegion": false, "Bucket": "arn:aws:s3-object-lambda::123456789012:accesspoint/mybanner" - }, - "expect": { - "error": "Invalid ARN: bucket ARN is missing a region" } }, { "documentation": "object lambda with invalid arn - missing account-id", + "expect": { + "error": "Invalid ARN: Missing account id" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22917,41 +22748,40 @@ "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-west-2::accesspoint/mybanner" - }, - "expect": { - "error": "Invalid ARN: Missing account id" } }, { "documentation": "object lambda with invalid arn - account id contains invalid characters", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket" + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123.45678.9012`" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::S3::UseArnRegion": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket", + "Key": "key" + } } ], - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123.45678.9012`" + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket" } }, { "documentation": "object lambda with invalid arn - missing access point name", + "expect": { + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22959,13 +22789,13 @@ "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint" - }, - "expect": { - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" } }, { "documentation": "object lambda with invalid arn - access point name contains invalid character: *", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `*`" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22973,13 +22803,13 @@ "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:*" - }, - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `*`" } }, { "documentation": "object lambda with invalid arn - access point name contains invalid character: .", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `my.bucket`" + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -22987,13 +22817,13 @@ "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:my.bucket" - }, - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `my.bucket`" } }, { "documentation": "object lambda with invalid arn - access point name contains sub resources", + "expect": { + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -23001,40 +22831,12 @@ "Accelerate": false, "UseArnRegion": true, "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybucket:object:foo" - }, - "expect": { - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." } }, { "documentation": "object lambda with custom endpoint", - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Endpoint": "https://my-endpoint.com" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://my-endpoint.com", - "AWS::S3::UseArnRegion": false - }, - "clientParams": {} - } - ], "expect": { "endpoint": { - "url": "https://mybanner-123456789012.my-endpoint.com", "properties": { "authSchemes": [ { @@ -23044,64 +22846,66 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://mybanner-123456789012.my-endpoint.com" } - } - }, - { - "documentation": "object lambda arn with region mismatch and UseArnRegion=false", - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://my-endpoint.com", "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - } - }, - { - "documentation": "WriteGetObjectResponse @ us-west-2", "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, "Region": "us-west-2", + "UseFIPS": false, "UseDualStack": false, - "UseFIPS": false + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Endpoint": "https://my-endpoint.com" + } + }, + { + "documentation": "object lambda arn with region mismatch and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" }, "operationInputs": [ { - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - }, "builtInParams": { - "AWS::Region": "us-west-2" + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } } ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse @ us-west-2", "expect": { "endpoint": { - "url": "https://s3-object-lambda.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -23111,37 +22915,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-object-lambda.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "WriteGetObjectResponse with custom endpoint", - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Endpoint": "https://my-endpoint.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "WriteGetObjectResponse", "operationParams": { "RequestRoute": "RequestRoute", "RequestToken": "RequestToken" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://my-endpoint.com" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with custom endpoint", "expect": { "endpoint": { - "url": "https://my-endpoint.com", "properties": { "authSchemes": [ { @@ -23151,35 +22952,36 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://my-endpoint.com" } - } - }, - { - "documentation": "WriteGetObjectResponse @ us-east-1", - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://my-endpoint.com" + }, "operationName": "WriteGetObjectResponse", "operationParams": { "RequestRoute": "RequestRoute", "RequestToken": "RequestToken" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Endpoint": "https://my-endpoint.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse @ us-east-1", "expect": { "endpoint": { - "url": "https://s3-object-lambda.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23189,36 +22991,34 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://s3-object-lambda.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "WriteGetObjectResponse with fips", - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "WriteGetObjectResponse", "operationParams": { "RequestRoute": "RequestRoute", "RequestToken": "RequestToken" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with fips", "expect": { "endpoint": { - "url": "https://s3-object-lambda-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23228,88 +23028,100 @@ "disableDoubleEncoding": true } ] + }, + "url": "https://s3-object-lambda-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" } } - } - }, - { - "documentation": "WriteGetObjectResponse with dualstack", + ], "params": { "Accelerate": false, "UseObjectLambdaEndpoint": true, "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "WriteGetObjectResponse with dualstack", + "expect": { + "error": "S3 Object Lambda does not support Dual-stack" }, "operationInputs": [ { - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" + } } ], - "expect": { - "error": "S3 Object Lambda does not support Dual-stack" + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": false } }, { "documentation": "WriteGetObjectResponse with accelerate", + "expect": { + "error": "S3 Object Lambda does not support S3 Accelerate" + }, "params": { "Accelerate": true, "UseObjectLambdaEndpoint": true, "Region": "us-east-1", "UseDualStack": false, "UseFIPS": false - }, - "expect": { - "error": "S3 Object Lambda does not support S3 Accelerate" } }, { "documentation": "WriteGetObjectResponse with fips in CN", + "expect": { + "error": "Partition does not support FIPS" + }, "params": { "Accelerate": false, "Region": "cn-north-1", "UseObjectLambdaEndpoint": true, "UseDualStack": false, "UseFIPS": true - }, - "expect": { - "error": "Partition does not support FIPS" } }, { "documentation": "WriteGetObjectResponse with invalid partition", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, "params": { "Accelerate": false, "UseObjectLambdaEndpoint": true, "Region": "not a valid DNS name", "UseDualStack": false, "UseFIPS": false - }, - "expect": { - "error": "Invalid region: region was not a valid DNS name." } }, { "documentation": "WriteGetObjectResponse with an unknown partition", - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east.special", - "UseDualStack": false, - "UseFIPS": false - }, "expect": { "endpoint": { - "url": "https://s3-object-lambda.us-east.special.amazonaws.com", "properties": { "authSchemes": [ { @@ -23319,22 +23131,22 @@ "signingRegion": "us-east.special" } ] - } + }, + "url": "https://s3-object-lambda.us-east.special.amazonaws.com" } + }, + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east.special", + "UseDualStack": false, + "UseFIPS": false } }, { "documentation": "S3 Outposts bucketAlias Real Outpost Prod us-west-1", - "params": { - "Region": "us-west-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - }, "expect": { "endpoint": { - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.us-west-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23352,22 +23164,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.us-west-1.amazonaws.com" } - } - }, - { - "documentation": "S3 Outposts bucketAlias Real Outpost Prod ap-east-1", + }, "params": { - "Region": "ap-east-1", + "Region": "us-west-1", "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Outposts bucketAlias Real Outpost Prod ap-east-1", "expect": { "endpoint": { - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.ap-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23385,22 +23197,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.ap-east-1.amazonaws.com" } - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod us-east-1", + }, "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "Region": "ap-east-1", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod us-east-1", "expect": { "endpoint": { - "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23418,22 +23230,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod me-south-1", + }, "params": { - "Region": "me-south-1", + "Region": "us-east-1", "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod me-south-1", "expect": { "endpoint": { - "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.me-south-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -23451,23 +23263,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.me-south-1.amazonaws.com" } - } - }, - { - "documentation": "S3 Outposts bucketAlias Real Outpost Beta", + }, "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", - "Endpoint": "https://example.amazonaws.com", + "Region": "me-south-1", + "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Outposts bucketAlias Real Outpost Beta", "expect": { "endpoint": { - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3.op-0b1d075431d83bebd.example.amazonaws.com", "properties": { "authSchemes": [ { @@ -23485,23 +23296,23 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3.op-0b1d075431d83bebd.example.amazonaws.com" } - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Beta", + }, "params": { "Region": "us-east-1", - "Bucket": "161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", "Endpoint": "https://example.amazonaws.com", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Beta", "expect": { "endpoint": { - "url": "https://161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3.ec2.example.amazonaws.com", "properties": { "authSchemes": [ { @@ -23519,25 +23330,37 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3.ec2.example.amazonaws.com" } + }, + "params": { + "Region": "us-east-1", + "Bucket": "161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3", + "Endpoint": "https://example.amazonaws.com", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } }, { "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", + "expect": { + "error": "Expected a endpoint to be specified but no endpoint was found" + }, "params": { "Region": "us-east-1", "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Expected a endpoint to be specified but no endpoint was found" } }, { "documentation": "S3 Outposts invalid bucket name", + "expect": { + "error": "Invalid Outposts Bucket alias - it must be a valid bucket name." + }, "params": { "Region": "us-east-1", "Bucket": "test-accessp-o0b1de75431d83bebd/8xz5w8ijx1qzlbp3i3kbeta0--op-s3", @@ -23545,52 +23368,64 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Invalid Outposts Bucket alias - it must be a valid bucket name." } }, { "documentation": "S3 Outposts bucketAlias Invalid hardware type", + "expect": { + "error": "Unrecognized hardware type: \"Expected hardware type o or e but got h\"" + }, "params": { "Region": "us-east-1", "Bucket": "test-accessp-h0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Unrecognized hardware type: \"Expected hardware type o or e but got h\"" } }, { "documentation": "S3 Outposts bucketAlias Special character in Outpost Arn", + "expect": { + "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`." + }, "params": { "Region": "us-east-1", "Bucket": "test-accessp-o00000754%1d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`." } }, { "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", + "expect": { + "error": "Expected a endpoint to be specified but no endpoint was found" + }, "params": { "Region": "us-east-1", "Bucket": "test-accessp-e0b1d075431d83bebde8xz5w8ijx1qzlbp3i3ebeta0--op-s3", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, - "expect": { - "error": "Expected a endpoint to be specified but no endpoint was found" } }, { "documentation": "S3 Snow with bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://10.0.1.12:433/bucketName" + } + }, "params": { "Region": "snow", "Bucket": "bucketName", @@ -23598,10 +23433,12 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Snow without bucket", "expect": { "endpoint": { - "url": "http://10.0.1.12:433/bucketName", "properties": { "authSchemes": [ { @@ -23611,22 +23448,22 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://10.0.1.12:433" } - } - }, - { - "documentation": "S3 Snow without bucket", + }, "params": { "Region": "snow", "Endpoint": "https://10.0.1.12:433", "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Snow no port", "expect": { "endpoint": { - "url": "https://10.0.1.12:433", "properties": { "authSchemes": [ { @@ -23636,12 +23473,10 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "http://10.0.1.12/bucketName" } - } - }, - { - "documentation": "S3 Snow no port", + }, "params": { "Region": "snow", "Bucket": "bucketName", @@ -23649,10 +23484,12 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "S3 Snow dns endpoint", "expect": { "endpoint": { - "url": "http://10.0.1.12/bucketName", "properties": { "authSchemes": [ { @@ -23662,12 +23499,10 @@ "disableDoubleEncoding": true } ] - } + }, + "url": "https://amazonaws.com/bucketName" } - } - }, - { - "documentation": "S3 Snow dns endpoint", + }, "params": { "Region": "snow", "Bucket": "bucketName", @@ -23675,209 +23510,207 @@ "UseFIPS": false, "UseDualStack": false, "Accelerate": false - }, + } + }, + { + "documentation": "Data Plane with short zone name", "expect": { "endpoint": { - "url": "https://amazonaws.com/bucketName", "properties": { "authSchemes": [ { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } - ] - } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone name", - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--abcd-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--abcd-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--abcd-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone name china region", "expect": { "endpoint": { - "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "cn-north-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn" } - } - }, - { - "documentation": "Data Plane with short zone name china region", - "params": { - "Region": "cn-north-1", - "Bucket": "mybucket--abcd-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--abcd-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--abcd-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone name with AP", "expect": { "endpoint": { - "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "cn-north-1", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone name with AP", - "params": { - "Region": "us-east-1", - "Bucket": "myaccesspoint--abcd-ab1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--abcd-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone name with AP china region", "expect": { "endpoint": { - "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "cn-north-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn" } - } - }, - { - "documentation": "Data Plane with short zone name with AP china region", - "params": { - "Region": "cn-north-1", - "Bucket": "myaccesspoint--abcd-ab1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--abcd-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "cn-north-1", + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone names (13 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "cn-north-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone names (13 chars)", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--test-zone-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone names (13 chars) with AP", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -23888,36 +23721,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone names (13 chars) with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone names (14 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -23928,36 +23760,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with medium zone names (14 chars)", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--test1-zone-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone names (14 chars) with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -23968,36 +23799,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with medium zone names (14 chars) with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone names (20 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24008,36 +23838,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone names (20 chars)", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone names (20 chars)", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24048,52 +23877,62 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone names (20 chars)", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" + }, + "url": "https://mybucket--test-ab1--x-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3", + "Key": "key" } } - } - }, - { - "documentation": "Data Plane with short zone fips", + ], "params": { "Region": "us-east-1", "Bucket": "mybucket--test-ab1--x-s3", @@ -24101,24 +23940,39 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips china region", + "expect": { + "error": "Partition does not support FIPS" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--test-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test-ab1--x-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -24129,40 +23983,23 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-ab1--xa-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone fips china region", - "params": { - "Region": "cn-north-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3", - "Key": "key" - }, + { "builtInParams": { - "AWS::Region": "cn-north-1", + "AWS::Region": "us-east-1", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "Partition does not support FIPS" - } - }, - { - "documentation": "Data Plane with short zone fips with AP", "params": { "Region": "us-east-1", "Bucket": "myaccesspoint--test-ab1--xa-s3", @@ -24170,68 +24007,66 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips with AP china region", + "expect": { + "error": "Partition does not support FIPS" }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--test-ab1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "clientParams": {} + } } ], + "params": { + "Region": "cn-north-1", + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone (13 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-ab1--xa-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone fips with AP china region", - "params": { - "Region": "cn-north-1", - "Bucket": "myaccesspoint--test-ab1--xa-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--test-ab1--xa-s3", - "Key": "key" - }, "builtInParams": { - "AWS::Region": "cn-north-1", + "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-zone-ab1--x-s3", + "Key": "key" + } } ], - "expect": { - "error": "Partition does not support FIPS" - } - }, - { - "documentation": "Data Plane with short zone (13 chars) fips", "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -24239,24 +24074,12 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-zone-ab1--x-s3", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "Data Plane with short zone (13 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24267,37 +24090,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short zone (13 chars) fips with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone (14 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24308,37 +24130,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with medium zone (14 chars) fips", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone (14 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24349,37 +24170,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with medium zone (14 chars) fips with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone (20 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24390,37 +24210,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone (20 chars) fips", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone (20 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24431,37 +24250,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone (20 chars) fips with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24472,36 +24290,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long AZ", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "mybucket--test1-az1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24512,36 +24329,35 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long AZ with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-az1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2" + }, "operationName": "GetObject", "operationParams": { "Bucket": "myaccesspoint--test1-az1--xa-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24552,37 +24368,36 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long AZ fips", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-az1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24593,53 +24408,61 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long AZ fips with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--test1-az1--xa-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--test1-az1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Control plane with short AZ bucket", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" + }, + "url": "https://s3express-control.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } } - } - }, - { - "documentation": "Control plane with short AZ bucket", + ], "params": { "Region": "us-east-1", "Bucket": "mybucket--test-ab1--x-s3", @@ -24648,38 +24471,37 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": false - }, - "operationInputs": [ - { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "Control plane with short AZ bucket china region", "expect": { "endpoint": { - "url": "https://s3express-control.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "cn-north-1", "disableDoubleEncoding": true } ], "backend": "S3Express" + }, + "url": "https://s3express-control.cn-north-1.amazonaws.com.cn/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } } - } - }, - { - "documentation": "Control plane with short AZ bucket china region", + ], "params": { "Region": "cn-north-1", "Bucket": "mybucket--test-ab1--x-s3", @@ -24688,38 +24510,38 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": false - }, - "operationInputs": [ - { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "Control plane with short AZ bucket and fips", "expect": { "endpoint": { - "url": "https://s3express-control.cn-north-1.amazonaws.com.cn/mybucket--test-ab1--x-s3", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3express", - "signingRegion": "cn-north-1", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } } - } - }, - { - "documentation": "Control plane with short AZ bucket and fips", + ], "params": { "Region": "us-east-1", "Bucket": "mybucket--test-ab1--x-s3", @@ -24728,23 +24550,39 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane with short AZ bucket and fips china region", + "expect": { + "error": "Partition does not support FIPS" }, "operationInputs": [ { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, "builtInParams": { - "AWS::Region": "us-east-1", + "AWS::Region": "cn-north-1", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" + } } ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket", "expect": { "endpoint": { - "url": "https://s3express-control-fips.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3", "properties": { "authSchemes": [ { @@ -24755,40 +24593,18 @@ } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Control plane with short AZ bucket and fips china region", - "params": { - "Region": "cn-north-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false }, "operationInputs": [ { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true + "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "ListDirectoryBuckets" } ], - "expect": { - "error": "Partition does not support FIPS" - } - }, - { - "documentation": "Control plane without bucket", "params": { "Region": "us-east-1", "UseFIPS": false, @@ -24796,20 +24612,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": false - }, - "operationInputs": [ - { - "operationName": "ListDirectoryBuckets", - "operationParams": {}, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} - } - ], + } + }, + { + "documentation": "Control plane without bucket and fips", "expect": { "endpoint": { - "url": "https://s3express-control.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -24820,50 +24628,46 @@ } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Control plane without bucket and fips", - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false }, "operationInputs": [ { - "operationName": "ListDirectoryBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true }, - "clientParams": {} + "operationName": "ListDirectoryBuckets" } ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ", "expect": { "endpoint": { - "url": "https://s3express-control-fips.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -24871,10 +24675,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ with AP", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24885,12 +24691,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -24898,10 +24702,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short zone (13 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24912,12 +24718,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars)", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -24925,10 +24729,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short zone (13 chars) with AP", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24939,12 +24745,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars) with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -24952,10 +24756,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24966,12 +24772,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ fips", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -24979,10 +24783,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -24993,12 +24799,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ fips with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -25006,10 +24810,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25020,12 +24826,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -25033,10 +24837,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25047,12 +24853,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -25060,10 +24864,12 @@ "UseDualStack": false, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25074,12 +24880,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-az1--x-s3", @@ -25088,10 +24892,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25102,12 +24908,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-az1--xa-s3", @@ -25116,10 +24920,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone(14 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25130,12 +24936,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone(14 chars)", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -25144,10 +24948,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone(14 chars) with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25158,12 +24964,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone(14 chars) with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -25172,10 +24976,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone(20 chars)", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25186,12 +24992,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone(20 chars)", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -25200,10 +25004,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone(20 chars) with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25214,12 +25020,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone(20 chars) with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -25228,10 +25032,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25242,12 +25048,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ fips", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-az1--x-s3", @@ -25256,10 +25060,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25270,12 +25076,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ fips with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-az1--xa-s3", @@ -25284,10 +25088,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25298,12 +25104,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -25312,10 +25116,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25326,12 +25132,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -25340,10 +25144,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25354,12 +25160,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -25368,10 +25172,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips with AP", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25382,12 +25188,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -25396,10 +25200,12 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Control Plane host override", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -25410,12 +25216,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.custom.com" } - } - }, - { - "documentation": "Control Plane host override", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -25425,10 +25229,12 @@ "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": true, "Endpoint": "https://custom.com" - }, + } + }, + { + "documentation": "Control Plane host override with AP", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.custom.com", "properties": { "authSchemes": [ { @@ -25439,12 +25245,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com" } - } - }, - { - "documentation": "Control Plane host override with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -25454,10 +25258,12 @@ "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": true, "Endpoint": "https://custom.com" - }, + } + }, + { + "documentation": "Control Plane host override no bucket", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com", "properties": { "authSchemes": [ { @@ -25468,12 +25274,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://custom.com" } - } - }, - { - "documentation": "Control Plane host override no bucket", + }, "params": { "Region": "us-west-2", "UseFIPS": false, @@ -25482,51 +25286,52 @@ "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": true, "Endpoint": "https://custom.com" - }, + } + }, + { + "documentation": "Data plane host override non virtual session auth", "expect": { "endpoint": { - "url": "https://custom.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" } - } - }, - { - "documentation": "Data plane host override non virtual session auth", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://10.0.0.1" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://10.0.0.1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Data plane host override non virtual session auth with AP", "expect": { "endpoint": { - "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3", "properties": { "authSchemes": [ { @@ -25537,53 +25342,50 @@ } ], "backend": "S3Express" - } + }, + "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3" } - } - }, - { - "documentation": "Data plane host override non virtual session auth with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--usw2-az1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://10.0.0.1" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--usw2-az1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://10.0.0.1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Control Plane host override ip", "expect": { "endpoint": { - "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" } - } - }, - { - "documentation": "Control Plane host override ip", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -25593,10 +25395,12 @@ "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": true, "Endpoint": "https://10.0.0.1" - }, + } + }, + { + "documentation": "Control Plane host override ip with AP", "expect": { "endpoint": { - "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3", "properties": { "authSchemes": [ { @@ -25607,12 +25411,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3" } - } - }, - { - "documentation": "Control Plane host override ip with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -25622,51 +25424,52 @@ "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": true, "Endpoint": "https://10.0.0.1" - }, + } + }, + { + "documentation": "Data plane host override", "expect": { "endpoint": { - "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.custom.com" } - } - }, - { - "documentation": "Data plane host override", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://custom.com" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://custom.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Data plane host override with AP", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.custom.com", "properties": { "authSchemes": [ { @@ -25677,53 +25480,49 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com" } - } - }, - { - "documentation": "Data plane host override with AP", - "params": { - "Region": "us-west-2", - "Bucket": "myaccesspoint--usw2-az1--xa-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://custom.com" }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--usw2-az1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://custom.com" }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "Key": "key" } } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" } }, { "documentation": "bad format error", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" + } + } + ], "params": { "Region": "us-east-1", "Bucket": "mybucket--usaz1--x-s3", @@ -25731,26 +25530,25 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "bad AP format error", + "expect": { + "error": "Unrecognized S3Express bucket name format." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usaz1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usaz1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "Unrecognized S3Express bucket name format." - } - }, - { - "documentation": "bad AP format error", "params": { "Region": "us-east-1", "Bucket": "myaccesspoint--usaz1--xa-s3", @@ -25758,26 +25556,25 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "bad format error no session auth", + "expect": { + "error": "Unrecognized S3Express bucket name format." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "myaccesspoint--usaz1--xa-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" + } } ], - "expect": { - "error": "Unrecognized S3Express bucket name format." - } - }, - { - "documentation": "bad format error no session auth", "params": { "Region": "us-east-1", "Bucket": "mybucket--usaz1--x-s3", @@ -25786,26 +25583,25 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "bad AP format error no session auth", + "expect": { + "error": "Unrecognized S3Express bucket name format." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usaz1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usaz1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "Unrecognized S3Express bucket name format." - } - }, - { - "documentation": "bad AP format error no session auth", "params": { "Region": "us-east-1", "Bucket": "myaccesspoint--usaz1--xa-s3", @@ -25814,26 +25610,26 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": false, "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "accelerate error", + "expect": { + "error": "S3Express does not support S3 Accelerate." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, "operationName": "GetObject", "operationParams": { - "Bucket": "myaccesspoint--usaz1--xa-s3", + "Bucket": "mybucket--test-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "Unrecognized S3Express bucket name format." - } - }, - { - "documentation": "accelerate error", "params": { "Region": "us-east-1", "Bucket": "mybucket--test-ab1--x-s3", @@ -25841,27 +25637,26 @@ "UseDualStack": false, "Accelerate": true, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "accelerate error with AP", + "expect": { + "error": "S3Express does not support S3 Accelerate." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::S3::Accelerate": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "S3Express does not support S3 Accelerate." - } - }, - { - "documentation": "accelerate error with AP", "params": { "Region": "us-east-1", "Bucket": "myaccesspoint--test-ab1--xa-s3", @@ -25869,27 +25664,25 @@ "UseDualStack": false, "Accelerate": true, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data plane bucket format error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Bucket": "my.bucket--test-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true - }, - "clientParams": {} + } } ], - "expect": { - "error": "S3Express does not support S3 Accelerate." - } - }, - { - "documentation": "Data plane bucket format error", "params": { "Region": "us-east-1", "Bucket": "my.bucket--test-ab1--x-s3", @@ -25897,26 +25690,25 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data plane AP format error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "my.bucket--test-ab1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-east-1" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - } - }, - { - "documentation": "Data plane AP format error", "params": { "Region": "us-east-1", "Bucket": "my.myaccesspoint--test-ab1--xa-s3", @@ -25924,26 +25716,26 @@ "UseDualStack": false, "Accelerate": false, "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "host override data plane bucket error session auth", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, "operationName": "GetObject", "operationParams": { - "Bucket": "my.myaccesspoint--test-ab1--xa-s3", + "Bucket": "my.bucket--usw2-az1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - } - }, - { - "documentation": "host override data plane bucket error session auth", "params": { "Region": "us-west-2", "Bucket": "my.bucket--usw2-az1--x-s3", @@ -25951,27 +25743,26 @@ "UseDualStack": false, "Accelerate": false, "Endpoint": "https://custom.com" + } + }, + { + "documentation": "host override data plane AP error session auth", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "my.bucket--usw2-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "SDK::Endpoint": "https://custom.com" }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", + "Key": "key" + } } ], - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - } - }, - { - "documentation": "host override data plane AP error session auth", "params": { "Region": "us-west-2", "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", @@ -25979,27 +25770,13 @@ "UseDualStack": false, "Accelerate": false, "Endpoint": "https://custom.com" - }, - "operationInputs": [ - { - "operationName": "GetObject", - "operationParams": { - "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", - "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://custom.com" - }, - "clientParams": {} - } - ], - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." } }, { "documentation": "host override data plane bucket error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, "params": { "Region": "us-west-2", "Bucket": "my.bucket--usw2-az1--x-s3", @@ -26008,13 +25785,13 @@ "Accelerate": false, "Endpoint": "https://custom.com", "DisableS3ExpressSessionAuth": true - }, - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." } }, { "documentation": "host override data plane AP error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, "params": { "Region": "us-west-2", "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", @@ -26023,35 +25800,48 @@ "Accelerate": false, "Endpoint": "https://custom.com", "DisableS3ExpressSessionAuth": true - }, - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." } }, { - "documentation": "Control plane without bucket and dualstack", - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false + "documentation": "Control plane without bucket and dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.dualstack.us-east-1.amazonaws.com" + } }, "operationInputs": [ { - "operationName": "ListDirectoryBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "ListDirectoryBuckets" } ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket, fips and dualstack", "expect": { "endpoint": { - "url": "https://s3express-control.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { @@ -26062,91 +25852,86 @@ } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control-fips.dualstack.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Control plane without bucket, fips and dualstack", - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false }, "operationInputs": [ { - "operationName": "ListDirectoryBuckets", - "operationParams": {}, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "ListDirectoryBuckets" } ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Data Plane with bucket containing delimiters", "expect": { "endpoint": { - "url": "https://s3express-control-fips.dualstack.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://my--s3--bucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with bucket containing delimiters", - "params": { - "Region": "us-east-1", - "Bucket": "my--s3--bucket--abcd-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { + "builtInParams": { + "AWS::Region": "us-east-1" + }, "operationName": "GetObject", "operationParams": { "Bucket": "my--s3--bucket--abcd-ab1--x-s3", "Key": "key" - }, - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "clientParams": {} + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "my--s3--bucket--abcd-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Control plane with with bucket containing delimiters", "expect": { "endpoint": { - "url": "https://my--s3--bucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control.us-east-1.amazonaws.com/my--s3--bucket--abcd-ab1--x-s3" } - } - }, - { - "documentation": "Control plane with with bucket containing delimiters", + }, "params": { "Region": "us-east-1", "Bucket": "my--s3--bucket--abcd-ab1--x-s3", @@ -26155,51 +25940,52 @@ "Accelerate": false, "UseS3ExpressControlEndpoint": true, "DisableS3ExpressSessionAuth": false - }, + } + }, + { + "documentation": "Data Plane with short AZ and dualstack", "expect": { "endpoint": { - "url": "https://s3express-control.us-east-1.amazonaws.com/my--s3--bucket--abcd-ab1--x-s3", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short AZ and dualstack", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short AZ and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26210,54 +25996,51 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with short AZ and FIPS with dualstack", - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false }, "operationInputs": [ { - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - }, "builtInParams": { "AWS::Region": "us-west-2", "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } } ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -26265,10 +26048,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with short AZ and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26279,12 +26064,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az1--x-s3", @@ -26292,26 +26075,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az12--x-s3", @@ -26319,10 +26102,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26333,12 +26118,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az12--x-s3", @@ -26346,26 +26129,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az12--x-s3", @@ -26373,10 +26156,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with 9-char zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26387,12 +26172,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with 9-char zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--usw2-az12--x-s3", @@ -26400,26 +26183,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with 13-char zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with 13-char zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -26427,10 +26210,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with 13-char zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26441,12 +26226,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with 13-char zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -26454,26 +26237,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with 13-char zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with 13-char zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -26481,10 +26264,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with 13-char zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26495,12 +26280,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with 13-char zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test-zone-ab1--x-s3", @@ -26508,26 +26291,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with 14-char zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with 14-char zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -26535,10 +26318,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with 14-char zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26549,12 +26334,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with 14-char zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -26562,26 +26345,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with 14-char zone and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with 14-char zone and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -26589,10 +26372,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with 14-char zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26603,12 +26388,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with 14-char zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-zone-ab1--x-s3", @@ -26616,26 +26399,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with long zone (20 cha) and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone (20 cha) and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -26643,10 +26426,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with long zone (20 char) and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26657,12 +26442,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with long zone (20 char) and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -26670,26 +26453,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 char) and dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone (20 char) and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -26697,10 +26480,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 char) and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26711,12 +26496,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone (20 char) and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", @@ -26724,67 +26507,66 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Control plane and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3express", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control-fips.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" } - } - }, - { - "documentation": "Control plane and FIPS with dualstack", - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true }, "operationInputs": [ { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseFIPS": true, "AWS::UseDualStack": true }, - "clientParams": {} + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" + } } ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true + } + }, + { + "documentation": "Data plane with zone and dualstack and AP", "expect": { "endpoint": { - "url": "https://s3express-control-fips.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", - "signingRegion": "us-east-1", + "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data plane with zone and dualstack and AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -26792,10 +26574,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data plane with zone and FIPS with dualstack and AP", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26806,12 +26590,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data plane with zone and FIPS with dualstack and AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -26819,26 +26601,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with zone and dualstack and AP", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with zone and dualstack and AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -26846,10 +26628,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane AP sigv4 auth with zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26860,12 +26644,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane AP sigv4 auth with zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az1--xa-s3", @@ -26873,26 +26655,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with zone (9 char) and AP with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with zone (9 char) and AP with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az12--xa-s3", @@ -26900,10 +26682,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with zone (9 char) and FIPS with AP and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26914,12 +26698,10 @@ } ], "backend": "S3Express" - } - } - } - }, - { - "documentation": "Data Plane with zone (9 char) and FIPS with AP and dualstack", + }, + "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com" + } + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az12--xa-s3", @@ -26927,26 +26709,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with (9 char) zone and dualstack with AP", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with (9 char) zone and dualstack with AP", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az12--xa-s3", @@ -26954,10 +26736,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Access Point sigv4 auth with (9 char) zone and FIPS with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -26968,12 +26752,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Access Point sigv4 auth with (9 char) zone and FIPS with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--usw2-az12--xa-s3", @@ -26981,26 +26763,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with zone (13 char) and AP with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with zone (13 char) and AP with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -27008,10 +26790,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with zone (13 char) and AP with FIPS and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27022,12 +26806,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with zone (13 char) and AP with FIPS and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -27035,26 +26817,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with (13 char) zone with AP and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with (13 char) zone with AP and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -27062,10 +26844,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with (13 char) zone with AP and FIPS and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27076,12 +26860,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with (13 char) zone with AP and FIPS and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", @@ -27089,26 +26871,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with (14 char) zone and AP with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with (14 char) zone and AP with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -27116,10 +26898,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with (14 char) zone and AP with FIPS and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27130,12 +26914,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with (14 char) zone and AP with FIPS and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -27143,26 +26925,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane sigv4 auth with (14 char) zone and AP with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane sigv4 auth with (14 char) zone and AP with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -27170,10 +26952,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with (14 char) zone and AP with FIPS and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27184,12 +26968,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with (14 char) zone and AP with FIPS and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", @@ -27197,26 +26979,26 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data Plane with (20 char) zone and AP with dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4", + "name": "sigv4-s3express", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with (20 char) zone and AP with dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -27224,10 +27006,12 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data Plane with (20 char) zone and AP with FIPS and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27238,12 +27022,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data Plane with (20 char) zone and AP with FIPS and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -27251,26 +27033,26 @@ "UseDualStack": true, "Accelerate": false, "UseS3ExpressControlEndpoint": false - }, + } + }, + { + "documentation": "Data plane AP with sigv4 and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { - "name": "sigv4-s3express", + "name": "sigv4", "signingName": "s3express", "signingRegion": "us-west-2", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data plane AP with sigv4 and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -27278,10 +27060,12 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Data plane AP sigv4 with fips and dualstack", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { @@ -27292,12 +27076,10 @@ } ], "backend": "S3Express" - } + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com" } - } - }, - { - "documentation": "Data plane AP sigv4 with fips and dualstack", + }, "params": { "Region": "us-west-2", "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", @@ -27305,65 +27087,49 @@ "UseDualStack": true, "Accelerate": false, "DisableS3ExpressSessionAuth": true - }, + } + }, + { + "documentation": "Control plane with dualstack and bucket", "expect": { "endpoint": { - "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com", "properties": { "authSchemes": [ { "name": "sigv4", "signingName": "s3express", - "signingRegion": "us-west-2", + "signingRegion": "us-east-1", "disableDoubleEncoding": true } ], "backend": "S3Express" - } + }, + "url": "https://s3express-control.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" } - } - }, - { - "documentation": "Control plane with dualstack and bucket", - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true }, "operationInputs": [ { - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - }, "builtInParams": { "AWS::Region": "us-east-1", "AWS::UseDualStack": true }, - "clientParams": {} - } - ], - "expect": { - "endpoint": { - "url": "https://s3express-control.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true } } - ] + ], + "version": "1.0" } } }, @@ -41443,6 +41209,18 @@ "traits": { "smithy.api#enumValue": "FSX_ONTAP" } + }, + "AWS_BACKUP_WARM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_BACKUP_WARM" + } + }, + "AWS_BACKUP_LOW_COST_WARM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_BACKUP_LOW_COST_WARM" + } } } }, @@ -46707,6 +46485,12 @@ "smithy.api#enumValue": "aws:fsx" } }, + "aws_backup": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws:backup" + } + }, "aws_kms": { "target": "smithy.api#Unit", "traits": { @@ -47053,6 +46837,18 @@ "traits": { "smithy.api#enumValue": "FSX_ONTAP" } + }, + "AWS_BACKUP_WARM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_BACKUP_WARM" + } + }, + "AWS_BACKUP_LOW_COST_WARM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_BACKUP_LOW_COST_WARM" + } } } }, diff --git a/codegen/sdk/aws-models/sagemaker.json b/codegen/sdk/aws-models/sagemaker.json index 12e36cffaf5..0b06f985a6b 100644 --- a/codegen/sdk/aws-models/sagemaker.json +++ b/codegen/sdk/aws-models/sagemaker.json @@ -67895,6 +67895,42 @@ "traits": { "smithy.api#enumValue": "ml.g7e.48xlarge" } + }, + "ML_G7_2XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.2xlarge" + } + }, + "ML_G7_4XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.4xlarge" + } + }, + "ML_G7_8XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.8xlarge" + } + }, + "ML_G7_12XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.12xlarge" + } + }, + "ML_G7_24XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.24xlarge" + } + }, + "ML_G7_48XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.48xlarge" + } } } }, @@ -78130,6 +78166,16 @@ "smithy.api#output": {} } }, + "com.amazonaws.sagemaker#SequenceLength": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + }, + "smithy.api#pattern": "^\\d+K$" + } + }, "com.amazonaws.sagemaker#ServerlessJobBaseModelArn": { "type": "string", "traits": { @@ -78187,6 +78233,12 @@ "traits": { "smithy.api#documentation": "

The evaluator Amazon Resource Name (ARN) used as reward function or reward prompt.

" } + }, + "SequenceLength": { + "target": "com.amazonaws.sagemaker#SequenceLength", + "traits": { + "smithy.api#documentation": "

The maximum sequence length, in tokens, that the customization job supports. SageMaker uses this value to select a training configuration for the base model that you specify. The parameter supports the following values:

  • 1K

  • 2K

  • 4K

  • 8K

  • 16K

  • 32K

  • 64K

  • 128K

If you don't specify a value, SageMaker selects a training configuration based on the other values that you specify. The selection is not restricted to a particular sequence length.

" + } } }, "traits": { @@ -83755,6 +83807,42 @@ "traits": { "smithy.api#enumValue": "ml.g7e.48xlarge" } + }, + "ML_G7_2XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.2xlarge" + } + }, + "ML_G7_4XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.4xlarge" + } + }, + "ML_G7_8XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.8xlarge" + } + }, + "ML_G7_12XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.12xlarge" + } + }, + "ML_G7_24XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.24xlarge" + } + }, + "ML_G7_48XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.g7.48xlarge" + } } } }, diff --git a/codegen/sdk/aws-models/securityhub.json b/codegen/sdk/aws-models/securityhub.json index 88fa112b9f7..ba615d206b4 100644 --- a/codegen/sdk/aws-models/securityhub.json +++ b/codegen/sdk/aws-models/securityhub.json @@ -296,6 +296,50 @@ } } }, + "com.amazonaws.securityhub#AccountFreeTrialStatus": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.securityhub#FreeTrialAccountId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services account identifier that the free trial statuses apply to.

", + "smithy.api#required": {} + } + }, + "EvaluatedAt": { + "target": "com.amazonaws.securityhub#Timestamp", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The date and time at which Security Hub evaluated the free trial statuses for this account. Every status in FreeTrialStatuses reflects this point in time.

", + "smithy.api#required": {} + } + }, + "FreeTrialStatuses": { + "target": "com.amazonaws.securityhub#FreeTrialStatusList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

An array of free trial statuses, one for each feature that has a free trial period for the account. The array is empty if the account has no free trial to report.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The free trial status of each Security Hub feature for an account.

" + } + }, + "com.amazonaws.securityhub#AccountFreeTrialStatusList": { + "type": "list", + "member": { + "target": "com.amazonaws.securityhub#AccountFreeTrialStatus" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, "com.amazonaws.securityhub#AccountId": { "type": "string" }, @@ -28773,6 +28817,122 @@ "target": "com.amazonaws.securityhub#FirewallPolicyStatelessRuleGroupReferencesDetails" } }, + "com.amazonaws.securityhub#FreeTrialAccountId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9]{12}$" + } + }, + "com.amazonaws.securityhub#FreeTrialAccountIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.securityhub#FreeTrialAccountId" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.securityhub#FreeTrialStatus": { + "type": "structure", + "members": { + "FeatureType": { + "target": "com.amazonaws.securityhub#FreeTrialType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The feature that the free trial period applies to. Valid values:

\n
    \n
  • \n

    \n SECURITY_HUB_V2 specifies Security Hub.

    \n
  • \n
  • \n

    \n SECURITY_HUB_V2_MULTI_CLOUD_AZURE specifies Security Hub coverage for Microsoft Azure resources.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.securityhub#FreeTrialStatusValue", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Whether the free trial period is currently active. Valid values:

\n
    \n
  • \n

    \n ACTIVE specifies that the free trial period is ongoing.

    \n
  • \n
  • \n

    \n INACTIVE specifies that the free trial period has ended, or that it never started.

    \n
  • \n
\n

To determine whether a trial has expired, compare ExpiresAt to the current time.

", + "smithy.api#required": {} + } + }, + "StartedAt": { + "target": "com.amazonaws.securityhub#Timestamp", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The date and time at which the free trial period began.

", + "smithy.api#required": {} + } + }, + "ExpiresAt": { + "target": "com.amazonaws.securityhub#Timestamp", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The date and time at which the free trial period ends.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The free trial period for a Security Hub feature, and whether the trial is currently active.

" + } + }, + "com.amazonaws.securityhub#FreeTrialStatusList": { + "type": "list", + "member": { + "target": "com.amazonaws.securityhub#FreeTrialStatus" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.securityhub#FreeTrialStatusValue": { + "type": "enum", + "members": { + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "INACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INACTIVE" + } + } + } + }, + "com.amazonaws.securityhub#FreeTrialStatusValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.securityhub#FreeTrialStatusValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.securityhub#FreeTrialType": { + "type": "enum", + "members": { + "SECURITY_HUB_V2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SECURITY_HUB_V2" + } + }, + "SECURITY_HUB_V2_MULTI_CLOUD_AZURE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SECURITY_HUB_V2_MULTI_CLOUD_AZURE" + } + } + } + }, "com.amazonaws.securityhub#GenerateRecommendedPolicyV2": { "type": "operation", "input": { @@ -33476,6 +33636,100 @@ "smithy.api#output": {} } }, + "com.amazonaws.securityhub#ListFreeTrialStatusesV2": { + "type": "operation", + "input": { + "target": "com.amazonaws.securityhub#ListFreeTrialStatusesV2Request" + }, + "output": { + "target": "com.amazonaws.securityhub#ListFreeTrialStatusesV2Response" + }, + "errors": [ + { + "target": "com.amazonaws.securityhub#AccessDeniedException" + }, + { + "target": "com.amazonaws.securityhub#InternalServerException" + }, + { + "target": "com.amazonaws.securityhub#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.securityhub#ThrottlingException" + }, + { + "target": "com.amazonaws.securityhub#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the free trial status of Security Hub features. A delegated Security Hub administrator can list the status for accounts in its organization. Any other account can list the status only for itself. Free trial status remains available after a feature is disabled.

", + "smithy.api#http": { + "method": "POST", + "uri": "/freetrial/statusv2/list", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "AccountFreeTrialStatuses", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.securityhub#ListFreeTrialStatusesV2Request": { + "type": "structure", + "members": { + "AccountIds": { + "target": "com.amazonaws.securityhub#FreeTrialAccountIdList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account identifiers to list free trial status for. You can specify accounts other than your own only if you are a delegated Security Hub administrator.

" + } + }, + "Statuses": { + "target": "com.amazonaws.securityhub#FreeTrialStatusValueList", + "traits": { + "smithy.api#documentation": "

The free trial statuses to filter the results by. Valid values:

\n
    \n
  • \n

    \n ACTIVE returns only features with an ongoing free trial period.

    \n
  • \n
  • \n

    \n INACTIVE returns only features whose free trial period has ended, or that never started.

    \n
  • \n
" + } + }, + "MaxResults": { + "target": "com.amazonaws.securityhub#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return. If you don't specify a value, Security Hub returns up to 100 results.

" + } + }, + "NextToken": { + "target": "com.amazonaws.securityhub#NextToken", + "traits": { + "smithy.api#documentation": "

The pagination token to request the next page of results.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.securityhub#ListFreeTrialStatusesV2Response": { + "type": "structure", + "members": { + "AccountFreeTrialStatuses": { + "target": "com.amazonaws.securityhub#AccountFreeTrialStatusList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

An array of free trial statuses, one for each account in scope.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.securityhub#NextToken", + "traits": { + "smithy.api#documentation": "

The pagination token to use to request the next page of results. If there are no additional results, this value is null.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.securityhub#ListInvitations": { "type": "operation", "input": { @@ -40216,6 +40470,9 @@ { "target": "com.amazonaws.securityhub#ListFindingAggregators" }, + { + "target": "com.amazonaws.securityhub#ListFreeTrialStatusesV2" + }, { "target": "com.amazonaws.securityhub#ListInvitations" }, diff --git a/codegen/sdk/aws-models/socialmessaging.json b/codegen/sdk/aws-models/socialmessaging.json index 0f77da86350..6b6cb718151 100644 --- a/codegen/sdk/aws-models/socialmessaging.json +++ b/codegen/sdk/aws-models/socialmessaging.json @@ -151,6 +151,75 @@ "com.amazonaws.socialmessaging#CodeExpirationMinutes": { "type": "integer" }, + "com.amazonaws.socialmessaging#CreateWhatsAppDataset": { + "type": "operation", + "input": { + "target": "com.amazonaws.socialmessaging#CreateWhatsAppDatasetInput" + }, + "output": { + "target": "com.amazonaws.socialmessaging#CreateWhatsAppDatasetOutput" + }, + "errors": [ + { + "target": "com.amazonaws.socialmessaging#AccessDeniedByMetaException" + }, + { + "target": "com.amazonaws.socialmessaging#DependencyException" + }, + { + "target": "com.amazonaws.socialmessaging#InternalServiceException" + }, + { + "target": "com.amazonaws.socialmessaging#InvalidParametersException" + }, + { + "target": "com.amazonaws.socialmessaging#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.socialmessaging#ThrottledRequestException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a Meta Conversions API dataset for a WhatsApp Business Account.

", + "smithy.api#http": { + "method": "POST", + "uri": "/v1/whatsapp/waba/dataset", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.socialmessaging#CreateWhatsAppDatasetInput": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.socialmessaging#LinkedWhatsAppBusinessAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the WhatsApp Business Account to create a dataset for, formatted as waba-01234567890123456789012345678901.

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "WabaId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.socialmessaging#CreateWhatsAppDatasetOutput": { + "type": "structure", + "members": { + "datasetId": { + "target": "com.amazonaws.socialmessaging#WhatsAppDatasetId", + "traits": { + "smithy.api#documentation": "

The Meta-generated dataset ID, a numeric string of 10 to 20 digits.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.socialmessaging#CreateWhatsAppFlow": { "type": "operation", "input": { @@ -1723,6 +1792,12 @@ "smithy.api#documentation": "

The onboarding status for the Marketing Messages API. This value is fetched from Meta and indicates whether the WhatsApp Business Account is onboarded for Meta's Marketing Messages API.

" } }, + "datasetId": { + "target": "com.amazonaws.socialmessaging#WhatsAppDatasetId", + "traits": { + "smithy.api#documentation": "

The Meta Conversions API dataset ID associated with this WhatsApp Business Account. This value is a numeric string of 10 to 20 digits. This field is not present when no dataset has been created for this account.

" + } + }, "phoneNumbers": { "target": "com.amazonaws.socialmessaging#WhatsAppPhoneNumberSummaryList", "traits": { @@ -1806,6 +1881,9 @@ "target": "com.amazonaws.socialmessaging#ListLinkedWhatsAppBusinessAccounts" }, "operations": [ + { + "target": "com.amazonaws.socialmessaging#CreateWhatsAppDataset" + }, { "target": "com.amazonaws.socialmessaging#CreateWhatsAppFlow" }, @@ -1854,6 +1932,9 @@ { "target": "com.amazonaws.socialmessaging#PutWhatsAppBusinessAccountEventDestinations" }, + { + "target": "com.amazonaws.socialmessaging#SendWhatsAppConversionEvent" + }, { "target": "com.amazonaws.socialmessaging#UpdateWhatsAppFlow" }, @@ -1934,6 +2015,12 @@ "traits": { "smithy.api#documentation": "

The onboarding status for the Marketing Messages API. This value is fetched from Meta and indicates whether the WhatsApp Business Account is onboarded for Meta's Marketing Messages API.

" } + }, + "datasetId": { + "target": "com.amazonaws.socialmessaging#WhatsAppDatasetId", + "traits": { + "smithy.api#documentation": "

The Meta Conversions API dataset ID associated with this WhatsApp Business Account. This value is a numeric string of 10 to 20 digits. This field is not present when no dataset has been created for this account.

" + } } }, "traits": { @@ -3702,6 +3789,88 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.socialmessaging#SendWhatsAppConversionEvent": { + "type": "operation", + "input": { + "target": "com.amazonaws.socialmessaging#SendWhatsAppConversionEventInput" + }, + "output": { + "target": "com.amazonaws.socialmessaging#SendWhatsAppConversionEventOutput" + }, + "errors": [ + { + "target": "com.amazonaws.socialmessaging#AccessDeniedByMetaException" + }, + { + "target": "com.amazonaws.socialmessaging#DependencyException" + }, + { + "target": "com.amazonaws.socialmessaging#InternalServiceException" + }, + { + "target": "com.amazonaws.socialmessaging#InvalidParametersException" + }, + { + "target": "com.amazonaws.socialmessaging#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.socialmessaging#ThrottledRequestException" + } + ], + "traits": { + "smithy.api#documentation": "

Sends a conversion event to Meta's Conversions API for the specified WhatsApp Business Account dataset.

", + "smithy.api#http": { + "method": "POST", + "uri": "/v1/whatsapp/waba/dataset/events", + "code": 200 + } + } + }, + "com.amazonaws.socialmessaging#SendWhatsAppConversionEventInput": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.socialmessaging#LinkedWhatsAppBusinessAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the WhatsApp Business Account associated with the dataset, formatted as waba-01234567890123456789012345678901.

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "WabaId" + } + }, + "datasetId": { + "target": "com.amazonaws.socialmessaging#WhatsAppDatasetId", + "traits": { + "smithy.api#documentation": "

The Meta-generated dataset ID to send the event to.

", + "smithy.api#required": {} + } + }, + "eventData": { + "target": "com.amazonaws.socialmessaging#WhatsAppConversionEventBlob", + "traits": { + "smithy.api#documentation": "

The raw Meta Conversions API event payload as a JSON blob. See Meta's server event parameters for the supported format.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.socialmessaging#SendWhatsAppConversionEventOutput": { + "type": "structure", + "members": { + "requestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier for the conversion event request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.socialmessaging#SendWhatsAppMessage": { "type": "operation", "input": { @@ -5407,6 +5576,26 @@ } } }, + "com.amazonaws.socialmessaging#WhatsAppConversionEventBlob": { + "type": "blob", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024000 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.socialmessaging#WhatsAppDatasetId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 20 + }, + "smithy.api#pattern": "^[0-9]+$" + } + }, "com.amazonaws.socialmessaging#WhatsAppDisplayPhoneNumber": { "type": "string", "traits": { From 0fb4442df00b5ca47a984bb95ebda051de8db0f1 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Thu, 6 Aug 2026 18:23:05 +0000 Subject: [PATCH 02/22] feat: update AWS service endpoints metadata --- .../src/main/resources/aws/sdk/kotlin/codegen/endpoints.json | 1 + 1 file changed, 1 insertion(+) diff --git a/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json b/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json index 18aa8040d18..4a8c1fa5d64 100644 --- a/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json +++ b/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json @@ -4153,6 +4153,7 @@ "ap-southeast-5" : { }, "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, From fb67c616e8908b8da6a579ce932a672fcf69af7e Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Thu, 6 Aug 2026 18:29:46 +0000 Subject: [PATCH 03/22] chore: release 1.8.25 --- CHANGELOG.md | 22 ++++++++++++++++++++++ codegen/sdk/packages.json | 12 ++++++++++++ gradle.properties | 2 +- 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e2c9e6547ec..7374e7eb64b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [1.8.25] - 08/06/2026 + +### Features +* (**agentregistry**) Agent Registry's Public Preview release +* (**agentregistrycontrol**) Agent Registry's Public Preview release +* (**autoscaling**) EC2 Auto Scaling now supports being managed by other AWS services via the operator field. +* (**backup**) AWS Backup now lets you create read-only access points for Amazon S3 recovery points, enabling you to access backup data using S3 APIs without initiating a restore. +* (**bedrockagentcore**) Add support for capacity provider sessions in Amazon Bedrock AgentCore. Customers can now delete an active session running on a runtime instance launched through their capacity provider. +* (**bedrockagentcorecontrol**) Add support for Gateway rate limits and Runtime instances in Amazon Bedrock AgentCore. Customers can now configure rate limits scoped to control request rates, token consumption rates, and active connection rates. Customers can now create capacity providers to launch runtimes on their EC2 instances. +* (**cloudwatchlogs**) This release adds index category support to the CloudWatch Logs DescribeFieldIndexes API. Customers can filter and identify DEFAULT, CUSTOM, AUTO, and INACTIVE field indexes. +* (**devicefarm**) Adds support for service generated insights across runs, jobs, and tests. +* (**ec2**) Adds a new optional IncludeLocalZones parameter to the Spot Placement Score API that defaults to false. When set to true, the Spot Placement Score API will consider the relevant Local Zones with Spot capacity when computing the Spot Placement Score. +* (**gamelift**) Adds support for C8a, C8i, C9g, M8a, M8i, and M9g EC2 instance type families for managed EC2 and container fleets. Also adds explicit anchors on most string regexes. +* (**kafka**) MSK Clusters can now deliver authorizer logs alongside broker logs to the destinations defined by you +* (**marketplaceagreement**) GetAgreementTerms now returns a new term variant in AcceptedTerm, netPaymentTerm, with a paymentDuePeriod field (example "P30D"). +* (**marketplacediscovery**) GetOfferTerms now returns netPaymentTerm in offerTerms, specifying payment due period after invoice date. The paymentDuePeriod field uses ISO 8601 duration format (e.g., "P30D" for net 30 days). This is a backward-compatible addition. See API documentation for full structure and examples. +* (**mediatailor**) AWS Elemental MediaTailor now supports concurrent function execution. The new Concurrent Executor function type runs multiple independent child functions in parallel within a single lifecycle hook, reducing pipeline latency to the duration of the slowest call instead of the sum of all calls. +* (**s3**) AWS Backup now lets you create read-only access points for Amazon S3 recovery points, enabling you to access backup data using S3 APIs without initiating a restore. +* (**sagemaker**) Releases new Model Customization SequenceLength parameter for Training and g7 instance types for Training and Processing. +* (**securityhub**) Security Hub is adding a new public API, ListFreeTrialStatusesV2 to describe the free trial statuses of the Security Hub service and its opt-in features. +* (**socialmessaging**) Add support for WhatsApp Conversions APIs. + ## [1.8.24] - 08/05/2026 ### Features diff --git a/codegen/sdk/packages.json b/codegen/sdk/packages.json index 5ce48d42563..68b79c6703d 100644 --- a/codegen/sdk/packages.json +++ b/codegen/sdk/packages.json @@ -48,6 +48,18 @@ "artifactName": "account", "brazilName": "AwsSdkKotlinAccount" }, + { + "sdkId": "Agent Registry", + "namespace": "aws.sdk.kotlin.services.agentregistry", + "artifactName": "agentregistry", + "brazilName": "AwsSdkKotlinAgentRegistry" + }, + { + "sdkId": "Agent Registry Control", + "namespace": "aws.sdk.kotlin.services.agentregistrycontrol", + "artifactName": "agentregistrycontrol", + "brazilName": "AwsSdkKotlinAgentRegistryControl" + }, { "sdkId": "Amplify", "namespace": "aws.sdk.kotlin.services.amplify", diff --git a/gradle.properties b/gradle.properties index 08cb9fd86e0..22e2a11d743 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.25-SNAPSHOT +sdkVersion=1.8.25 # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 0c684da15e67dd17382f95427da2dae3129115c1 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Thu, 6 Aug 2026 18:29:48 +0000 Subject: [PATCH 04/22] chore: bump snapshot version to 1.8.26-SNAPSHOT --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 22e2a11d743..4e495dde6d8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.25 +sdkVersion=1.8.26-SNAPSHOT # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From f02f1ac813a919bf7dbfd609b03325743888cccb Mon Sep 17 00:00:00 2001 From: Ian Botsford <83236726+ianbotsf@users.noreply.github.com> Date: Fri, 7 Aug 2026 10:41:15 -0700 Subject: [PATCH 05/22] fix: support "provided" classpath handling for deploying the DynamoDB Mapper schema generator plugin in non-Gradle environments (#1971) * fix: support "provided" classpath handling for deploying the DynamoDB Mapper schema generator plugin in non-Gradle environments * retrigger CI --- .../build.gradle.kts | 56 +++++++++ .../plugins/SchemaGeneratorPlugin.kt | 86 +++++++++++++- .../plugins/ProvidedProcessorClasspathTest.kt | 110 ++++++++++++++++++ 3 files changed, 250 insertions(+), 2 deletions(-) create mode 100644 hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/test/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/ProvidedProcessorClasspathTest.kt diff --git a/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/build.gradle.kts b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/build.gradle.kts index ec7b4d61e80..bc9bee9c66e 100644 --- a/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/build.gradle.kts +++ b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/build.gradle.kts @@ -93,6 +93,62 @@ tasks.test { // FIXME Commonize the following functions into the aws-kotlin-repo-tools build-support val sdkVersion: String by project +/** + * Strategy the generated plugin uses to place the schema-codegen KSP processor on a consumer's `ksp` + * configuration. The value is fixed here, at *this plugin's* build time (not the consumer's build), and baked + * into a generated `PROCESSOR_CLASSPATH_MODE` constant that [SchemaGeneratorPlugin] switches on: + * + * - `resolved` (default): declare a Maven coordinate for the processor and let the consumer's build resolve it + * from a repository. This is the behavior for repository-published builds. + * - `provided`: the surrounding build environment supplies the processor and its full dependency closure on the + * plugin's own runtime classpath; the plugin injects those files directly instead of resolving a coordinate. + * Use this when the consumer build has no repository able to resolve the processor coordinate/closure. + * + * Controlled by the `aws.dynamodbmapper.schema.processor_classpath` Gradle property. + */ +val processorClasspathMode = (findProperty("aws.dynamodbmapper.schema.processor_classpath") as? String)?.lowercase() ?: "resolved" +require(processorClasspathMode == "resolved" || processorClasspathMode == "provided") { + "Invalid value '$processorClasspathMode' for the `aws.dynamodbmapper.schema.processor_classpath` property; expected 'resolved' or 'provided'." +} + +/** + * Generate a source constant recording [processorClasspathMode] so it is compiled into the published plugin jar + * and available to [SchemaGeneratorPlugin] at the consumer's build time. + */ +val generateProcessorClasspathMode by tasks.registering { + val outputDir = layout.buildDirectory.dir("generated/sources/processorClasspathMode/kotlin") + inputs.property("mode", processorClasspathMode) + outputs.dir(outputDir) + doLast { + val file = outputDir.get() + .file("aws/sdk/kotlin/hll/dynamodbmapper/plugins/ProcessorClasspathMode.kt") + .asFile + file.parentFile.mkdirs() + file.writeText( + """ + |/* + | * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + | * SPDX-License-Identifier: Apache-2.0 + | */ + |package aws.sdk.kotlin.hll.dynamodbmapper.plugins + | + |// Generated at build time from the `aws.dynamodbmapper.schema.processor_classpath` Gradle property. + |// Do not edit by hand. + |internal const val PROCESSOR_CLASSPATH_MODE: String = "$processorClasspathMode" + | + """.trimMargin(), + ) + } +} + +kotlin { + sourceSets.named("main") { + // Passing the task provider registers the generated dir as "built by" the task, so every consumer + // (compileKotlin, sourcesJar, ktlint, ...) inherits the dependency without a separate `dependsOn`. + kotlin.srcDir(generateProcessorClasspathMode) + } +} + /** * Create a file containing the sdkVersion to use as a resource * This saves us from having to manually change version numbers in multiple places diff --git a/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/main/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/SchemaGeneratorPlugin.kt b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/main/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/SchemaGeneratorPlugin.kt index fd50cafe600..1ae441667ee 100644 --- a/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/main/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/SchemaGeneratorPlugin.kt +++ b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/main/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/SchemaGeneratorPlugin.kt @@ -11,6 +11,9 @@ import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.create +import java.io.File +import java.net.URL +import java.net.URLClassLoader public class SchemaGeneratorPlugin : Plugin { override fun apply(project: Project): Unit = project.run { @@ -37,10 +40,89 @@ public class SchemaGeneratorPlugin : Plugin { excludeProcessor("aws.sdk.kotlin.hll.dynamodbmapper.codegen.operations.HighLevelOpsProcessorProvider") } - val sdkVersion = getSdkVersion() - dependencies.add("ksp", "aws.sdk.kotlin:dynamodb-mapper-schema-codegen:$sdkVersion") + when (PROCESSOR_CLASSPATH_MODE) { + "provided" -> { + // The surrounding build environment has already placed the schema-codegen processor and its full + // dependency closure on this plugin's runtime classpath. Inject those files directly instead of + // declaring a coordinate, since no repository able to resolve the coordinate/closure is available. + dependencies.add("ksp", files(resolveProvidedProcessorClasspath())) + } + else -> { + // Declare a coordinate for the processor and let the consumer's build resolve it from a repository. + val sdkVersion = getSdkVersion() + dependencies.add("ksp", "aws.sdk.kotlin:dynamodb-mapper-schema-codegen:$sdkVersion") + } + } } // Reads sdk-version.txt for the SDK version to add dependencies on. The file is created in this module's build.gradle.kts private fun getSdkVersion(): String = checkNotNull(this::class.java.getResource("sdk-version.txt")?.readText()) { "Could not read sdk-version.txt" } + + /** + * Collects the schema-codegen KSP processor and its dependency closure from this plugin's own runtime + * classpath. Used when [PROCESSOR_CLASSPATH_MODE] is `provided`: the surrounding build environment supplies + * these files on the plugin class loader, so they can be added to the `ksp` configuration directly without + * repository resolution. + */ + private fun resolveProvidedProcessorClasspath(): List { + val classLoader = javaClass.classLoader + val urls = (classLoader as? URLClassLoader)?.urLs + ?: error( + "Cannot supply the schema-generation processor classpath: the plugin class loader " + + "(${classLoader::class.java.name}) does not expose its URLs. The `provided` processor classpath " + + "mode requires an environment that places the processor on the plugin's runtime classpath.", + ) + + val candidates = urls.mapNotNull { it.toFileOrNull() } + val selfLocation = SchemaGeneratorPlugin::class.java.protectionDomain?.codeSource?.location?.toFileOrNull() + + // Anchor on a class that only exists in the schema-codegen artifact, to guarantee the processor's own jar + // is present even if the class loader layout is unusual. + val anchor = runCatching { + Class.forName("aws.sdk.kotlin.hll.dynamodbmapper.codegen.annotations.AnnotationsProcessorProvider") + .protectionDomain?.codeSource?.location + }.getOrNull()?.toFileOrNull() + + return selectProvidedProcessorClasspath(candidates, selfLocation, anchor) + } +} + +private fun URL.toFileOrNull(): File? = runCatching { File(toURI()) }.getOrNull() + +/** + * Artifacts present on the plugin's runtime classpath purely for Gradle wiring; they must not leak onto the KSP + * processor classpath, where they are unnecessary and can conflict with the Kotlin compiler. + */ +private val PROCESSOR_CLASSPATH_EXCLUSIONS = listOf( + "kotlin-gradle-plugin", + "symbol-processing-gradle-plugin", + "gradle-api", + "gradle-kotlin-dsl", + "kotlin-compiler-embeddable", +) + +/** + * Selects the KSP processor classpath from [candidates] (the plugin's own runtime classpath): drops the plugin's + * own artifact ([selfLocation]) and the Gradle/KGP/KSP-Gradle wiring artifacts in [PROCESSOR_CLASSPATH_EXCLUSIONS], + * and guarantees the processor's own artifact ([anchor]) is present. + * + * Kept pure and side-effect free so it can be unit tested without a Gradle project or class loader. + */ +internal fun selectProvidedProcessorClasspath( + candidates: List, + selfLocation: File?, + anchor: File?, +): List { + val files = candidates + .asSequence() + .filter { it != selfLocation } + .filter { file -> PROCESSOR_CLASSPATH_EXCLUSIONS.none { file.name.contains(it, ignoreCase = true) } } + .toMutableList() + + if (anchor != null && anchor !in files) files.add(anchor) + + check(files.isNotEmpty()) { + "Resolved an empty schema-generation processor classpath from the plugin runtime classpath." + } + return files } diff --git a/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/test/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/ProvidedProcessorClasspathTest.kt b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/test/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/ProvidedProcessorClasspathTest.kt new file mode 100644 index 00000000000..69fff7823f0 --- /dev/null +++ b/hll/ddb-mapper/dynamodb-mapper-schema-generator-plugin/src/test/kotlin/aws/sdk/kotlin/hll/dynamodbmapper/plugins/ProvidedProcessorClasspathTest.kt @@ -0,0 +1,110 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +package aws.sdk.kotlin.hll.dynamodbmapper.plugins + +import java.io.File +import kotlin.test.Test +import kotlin.test.assertContains +import kotlin.test.assertEquals +import kotlin.test.assertFailsWith +import kotlin.test.assertFalse + +/** + * Unit tests for [selectProvidedProcessorClasspath], the pure classpath-selection logic used by the plugin's + * `provided` processor-classpath mode. These exercise the filtering rules directly, without a Gradle project or + * class loader. + */ +class ProvidedProcessorClasspathTest { + private fun jar(name: String) = File("/deps/$name") + + // Processor closure (should be kept) + private val schemaCodegen = jar("dynamodb-mapper-schema-codegen-1.5.0.jar") + private val hllCodegen = jar("hll-codegen-1.5.0.jar") + private val mapper = jar("dynamodb-mapper-1.5.0.jar") + private val smithyRuntime = jar("runtime-core-jvm-1.4.0.jar") + + // Gradle wiring / the plugin itself (should be dropped) + private val pluginJar = jar("dynamodb-mapper-schema-generator-plugin-1.5.0.jar") + private val kotlinGradlePlugin = jar("kotlin-gradle-plugin-2.0.20.jar") + private val kspGradlePlugin = jar("symbol-processing-gradle-plugin-2.0.20-1.0.25.jar") + private val gradleApi = jar("gradle-api-9.6.1.jar") + private val gradleKotlinDsl = jar("gradle-kotlin-dsl-9.6.1.jar") + private val kotlinCompiler = jar("kotlin-compiler-embeddable-2.0.20.jar") + + @Test + fun keepsProcessorClosureAndDropsGradleWiring() { + val candidates = listOf( + schemaCodegen, hllCodegen, mapper, smithyRuntime, + pluginJar, kotlinGradlePlugin, kspGradlePlugin, gradleApi, gradleKotlinDsl, kotlinCompiler, + ) + + val result = selectProvidedProcessorClasspath(candidates, selfLocation = pluginJar, anchor = schemaCodegen) + + // Processor closure retained + assertContains(result, schemaCodegen) + assertContains(result, hllCodegen) + assertContains(result, mapper) + assertContains(result, smithyRuntime) + + // Plugin's own jar and Gradle wiring removed + assertFalse(pluginJar in result, "the plugin's own artifact must not be on the processor classpath") + assertFalse(kotlinGradlePlugin in result) + assertFalse(kspGradlePlugin in result) + assertFalse(gradleApi in result) + assertFalse(gradleKotlinDsl in result) + assertFalse(kotlinCompiler in result) + } + + @Test + fun addsAnchorWhenAbsentFromCandidates() { + val result = selectProvidedProcessorClasspath( + candidates = listOf(hllCodegen, mapper), + selfLocation = null, + anchor = schemaCodegen, + ) + assertContains(result, schemaCodegen) + } + + @Test + fun doesNotDuplicateAnchorWhenAlreadyPresent() { + val result = selectProvidedProcessorClasspath( + candidates = listOf(schemaCodegen, hllCodegen), + selfLocation = null, + anchor = schemaCodegen, + ) + assertEquals(1, result.count { it == schemaCodegen }) + } + + @Test + fun exclusionMatchingIsCaseInsensitive() { + val mixedCaseKgp = jar("Kotlin-Gradle-Plugin-2.0.20.jar") + val result = selectProvidedProcessorClasspath( + candidates = listOf(schemaCodegen, mixedCaseKgp), + selfLocation = null, + anchor = null, + ) + assertFalse(mixedCaseKgp in result) + assertContains(result, schemaCodegen) + } + + @Test + fun throwsWhenNoCandidates() { + assertFailsWith { + selectProvidedProcessorClasspath(candidates = emptyList(), selfLocation = null, anchor = null) + } + } + + @Test + fun throwsWhenEverythingFilteredAndNoAnchor() { + assertFailsWith { + selectProvidedProcessorClasspath( + candidates = listOf(kotlinGradlePlugin, gradleApi), + selfLocation = null, + anchor = null, + ) + } + } +} From 876626c2b9543feb2a776ef9a50ec9edb79ee8fb Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Fri, 7 Aug 2026 18:09:49 +0000 Subject: [PATCH 06/22] feat: update AWS API models --- codegen/sdk/aws-models/amplify.json | 2 +- codegen/sdk/aws-models/connect.json | 109 +- codegen/sdk/aws-models/ec2.json | 2457 +++++++++++++++++++- codegen/sdk/aws-models/healthlake.json | 14 + codegen/sdk/aws-models/mediapackagev2.json | 67 + codegen/sdk/aws-models/mediatailor.json | 100 + codegen/sdk/aws-models/sagemaker.json | 12 + codegen/sdk/aws-models/securityagent.json | 18 + 8 files changed, 2748 insertions(+), 31 deletions(-) diff --git a/codegen/sdk/aws-models/amplify.json b/codegen/sdk/aws-models/amplify.json index 92e78c8982e..e4c702aa6f5 100644 --- a/codegen/sdk/aws-models/amplify.json +++ b/codegen/sdk/aws-models/amplify.json @@ -5380,7 +5380,7 @@ "traits": { "smithy.api#length": { "min": 0, - "max": 1000 + "max": 4096 }, "smithy.api#pattern": "^(?s)", "smithy.api#sensitive": {} diff --git a/codegen/sdk/aws-models/connect.json b/codegen/sdk/aws-models/connect.json index 12a2d90459e..2bec315e2db 100644 --- a/codegen/sdk/aws-models/connect.json +++ b/codegen/sdk/aws-models/connect.json @@ -2271,6 +2271,9 @@ { "target": "com.amazonaws.connect#UpdateContactSchedule" }, + { + "target": "com.amazonaws.connect#UpdateContactTaskTemplate" + }, { "target": "com.amazonaws.connect#UpdateDataTableAttribute" }, @@ -5457,7 +5460,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. Cases are the only current supported\n resource.

\n \n

This value must be a valid ARN.

\n
" + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and \n Task.

\n \n

This value must be a valid ARN.

\n
" } }, "Tags": { @@ -7078,7 +7081,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases and Email.

\n \n

This value must be a valid ARN.

\n
", + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

\n \n

This value must be a valid ARN.

\n
", "smithy.api#httpQuery": "associatedResourceArn", "smithy.api#required": {} } @@ -8213,7 +8216,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases and Email.

\n \n

This value must be a valid ARN.

\n
", + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

\n \n

This value must be a valid ARN.

\n
", "smithy.api#httpQuery": "associatedResourceArn", "smithy.api#required": {} } @@ -10097,7 +10100,7 @@ } }, "traits": { - "smithy.api#documentation": "

The contact has not been disconnected and is not in a terminated state. PII can be deleted\n only from a contact that has been disconnected. This error is returned with an HTTP 409 status\n code.

", + "smithy.api#documentation": "

The contact has not been disconnected and is not in a terminated state. To delete PII,\n disconnect the contact first. Wait for it to reach the terminated state, then retry the\n request.

", "smithy.api#error": "client", "smithy.api#httpError": 409 } @@ -16753,7 +16756,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. Cases are the only current supported\n resource.

\n \n

This value must be a valid ARN.

\n
", + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

\n \n

This value must be a valid ARN.

\n
", "smithy.api#httpQuery": "associatedResourceArn", "smithy.api#required": {} } @@ -16801,7 +16804,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified fields containing personally identifiable information (PII) from a\n contact in the specified Connect Customer instance. This operation redacts PII (such as\n customer endpoints, additional email recipients, and the email subject) from the contact and its\n associated contact trace record (CTR). The contact must be in a terminated state.

\n \n

This operation performs a hard deletion of the specified PII and cannot be undone. There is\n no retention period; after the data is deleted, it cannot be recovered. Only fields that\n Connect Customer identifies and stores as PII are removed. Any PII that you place in fields\n outside the scope of this operation remains your responsibility to remove.

\n
", + "smithy.api#documentation": "

Deletes the specified fields containing personally identifiable information (PII) from a\n contact in the specified Connect Customer instance. We redact PII (such as\n customer endpoints, additional email recipients, and the email subject) from the contact and its\n associated contact trace record (CTR). The contact must be in a terminated state.

\n \n

\n This deletion is permanent and cannot be undone. Performing this\n operation permanently deletes the specified PII. There is\n no retention period; you cannot recover the data after deletion. We remove only the fields\n that Connect Customer identifies and stores as PII. Any PII that you place in fields\n outside the scope of this operation remains your responsibility to remove.

\n
", "smithy.api#http": { "method": "POST", "uri": "/contact/delete/{InstanceId}/{ContactId}", @@ -16823,7 +16826,7 @@ "ContactId": { "target": "com.amazonaws.connect#ContactId", "traits": { - "smithy.api#documentation": "

The identifier of the contact. PII can be deleted only from a contact that has been\n disconnected (is in a terminated state).

", + "smithy.api#documentation": "

The identifier of the contact. You can delete PII only from a contact that has been\n disconnected (is in a terminated state).

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -16831,7 +16834,7 @@ "ContactFields": { "target": "com.amazonaws.connect#ContactFields", "traits": { - "smithy.api#documentation": "

The categories of PII to redact from the contact. Valid values are\n CUSTOMER_ENDPOINT, ADDITIONAL_EMAIL_RECIPIENTS, and\n EMAIL_SUBJECT. ADDITIONAL_EMAIL_RECIPIENTS and EMAIL_SUBJECT\n are supported only for contacts in the email channel.

", + "smithy.api#documentation": "

The categories of PII to redact from the contact. Specify one or more of the following values:

\n
    \n
  • \n

    \n CUSTOMER_ENDPOINT – The customer's contact endpoint.

    \n
  • \n
  • \n

    \n ADDITIONAL_EMAIL_RECIPIENTS – Additional recipients on an email contact (email channel only).

    \n
  • \n
  • \n

    \n EMAIL_SUBJECT – The subject line of an email contact (email channel only).

    \n
  • \n
", "smithy.api#required": {} } } @@ -28665,7 +28668,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases and Email.

\n \n

This value must be a valid ARN.

\n
", + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

\n \n

This value must be a valid ARN.

\n
", "smithy.api#httpQuery": "associatedResourceArn", "smithy.api#required": {} } @@ -28719,7 +28722,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. Cases are the only current supported\n resource.

" + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

" } }, "FileUseCaseType": { @@ -45302,6 +45305,12 @@ "traits": { "smithy.api#enumValue": "NOT_SUPPORTED" } + }, + "TYPE_MISMATCH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TYPE_MISMATCH" + } } } }, @@ -53934,7 +53943,7 @@ } ], "traits": { - "smithy.api#documentation": "

Provides a pre-signed Amazon S3 URL in response for uploading your content.

\n \n

You may only use this API to upload attachments to an Connect Customer Case or Connect Customer Email.

\n
", + "smithy.api#documentation": "

Provides a pre-signed Amazon S3 URL in response for uploading your content.

\n \n

You may only use this API to upload attachments to a Connect Customer Case, Connect Customer Email, or\n Connect Customer Task.

\n
", "smithy.api#http": { "method": "PUT", "uri": "/attached-files/{InstanceId}", @@ -53990,7 +53999,7 @@ "AssociatedResourceArn": { "target": "com.amazonaws.connect#ARN", "traits": { - "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases and Email.

\n \n

This value must be a valid ARN.

\n
", + "smithy.api#documentation": "

The resource to which the attached file is (being) uploaded to. The supported resources are Cases, Email, and Task.

\n \n

This value must be a valid ARN.

\n
", "smithy.api#httpQuery": "associatedResourceArn", "smithy.api#required": {} } @@ -59944,6 +59953,82 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#UpdateContactTaskTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#UpdateContactTaskTemplateRequest" + }, + "output": { + "target": "com.amazonaws.connect#UpdateContactTaskTemplateResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#LimitExceededException" + }, + { + "target": "com.amazonaws.connect#PropertyValidationException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ServiceQuotaExceededException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the task template association on an existing task contact. You can update the task template on a contact\n before assignment to support tasks that are created without a template (for example Rules or disconnect flows) or change the agent interaction\n form to represent the latest task data (for example an initial request that was submitted as a refund gets updated to\n an account cancellation and requires a new template).

\n

This operation can only be used with task contacts that are in progress and not connected to an agent. A task\n template can be updated a maximum of 5 times per contact.

\n

The task's references must be compatible with the fields of the target task template. If the target template has\n a required field, the task must have a corresponding reference with a matching name and compatible type. The\n following task template field types map to reference types:

\n
    \n
  • \n

    \n TEXT, TEXT_AREA, BOOLEAN, and SINGLE_SELECT map to\n references of type STRING.

    \n
  • \n
  • \n

    \n NUMBER maps to references of type NUMBER.

    \n
  • \n
  • \n

    \n DATE_TIME maps to references of type DATE.

    \n
  • \n
  • \n

    \n URL maps to references of type URL.

    \n
  • \n
  • \n

    \n EMAIL maps to references of type EMAIL.

    \n
  • \n
\n

References corresponding to TEXT fields must be fewer than 512 characters.\n TEXT_AREA fields must be fewer than 4,096 characters. BOOLEAN fields must have a value\n of true or false.

\n

An InvalidRequestException occurs when UpdateContactTaskTemplate is called on a\n connected or terminated task, when it is called on non-task contacts, and when the task contact already uses the\n provided task template. A PropertyValidationException occurs when the task's references conflict with\n the task template's fields, for example if the task is missing a reference that matches a required field, or if the\n task has a reference that matches a required field's name but not its datatype.

", + "smithy.api#http": { + "method": "POST", + "uri": "/contact/task-template", + "code": 200 + } + } + }, + "com.amazonaws.connect#UpdateContactTaskTemplateRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#required": {} + } + }, + "TaskTemplateId": { + "target": "com.amazonaws.connect#TaskTemplateId", + "traits": { + "smithy.api#documentation": "

A unique identifier for the task template. For more information about task templates, see Task templates in the Connect Customer Administrator Guide.

", + "smithy.api#required": {} + } + }, + "ContactId": { + "target": "com.amazonaws.connect#ContactId", + "traits": { + "smithy.api#documentation": "

The identifier of the contact in this instance of Connect Customer.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#UpdateContactTaskTemplateResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#UpdateDataTableAttribute": { "type": "operation", "input": { diff --git a/codegen/sdk/aws-models/ec2.json b/codegen/sdk/aws-models/ec2.json index c2783f34efe..2b5c63365dd 100644 --- a/codegen/sdk/aws-models/ec2.json +++ b/codegen/sdk/aws-models/ec2.json @@ -2823,6 +2823,9 @@ { "target": "com.amazonaws.ec2#AuthorizeSecurityGroupIngress" }, + { + "target": "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrations" + }, { "target": "com.amazonaws.ec2#BundleInstance" }, @@ -2961,6 +2964,9 @@ { "target": "com.amazonaws.ec2#CreateIpamExternalResourceVerificationToken" }, + { + "target": "com.amazonaws.ec2#CreateIpamInternetRegistryAssociation" + }, { "target": "com.amazonaws.ec2#CreateIpamPolicy" }, @@ -2976,6 +2982,9 @@ { "target": "com.amazonaws.ec2#CreateIpamResourceDiscovery" }, + { + "target": "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistration" + }, { "target": "com.amazonaws.ec2#CreateIpamScope" }, @@ -3252,6 +3261,9 @@ { "target": "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationToken" }, + { + "target": "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociation" + }, { "target": "com.amazonaws.ec2#DeleteIpamPolicy" }, @@ -3267,6 +3279,9 @@ { "target": "com.amazonaws.ec2#DeleteIpamResourceDiscovery" }, + { + "target": "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistration" + }, { "target": "com.amazonaws.ec2#DeleteIpamScope" }, @@ -3735,6 +3750,9 @@ { "target": "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokens" }, + { + "target": "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociations" + }, { "target": "com.amazonaws.ec2#DescribeIpamPolicies" }, @@ -4260,6 +4278,9 @@ { "target": "com.amazonaws.ec2#EnableInstanceSqlHaStandbyDetections" }, + { + "target": "com.amazonaws.ec2#EnableIpamInternetRegistryAssociation" + }, { "target": "com.amazonaws.ec2#EnableIpamOrganizationAdminAccount" }, @@ -4401,6 +4422,15 @@ { "target": "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrs" }, + { + "target": "com.amazonaws.ec2#GetIpamDiscoveredRoutes" + }, + { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsns" + }, + { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrs" + }, { "target": "com.amazonaws.ec2#GetIpamPolicyAllocationRules" }, @@ -4425,6 +4455,18 @@ { "target": "com.amazonaws.ec2#GetIpamResourceCidrs" }, + { + "target": "com.amazonaws.ec2#GetIpamRouteOriginAuthorizations" + }, + { + "target": "com.amazonaws.ec2#GetIpamRouteProtectionFindings" + }, + { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltas" + }, + { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrations" + }, { "target": "com.amazonaws.ec2#GetLaunchTemplateData" }, @@ -4653,6 +4695,9 @@ { "target": "com.amazonaws.ec2#ModifyIpamResourceDiscovery" }, + { + "target": "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistration" + }, { "target": "com.amazonaws.ec2#ModifyIpamScope" }, @@ -7593,6 +7638,15 @@ "smithy.api#documentation": "

Provides authorization for Amazon to bring an Autonomous System Number (ASN) to a specific Amazon Web Services account using bring your own ASN (BYOASN). \n For details on the format of the message and signature, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" } }, + "com.amazonaws.ec2#AsnList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#AsnState": { "type": "enum", "members": { @@ -11486,6 +11540,77 @@ "com.amazonaws.ec2#BaselineThroughputInMBps": { "type": "double" }, + "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrationsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies multiple routing policy registrations in a single operation. You can create, update, or delete Route Origin Authorizations (ROAs) in batch.

" + } + }, + "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrationsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "DeltaJson": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The batch modifications to apply, in JSON format.

", + "smithy.api#required": {} + } + }, + "Force": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Forces the batch modification even if individual changes conflict with announced routes. Default: false.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#BatchModifyIpamRoutingPolicyRegistrationsResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrationDelta": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationDelta", + "smithy.api#documentation": "

Information about the routing policy registration delta created by this batch operation.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationDelta" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#BatchState": { "type": "enum", "members": { @@ -12143,6 +12268,22 @@ "smithy.api#documentation": "

Specifies the advertisement method for the BYOIP CIDR. Valid values are:

\n
    \n
  • \n

    \n unicast: IP is advertised from a single location (regional services like EC2)

    \n
  • \n
  • \n

    \n anycast: IP is advertised from multiple global locations simultaneously (global services like CloudFront)

    \n
  • \n
\n

For more information, see Bring your own IP to CloudFront using IPAM in the Amazon VPC IPAM User Guide.

", "smithy.api#xmlName": "advertisementType" } + }, + "PoolId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the address pool associated with the CIDR.

", + "smithy.api#xmlName": "poolId" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "aws.protocols#ec2QueryName": "IpamPoolId", + "smithy.api#documentation": "

The ID of the IPAM pool associated with the CIDR.

", + "smithy.api#xmlName": "ipamPoolId" + } } }, "traits": { @@ -15913,6 +16054,26 @@ "com.amazonaws.ec2#CertificateId": { "type": "string" }, + "com.amazonaws.ec2#ChronologicalOrder": { + "type": "enum", + "members": { + "forward": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "forward" + } + }, + "reverse": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "reverse" + } + } + }, + "traits": { + "smithy.api#documentation": "

The chronological order for returning results.

" + } + }, "com.amazonaws.ec2#CidrAuthorizationContext": { "type": "structure", "members": { @@ -18654,7 +18815,7 @@ "target": "com.amazonaws.ec2#CreateApplicationStatusCheckResult" }, "traits": { - "smithy.api#documentation": "

Creates an application status check for monitoring the health of applications running on your instances. You can configure the protocol, port, path, and thresholds for the health check. The following rules apply:

\n
    \n
  • \n

    You can create a maximum of 50 application status checks per account.

    \n
  • \n
  • \n

    Health checks do not start until you associate the check with instances or tags using AssociateApplicationStatusCheck.

    \n
  • \n
  • \n

    The Timeout value must be less than the Interval value.

    \n
  • \n
  • \n

    The Path must start with a forward slash (/). Default: /.

    \n
  • \n
  • \n

    If you do not specify Aggregation, it defaults to included, which means the check contributes to the instance-level application status.

    \n
  • \n
  • \n

    Default values: Interval is 60 seconds, Timeout is 6 seconds, FailureThreshold is 2, SuccessThreshold is 5, StatusCodeMatcher is 200, InitializationGracePeriodSeconds is 300 seconds.

    \n
  • \n
  • \n

    You can tag the application status check during creation. For more information, see Tag your Amazon EC2 resources.

    \n
  • \n
", + "smithy.api#documentation": "

Creates an application status check for monitoring the health of applications running on your instances. You can configure the protocol, port, path, and thresholds for the health check. The following rules apply:

\n
    \n
  • \n

    You can create a maximum of 50 application status checks per account.

    \n
  • \n
  • \n

    Health checks do not start until you associate the check with instances or tags using AssociateApplicationStatusCheck.

    \n
  • \n
  • \n

    The Timeout value must be less than the Interval value.

    \n
  • \n
  • \n

    The Path must start with a forward slash (/). Default: /.

    \n
  • \n
  • \n

    If you do not specify Aggregation, it defaults to included, which means the check contributes to the instance-level application status.

    \n
  • \n
  • \n

    Default values: Interval is 60 seconds, Timeout is 6 seconds, FailureThreshold is 2, SuccessThreshold is 2, StatusCodeMatcher is 200, InitializationGracePeriodSeconds is 300 seconds.

    \n
  • \n
  • \n

    You can tag the application status check during creation. For more information, see Tag your Amazon EC2 resources.

    \n
  • \n
", "smithy.api#examples": [ { "title": "To create an application status check", @@ -18672,9 +18833,9 @@ "Port": 80, "Path": "/health", "Aggregation": "included", - "Interval": 10, - "Timeout": 5, - "FailureThreshold": 3, + "Interval": 60, + "Timeout": 6, + "FailureThreshold": 2, "SuccessThreshold": 2 } } @@ -21480,6 +21641,92 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#CreateIpamInternetRegistryAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateIpamInternetRegistryAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateIpamInternetRegistryAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Creates an association between an IPAM and a Regional Internet Registry (RIR) for Resource Public Key Infrastructure (RPKI) management. You can use this association to create Route Origin Authorizations (ROAs) for IP address prefixes registered with the internet registry. Your IPAM must be in the Advanced tier to use this feature.

" + } + }, + "com.amazonaws.ec2#CreateIpamInternetRegistryAssociationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM to associate with the internet registry.

", + "smithy.api#required": {} + } + }, + "Rir": { + "target": "com.amazonaws.ec2#Rir", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Regional Internet Registry to associate with. Possible values:

\n
    \n
  • \n

    \n ripe - RIPE NCC (Europe, the Middle East, and Central Asia).

    \n
  • \n
  • \n

    \n apnic - APNIC (Asia Pacific).

    \n
  • \n
  • \n

    \n arin - ARIN (North America).

    \n
  • \n
  • \n

    \n lacnic - LACNIC (Latin America and the Caribbean).

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "OrganizationHandle": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The organization handle at the internet registry (for example, a RIPE NCC organization ID or ARIN Org ID).

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the internet registry association.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to assign to the internet registry association.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateIpamInternetRegistryAssociationResult": { + "type": "structure", + "members": { + "IpamInternetRegistryAssociation": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociation", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociation", + "smithy.api#documentation": "

Information about the internet registry association.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociation" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#CreateIpamPolicy": { "type": "operation", "input": { @@ -22012,6 +22259,104 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistrationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistrationResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a routing policy registration and publishes Route Origin Authorizations (ROAs) to the RPKI for the specified CIDR prefix and ASNs.

" + } + }, + "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistrationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP address prefix in CIDR notation to authorize in the ROA.

", + "smithy.api#required": {} + } + }, + "Asns": { + "target": "com.amazonaws.ec2#AsnList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Autonomous System Numbers (ASNs) authorized to originate the prefix.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Asn" + } + }, + "PermitMoreSpecificAnnouncements": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to permit more specific route announcements than the CIDR prefix. When enabled, ASNs can announce sub-prefixes of the authorized CIDR up to the specified maximum length. Default: false.

" + } + }, + "MaxLength": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationMaxLength", + "traits": { + "smithy.api#documentation": "

The maximum prefix length that the ASNs are authorized to announce. Must be greater than or equal to the prefix length of the CIDR. If not specified, defaults to the prefix length of the CIDR (exact match only).

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the routing policy registration.

" + } + }, + "Force": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Forces the creation of the routing policy registration even if it conflicts with an announced route. Default: false.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateIpamRoutingPolicyRegistrationResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrationDelta": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationDelta", + "smithy.api#documentation": "

Information about the routing policy registration delta created by this operation.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationDelta" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#CreateIpamScope": { "type": "operation", "input": { @@ -30950,6 +31295,56 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes an IPAM internet registry association. Before deleting, you must remove all routing policy registrations associated with the internet registry.

" + } + }, + "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association to delete.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteIpamInternetRegistryAssociationResult": { + "type": "structure", + "members": { + "IpamInternetRegistryAssociation": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociation", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociation", + "smithy.api#documentation": "

Information about the deleted internet registry association.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociation" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#DeleteIpamPolicy": { "type": "operation", "input": { @@ -31250,6 +31645,77 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistrationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistrationResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes a routing policy registration for a specified CIDR prefix.

" + } + }, + "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistrationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP address prefix in CIDR notation identifying the routing policy registration to delete.

", + "smithy.api#required": {} + } + }, + "Force": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Forces the deletion even if it conflicts with an announced route. Default: false.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteIpamRoutingPolicyRegistrationResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrationDelta": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationDelta", + "smithy.api#documentation": "

Information about the routing policy registration delta created by this deletion.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationDelta" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#DeleteIpamScope": { "type": "operation", "input": { @@ -36301,7 +36767,85 @@ "target": "com.amazonaws.ec2#DescribeApplicationStatusResult" }, "traits": { - "smithy.api#documentation": "

Describes the application status for the specified instances. Returns the aggregated application health status for each instance. The following rules apply:

\n
    \n
  • \n

    The instance-level status is derived from all application status checks with the aggregation setting set to included.

    \n
  • \n
  • \n

    Use DescribeApplicationStatusChecks to view the configuration of individual checks.

    \n
  • \n
  • \n

    Use EnableApplicationStatusCheckSuppression to temporarily suppress health check results from affecting the instance-level status.

    \n
  • \n
" + "smithy.api#documentation": "

Describes the application status for the specified instances. Returns the aggregated application health status for each instance. The following rules apply:

\n
    \n
  • \n

    The instance-level status is derived from all application status checks with the aggregation setting set to included.

    \n
  • \n
  • \n

    Use DescribeApplicationStatusChecks to view the configuration of individual checks.

    \n
  • \n
  • \n

    Use EnableApplicationStatusCheckSuppression to temporarily suppress health check results from affecting the instance-level status.

    \n
  • \n
", + "smithy.api#examples": [ + { + "title": "To describe application status for instances", + "documentation": "This example describes the application status for the specified instance.", + "input": { + "InstanceIds": [ + "i-0123456789abcdef0" + ] + }, + "output": { + "ApplicationStatuses": { + "Instances": [ + { + "InstanceId": "i-0123456789abcdef0", + "ApplicationStatus": { + "Status": "ok", + "Details": [ + { + "ApplicationStatusCheckId": "asc-0123456789abcdef0", + "Aggregation": "included", + "Status": "passed", + "Reason": { + "Code": "ResponseCodeMatched", + "StatusCode": 200, + "Protocol": "HTTP" + } + } + ] + } + } + ] + } + } + }, + { + "title": "To describe application status using filters", + "documentation": "This example uses a filter to describe impaired application status in a specific Availability Zone.", + "input": { + "Filters": [ + { + "Name": "availability-zone-id", + "Values": [ + "use1-az1" + ] + }, + { + "Name": "status", + "Values": [ + "impaired" + ] + } + ], + "MaxResults": 10 + }, + "output": { + "ApplicationStatuses": { + "Instances": [ + { + "InstanceId": "i-0123456789abcdef0", + "ApplicationStatus": { + "Status": "impaired", + "Details": [ + { + "ApplicationStatusCheckId": "asc-0123456789abcdef0", + "Aggregation": "included", + "Status": "failed", + "Reason": { + "Code": "ConnectionTimeout" + } + } + ] + } + } + ] + } + } + } + ] } }, "com.amazonaws.ec2#DescribeApplicationStatusCheckAssociations": { @@ -36313,7 +36857,35 @@ "target": "com.amazonaws.ec2#DescribeApplicationStatusCheckAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Describes the associations for one or more application status checks. For more\n information, see Application\n status checks. To avoid timeouts and retrieve complete results, use the\n pagination parameters.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary.

\n
" + "smithy.api#documentation": "

Describes the associations for one or more application status checks. For more\n information, see Application\n status checks. To avoid timeouts and retrieve complete results, use the\n pagination parameters.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary.

\n
", + "smithy.api#examples": [ + { + "title": "To describe application status check associations", + "documentation": "This example describes instance ID associations for the specified application status check.", + "input": { + "ApplicationStatusCheckIds": [ + "asc-0123456789abcdef0" + ], + "Filters": [ + { + "Name": "association-type", + "Values": [ + "instance-id" + ] + } + ] + }, + "output": { + "Associations": [ + { + "ApplicationStatusCheckId": "asc-0123456789abcdef0", + "AssociationType": "instance-id", + "Value": "i-0123456789abcdef0" + } + ] + } + } + ] } }, "com.amazonaws.ec2#DescribeApplicationStatusCheckAssociationsMaxResults": { @@ -36424,9 +36996,9 @@ "Port": 80, "Path": "/health", "Aggregation": "included", - "Interval": 10, - "Timeout": 5, - "FailureThreshold": 3, + "Interval": 60, + "Timeout": 6, + "FailureThreshold": 2, "SuccessThreshold": 2 } ] @@ -36434,13 +37006,13 @@ }, { "title": "To describe application status checks using filters", - "documentation": "This example uses filters to describe application status checks with a specific tag.", + "documentation": "This example uses a filter to describe application status checks included in aggregation.", "input": { "Filters": [ { - "Name": "tag:Environment", + "Name": "aggregation", "Values": [ - "Production" + "included" ] } ], @@ -36454,9 +37026,9 @@ "Port": 80, "Path": "/health", "Aggregation": "included", - "Interval": 10, - "Timeout": 5, - "FailureThreshold": 3, + "Interval": 60, + "Timeout": 6, + "FailureThreshold": 2, "SuccessThreshold": 2 } ] @@ -43484,6 +44056,82 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes one or more IPAM internet registry associations. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociationsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the internet registry associations to describe.

", + "smithy.api#xmlName": "IpamInternetRegistryAssociationId" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters to apply to the results.

", + "smithy.api#xmlName": "Filter" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeIpamInternetRegistryAssociationsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + }, + "IpamInternetRegistryAssociations": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociationSet", + "smithy.api#documentation": "

The internet registry associations.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociationSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#DescribeIpamPolicies": { "type": "operation", "input": { @@ -61490,6 +62138,103 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#EnableIpamInternetRegistryAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableIpamInternetRegistryAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#EnableIpamInternetRegistryAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Enables Resource Public Key Infrastructure (RPKI) on an existing IPAM internet registry association by providing BGP Public Key Infrastructure (BPKI) certificate details. After enabling, you can create Route Origin Authorizations (ROAs) for prefixes registered with the internet registry.

" + } + }, + "com.amazonaws.ec2#EnableIpamInternetRegistryAssociationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association to enable.

", + "smithy.api#required": {} + } + }, + "RpkiVersion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The RPKI version to use from the Parent Response XML.

", + "smithy.api#required": {} + } + }, + "ServiceUri": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The RPKI service URI for the publication point from the Parent Response XML.

", + "smithy.api#required": {} + } + }, + "ChildHandle": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The child handle for the BPKI certificate hierarchy from the Parent Response XML.

", + "smithy.api#required": {} + } + }, + "ParentHandle": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The parent handle for the BPKI certificate hierarchy from the Parent Response XML.

", + "smithy.api#required": {} + } + }, + "ParentBpkiTa": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The parent BPKI Trust Anchor certificate in PEM format from the Parent Response XML.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#EnableIpamInternetRegistryAssociationResult": { + "type": "structure", + "members": { + "IpamInternetRegistryAssociation": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociation", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociation", + "smithy.api#documentation": "

Information about the enabled internet registry association.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociation" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#EnableIpamOrganizationAdminAccount": { "type": "operation", "input": { @@ -68475,6 +69220,245 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#GetIpamDiscoveredRoutes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredRoutesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredRoutesResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves Border Gateway Protocol (BGP) routes discovered by IPAM resource discovery for a specified Region. Use this operation to view the Bring Your Own IP (BYOIP) address ranges that are currently advertised through BGP. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredRoutesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM resource discovery.

", + "smithy.api#required": {} + } + }, + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services Region to retrieve discovered routes for.

", + "smithy.api#required": {} + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters to apply to the results.

", + "smithy.api#xmlName": "Filter" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredRoutesResult": { + "type": "structure", + "members": { + "IpamDiscoveredRoutes": { + "target": "com.amazonaws.ec2#IpamDiscoveredRouteSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamDiscoveredRouteSet", + "smithy.api#documentation": "

The discovered BGP routes.

", + "smithy.api#xmlName": "ipamDiscoveredRouteSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsns": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsnsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsnsResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves Autonomous System Numbers (ASNs) registered with an internet registry for an IPAM internet registry association. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsnsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters to apply to the results.

", + "smithy.api#xmlName": "Filter" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationAsnsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + }, + "IpamInternetRegistryAssociationAsns": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationAsnSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociationAsnSet", + "smithy.api#documentation": "

The ASNs registered with the internet registry.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociationAsnSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrs": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrsResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves IP address CIDRs registered with an internet registry for an IPAM internet registry association. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters to apply to the results.

", + "smithy.api#xmlName": "Filter" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamInternetRegistryAssociationCidrsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + }, + "IpamInternetRegistryAssociationCidrs": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationCidrSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociationCidrSet", + "smithy.api#documentation": "

The CIDRs registered with the internet registry.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociationCidrSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#GetIpamPolicyAllocationRules": { "type": "operation", "input": { @@ -69192,6 +70176,337 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#GetIpamRouteOriginAuthorizations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamRouteOriginAuthorizationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamRouteOriginAuthorizationsResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the current Route Origin Authorizations (ROAs) published to the RPKI for an IPAM internet registry association. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamRouteOriginAuthorizationsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Filter results to a specific CIDR prefix.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamRouteOriginAuthorizationsResult": { + "type": "structure", + "members": { + "IpamRouteOriginAuthorizations": { + "target": "com.amazonaws.ec2#IpamRouteOriginAuthorizationInfoSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamRouteOriginAuthorizationSet", + "smithy.api#documentation": "

The Route Origin Authorizations published to the RPKI.

", + "smithy.api#xmlName": "ipamRouteOriginAuthorizationSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamRouteProtectionFindings": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamRouteProtectionFindingsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamRouteProtectionFindingsResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves route protection findings for an IPAM. Route protection findings show the Resource Public Key Infrastructure (RPKI) validation status of your Bring Your Own IP (BYOIP) routes. Findings identify routes that have valid, invalid, or unknown validation states. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamRouteProtectionFindingsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM to retrieve route protection findings for.

", + "smithy.api#required": {} + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters to apply to the results.

", + "smithy.api#xmlName": "Filter" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamRouteProtectionFindingsResult": { + "type": "structure", + "members": { + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The ID of the IPAM.

", + "smithy.api#xmlName": "ipamId" + } + }, + "RouteProtectionFindings": { + "target": "com.amazonaws.ec2#IpamRouteProtectionFindingSet", + "traits": { + "aws.protocols#ec2QueryName": "RouteProtectionFindingSet", + "smithy.api#documentation": "

The route protection findings.

", + "smithy.api#xmlName": "routeProtectionFindingSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltas": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltasRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltasResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the history of routing policy registration changes for an IPAM internet registry association. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltasRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "DeltaId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Filter results to a specific delta ID.

" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "smithy.api#documentation": "

The start of the time range to filter deltas by.

" + } + }, + "EndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "smithy.api#documentation": "

The end of the time range to filter deltas by.

" + } + }, + "ChronologicalOrder": { + "target": "com.amazonaws.ec2#ChronologicalOrder", + "traits": { + "smithy.api#documentation": "

The chronological order to return results in. Valid values: forward | reverse.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationDeltasResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrationDeltas": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDeltaSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationDeltaSet", + "smithy.api#documentation": "

The routing policy registration deltas.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationDeltaSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationsResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves routing policy registrations for an IPAM internet registry association. Each registration represents a Route Origin Authorization (ROA) that has been created or is pending publication to the RPKI. We recommend using pagination to ensure that the operation returns quickly and successfully.

" + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Filter results to a specific CIDR prefix.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If not specified, all available results are returned. To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamRoutingPolicyRegistrationsResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrations": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationSet", + "smithy.api#documentation": "

The routing policy registrations.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#GetLaunchTemplateData": { "type": "operation", "input": { @@ -90097,6 +91412,94 @@ } } }, + "com.amazonaws.ec2#IpamByoipAdvertisementType": { + "type": "enum", + "members": { + "regional": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "regional" + } + }, + "global": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "global" + } + } + }, + "traits": { + "smithy.api#documentation": "

The advertisement type of a BYOIP route.

" + } + }, + "com.amazonaws.ec2#IpamByoipCidrState": { + "type": "enum", + "members": { + "advertised": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "advertised" + } + }, + "deprovisioned": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deprovisioned" + } + }, + "failed_deprovision": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed-deprovision" + } + }, + "failed_provision": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed-provision" + } + }, + "pending_advertising": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-advertising" + } + }, + "pending_deprovision": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-deprovision" + } + }, + "pending_provision": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-provision" + } + }, + "pending_withdrawal": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-withdrawal" + } + }, + "provisioned": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "provisioned" + } + }, + "provisioned_not_publicly_advertisable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "provisioned-not-publicly-advertisable" + } + } + }, + "traits": { + "smithy.api#documentation": "

The state of a BYOIP CIDR.

" + } + }, "com.amazonaws.ec2#IpamCidrAuthorizationContext": { "type": "structure", "members": { @@ -90509,6 +91912,111 @@ } } }, + "com.amazonaws.ec2#IpamDiscoveredRoute": { + "type": "structure", + "members": { + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "traits": { + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", + "smithy.api#documentation": "

The ID of the IPAM resource discovery that discovered the route.

", + "smithy.api#xmlName": "ipamResourceDiscoveryId" + } + }, + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The Amazon Web Services Region where the route was discovered.

", + "smithy.api#xmlName": "resourceRegion" + } + }, + "ResourceOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceOwnerId", + "smithy.api#documentation": "

The ID of the resource owner.

", + "smithy.api#xmlName": "resourceOwnerId" + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The IP address prefix of the discovered route in CIDR notation.

", + "smithy.api#xmlName": "cidr" + } + }, + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The Autonomous System Number (ASN) that originates the route.

", + "smithy.api#xmlName": "asn" + } + }, + "State": { + "target": "com.amazonaws.ec2#IpamByoipCidrState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the BYOIP CIDR. Possible values:

\n
    \n
  • \n

    \n advertised - The CIDR is being advertised.

    \n
  • \n
  • \n

    \n deprovisioned - The CIDR has been deprovisioned.

    \n
  • \n
  • \n

    \n failed-deprovision - Deprovisioning failed.

    \n
  • \n
  • \n

    \n failed-provision - Provisioning failed.

    \n
  • \n
  • \n

    \n pending-deprovision - Deprovisioning is in progress.

    \n
  • \n
  • \n

    \n pending-provision - Provisioning is in progress.

    \n
  • \n
  • \n

    \n provisioned - The CIDR is provisioned.

    \n
  • \n
  • \n

    \n provisioned-not-publicly-advertisable - The CIDR is provisioned but not publicly advertisable.

    \n
  • \n
", + "smithy.api#xmlName": "state" + } + }, + "AdvertisementType": { + "target": "com.amazonaws.ec2#IpamByoipAdvertisementType", + "traits": { + "aws.protocols#ec2QueryName": "AdvertisementType", + "smithy.api#documentation": "

The advertisement type of the route. Possible values:

\n
    \n
  • \n

    \n regional - The IP address is advertised from a single location (regional services such as Amazon EC2).

    \n
  • \n
  • \n

    \n global - The IP address is advertised from multiple global locations simultaneously (global services such as Amazon CloudFront).

    \n
  • \n
", + "smithy.api#xmlName": "advertisementType" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkBorderGroup", + "smithy.api#documentation": "

The network border group for the route.

", + "smithy.api#xmlName": "networkBorderGroup" + } + }, + "PoolId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the BYOIP pool associated with the route.

", + "smithy.api#xmlName": "poolId" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "IpamPoolId", + "smithy.api#documentation": "

The ID of the IPAM pool associated with the route.

", + "smithy.api#xmlName": "ipamPoolId" + } + }, + "SampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "SampleTime", + "smithy.api#documentation": "

The time when the route was last sampled.

", + "smithy.api#xmlName": "sampleTime" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a BGP route discovered by IPAM resource discovery.

" + } + }, + "com.amazonaws.ec2#IpamDiscoveredRouteSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamDiscoveredRoute", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#IpamDiscoveryFailureCode": { "type": "enum", "members": { @@ -90708,6 +92216,242 @@ "com.amazonaws.ec2#IpamId": { "type": "string" }, + "com.amazonaws.ec2#IpamInternetRegistryAssociation": { + "type": "structure", + "members": { + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the internet registry association.

", + "smithy.api#xmlName": "ownerId" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociationId", + "smithy.api#documentation": "

The ID of the internet registry association.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociationId" + } + }, + "IpamInternetRegistryAssociationArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "IpamInternetRegistryAssociationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the internet registry association.

", + "smithy.api#xmlName": "ipamInternetRegistryAssociationArn" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The ID of the associated IPAM.

", + "smithy.api#xmlName": "ipamId" + } + }, + "IpamRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM.

", + "smithy.api#xmlName": "ipamRegion" + } + }, + "Rir": { + "target": "com.amazonaws.ec2#Rir", + "traits": { + "aws.protocols#ec2QueryName": "Rir", + "smithy.api#documentation": "

The Regional Internet Registry. Possible values:

\n
    \n
  • \n

    \n ripe - RIPE NCC (Europe, the Middle East, and Central Asia).

    \n
  • \n
  • \n

    \n apnic - APNIC (Asia Pacific).

    \n
  • \n
  • \n

    \n arin - ARIN (North America).

    \n
  • \n
  • \n

    \n lacnic - LACNIC (Latin America and the Caribbean).

    \n
  • \n
", + "smithy.api#xmlName": "rir" + } + }, + "OrganizationHandle": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OrganizationHandle", + "smithy.api#documentation": "

The organization handle at the internet registry.

", + "smithy.api#xmlName": "organizationHandle" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the internet registry association.

", + "smithy.api#xmlName": "description" + } + }, + "State": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the internet registry association. Valid values: pending-activation | pending-enable | create-in-progress | create-failed | enable-in-progress | enable-complete | enable-failed | delete-in-progress | delete-complete | delete-failed.

", + "smithy.api#xmlName": "state" + } + }, + "ChildRequestXml": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ChildRequestXml", + "smithy.api#documentation": "

The XML content for the child request to be submitted to the internet registry to complete the BPKI setup.

", + "smithy.api#xmlName": "childRequestXml" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the internet registry association.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an association between an IPAM and a Regional Internet Registry (RIR) for delegated RPKI management.

" + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationAsn": { + "type": "structure", + "members": { + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The Autonomous System Number.

", + "smithy.api#xmlName": "asn" + } + }, + "LastObservedAt": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LastObservedAt", + "smithy.api#documentation": "

The time when the ASN was last observed at the internet registry.

", + "smithy.api#xmlName": "lastObservedAt" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an Autonomous System Number (ASN) registered at an internet registry and associated with an IPAM.

" + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationAsnSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationAsn", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationCidr": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The IP address prefix in CIDR notation.

", + "smithy.api#xmlName": "cidr" + } + }, + "LastObservedAt": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LastObservedAt", + "smithy.api#documentation": "

The time when the CIDR was last observed at the internet registry.

", + "smithy.api#xmlName": "lastObservedAt" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an IP address CIDR registered at an internet registry and associated with an IPAM.

" + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationCidrSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationCidr", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamInternetRegistryAssociationState": { + "type": "enum", + "members": { + "pending_enable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-enable" + } + }, + "create_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-in-progress" + } + }, + "create_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-failed" + } + }, + "enable_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable-in-progress" + } + }, + "enable_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable-complete" + } + }, + "enable_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable-failed" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + } + }, + "traits": { + "smithy.api#documentation": "

The state of an IPAM internet registry association.

" + } + }, "com.amazonaws.ec2#IpamManagementState": { "type": "enum", "members": { @@ -93462,6 +95206,547 @@ } } }, + "com.amazonaws.ec2#IpamRouteOriginAuthorization": { + "type": "structure", + "members": { + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The Autonomous System Number (ASN) authorized by the ROA.

", + "smithy.api#xmlName": "asn" + } + }, + "Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Prefix", + "smithy.api#documentation": "

The IP address prefix authorized by the ROA in CIDR notation.

", + "smithy.api#xmlName": "prefix" + } + }, + "MaxLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxLength", + "smithy.api#documentation": "

The maximum prefix length that the ASN is authorized to announce.

", + "smithy.api#xmlName": "maxLength" + } + }, + "Match": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Match", + "smithy.api#documentation": "

Specifies whether the ROA matches the route announcement.

", + "smithy.api#xmlName": "match" + } + }, + "Expiration": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "Expiration", + "smithy.api#documentation": "

The expiration date of the ROA.

", + "smithy.api#xmlName": "expiration" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a Route Origin Authorization (ROA) published in the RPKI. A ROA cryptographically attests that a specific ASN is authorized to originate a specific IP address prefix.

" + } + }, + "com.amazonaws.ec2#IpamRouteOriginAuthorizationInfo": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The IP address prefix in CIDR notation authorized by the ROA.

", + "smithy.api#xmlName": "cidr" + } + }, + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The Autonomous System Number (ASN) authorized to originate the prefix.

", + "smithy.api#xmlName": "asn" + } + }, + "MaxLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxLength", + "smithy.api#documentation": "

The maximum prefix length that the ASN is authorized to announce.

", + "smithy.api#xmlName": "maxLength" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a Route Origin Authorization (ROA) currently published in the RPKI.

" + } + }, + "com.amazonaws.ec2#IpamRouteOriginAuthorizationInfoSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRouteOriginAuthorizationInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamRouteOriginAuthorizationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRouteOriginAuthorization", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamRouteOverlap": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Prefix", + "smithy.api#documentation": "

The overlapping IP address prefix in CIDR notation.

", + "smithy.api#xmlName": "prefix" + } + }, + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The ASN originating the overlapping route.

", + "smithy.api#xmlName": "asn" + } + }, + "DetectedAt": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DetectedAt", + "smithy.api#documentation": "

The time when the overlap was detected.

", + "smithy.api#xmlName": "detectedAt" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an overlapping route detected for a BYOIP prefix.

" + } + }, + "com.amazonaws.ec2#IpamRouteOverlapSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRouteOverlap", + "traits": { + "smithy.api#xmlName": "item" + } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.ec2#IpamRouteProtectionFinding": { + "type": "structure", + "members": { + "ResourceOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceOwnerId", + "smithy.api#documentation": "

The ID of the resource owner.

", + "smithy.api#xmlName": "resourceOwnerId" + } + }, + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the resource.

", + "smithy.api#xmlName": "resourceRegion" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "aws.protocols#ec2QueryName": "IpamPoolId", + "smithy.api#documentation": "

The ID of the IPAM pool associated with the finding.

", + "smithy.api#xmlName": "ipamPoolId" + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The IP address prefix in CIDR notation.

", + "smithy.api#xmlName": "cidr" + } + }, + "State": { + "target": "com.amazonaws.ec2#IpamByoipCidrState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the BYOIP CIDR. Possible values:

\n
    \n
  • \n

    \n advertised - The CIDR is being advertised.

    \n
  • \n
  • \n

    \n deprovisioned - The CIDR has been deprovisioned.

    \n
  • \n
  • \n

    \n failed-deprovision - Deprovisioning failed.

    \n
  • \n
  • \n

    \n failed-provision - Provisioning failed.

    \n
  • \n
  • \n

    \n pending-deprovision - Deprovisioning is in progress.

    \n
  • \n
  • \n

    \n pending-provision - Provisioning is in progress.

    \n
  • \n
  • \n

    \n provisioned - The CIDR is provisioned.

    \n
  • \n
  • \n

    \n provisioned-not-publicly-advertisable - The CIDR is provisioned but not publicly advertisable.

    \n
  • \n
", + "smithy.api#xmlName": "state" + } + }, + "AdvertisementType": { + "target": "com.amazonaws.ec2#IpamByoipAdvertisementType", + "traits": { + "aws.protocols#ec2QueryName": "AdvertisementType", + "smithy.api#documentation": "

The advertisement type. Possible values:

\n
    \n
  • \n

    \n regional - The IP address is advertised from a single location (regional services such as Amazon EC2).

    \n
  • \n
  • \n

    \n global - The IP address is advertised from multiple global locations simultaneously (global services such as Amazon CloudFront).

    \n
  • \n
", + "smithy.api#xmlName": "advertisementType" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkBorderGroup", + "smithy.api#documentation": "

The network border group.

", + "smithy.api#xmlName": "networkBorderGroup" + } + }, + "PoolId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the BYOIP pool.

", + "smithy.api#xmlName": "poolId" + } + }, + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Asn", + "smithy.api#documentation": "

The Autonomous System Number (ASN) that originates the route.

", + "smithy.api#xmlName": "asn" + } + }, + "RpkiStatus": { + "target": "com.amazonaws.ec2#IpamRpkiStatus", + "traits": { + "aws.protocols#ec2QueryName": "RpkiStatus", + "smithy.api#documentation": "

The RPKI validation status of the route. Possible values:

\n
    \n
  • \n

    \n valid - The route has a matching ROA that covers the prefix and origin ASN.

    \n
  • \n
  • \n

    \n invalid - The route has a ROA for the prefix, but the origin ASN or prefix length does not match.

    \n
  • \n
  • \n

    \n unknown - No ROA exists for the prefix, so RPKI validation cannot be performed.

    \n
  • \n
", + "smithy.api#xmlName": "rpkiStatus" + } + }, + "RpkiStrength": { + "target": "com.amazonaws.ec2#IpamRpkiStrength", + "traits": { + "aws.protocols#ec2QueryName": "RpkiStrength", + "smithy.api#documentation": "

The RPKI enforcement strength for the route. Possible values:

\n
    \n
  • \n

    \n strict - Invalid routes are rejected.

    \n
  • \n
  • \n

    \n permissive - Invalid routes are accepted but flagged.

    \n
  • \n
", + "smithy.api#xmlName": "rpkiStrength" + } + }, + "Roas": { + "target": "com.amazonaws.ec2#IpamRouteOriginAuthorizationSet", + "traits": { + "aws.protocols#ec2QueryName": "RoaSet", + "smithy.api#documentation": "

The Route Origin Authorizations (ROAs) that cover the prefix.

", + "smithy.api#xmlName": "roaSet" + } + }, + "RouteOverlaps": { + "target": "com.amazonaws.ec2#IpamRouteOverlapSet", + "traits": { + "aws.protocols#ec2QueryName": "RouteOverlapSet", + "smithy.api#documentation": "

The overlapping routes detected for this prefix.

", + "smithy.api#xmlName": "routeOverlapSet" + } + }, + "SampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "SampleTime", + "smithy.api#documentation": "

The time when the route was last sampled.

", + "smithy.api#xmlName": "sampleTime" + } + }, + "RoaSampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "RoaSampleTime", + "smithy.api#documentation": "

The time when the ROA data was last sampled.

", + "smithy.api#xmlName": "roaSampleTime" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a route protection finding, including the RPKI validation status of a BYOIP route announcement.

" + } + }, + "com.amazonaws.ec2#IpamRouteProtectionFindingSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRouteProtectionFinding", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistration": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The IP address prefix in CIDR notation authorized by the ROA.

", + "smithy.api#xmlName": "cidr" + } + }, + "Asns": { + "target": "com.amazonaws.ec2#AsnList", + "traits": { + "aws.protocols#ec2QueryName": "AsnSet", + "smithy.api#documentation": "

The Autonomous System Numbers (ASNs) authorized to originate the prefix.

", + "smithy.api#xmlName": "asnSet" + } + }, + "PermitMoreSpecificAnnouncements": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "aws.protocols#ec2QueryName": "PermitMoreSpecificAnnouncements", + "smithy.api#documentation": "

Specifies whether to permit more specific route announcements than the CIDR prefix. When enabled, ASNs can announce sub-prefixes of the authorized CIDR up to the specified maximum length. Default: false.

", + "smithy.api#xmlName": "permitMoreSpecificAnnouncements" + } + }, + "MaxLength": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationMaxLength", + "traits": { + "aws.protocols#ec2QueryName": "MaxLength", + "smithy.api#documentation": "

The maximum prefix length that the ASNs are authorized to announce.

", + "smithy.api#xmlName": "maxLength" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the routing policy registration.

", + "smithy.api#xmlName": "description" + } + }, + "LatestDeltaId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LatestDeltaId", + "smithy.api#documentation": "

The ID of the most recent delta that modified this registration.

", + "smithy.api#xmlName": "latestDeltaId" + } + }, + "State": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the routing policy registration. Valid values: pending-activate | activate-failed | create-in-progress | create-complete | update-in-progress | update-complete | delete-in-progress | delete-complete.

", + "smithy.api#xmlName": "state" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a routing policy registration that represents a Route Origin Authorization (ROA) managed through IPAM.

" + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta": { + "type": "structure", + "members": { + "DeltaId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DeltaId", + "smithy.api#documentation": "

The unique identifier of the delta.

", + "smithy.api#xmlName": "deltaId" + } + }, + "DeltaJson": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DeltaJson", + "smithy.api#documentation": "

The JSON specification describing the changes applied in this delta.

", + "smithy.api#xmlName": "deltaJson" + } + }, + "State": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDeltaState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the delta. Valid values: pending | published | failed.

", + "smithy.api#xmlName": "state" + } + }, + "StateMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#documentation": "

A message describing the current state, including error information if the delta failed.

", + "smithy.api#xmlName": "stateMessage" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a routing policy registration change, including the changes applied and their publication state.

" + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDeltaSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDeltaState": { + "type": "enum", + "members": { + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "published": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "published" + } + }, + "failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + } + }, + "traits": { + "smithy.api#documentation": "

The state of a routing policy registration delta.

" + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationMaxLength": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 48 + } + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistration", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamRoutingPolicyRegistrationState": { + "type": "enum", + "members": { + "pending_activate": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending-activate" + } + }, + "activate_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "activate-failed" + } + }, + "create_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-in-progress" + } + }, + "create_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-complete" + } + }, + "update_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-in-progress" + } + }, + "update_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-complete" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + } + }, + "traits": { + "smithy.api#documentation": "

The state of a routing policy registration.

" + } + }, + "com.amazonaws.ec2#IpamRpkiStatus": { + "type": "enum", + "members": { + "valid": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "valid" + } + }, + "invalid": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "invalid" + } + }, + "unknown": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unknown" + } + } + }, + "traits": { + "smithy.api#documentation": "

The RPKI validation status of a BGP route.

" + } + }, + "com.amazonaws.ec2#IpamRpkiStrength": { + "type": "enum", + "members": { + "strict": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "strict" + } + }, + "permissive": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "permissive" + } + } + }, + "traits": { + "smithy.api#documentation": "

The RPKI enforcement strength for route protection.

" + } + }, "com.amazonaws.ec2#IpamScope": { "type": "structure", "members": { @@ -100005,9 +102290,9 @@ "Port": 8080, "Path": "/healthv2", "Aggregation": "included", - "Interval": 10, - "Timeout": 5, - "FailureThreshold": 3, + "Interval": 60, + "Timeout": 6, + "FailureThreshold": 2, "SuccessThreshold": 2 } } @@ -102738,6 +105023,104 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistrationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistrationResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies an existing routing policy registration. You can update the authorized ASNs, maximum prefix length, and other properties of a Route Origin Authorization (ROA).

" + } + }, + "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistrationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamInternetRegistryAssociationId": { + "target": "com.amazonaws.ec2#IpamInternetRegistryAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM internet registry association.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP address prefix in CIDR notation identifying the routing policy registration to modify.

", + "smithy.api#required": {} + } + }, + "Asns": { + "target": "com.amazonaws.ec2#AsnList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The updated list of Autonomous System Numbers (ASNs) authorized to originate the prefix.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Asn" + } + }, + "PermitMoreSpecificAnnouncements": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to permit more specific route announcements than the CIDR prefix. Default: false.

" + } + }, + "MaxLength": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationMaxLength", + "traits": { + "smithy.api#documentation": "

The new maximum prefix length that the ASNs are authorized to announce. Must be greater than or equal to the prefix length of the CIDR.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A new description for the routing policy registration.

" + } + }, + "Force": { + "target": "com.amazonaws.ec2#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Forces the modification even if it conflicts with an announced route. Default: false.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the operation ignores the request, but does not return an error.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamRoutingPolicyRegistrationResult": { + "type": "structure", + "members": { + "IpamRoutingPolicyRegistrationDelta": { + "target": "com.amazonaws.ec2#IpamRoutingPolicyRegistrationDelta", + "traits": { + "aws.protocols#ec2QueryName": "IpamRoutingPolicyRegistrationDelta", + "smithy.api#documentation": "

Information about the routing policy registration delta created by this modification.

", + "smithy.api#xmlName": "ipamRoutingPolicyRegistrationDelta" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#ModifyIpamScope": { "type": "operation", "input": { @@ -119617,6 +122000,12 @@ "smithy.api#enumValue": "ipam-prefix-list-resolver-target" } }, + "ipam_internet_registry_association": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ipam-internet-registry-association" + } + }, "secondary_interface": { "target": "smithy.api#Unit", "traits": { @@ -120955,6 +123344,38 @@ } } }, + "com.amazonaws.ec2#Rir": { + "type": "enum", + "members": { + "ripe": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ripe" + } + }, + "apnic": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "apnic" + } + }, + "arin": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "arin" + } + }, + "lacnic": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "lacnic" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Regional Internet Registry (RIR).

" + } + }, "com.amazonaws.ec2#RoleId": { "type": "string" }, diff --git a/codegen/sdk/aws-models/healthlake.json b/codegen/sdk/aws-models/healthlake.json index 326eb26fe6f..b605b59bae2 100644 --- a/codegen/sdk/aws-models/healthlake.json +++ b/codegen/sdk/aws-models/healthlake.json @@ -1722,6 +1722,13 @@ "com.amazonaws.healthlake#DateTime": { "type": "timestamp" }, + "com.amazonaws.healthlake#DefaultEnabledBoolean": { + "type": "boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Specifies whether the feature is enabled. Defaults to true when not specified.

" + } + }, "com.amazonaws.healthlake#DefaultProfiles": { "type": "list", "member": { @@ -5427,6 +5434,13 @@ "traits": { "smithy.api#default": false } + }, + "ProvenanceEnabled": { + "target": "com.amazonaws.healthlake#DefaultEnabledBoolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Specifies whether to enable provenance for the import job.

" + } } }, "traits": { diff --git a/codegen/sdk/aws-models/mediapackagev2.json b/codegen/sdk/aws-models/mediapackagev2.json index 609185f53f8..06b540258d5 100644 --- a/codegen/sdk/aws-models/mediapackagev2.json +++ b/codegen/sdk/aws-models/mediapackagev2.json @@ -1672,6 +1672,7 @@ ] }, "UriSeparator": "UNDERSCORE", + "StreamNameOutputMode": "INDEX", "Segment": { "SegmentDurationSeconds": 6, "SegmentName": "segmentName", @@ -1771,6 +1772,7 @@ ] }, "UriSeparator": "UNDERSCORE", + "StreamNameOutputMode": "INDEX", "Segment": { "SegmentDurationSeconds": 6, "SegmentName": "segmentName", @@ -2501,6 +2503,12 @@ "smithy.api#documentation": "

The separator character to use in generated URIs for this origin endpoint. This setting applies to all manifest types on the endpoint. If you don't specify a value, the default is UNDERSCORE.

" } }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests. This setting is valid only when the associated channel's InputType is HLS. You can't change the stream name output mode after you create the endpoint.

INDEX uses numeric indices for stream names (for example, 1, 2, 3). PASSTHROUGH_NAME uses the stream names from the input manifest. If you don't specify a value, the default is INDEX.

" + } + }, "Tags": { "target": "com.amazonaws.mediapackagev2#TagMap", "traits": { @@ -2620,6 +2628,12 @@ "smithy.api#documentation": "

The separator character used in generated URIs for this origin endpoint.

" } }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests for this origin endpoint.

" + } + }, "ETag": { "target": "com.amazonaws.mediapackagev2#EntityTag", "traits": { @@ -5372,6 +5386,12 @@ "smithy.api#documentation": "

The separator character used in generated URIs for this origin endpoint.

" } }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests for this origin endpoint.

" + } + }, "ETag": { "target": "com.amazonaws.mediapackagev2#EntityTag", "traits": { @@ -6993,6 +7013,12 @@ "traits": { "smithy.api#documentation": "

The separator character used in generated URIs for this origin endpoint.

" } + }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests for this origin endpoint.

" + } } }, "traits": { @@ -8189,6 +8215,23 @@ "smithy.api#documentation": "

To insert an EXT-X-START tag in your HLS playlist, specify a StartTag configuration object with a valid TimeOffset. When you do, you can also optionally specify whether to include a PRECISE value in the EXT-X-START tag.

" } }, + "com.amazonaws.mediapackagev2#StreamNameOutputMode": { + "type": "enum", + "members": { + "INDEX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INDEX" + } + }, + "PASSTHROUGH_NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSTHROUGH_NAME" + } + } + } + }, "com.amazonaws.mediapackagev2#TagArn": { "type": "string" }, @@ -9227,6 +9270,12 @@ "smithy.api#documentation": "

The separator character to use in generated URIs for this origin endpoint. This setting applies to all manifest types on the endpoint. If you don't specify a value in the update request, the current value is preserved.

" } }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests. If you provide a value, it must match the current value. You can't change the stream name output mode after you create the endpoint.

" + } + }, "ETag": { "target": "com.amazonaws.mediapackagev2#EntityTag", "traits": { @@ -9341,6 +9390,12 @@ "smithy.api#documentation": "

The separator character used in generated URIs for this origin endpoint.

" } }, + "StreamNameOutputMode": { + "target": "com.amazonaws.mediapackagev2#StreamNameOutputMode", + "traits": { + "smithy.api#documentation": "

The output mode for stream names in egress manifests for this origin endpoint.

" + } + }, "ETag": { "target": "com.amazonaws.mediapackagev2#EntityTag", "traits": { @@ -10045,6 +10100,18 @@ "traits": { "smithy.api#enumValue": "NON_EPOCH_LOCKED_WITH_FORCE_ENDPOINT_ERROR_CONFIGURATION" } + }, + "ONLY_HLS_INPUT_TYPE_ALLOW_STREAM_NAME_OUTPUT_MODE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONLY_HLS_INPUT_TYPE_ALLOW_STREAM_NAME_OUTPUT_MODE" + } + }, + "STREAM_NAME_OUTPUT_MODE_IMMUTABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STREAM_NAME_OUTPUT_MODE_IMMUTABLE" + } } } }, diff --git a/codegen/sdk/aws-models/mediatailor.json b/codegen/sdk/aws-models/mediatailor.json index 41cb7feee0d..d7d4b7b80ca 100644 --- a/codegen/sdk/aws-models/mediatailor.json +++ b/codegen/sdk/aws-models/mediatailor.json @@ -144,6 +144,12 @@ "traits": { "smithy.api#documentation": "

The HTTP request configuration parameters for the ad decision server.

" } + }, + "VastResponse": { + "target": "com.amazonaws.mediatailor#VastResponse", + "traits": { + "smithy.api#documentation": "

The settings that control how MediaTailor processes VAST responses from the ad decision server.

" + } } }, "traits": { @@ -182,6 +188,35 @@ } } }, + "com.amazonaws.mediatailor#AdSequencingMode": { + "type": "enum", + "members": { + "FOLLOW_AD_SEQUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FOLLOW_AD_SEQUENCE" + } + }, + "IGNORE_AD_SEQUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IGNORE_AD_SEQUENCE" + } + }, + "FOLLOW_AD_SEQUENCE_ONLY_LIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FOLLOW_AD_SEQUENCE_ONLY_LIVE" + } + }, + "FOLLOW_AD_SEQUENCE_ONLY_VOD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FOLLOW_AD_SEQUENCE_ONLY_VOD" + } + } + } + }, "com.amazonaws.mediatailor#AdsInteractionExcludeEventType": { "type": "enum", "members": { @@ -5032,6 +5067,12 @@ "traits": { "smithy.api#documentation": "

The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre-roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns.

" } + }, + "AdDecisionServerConfiguration": { + "target": "com.amazonaws.mediatailor#PreRollAdDecisionServerConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for the ad decision server (ADS) for live pre-roll ads. The configuration contains settings that control how MediaTailor processes VAST responses for pre-roll ad breaks.

" + } } }, "traits": { @@ -6870,6 +6911,51 @@ } } }, + "com.amazonaws.mediatailor#PreRollAdDecisionServerConfiguration": { + "type": "structure", + "members": { + "VastResponse": { + "target": "com.amazonaws.mediatailor#PreRollVastResponse", + "traits": { + "smithy.api#documentation": "

The settings that control how MediaTailor processes VAST responses for live pre-roll ad breaks.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The ad decision server configuration for live pre-roll ads. It contains settings that control how MediaTailor processes VAST responses for pre-roll ad breaks.

" + } + }, + "com.amazonaws.mediatailor#PreRollAdSequencingMode": { + "type": "enum", + "members": { + "FOLLOW_AD_SEQUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FOLLOW_AD_SEQUENCE" + } + }, + "IGNORE_AD_SEQUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IGNORE_AD_SEQUENCE" + } + } + } + }, + "com.amazonaws.mediatailor#PreRollVastResponse": { + "type": "structure", + "members": { + "AdSequencingMode": { + "target": "com.amazonaws.mediatailor#PreRollAdSequencingMode", + "traits": { + "smithy.api#documentation": "

The ad sequencing mode for live pre-roll ads. FOLLOW_AD_SEQUENCE inserts sequenced ads in increasing order and uses standalone ads only as replacements when a sequenced ad fails. IGNORE_AD_SEQUENCE inserts ads in the order they appear in the VAST response, regardless of sequence attributes. The default behavior is IGNORE_AD_SEQUENCE.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The settings that control how MediaTailor processes VAST responses from the ad decision server for live pre-roll ad breaks.

" + } + }, "com.amazonaws.mediatailor#PrefetchConsumption": { "type": "structure", "members": { @@ -9478,6 +9564,20 @@ } } }, + "com.amazonaws.mediatailor#VastResponse": { + "type": "structure", + "members": { + "AdSequencingMode": { + "target": "com.amazonaws.mediatailor#AdSequencingMode", + "traits": { + "smithy.api#documentation": "

The ad sequencing mode that controls how MediaTailor handles sequenced and standalone ads in VAST responses. FOLLOW_AD_SEQUENCE inserts sequenced ads in increasing order for both live and VOD workflows, using standalone ads only as replacements when a sequenced ad fails. FOLLOW_AD_SEQUENCE_ONLY_LIVE enables ad sequencing for live workflows only. FOLLOW_AD_SEQUENCE_ONLY_VOD enables ad sequencing for VOD workflows only. IGNORE_AD_SEQUENCE inserts ads in the order they appear in the VAST response, regardless of sequence attributes. The default behavior is IGNORE_AD_SEQUENCE.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The settings that control how MediaTailor processes VAST responses from the ad decision server.

" + } + }, "com.amazonaws.mediatailor#VodSource": { "type": "structure", "members": { diff --git a/codegen/sdk/aws-models/sagemaker.json b/codegen/sdk/aws-models/sagemaker.json index 0b06f985a6b..eba2383aec1 100644 --- a/codegen/sdk/aws-models/sagemaker.json +++ b/codegen/sdk/aws-models/sagemaker.json @@ -63752,6 +63752,18 @@ "traits": { "smithy.api#enumValue": "Updating" } + }, + "PendingMaintenance": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PendingMaintenance" + } + }, + "InMaintenance": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InMaintenance" + } } } }, diff --git a/codegen/sdk/aws-models/securityagent.json b/codegen/sdk/aws-models/securityagent.json index 1790199482e..ead5cee0647 100644 --- a/codegen/sdk/aws-models/securityagent.json +++ b/codegen/sdk/aws-models/securityagent.json @@ -117,6 +117,18 @@ "traits": { "smithy.api#documentation": "

A description of the actor.

" } + }, + "enableEmailMfa": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Whether email-based MFA is enabled for this actor.

" + } + }, + "mfaForwardingAddress": { + "target": "com.amazonaws.securityagent#SensitiveEmailAddress", + "traits": { + "smithy.api#documentation": "

Server-generated email forwarding address for receiving MFA codes.

" + } } }, "traits": { @@ -11879,6 +11891,12 @@ "smithy.api#documentation": "

Sensitive email address.

" } }, + "com.amazonaws.securityagent#SensitiveEmailAddress": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, "com.amazonaws.securityagent#ServiceManagedInput": { "type": "structure", "members": { From 45d0fb2a864a86fc544bf923a39a6d422518f0c6 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Fri, 7 Aug 2026 18:09:49 +0000 Subject: [PATCH 07/22] feat: update AWS service endpoints metadata --- .../main/resources/aws/sdk/kotlin/codegen/endpoints.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json b/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json index 4a8c1fa5d64..a8061921fff 100644 --- a/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json +++ b/codegen/aws-sdk-codegen/src/main/resources/aws/sdk/kotlin/codegen/endpoints.json @@ -30256,6 +30256,12 @@ "cn-northwest-1" : { } } }, + "resource-explorer-2" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "resource-groups" : { "endpoints" : { "cn-north-1" : { }, From dad56faa74cb9683f9e29afeac00e624a0331a72 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Fri, 7 Aug 2026 18:16:35 +0000 Subject: [PATCH 08/22] chore: release 1.8.26 --- CHANGELOG.md | 12 ++++++++++++ gradle.properties | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7374e7eb64b..1e21b69b56e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Changelog +## [1.8.26] - 08/07/2026 + +### Features +* (**amplify**) Increased the maximum allowed length of the oauthToken parameter in the CreateApp and UpdateApp APIs to support longer OAuth tokens issued by third-party Git providers. +* (**connect**) Supports updating the task template associated with in-progress task contacts using the new UpdateContactTaskTemplate API. This enables supervisors and developers to dynamically reassign task templates without creating a new task. +* (**ec2**) This release adds support for BGP route protection in Amazon VPC IP Address Manager (IPAM), including route discovery, RPKI route protection findings, and delegated RPKI (Internet Registry Associations, routing policy registrations, and ROA management) for BYOIP prefixes. +* (**healthlake**) Adds provenanceEnabled to StartFHIRImportJob +* (**mediapackagev2**) StreamNameOutputMode - a new optional field on MediaPackageV2 OriginEndpoints that lets customers choose whether egress manifests use numeric stream indices (default) or encoder-assigned stream names from the input +* (**mediatailor**) Added support for inserting ads via the VAST Ad Buffet standard. You can now configure MediaTailor to insert ads in sequence order using the AdSequencingMode setting in your playback configuration. Standalone ads are used as fallbacks when a sequenced ad is unavailable. +* (**sagemaker**) Amazon SageMaker adds maintenance lifecycle statuses for Notebook Instances +* (**securityagent**) Added enableEmailMfa input field on Actor to enable email-based MFA during penetration tests. When enabled, a server-generated mfaForwardingAddress is returned. Set up a forwarding rule in your email provider to forward MFA emails to this address so the agent can complete email-based MFA login flows + ## [1.8.25] - 08/06/2026 ### Features diff --git a/gradle.properties b/gradle.properties index 4e495dde6d8..4707bc15054 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.26-SNAPSHOT +sdkVersion=1.8.26 # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From c7a2d9c51b2fa372a488f09b9f5286b028cd77db Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Fri, 7 Aug 2026 18:16:37 +0000 Subject: [PATCH 09/22] chore: bump snapshot version to 1.8.27-SNAPSHOT --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 4707bc15054..aa48a3680f3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.26 +sdkVersion=1.8.27-SNAPSHOT # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 280c6ef22f8381da1a9616e264aa5e084f7fe0f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2026 10:05:38 -0700 Subject: [PATCH 10/22] chore(deps): bump ksp-version from 2.3.10 to 2.3.11 (#1972) Bumps `ksp-version` from 2.3.10 to 2.3.11. Updates `com.google.devtools.ksp:symbol-processing-api` from 2.3.10 to 2.3.11 - [Release notes](https://github.com/google/ksp/releases) - [Commits](https://github.com/google/ksp/compare/2.3.10...2.3.11) Updates `com.google.devtools.ksp:symbol-processing-gradle-plugin` from 2.3.10 to 2.3.11 - [Release notes](https://github.com/google/ksp/releases) - [Commits](https://github.com/google/ksp/compare/2.3.10...2.3.11) Updates `com.google.devtools.ksp` from 2.3.10 to 2.3.11 - [Release notes](https://github.com/google/ksp/releases) - [Commits](https://github.com/google/ksp/compare/2.3.10...2.3.11) --- updated-dependencies: - dependency-name: com.google.devtools.ksp:symbol-processing-api dependency-version: 2.3.11 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.google.devtools.ksp:symbol-processing-gradle-plugin dependency-version: 2.3.11 dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.google.devtools.ksp dependency-version: 2.3.11 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index bf0d940157f..ee3a4ab2b20 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] kotlin-version = "2.4.0" -ksp-version = "2.3.10" +ksp-version = "2.3.11" dokka-version = "2.2.0" jackson-bom-version = "2.22.1" From 4e02a09a4f26984f9de1730f806e79c4e31daa0f Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Mon, 10 Aug 2026 18:07:33 +0000 Subject: [PATCH 11/22] feat: update AWS API models --- codegen/sdk/aws-models/connect.json | 6 + .../sdk/aws-models/elementalinference.json | 358 ++++++++++++++++++ codegen/sdk/aws-models/medialive.json | 7 + codegen/sdk/aws-models/sagemaker-runtime.json | 24 ++ codegen/sdk/aws-models/sagemaker.json | 52 ++- 5 files changed, 446 insertions(+), 1 deletion(-) diff --git a/codegen/sdk/aws-models/connect.json b/codegen/sdk/aws-models/connect.json index 2bec315e2db..483f474766e 100644 --- a/codegen/sdk/aws-models/connect.json +++ b/codegen/sdk/aws-models/connect.json @@ -25259,6 +25259,12 @@ "traits": { "smithy.api#enumValue": "zh-CN" } + }, + "MS_MY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ms-MY" + } } } }, diff --git a/codegen/sdk/aws-models/elementalinference.json b/codegen/sdk/aws-models/elementalinference.json index 7fc91fa4c97..2cbdf3e65ce 100644 --- a/codegen/sdk/aws-models/elementalinference.json +++ b/codegen/sdk/aws-models/elementalinference.json @@ -161,12 +161,49 @@ "traits": { "smithy.api#documentation": "

A string that you want Elemental Inference to always include in the event clipping metadata for this output. The string might identify the sports event in the source media, for example.

" } + }, + "dataSourceConfiguration": { + "target": "com.amazonaws.elementalinference#DataSourceConfiguration", + "traits": { + "smithy.api#documentation": "

The data source to map onto this clipping output. This parameter is optional. When you include this parameter, Elemental Inference reads the event data for the fixture that you specify, and includes that data in the event clipping metadata for this output.

If you omit this parameter, Elemental Inference doesn't map a data source onto this output.

" + } } }, "traits": { "smithy.api#documentation": "

A type of OutputConfig, used when the output in a feed is for the clip feature.

" } }, + "com.amazonaws.elementalinference#Competitor": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the competitor, as provided by the data source.

" + } + }, + "isHome": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether this competitor is the home side in the fixture. If true, this competitor is the home side. If false, this competitor is the away side.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about one competitor in a fixture. It is used in the FixtureSummary that is in the SearchFixtures response.

" + } + }, + "com.amazonaws.elementalinference#CompetitorList": { + "type": "list", + "member": { + "target": "com.amazonaws.elementalinference#Competitor" + }, + "traits": { + "smithy.api#length": { + "max": 30 + } + } + }, "com.amazonaws.elementalinference#ConflictException": { "type": "structure", "members": { @@ -546,6 +583,38 @@ "smithy.api#documentation": "

A type of OutputConfig, used when the output in a feed is for the crop feature.

" } }, + "com.amazonaws.elementalinference#DataSourceConfiguration": { + "type": "structure", + "members": { + "fixtureId": { + "target": "com.amazonaws.elementalinference#FixtureId", + "traits": { + "smithy.api#documentation": "

The ID of the fixture whose event data you want Elemental Inference to map onto this clipping output. The fixture should be the sports event in the source media that the feed is processing.

To obtain this ID, use the SearchFixtures operation to find the fixture, then use the fixtureId from the matching FixtureSummary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the data source configuration for a clipping output. It identifies the fixture whose event data Elemental Inference maps onto the clipping metadata. It is used in the dataSourceConfiguration property of a ClippingConfig.

" + } + }, + "com.amazonaws.elementalinference#DataSourceSport": { + "type": "enum", + "members": { + "BASKETBALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "basketball" + } + }, + "AMERICAN_FOOTBALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "american-football" + } + } + } + }, "com.amazonaws.elementalinference#DeleteDictionary": { "type": "operation", "input": { @@ -1023,6 +1092,9 @@ { "target": "com.amazonaws.elementalinference#ListTagsForResource" }, + { + "target": "com.amazonaws.elementalinference#SearchFixtures" + }, { "target": "com.amazonaws.elementalinference#TagResource" }, @@ -2146,6 +2218,124 @@ "target": "com.amazonaws.elementalinference#FeedSummary" } }, + "com.amazonaws.elementalinference#FilterName": { + "type": "enum", + "members": { + "COMPETITOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPETITOR" + } + } + } + }, + "com.amazonaws.elementalinference#FilterValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.elementalinference#FilterValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.elementalinference#FilterValue" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.elementalinference#FixtureDate": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\d{4}-\\d{2}-\\d{2}$" + } + }, + "com.amazonaws.elementalinference#FixtureId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.elementalinference#FixtureSummary": { + "type": "structure", + "members": { + "fixtureId": { + "target": "com.amazonaws.elementalinference#FixtureId", + "traits": { + "smithy.api#documentation": "

The ID of the fixture. Specify this ID in the clipping output of a feed, to identify the fixture whose event data you want Elemental Inference to map onto the clipping metadata.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the fixture, as provided by the data source. For example, the names of the two competing teams.

", + "smithy.api#required": {} + } + }, + "fixtureGroup": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The group that the fixture belongs to, such as the competition, league, or tournament. The data source doesn't provide this information for every fixture.

" + } + }, + "scheduledStart": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The scheduled start time of the fixture, as provided by the data source. The actual start time might differ.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "status": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The status of the fixture in its lifecycle, as provided by the data source. For example, Scheduled or Completed.

", + "smithy.api#required": {} + } + }, + "competitors": { + "target": "com.amazonaws.elementalinference#CompetitorList", + "traits": { + "smithy.api#documentation": "

An array of the competitors (the teams or individuals) in the fixture.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about one fixture. It is used in the SearchFixtures response.

Elemental Inference relays the information in this structure from the data source, so that you can identify the fixture that matches your source media.

" + } + }, + "com.amazonaws.elementalinference#FixtureSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.elementalinference#FixtureSummary" + } + }, + "com.amazonaws.elementalinference#GatewayTimedOutException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The request timed out before the service returned a response. This is a temporary condition. Retry the request. If the problem persists, contact AWS Support.

", + "smithy.api#error": "server", + "smithy.api#httpError": 504, + "smithy.api#retryable": {} + } + }, "com.amazonaws.elementalinference#GetDictionary": { "type": "operation", "input": { @@ -2886,6 +3076,157 @@ "smithy.api#pattern": "^s3://[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]/.+$" } }, + "com.amazonaws.elementalinference#SearchFilter": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.elementalinference#FilterName", + "traits": { + "smithy.api#documentation": "

The dimension of the fixture to filter on. Valid values: COMPETITOR.

", + "smithy.api#required": {} + } + }, + "values": { + "target": "com.amazonaws.elementalinference#FilterValueList", + "traits": { + "smithy.api#documentation": "

An array of values to match in the dimension that you specified in name. You can specify up to 10 values. A fixture appears in the results if it matches at least one of these values.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter for a fixture search. It is used in the filters array of a SearchFixtures request.

" + } + }, + "com.amazonaws.elementalinference#SearchFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.elementalinference#SearchFilter" + }, + "traits": { + "smithy.api#length": { + "max": 10 + } + } + }, + "com.amazonaws.elementalinference#SearchFixtures": { + "type": "operation", + "input": { + "target": "com.amazonaws.elementalinference#SearchFixturesRequest" + }, + "output": { + "target": "com.amazonaws.elementalinference#SearchFixturesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elementalinference#AccessDeniedException" + }, + { + "target": "com.amazonaws.elementalinference#GatewayTimedOutException" + }, + { + "target": "com.amazonaws.elementalinference#InternalServerErrorException" + }, + { + "target": "com.amazonaws.elementalinference#ServiceUnavailableException" + }, + { + "target": "com.amazonaws.elementalinference#TooManyRequestException" + }, + { + "target": "com.amazonaws.elementalinference#ValidationException" + } + ], + "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to search fixtures" + }, + "smithy.api#documentation": "

Searches for the fixtures (sports events, such as a specific basketball game) that are available for a sport in a date window. Each fixture in the response includes a fixtureId that you specify in the clipping output of a feed, so that Elemental Inference maps the event data for that fixture onto the clipping metadata. This operation is paginated: if there are more fixtures than fit in one page, the response includes a nextToken that you pass in a subsequent request.

", + "smithy.api#http": { + "method": "POST", + "uri": "/v1/fixtures", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "fixtures", + "pageSize": "maxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.elementalinference#SearchFixturesRequest": { + "type": "structure", + "members": { + "sport": { + "target": "com.amazonaws.elementalinference#DataSourceSport", + "traits": { + "smithy.api#documentation": "

The sport to search for fixtures. Valid values: basketball (search for basketball fixtures), american-football (search for american-football fixtures).

", + "smithy.api#required": {} + } + }, + "startDate": { + "target": "com.amazonaws.elementalinference#FixtureDate", + "traits": { + "smithy.api#documentation": "

The first day of the search window, in UTC. The search includes fixtures that are scheduled on this day.

Specify the date in ISO 8601 format, as YYYY-MM-DD. For example, 2026-03-14.

", + "smithy.api#required": {} + } + }, + "endDate": { + "target": "com.amazonaws.elementalinference#FixtureDate", + "traits": { + "smithy.api#documentation": "

The last day of the search window, in UTC. The search includes fixtures that are scheduled on this day. Specify the date in ISO 8601 format, as YYYY-MM-DD.

If you omit this parameter, Elemental Inference searches only the day that you specified in startDate. The window from startDate through endDate must not exceed seven days.

" + } + }, + "filters": { + "target": "com.amazonaws.elementalinference#SearchFilterList", + "traits": { + "smithy.api#documentation": "

An array of filters that narrow the results. Each filter applies to one dimension of a fixture, such as the competitor. You can specify up to 10 filters.

A fixture must satisfy every filter in the array in order to appear in the results. Within one filter, a fixture must match at least one of the values.

" + } + }, + "maxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of fixtures to return for each API request.

The service might return fewer fixtures than the maxResults value. When more fixtures match the search, the response also includes a nextToken value that you can use to fetch the next batch of results.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The token that identifies the batch of results that you want to see.

For example, you submit a SearchFixtures request with maxResults set at 5. The service returns the first batch of results (up to 5) and a nextToken value. To see the next batch of results, you submit the SearchFixtures request a second time, with the same search criteria, and specify the nextToken value.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elementalinference#SearchFixturesResponse": { + "type": "structure", + "members": { + "fixtures": { + "target": "com.amazonaws.elementalinference#FixtureSummaryList", + "traits": { + "smithy.api#documentation": "

An array of FixtureSummary objects, one for each fixture that matches the search. The array is empty if no fixtures match.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The token that identifies the next batch of results. To see the next batch, submit the SearchFixtures request again, with the same search criteria, and specify this value in nextToken.

This parameter is absent when there are no more results to return.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.elementalinference#ServiceQuotaExceededException": { "type": "structure", "members": { @@ -2902,6 +3243,23 @@ "smithy.api#httpError": 402 } }, + "com.amazonaws.elementalinference#ServiceUnavailableException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The service is temporarily unable to handle the request. Retry the request. If the problem persists, contact AWS Support.

", + "smithy.api#error": "server", + "smithy.api#httpError": 503, + "smithy.api#retryable": {} + } + }, "com.amazonaws.elementalinference#StringList": { "type": "list", "member": { diff --git a/codegen/sdk/aws-models/medialive.json b/codegen/sdk/aws-models/medialive.json index 25cb0cbc9f9..b886fb3636c 100644 --- a/codegen/sdk/aws-models/medialive.json +++ b/codegen/sdk/aws-models/medialive.json @@ -30522,6 +30522,13 @@ "smithy.api#documentation": "username for destination", "smithy.api#jsonName": "username" } + }, + "VirtualSourceAddress": { + "target": "com.amazonaws.medialive#__string", + "traits": { + "smithy.api#documentation": "Specifies the source IP address for outbound multicast packets.", + "smithy.api#jsonName": "virtualSourceAddress" + } } }, "traits": { diff --git a/codegen/sdk/aws-models/sagemaker-runtime.json b/codegen/sdk/aws-models/sagemaker-runtime.json index 092646f9b82..2995fc1e52a 100644 --- a/codegen/sdk/aws-models/sagemaker-runtime.json +++ b/codegen/sdk/aws-models/sagemaker-runtime.json @@ -1687,6 +1687,13 @@ "smithy.api#documentation": "

Creates a stateful session or identifies an existing one. You can do one of the\n following:

\n
    \n
  • \n

    Create a stateful session by specifying the value\n NEW_SESSION.

    \n
  • \n
  • \n

    Send your request to an existing stateful session by specifying the ID of that\n session.

    \n
  • \n
\n

With a stateful session, you can send multiple requests to a stateful model. When you\n create a session with a stateful model, the model must create the session ID and set the\n expiration time. The model must also provide that information in the response to your\n request. You can get the ID and timestamp from the NewSessionId response\n parameter. For any subsequent request where you specify that session ID, SageMaker AI routes the request to the same instance that supports the session.

", "smithy.api#httpHeader": "X-Amzn-SageMaker-Session-Id" } + }, + "PrefixAwareId": { + "target": "com.amazonaws.sagemakerruntime#PrefixAwareIdHeader", + "traits": { + "smithy.api#documentation": "

An optional, stable identifier that serves as a routing hint for prefix-aware routing.\n The service routes requests with the same prefix and the same identifier to the same\n instance. If requests from different applications might have the same prompt prefix, set\n a different identifier for each application to differentiate their routing\n decisions.

\n

Applies only to endpoints configured with a\n RoutingStrategy of PREFIX_AWARE.

", + "smithy.api#httpHeader": "X-Amzn-SageMaker-Prefix-Aware-Id" + } } }, "traits": { @@ -1857,6 +1864,13 @@ "smithy.api#documentation": "

The ID of a stateful session to handle your request.

\n

You can't create a stateful session by using the\n InvokeEndpointWithResponseStream action. Instead, you can create one by\n using the \n InvokeEndpoint\n action. In your request, you\n specify NEW_SESSION for the SessionId request parameter. The\n response to that request provides the session ID for the NewSessionId\n response parameter.

", "smithy.api#httpHeader": "X-Amzn-SageMaker-Session-Id" } + }, + "PrefixAwareId": { + "target": "com.amazonaws.sagemakerruntime#PrefixAwareIdHeader", + "traits": { + "smithy.api#documentation": "

An optional, stable identifier that serves as a routing hint for prefix-aware routing.\n The service routes requests with the same prefix and the same identifier to the same\n instance. If requests from different applications might have the same prompt prefix, set\n a different identifier for each application to differentiate their routing\n decisions.

\n

Applies only to endpoints configured with a\n RoutingStrategy of PREFIX_AWARE.

", + "smithy.api#httpHeader": "X-Amzn-SageMaker-Prefix-Aware-Id" + } } }, "traits": { @@ -2008,6 +2022,16 @@ "smithy.api#documentation": "

A wrapper for pieces of the payload that's returned in response to a streaming\n inference request. A streaming inference response consists of one or more payload parts.\n

" } }, + "com.amazonaws.sagemakerruntime#PrefixAwareIdHeader": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^\\A\\S[\\p{Print}]*\\z$" + } + }, "com.amazonaws.sagemakerruntime#RequestTTLSecondsHeader": { "type": "integer", "traits": { diff --git a/codegen/sdk/aws-models/sagemaker.json b/codegen/sdk/aws-models/sagemaker.json index eba2383aec1..cd3193fa950 100644 --- a/codegen/sdk/aws-models/sagemaker.json +++ b/codegen/sdk/aws-models/sagemaker.json @@ -66905,6 +66905,44 @@ } } }, + "com.amazonaws.sagemaker#PrefixAwareRoutingConcurrencyThreshold": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.sagemaker#PrefixAwareRoutingConfig": { + "type": "structure", + "members": { + "PrefixLength": { + "target": "com.amazonaws.sagemaker#PrefixAwareRoutingPrefixLength", + "traits": { + "smithy.api#documentation": "

The maximum length of the prefix used for routing decisions. Required when RoutingStrategy is PREFIX_AWARE.

  • For the SageMaker Runtime InvokeEndpoint and InvokeEndpointWithResponseStream APIs, this value specifies the number of bytes from the beginning of the request body.

  • For OpenAI-compatible API, this value specifies the number of characters from the text content of the messages array.

The endpoint routes requests that share the same prefix to the same instance. Set this value to cover shared content (such as system prompts) plus enough unique content to distribute workloads across instances.

" + } + }, + "ConcurrencyThreshold": { + "target": "com.amazonaws.sagemaker#PrefixAwareRoutingConcurrencyThreshold", + "traits": { + "smithy.api#documentation": "

The maximum number of in-flight requests on the target instance before the endpoint routes to another instance. Required when RoutingStrategy is PREFIX_AWARE. When in-flight requests on the prefix-selected instance reach this threshold, the endpoint routes the request to an instance with more available capacity.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for prefix-aware routing on a SageMaker real-time inference endpoint. Specify PrefixLength and ConcurrencyThreshold to control routing behavior.

" + } + }, + "com.amazonaws.sagemaker#PrefixAwareRoutingPrefixLength": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1024, + "max": 65536 + } + } + }, "com.amazonaws.sagemaker#PresignedDomainUrl": { "type": "string" }, @@ -70575,9 +70613,15 @@ "target": "com.amazonaws.sagemaker#RoutingStrategy", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Sets how the endpoint routes incoming traffic:

  • LEAST_OUTSTANDING_REQUESTS: The endpoint routes requests to the specific instances that have more capacity to process them.

  • RANDOM: The endpoint routes each request to a randomly chosen instance.

", + "smithy.api#documentation": "

Sets how the endpoint routes incoming traffic:

  • LEAST_OUTSTANDING_REQUESTS: The endpoint routes requests to the specific instances that have more capacity to process them.

  • RANDOM: The endpoint routes each request to a randomly chosen instance.

  • PREFIX_AWARE: The endpoint routes requests that share the same prompt prefix to the same instance. When the number of in-flight requests on the selected instance reaches the configured threshold, the endpoint routes the request to an instance with more available capacity.

", "smithy.api#required": {} } + }, + "PrefixAwareRoutingConfig": { + "target": "com.amazonaws.sagemaker#PrefixAwareRoutingConfig", + "traits": { + "smithy.api#documentation": "

The configuration for prefix-aware routing. Specify this parameter only when you set RoutingStrategy to PREFIX_AWARE.

" + } } }, "traits": { @@ -74246,6 +74290,12 @@ "traits": { "smithy.api#enumValue": "RANDOM" } + }, + "PREFIX_AWARE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PREFIX_AWARE" + } } } }, From ce158597de27194286de59e822f998c57d703fba Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Mon, 10 Aug 2026 18:14:24 +0000 Subject: [PATCH 12/22] chore: release 1.8.27 --- CHANGELOG.md | 9 +++++++++ gradle.properties | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e21b69b56e..40ff18ddbc5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [1.8.27] - 08/10/2026 + +### Features +* (**connect**) Added Malay language option to use AI to automatically fill evaluation forms in Malay +* (**elementalinference**) Added support for the SearchFixtures API and DataSourceConfiguration, enabling customers to map fixture event data onto clipping outputs for improved feature accuracy. +* (**medialive**) Added VirtualSourceAddress to multicast output destinations for MediaLive Anywhere channels. Specifies the source IP address for outbound multicast packets when downstream networks enforce source-IP filtering. +* (**sagemaker**) Added PREFIX AWARE routing strategy and PrefixAwareRoutingConfig to CreateEndpointConfig. Configure PrefixLength and ConcurrencyThreshold to route requests that share the same prompt prefix to the same instance. +* (**sagemakerruntime**) Added the PrefixAwareId header to InvokeEndpoint and InvokeEndpointWithResponseStream. This optional parameter serves as a routing hint for endpoints configured with prefix-aware routing, differentiating routing decisions for requests that share the same prompt prefix. + ## [1.8.26] - 08/07/2026 ### Features diff --git a/gradle.properties b/gradle.properties index aa48a3680f3..f7fc8770dfe 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.27-SNAPSHOT +sdkVersion=1.8.27 # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 6291bcf0487266f2763166cdc75e9b8587697cf8 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Mon, 10 Aug 2026 18:14:26 +0000 Subject: [PATCH 13/22] chore: bump snapshot version to 1.8.28-SNAPSHOT --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index f7fc8770dfe..cc15ec0e767 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.27 +sdkVersion=1.8.28-SNAPSHOT # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 7356a4c2a0256e9635fc794fbaa7e3fccdfd282c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2026 11:14:49 -0700 Subject: [PATCH 14/22] chore(deps): bump software.amazon.dynamodb:DynamoDBLocal (#1968) Bumps software.amazon.dynamodb:DynamoDBLocal from 3.3.0 to 3.3.1. --- updated-dependencies: - dependency-name: software.amazon.dynamodb:DynamoDBLocal dependency-version: 3.3.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index ee3a4ab2b20..7c34e4a78cc 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -19,7 +19,7 @@ smithy-kotlin-version = "1.7.6" smithy-version = "1.72.1" # testing -ddb-local-version = "3.3.0" +ddb-local-version = "3.3.1" kotest-version = "5.9.1" kotlinx-benchmark-version = "0.4.17" kotlinx-serialization-version = "1.11.0" From 43c6e925fb878760dafbdf5e470f6fc23d05e72b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2026 12:47:17 -0700 Subject: [PATCH 15/22] chore(deps): bump org.jsoup:jsoup from 1.22.2 to 1.23.1 (#1967) Bumps [org.jsoup:jsoup](https://github.com/jhy/jsoup) from 1.22.2 to 1.23.1. - [Release notes](https://github.com/jhy/jsoup/releases) - [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES.md) - [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.22.2...jsoup-1.23.1) --- updated-dependencies: - dependency-name: org.jsoup:jsoup dependency-version: 1.23.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 7c34e4a78cc..f9d20ecc9f4 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -27,7 +27,7 @@ kaml-version = "0.55.0" mockk-version = "1.14.11" slf4j-version = "2.0.18" mokkery-version = "3.4.2" -jsoup-version = "1.22.2" +jsoup-version = "1.23.1" [libraries] jackson-bom = { module = "com.fasterxml.jackson:jackson-bom", version.ref = "jackson-bom-version" } From 394d9db6f780a80a7d6f186e12fbf02fec58164d Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Tue, 11 Aug 2026 18:09:47 +0000 Subject: [PATCH 16/22] feat: update AWS API models --- codegen/sdk/aws-models/account-access.json | 2115 +++++++++++++++++ codegen/sdk/aws-models/bedrock-agentcore.json | 37 + codegen/sdk/aws-models/cleanrooms.json | 583 ++++- codegen/sdk/aws-models/clouddirectory.json | 2 +- codegen/sdk/aws-models/connect.json | 1542 +++++++++++- codegen/sdk/aws-models/datazone.json | 6 + codegen/sdk/aws-models/eks.json | 683 ++++++ codegen/sdk/aws-models/organizations.json | 2 +- codegen/sdk/aws-models/textract.json | 8 +- 9 files changed, 4958 insertions(+), 20 deletions(-) create mode 100644 codegen/sdk/aws-models/account-access.json diff --git a/codegen/sdk/aws-models/account-access.json b/codegen/sdk/aws-models/account-access.json new file mode 100644 index 00000000000..10c04b2c04a --- /dev/null +++ b/codegen/sdk/aws-models/account-access.json @@ -0,0 +1,2115 @@ +{ + "smithy": "2.0", + "shapes": { + "com.amazonaws.accountaccess#AWSAccountAccess": { + "type": "service", + "version": "2018-05-10", + "operations": [ + { + "target": "com.amazonaws.accountaccess#ListTagsForResource" + }, + { + "target": "com.amazonaws.accountaccess#TagResource" + }, + { + "target": "com.amazonaws.accountaccess#UntagResource" + } + ], + "resources": [ + { + "target": "com.amazonaws.accountaccess#Application" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "Account Access", + "arnNamespace": "account-access" + }, + "aws.api#tagEnabled": {}, + "aws.auth#sigv4": { + "name": "account-access" + }, + "aws.endpoints#dualStackOnlyEndpoints": {}, + "aws.endpoints#standardRegionalEndpoints": {}, + "aws.iam#defineConditionKeys": { + "aws:TagKeys": { + "type": "ArrayOfString", + "documentation": "Tag Keys", + "externalDocumentation": "http://example.com" + } + }, + "aws.protocols#restJson1": {}, + "smithy.api#cors": { + "additionalAllowedHeaders": [ + "Content-Type", + "Content-Length" + ] + }, + "smithy.api#documentation": "

Account access manager enables you to manage applications and entitlements that grant IAM Identity Center principals access to IAM roles across accounts.

", + "smithy.api#title": "Account Access", + "smithy.rules#endpointBdd": { + "version": "1.1", + "parameters": { + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "string" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "string" + } + }, + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + }, + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "results": [ + { + "conditions": [], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://account-access-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://account-access.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "root": 2, + "nodeCount": 6, + "nodes": "/////wAAAAH/////AAAAAAAAAAYAAAADAAAAAQAAAAQF9eEFAAAAAgAAAAUF9eEFAAAAAwX14QMF9eEEAAAAAwX14QEF9eEC" + }, + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "string" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "string" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://account-access-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://account-access.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "For custom endpoint with region not set and fips disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with fips enabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://account-access.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" + } + } + }, + "com.amazonaws.accountaccess#AccessDeniedException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

You do not have sufficient access to perform this operation.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.accountaccess#Account": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[0-9]{12}$" + } + }, + "com.amazonaws.accountaccess#AlreadyCreatedException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The resource you are trying to create already exists. To retrieve the existing resource, use the corresponding Get operation.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.accountaccess#Application": { + "type": "resource", + "identifiers": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn" + } + }, + "create": { + "target": "com.amazonaws.accountaccess#CreateApplication" + }, + "read": { + "target": "com.amazonaws.accountaccess#GetApplication" + }, + "delete": { + "target": "com.amazonaws.accountaccess#DeleteApplication" + }, + "list": { + "target": "com.amazonaws.accountaccess#ListApplications" + }, + "operations": [ + { + "target": "com.amazonaws.accountaccess#CreateEntitlement" + }, + { + "target": "com.amazonaws.accountaccess#DeleteEntitlement" + }, + { + "target": "com.amazonaws.accountaccess#GetEntitlement" + }, + { + "target": "com.amazonaws.accountaccess#ListEntitlements" + } + ], + "traits": { + "aws.api#arn": { + "template": "application/{applicationArn}" + }, + "aws.api#taggable": { + "property": "tags" + }, + "aws.iam#iamResource": { + "name": "application" + }, + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, + "com.amazonaws.accountaccess#ApplicationArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::Service::Resource" + }, + "smithy.api#length": { + "min": 49, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[a-z0-9-]+:account-access:[a-z0-9]+(-[a-z0-9]+)*:[0-9]{12}:application/[a-zA-Z0-9-]+$" + } + }, + "com.amazonaws.accountaccess#ApplicationList": { + "type": "list", + "member": { + "target": "com.amazonaws.accountaccess#ApplicationSummary" + } + }, + "com.amazonaws.accountaccess#ApplicationSummary": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

The ARN of the application.

", + "smithy.api#required": {} + } + }, + "tenantId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The tenant identifier associated with the application.

" + } + }, + "createdAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the application was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the application was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains summary information about an account access manager application.

" + } + }, + "com.amazonaws.accountaccess#ConflictException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The request conflicts with the current state of the resource.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.accountaccess#CreateApplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#CreateApplicationRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#CreateApplicationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#AlreadyCreatedException" + }, + { + "target": "com.amazonaws.accountaccess#ConflictException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an account access manager instance and its Amazon Web Services account access application in the associated IAM Identity Center instance. This operation is idempotent; calling it multiple times with the same parameters returns the existing application.

", + "smithy.api#http": { + "uri": "/applications", + "method": "POST", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accountaccess#CreateApplicationRequest": { + "type": "structure", + "members": { + "identitySource": { + "target": "com.amazonaws.accountaccess#IdentitySource", + "traits": { + "smithy.api#documentation": "

Specifies the identity source for the application. The identity source defines the IAM Identity Center instance that provides principals for entitlements.

", + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.accountaccess#TagsMap", + "traits": { + "smithy.api#documentation": "

Specifies the tags to assign to the application.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#CreateApplicationResponse": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the created application.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#CreateEntitlement": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#CreateEntitlementRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#CreateEntitlementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#ConflictException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an entitlement (assignment) in account access manager. An entitlement (assignment) grants a principal (IAM Identity Center user or group) permission to assume a specified IAM role in an Amazon Web Services account. This operation is idempotent.

", + "smithy.api#http": { + "uri": "/entitlements", + "method": "POST", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accountaccess#CreateEntitlementRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application to create the entitlement for.

", + "smithy.api#required": {} + } + }, + "entitlement": { + "target": "com.amazonaws.accountaccess#Entitlement", + "traits": { + "smithy.api#documentation": "

Specifies the entitlement configuration, including the principal and the IAM role to grant access to.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#CreateEntitlementResponse": { + "type": "structure", + "members": { + "entitlementId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the created entitlement.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#DateTime": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.accountaccess#DeleteApplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#DeleteApplicationRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#DeleteApplicationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#ConflictException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an account access manager application. This operation is idempotent; deleting an application that has already been deleted does not return an error.

", + "smithy.api#http": { + "uri": "/applications/{applicationArn}", + "method": "DELETE", + "code": 204 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accountaccess#DeleteApplicationRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#DeleteApplicationResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#DeleteEntitlement": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#DeleteEntitlementRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#DeleteEntitlementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#ConflictException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an entitlement from an account access manager application. This operation is idempotent; deleting an entitlement that has already been deleted does not return an error.

", + "smithy.api#http": { + "uri": "/entitlements/{entitlementId}", + "method": "DELETE", + "code": 204 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accountaccess#DeleteEntitlementRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application that the entitlement belongs to.

", + "smithy.api#httpQuery": "applicationArn", + "smithy.api#required": {} + } + }, + "entitlementId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the unique identifier of the entitlement to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#DeleteEntitlementResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#Entitlement": { + "type": "union", + "members": { + "principalRole": { + "target": "com.amazonaws.accountaccess#PrincipalRoleEntitlement", + "traits": { + "smithy.api#documentation": "

The principal-to-role mapping for the entitlement.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the entitlement configuration for an account access manager application, defining which principal can assume which IAM role.

" + } + }, + "com.amazonaws.accountaccess#EntitlementDetails": { + "type": "union", + "members": { + "principalRole": { + "target": "com.amazonaws.accountaccess#PrincipalRoleEntitlementDetails", + "traits": { + "smithy.api#documentation": "

The principal-to-role mapping details for the entitlement, including the target account.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains detailed information about an entitlement, including the principal, IAM role, and target account.

" + } + }, + "com.amazonaws.accountaccess#EntitlementFilter": { + "type": "structure", + "members": { + "principalRole": { + "target": "com.amazonaws.accountaccess#PrincipalRoleEntitlementFilter", + "traits": { + "smithy.api#documentation": "

The principal-to-role filter criteria for narrowing entitlement results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies filter criteria for listing entitlements.

" + } + }, + "com.amazonaws.accountaccess#EntitlementSummary": { + "type": "union", + "members": { + "principalRole": { + "target": "com.amazonaws.accountaccess#PrincipalRoleEntitlementSummary", + "traits": { + "smithy.api#documentation": "

The principal-to-role mapping summary for the entitlement.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains summary information about an entitlement.

" + } + }, + "com.amazonaws.accountaccess#EntitlementsList": { + "type": "list", + "member": { + "target": "com.amazonaws.accountaccess#EntitlementsListMember" + } + }, + "com.amazonaws.accountaccess#EntitlementsListMember": { + "type": "structure", + "members": { + "entitlementId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the entitlement.

", + "smithy.api#required": {} + } + }, + "entitlement": { + "target": "com.amazonaws.accountaccess#EntitlementSummary", + "traits": { + "smithy.api#documentation": "

The summary information for the entitlement.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the entitlement was created.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an entitlement in a list result.

" + } + }, + "com.amazonaws.accountaccess#ErrorCode": { + "type": "enum", + "members": { + "AUTHORIZATION_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUTHORIZATION_ERROR" + } + }, + "RESOURCE_NOT_FOUND_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE_NOT_FOUND_ERROR" + } + }, + "SERVICE_QUOTA_EXCEEDED_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SERVICE_QUOTA_EXCEEDED_ERROR" + } + }, + "INTERNAL_SERVICE_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTERNAL_SERVICE_ERROR" + } + } + } + }, + "com.amazonaws.accountaccess#ErrorDetails": { + "type": "structure", + "members": { + "code": { + "target": "com.amazonaws.accountaccess#ErrorCode", + "traits": { + "smithy.api#documentation": "

The error code that identifies the type of error.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A human-readable message that describes the error.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an error that occurred during application processing.

" + } + }, + "com.amazonaws.accountaccess#GetApplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#GetApplicationRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#GetApplicationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves details about an account access manager application, including its status, identity source, and tags.

", + "smithy.api#http": { + "uri": "/applications/{applicationArn}", + "method": "GET", + "code": 200 + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "GetApplicationUnauthorized", + "params": { + "applicationArn": "arn:aws:account-access:us-east-1:123456789012:application/unauthorized-app-0123" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.accountaccess#AccessDeniedException" + } + } + } + ], + "smithy.waiters#waitable": { + "ApplicationActive": { + "minDelay": 5, + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "status", + "expected": "ACTIVE", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "CREATE_FAILED", + "comparator": "stringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "status", + "expected": "DELETE_FAILED", + "comparator": "stringEquals" + } + } + } + ] + } + } + } + }, + "com.amazonaws.accountaccess#GetApplicationRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#GetApplicationResponse": { + "type": "structure", + "members": { + "identitySource": { + "target": "com.amazonaws.accountaccess#IdentitySourceDetails", + "traits": { + "smithy.api#documentation": "

The identity source details for the application, including the IAM Identity Center instance configuration.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.accountaccess#Status", + "traits": { + "smithy.api#documentation": "

The current status of the application.

", + "smithy.api#required": {} + } + }, + "tenantId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The tenant identifier associated with the application.

" + } + }, + "createdAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the application was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the application was last updated.

", + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.accountaccess#TagsMap", + "traits": { + "smithy.api#documentation": "

The tags associated with the application.

" + } + }, + "error": { + "target": "com.amazonaws.accountaccess#ErrorDetails", + "traits": { + "smithy.api#documentation": "

The error details if the application is in a failed state.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#GetEntitlement": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#GetEntitlementRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#GetEntitlementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves details about a specific entitlement for an account access manager application, including the principal, IAM role, and target account.

", + "smithy.api#http": { + "uri": "/entitlements/{entitlementId}", + "method": "GET", + "code": 200 + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "GetEntitlementUnauthorized", + "params": { + "applicationArn": "arn:aws:account-access:us-east-1:123456789012:application/test-app-1234567890abcdef", + "entitlementId": "entitlement-smoke-test-id" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.accountaccess#AccessDeniedException" + } + } + } + ] + } + }, + "com.amazonaws.accountaccess#GetEntitlementRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application that the entitlement belongs to.

", + "smithy.api#httpQuery": "applicationArn", + "smithy.api#required": {} + } + }, + "entitlementId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the unique identifier of the entitlement to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#GetEntitlementResponse": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

The ARN of the application that the entitlement belongs to.

", + "smithy.api#required": {} + } + }, + "entitlementId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the entitlement.

", + "smithy.api#required": {} + } + }, + "entitlement": { + "target": "com.amazonaws.accountaccess#EntitlementDetails", + "traits": { + "smithy.api#documentation": "

The entitlement details, including the principal, IAM role, and target account.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.accountaccess#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the entitlement was created.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#GroupId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 47 + }, + "smithy.api#pattern": "^([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$" + } + }, + "com.amazonaws.accountaccess#IdentityCenter": { + "type": "structure", + "members": { + "instanceArn": { + "target": "com.amazonaws.accountaccess#IdentityCenterInstanceArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM Identity Center instance.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the IAM Identity Center instance to use as the identity source for an application.

" + } + }, + "com.amazonaws.accountaccess#IdentityCenterApplicationArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::SSO::Application" + }, + "smithy.api#length": { + "min": 10, + "max": 1224 + }, + "smithy.api#pattern": "^arn:[a-z0-9-]+:sso::[0-9]{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16}$" + } + }, + "com.amazonaws.accountaccess#IdentityCenterDetails": { + "type": "structure", + "members": { + "instanceArn": { + "target": "com.amazonaws.accountaccess#IdentityCenterInstanceArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM Identity Center instance.

", + "smithy.api#required": {} + } + }, + "applicationArn": { + "target": "com.amazonaws.accountaccess#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM Identity Center application created for this account access manager application.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains detailed information about the IAM Identity Center configuration for an application.

" + } + }, + "com.amazonaws.accountaccess#IdentityCenterInstanceArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::SSO::Instance" + }, + "smithy.api#length": { + "min": 10, + "max": 1224 + }, + "smithy.api#pattern": "^arn:[a-z0-9-]+:sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$" + } + }, + "com.amazonaws.accountaccess#IdentityCenterPrincipal": { + "type": "union", + "members": { + "userId": { + "target": "com.amazonaws.accountaccess#UserId", + "traits": { + "smithy.api#documentation": "

The unique identifier of a user in IAM Identity Center.

" + } + }, + "groupId": { + "target": "com.amazonaws.accountaccess#GroupId", + "traits": { + "smithy.api#documentation": "

The unique identifier of a group in IAM Identity Center.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Identifies a user or group from IAM Identity Center.

" + } + }, + "com.amazonaws.accountaccess#IdentityCenterPrincipalFilter": { + "type": "union", + "members": { + "userId": { + "target": "com.amazonaws.accountaccess#UserId", + "traits": { + "smithy.api#documentation": "

The unique identifier of a user in IAM Identity Center to filter by.

" + } + }, + "groupId": { + "target": "com.amazonaws.accountaccess#GroupId", + "traits": { + "smithy.api#documentation": "

The unique identifier of a group in IAM Identity Center to filter by.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies filter criteria for an IAM Identity Center principal.

" + } + }, + "com.amazonaws.accountaccess#IdentitySource": { + "type": "union", + "members": { + "identityCenter": { + "target": "com.amazonaws.accountaccess#IdentityCenter", + "traits": { + "smithy.api#documentation": "

The IAM Identity Center instance to use as the identity source.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the identity source for an account access manager application.

" + } + }, + "com.amazonaws.accountaccess#IdentitySourceDetails": { + "type": "union", + "members": { + "identityCenter": { + "target": "com.amazonaws.accountaccess#IdentityCenterDetails", + "traits": { + "smithy.api#documentation": "

The IAM Identity Center configuration details for the identity source.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains detailed information about the identity source for an application.

" + } + }, + "com.amazonaws.accountaccess#InternalServerException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

An internal service error occurred. Try your request again later.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.accountaccess#ListApplications": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#ListApplicationsRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#ListApplicationsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the account access manager applications in your account. Use pagination to ensure that the operation returns quickly and successfully.

", + "smithy.api#http": { + "uri": "/applications-list", + "method": "POST", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "applications" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListApplicationsSuccess", + "params": { + "maxResults": 1 + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "success": {} + } + } + ] + } + }, + "com.amazonaws.accountaccess#ListApplicationsRequest": { + "type": "structure", + "members": { + "maxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

Specifies the maximum number of results to return in a single call.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the pagination token from a previous call to retrieve the next set of results.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#ListApplicationsResponse": { + "type": "structure", + "members": { + "applications": { + "target": "com.amazonaws.accountaccess#ApplicationList", + "traits": { + "smithy.api#documentation": "

The list of applications.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The pagination token to use in a subsequent request to retrieve the next set of results. This value is null when there are no more results to return.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#ListEntitlements": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#ListEntitlementsRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#ListEntitlementsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#AccessDeniedException" + }, + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the entitlements for a specified account access manager application. You can filter results by principal, IAM role, or account. Use pagination to ensure that the operation returns quickly and successfully.

", + "smithy.api#http": { + "uri": "/entitlements-list", + "method": "POST", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "entitlements" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListEntitlementsWithFilters", + "params": { + "applicationArn": "arn:aws:account-access:us-east-1:123456789012:application/test-app-1234567890abcdef", + "filter": { + "principalRole": { + "account": "123456789012", + "principal": { + "identityCenter": { + "userId": "12345678-1234-1234-1234-123456789012" + } + } + } + }, + "maxResults": 10 + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-east-1" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.accountaccess#AccessDeniedException" + } + } + } + ] + } + }, + "com.amazonaws.accountaccess#ListEntitlementsRequest": { + "type": "structure", + "members": { + "applicationArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the application to list entitlements for.

", + "smithy.api#required": {} + } + }, + "filter": { + "target": "com.amazonaws.accountaccess#EntitlementFilter", + "traits": { + "smithy.api#documentation": "

Specifies filter criteria to narrow the entitlements returned. You can filter by principal, IAM role, or account.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the pagination token from a previous call to retrieve the next set of results.

" + } + }, + "maxResults": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

Specifies the maximum number of results to return in a single call.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accountaccess#ListEntitlementsResponse": { + "type": "structure", + "members": { + "entitlements": { + "target": "com.amazonaws.accountaccess#EntitlementsList", + "traits": { + "smithy.api#documentation": "

The list of entitlements for the specified application.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The pagination token to use in a subsequent request to retrieve the next set of results. This value is null when there are no more results to return.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#ListTagsForResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "smithy.api#documentation": "

Lists the tags associated with an account access manager resource.

", + "smithy.api#http": { + "method": "GET", + "uri": "/tags/{resourceArn}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.accountaccess#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the resource to list tags for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.accountaccess#Application", + "ids": { + "applicationArn": "resourceArn" + } + } + ], + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, + "com.amazonaws.accountaccess#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.accountaccess#TagsMap", + "traits": { + "smithy.api#documentation": "

The tags associated with the resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#Principal": { + "type": "union", + "members": { + "identityCenter": { + "target": "com.amazonaws.accountaccess#IdentityCenterPrincipal", + "traits": { + "smithy.api#documentation": "

The IAM Identity Center principal (user or group).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Identifies a principal (user or group) that can be granted entitlements.

" + } + }, + "com.amazonaws.accountaccess#PrincipalFilter": { + "type": "union", + "members": { + "identityCenter": { + "target": "com.amazonaws.accountaccess#IdentityCenterPrincipalFilter", + "traits": { + "smithy.api#documentation": "

The IAM Identity Center principal filter criteria.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies filter criteria for a principal.

" + } + }, + "com.amazonaws.accountaccess#PrincipalRoleEntitlement": { + "type": "structure", + "members": { + "principal": { + "target": "com.amazonaws.accountaccess#Principal", + "traits": { + "smithy.api#documentation": "

The principal (user or group) that is granted access to assume the IAM role.

", + "smithy.api#required": {} + } + }, + "roleArn": { + "target": "com.amazonaws.accountaccess#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role that the principal can assume.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a principal-to-role entitlement that grants an IAM Identity Center principal permission to assume an IAM role.

" + } + }, + "com.amazonaws.accountaccess#PrincipalRoleEntitlementDetails": { + "type": "structure", + "members": { + "principal": { + "target": "com.amazonaws.accountaccess#Principal", + "traits": { + "smithy.api#documentation": "

The principal (user or group) that is granted access to assume the IAM role.

", + "smithy.api#required": {} + } + }, + "roleArn": { + "target": "com.amazonaws.accountaccess#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role that the principal can assume.

", + "smithy.api#required": {} + } + }, + "account": { + "target": "com.amazonaws.accountaccess#Account", + "traits": { + "smithy.api#documentation": "

The 12-digit Amazon Web Services account ID where the IAM role resides.

", + "smithy.api#required": {} + } + }, + "accountName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The friendly name of the Amazon Web Services account where the IAM role resides.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains detailed information about a principal-to-role entitlement, including the target account.

" + } + }, + "com.amazonaws.accountaccess#PrincipalRoleEntitlementFilter": { + "type": "structure", + "members": { + "principal": { + "target": "com.amazonaws.accountaccess#PrincipalFilter", + "traits": { + "smithy.api#documentation": "

The principal to filter entitlements by.

" + } + }, + "roleArn": { + "target": "com.amazonaws.accountaccess#RoleArn", + "traits": { + "smithy.api#documentation": "

The IAM role ARN to filter entitlements by.

" + } + }, + "account": { + "target": "com.amazonaws.accountaccess#Account", + "traits": { + "smithy.api#documentation": "

The 12-digit Amazon Web Services account ID to filter entitlements by.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies filter criteria for principal-to-role entitlements. All specified criteria must match for an entitlement to be returned.

" + } + }, + "com.amazonaws.accountaccess#PrincipalRoleEntitlementSummary": { + "type": "structure", + "members": { + "principal": { + "target": "com.amazonaws.accountaccess#Principal", + "traits": { + "smithy.api#documentation": "

The principal (user or group) that is granted access to assume the IAM role.

", + "smithy.api#required": {} + } + }, + "roleArn": { + "target": "com.amazonaws.accountaccess#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role that the principal can assume.

", + "smithy.api#required": {} + } + }, + "account": { + "target": "com.amazonaws.accountaccess#Account", + "traits": { + "smithy.api#documentation": "

The 12-digit Amazon Web Services account ID where the IAM role resides.

", + "smithy.api#required": {} + } + }, + "accountName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The friendly name of the Amazon Web Services account where the IAM role resides.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains summary information about a principal-to-role entitlement.

" + } + }, + "com.amazonaws.accountaccess#ResourceNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The specified resource does not exist. Verify that the resource identifier is correct and that the resource exists in the current Region.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.accountaccess#RoleArn": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "type": "AWS::IAM::Role" + }, + "smithy.api#pattern": "^arn:[a-z0-9-]+:iam::[0-9]{12}:role/([a-zA-Z0-9+=,.@_-]+/)*[a-zA-Z0-9+=,.@_-]+$" + } + }, + "com.amazonaws.accountaccess#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The request exceeds a service quota for your account.

", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.accountaccess#Status": { + "type": "enum", + "members": { + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_IN_PROGRESS" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "DELETE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_IN_PROGRESS" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } + } + }, + "com.amazonaws.accountaccess#TagKeys": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.accountaccess#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}", + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "smithy.api#documentation": "

Adds tags to an account access manager resource.

", + "smithy.api#http": { + "method": "POST", + "uri": "/tags/{resourceArn}" + } + } + }, + "com.amazonaws.accountaccess#TagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the resource to add tags to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.accountaccess#TagsMap", + "traits": { + "smithy.api#documentation": "

Specifies the tags to add to the resource.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.accountaccess#Application", + "ids": { + "applicationArn": "resourceArn" + } + } + ], + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, + "com.amazonaws.accountaccess#TagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#TagsMap": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.accountaccess#ThrottlingException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The request was denied due to request throttling. Try your request again later.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, + "com.amazonaws.accountaccess#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.accountaccess#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.accountaccess#UntagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accountaccess#InternalServerException" + }, + { + "target": "com.amazonaws.accountaccess#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accountaccess#ThrottlingException" + }, + { + "target": "com.amazonaws.accountaccess#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ], + "smithy.api#documentation": "

Removes tags from an account access manager resource.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/tags/{resourceArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accountaccess#UntagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.accountaccess#ApplicationArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN of the resource to remove tags from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tagKeys": { + "target": "com.amazonaws.accountaccess#TagKeys", + "traits": { + "aws.iam#conditionKeyValue": "aws:TagKeys", + "smithy.api#documentation": "

Specifies the tag keys to remove from the resource.

", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.accountaccess#Application", + "ids": { + "applicationArn": "resourceArn" + } + } + ], + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, + "com.amazonaws.accountaccess#UntagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.accountaccess#UserId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 47 + }, + "smithy.api#pattern": "^([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$" + } + }, + "com.amazonaws.accountaccess#ValidationException": { + "type": "structure", + "members": { + "message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

The input does not satisfy the constraints specified by the service. Check your request parameters and retry the request.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + } + } +} \ No newline at end of file diff --git a/codegen/sdk/aws-models/bedrock-agentcore.json b/codegen/sdk/aws-models/bedrock-agentcore.json index ca4d65d0b24..e00c016421c 100644 --- a/codegen/sdk/aws-models/bedrock-agentcore.json +++ b/codegen/sdk/aws-models/bedrock-agentcore.json @@ -416,6 +416,12 @@ "traits": { "smithy.api#documentation": "

Use a completed batch evaluation as the source of agent traces.

" } + }, + "onlineEvaluation": { + "target": "com.amazonaws.bedrockagentcore#OnlineEvaluationTraceConfig", + "traits": { + "smithy.api#documentation": "

Agent traces from an online evaluation configuration over a specified time range.

" + } } }, "traits": { @@ -14017,6 +14023,37 @@ "smithy.api#documentation": "

A reference to an existing online evaluation configuration to use as the data source for batch evaluation.

" } }, + "com.amazonaws.bedrockagentcore#OnlineEvaluationTraceConfig": { + "type": "structure", + "members": { + "onlineEvaluationConfigArn": { + "target": "com.amazonaws.bedrockagentcore#OnlineEvaluationConfigArn", + "traits": { + "smithy.api#documentation": "

The ARN of the online evaluation configuration to reuse sessions from.

", + "smithy.api#required": {} + } + }, + "startTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The start time of the time range. Only sessions evaluated at or after this timestamp are included.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "endTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The end time of the time range. Only sessions evaluated before this timestamp are included.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration for reusing agent traces from an online evaluation configuration for recommendation analysis. Because online evaluation is a continuous stream, a time range specifies which evaluated sessions the recommendation includes.

" + } + }, "com.amazonaws.bedrockagentcore#OperatorType": { "type": "enum", "members": { diff --git a/codegen/sdk/aws-models/cleanrooms.json b/codegen/sdk/aws-models/cleanrooms.json index 6fadce0a5b3..33544120e26 100644 --- a/codegen/sdk/aws-models/cleanrooms.json +++ b/codegen/sdk/aws-models/cleanrooms.json @@ -1341,6 +1341,237 @@ "smithy.api#pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" } }, + "com.amazonaws.cleanrooms#AnalysisLogExport": { + "type": "structure", + "members": { + "analysisLogExportId": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the analysis log export.

", + "smithy.api#required": {} + } + }, + "analysisId": { + "target": "com.amazonaws.cleanrooms#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the protected query that the analysis logs were exported for.

", + "smithy.api#required": {} + } + }, + "analysisType": { + "target": "com.amazonaws.cleanrooms#LogExportAnalysisType", + "traits": { + "smithy.api#documentation": "

The type of analysis that the logs were exported for. Currently, only PROTECTED_QUERY is supported.

", + "smithy.api#required": {} + } + }, + "membershipId": { + "target": "com.amazonaws.cleanrooms#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the membership that the analysis log export belongs to.

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "MembershipId" + } + }, + "status": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportStatus", + "traits": { + "smithy.api#documentation": "

The status of the analysis log export. Possible values are:

  • IN_PROGRESS – The export is currently running.

  • SUCCESS – The export completed successfully.

  • FAILED – The export failed. See the error field for details.

", + "smithy.api#required": {} + } + }, + "resultConfiguration": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportResultConfiguration", + "traits": { + "smithy.api#documentation": "

Contains the details needed to write the exported analysis logs.

", + "smithy.api#required": {} + } + }, + "createTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time the analysis log export was created.

", + "smithy.api#required": {} + } + }, + "updateTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time the analysis log export was last updated.

", + "smithy.api#required": {} + } + }, + "error": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportError", + "traits": { + "smithy.api#documentation": "

The analysis log export error. This is present only when the export status is FAILED.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An export of the redacted Apache Spark logs for a protected query.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportError": { + "type": "structure", + "members": { + "code": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The error code for the analysis log export.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The message for the analysis log export error.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The analysis log export error.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 36, + "max": 36 + }, + "smithy.api#pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportOutputConfiguration": { + "type": "structure", + "members": { + "s3": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportS3OutputConfiguration", + "traits": { + "smithy.api#documentation": "

Required configuration for an analysis log export with an s3 output type.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains configuration details for analysis log export output.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportResultConfiguration": { + "type": "structure", + "members": { + "outputConfiguration": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportOutputConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for analysis log export results.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains configurations for analysis log export results.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportS3OutputConfiguration": { + "type": "structure", + "members": { + "bucket": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The S3 bucket that the exported analysis logs are written to. The bucket must be in the same Amazon Web Services Region as the collaboration.

", + "smithy.api#length": { + "min": 3, + "max": 63 + }, + "smithy.api#pattern": "(?!^(\\d+\\.)+\\d+$)(^(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$)", + "smithy.api#required": {} + } + }, + "keyPrefix": { + "target": "com.amazonaws.cleanrooms#KeyPrefix", + "traits": { + "smithy.api#documentation": "

The S3 key prefix under which the exported analysis logs are written.

Only one export can be in progress at a time for a given query and destination. To export the same query twice at once, use a different key prefix for the second export.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains output information for an analysis log export with an S3 output type.

The exported logs are written under the bucket and key prefix that you specify. The path includes the collaboration ID, the protected query ID, and the analysis log export ID. Because the path includes the export ID, exporting the same query more than once doesn't overwrite the logs from an earlier export.

The exported logs are encrypted using the default encryption configuration of the destination bucket. Clean Rooms doesn't accept a KMS key for log export. To encrypt the exported logs with a customer managed key, configure the bucket's default encryption to use that key before you export.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportStatus": { + "type": "enum", + "members": { + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "SUCCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCESS" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportSummary": { + "type": "structure", + "members": { + "analysisLogExportId": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the analysis log export.

", + "smithy.api#required": {} + } + }, + "analysisId": { + "target": "com.amazonaws.cleanrooms#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the protected query that the analysis logs were exported for.

", + "smithy.api#required": {} + } + }, + "analysisType": { + "target": "com.amazonaws.cleanrooms#LogExportAnalysisType", + "traits": { + "smithy.api#documentation": "

The type of analysis that the logs were exported for. Currently, only PROTECTED_QUERY is supported.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportStatus", + "traits": { + "smithy.api#documentation": "

The status of the analysis log export. Possible values are:

  • IN_PROGRESS – The export is currently running.

  • SUCCESS – The export completed successfully.

  • FAILED – The export failed.

", + "smithy.api#required": {} + } + }, + "createTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time the analysis log export was created.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of an analysis log export, including its identifier, status, analysis type, and creation time. Returned by ListAnalysisLogExports.

" + } + }, + "com.amazonaws.cleanrooms#AnalysisLogExportSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportSummary" + } + }, "com.amazonaws.cleanrooms#AnalysisMethod": { "type": "enum", "members": { @@ -2477,6 +2708,18 @@ "traits": { "smithy.api#enumValue": "REVOKE_RECEIVE_RESULTS_ABILITY" } + }, + "GRANT_EXPORT_QUERY_ANALYSIS_LOG_ABILITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GRANT_EXPORT_QUERY_ANALYSIS_LOG_ABILITY" + } + }, + "REVOKE_EXPORT_QUERY_ANALYSIS_LOG_ABILITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REVOKE_EXPORT_QUERY_ANALYSIS_LOG_ABILITY" + } } } }, @@ -3235,6 +3478,18 @@ "traits": { "smithy.api#enumValue": "REVOKE_CAN_RECEIVE_INFERENCE_OUTPUT" } + }, + "GRANT_EXPORT_QUERY_ANALYSIS_LOG_ABILITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GRANT_EXPORT_QUERY_ANALYSIS_LOG_ABILITY" + } + }, + "REVOKE_EXPORT_QUERY_ANALYSIS_LOG_ABILITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REVOKE_EXPORT_QUERY_ANALYSIS_LOG_ABILITY" + } } } }, @@ -7399,7 +7654,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to create a new intermediate table in a membership", - "smithy.api#documentation": "

Creates an intermediate table in a membership. An intermediate table stores a query definition that you can execute later using PopulateIntermediateTable to materialize cached results. The intermediate table is owned by the member with the CAN_QUERY ability. This operation does not execute the stored query.

", + "smithy.api#documentation": "

Creates an intermediate table in a membership. The intermediate table is owned by the member with the CAN_QUERY ability. To populate the table with results, use PopulateIntermediateTable.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -7440,7 +7695,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to create analysis rules for intermediate tables", - "smithy.api#documentation": "

Creates an analysis rule for an intermediate table. Only the CUSTOM analysis rule type is supported. The service automatically determines whether the rule is first-party or multi-party restricted based on the intermediate table's inherited constraints. Only the intermediate table owner can call this operation.

", + "smithy.api#documentation": "

Creates an analysis rule for an intermediate table. Only the CUSTOM analysis rule type is supported. Only the intermediate table owner can call this operation.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -7532,7 +7787,7 @@ "populationAnalysisConfiguration": { "target": "com.amazonaws.cleanrooms#PopulationAnalysisConfiguration", "traits": { - "smithy.api#documentation": "

The configuration that defines the analysis used to populate the intermediate table. This configuration contains the SQL query or analysis template reference.

", + "smithy.api#documentation": "

The configuration that defines the analysis used to populate the intermediate table.

", "smithy.api#required": {} } }, @@ -7545,7 +7800,7 @@ "retentionInDays": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The number of days to retain populated data versions. Minimum value of 1, maximum value of 365.

", + "smithy.api#documentation": "

The number of days to retain populated data versions.

", "smithy.api#range": { "min": 1, "max": 365 @@ -8474,7 +8729,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to remove an intermediate table from a collaboration", - "smithy.api#documentation": "

Deletes an intermediate table. When you delete the table, the service marks it as DELETED, removes its analysis rule and schema, and triggers storage cleanup. This operation is idempotent. Only the intermediate table owner can call this operation.

", + "smithy.api#documentation": "

Deletes an intermediate table. The delete is idempotent. Only the intermediate table owner can call this operation.

", "smithy.api#http": { "code": 204, "method": "DELETE", @@ -9182,7 +9437,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to invalidate an intermediate table", - "smithy.api#documentation": "

Invalidates a specific intermediate table that references the caller's base table. The data provider (base table owner) calls this operation, not the intermediate table owner. By default, invalidation cascades to descendant intermediate tables.

", + "smithy.api#documentation": "

Marks an intermediate table as invalid when it references the caller's base table. The data provider (base table owner) calls this operation, not the intermediate table owner. By default, the operation also marks all descendant intermediate tables as invalid.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -9299,6 +9554,82 @@ "smithy.api#pattern": "^(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*$" } }, + "com.amazonaws.cleanrooms#GetAnalysisLogExport": { + "type": "operation", + "input": { + "target": "com.amazonaws.cleanrooms#GetAnalysisLogExportInput" + }, + "output": { + "target": "com.amazonaws.cleanrooms#GetAnalysisLogExportOutput" + }, + "errors": [ + { + "target": "com.amazonaws.cleanrooms#AccessDeniedException" + }, + { + "target": "com.amazonaws.cleanrooms#InternalServerException" + }, + { + "target": "com.amazonaws.cleanrooms#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cleanrooms#ThrottlingException" + }, + { + "target": "com.amazonaws.cleanrooms#ValidationException" + } + ], + "traits": { + "aws.iam#actionPermissionDescription": "Grants permission to get an analysis log export", + "smithy.api#documentation": "

Returns information about an analysis log export, including its current status and, if the export failed, the reason for the failure.

Poll this operation until the status is SUCCESS or FAILED. An export can't be canceled after it starts.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/memberships/{membershipIdentifier}/analysislogexports/{analysisLogExportIdentifier}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.cleanrooms#GetAnalysisLogExportInput": { + "type": "structure", + "members": { + "membershipIdentifier": { + "target": "com.amazonaws.cleanrooms#MembershipIdentifier", + "traits": { + "smithy.api#documentation": "

A unique identifier for the membership that the analysis log export belongs to. Currently accepts the membership ID.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "MembershipId" + } + }, + "analysisLogExportIdentifier": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the analysis log export to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cleanrooms#GetAnalysisLogExportOutput": { + "type": "structure", + "members": { + "analysisLogExport": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExport", + "traits": { + "smithy.api#documentation": "

The analysis log export processing metadata.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cleanrooms#GetAnalysisTemplate": { "type": "operation", "input": { @@ -12326,7 +12657,7 @@ } }, "traits": { - "smithy.api#documentation": "

The compute configuration for an intermediate table population operation.

" + "smithy.api#documentation": "

Contains the compute configuration for an intermediate table population operation.

" } }, "com.amazonaws.cleanrooms#IntermediateTableDependency": { @@ -12356,7 +12687,7 @@ "parentType": { "target": "com.amazonaws.cleanrooms#BaseTableParentType", "traits": { - "smithy.api#documentation": "

Whether the dependency is direct or indirect. A direct dependency is a table explicitly referenced in the stored query, while an indirect dependency is referenced through another intermediate table.

", + "smithy.api#documentation": "

The type of dependency, either direct or indirect. A direct dependency is a table explicitly referenced in the stored query. An indirect dependency is a table referenced through another intermediate table.

", "smithy.api#required": {} } }, @@ -12915,6 +13246,114 @@ "smithy.api#pattern": "^[\\w!.=*/-]*$" } }, + "com.amazonaws.cleanrooms#ListAnalysisLogExports": { + "type": "operation", + "input": { + "target": "com.amazonaws.cleanrooms#ListAnalysisLogExportsInput" + }, + "output": { + "target": "com.amazonaws.cleanrooms#ListAnalysisLogExportsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.cleanrooms#AccessDeniedException" + }, + { + "target": "com.amazonaws.cleanrooms#InternalServerException" + }, + { + "target": "com.amazonaws.cleanrooms#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cleanrooms#ThrottlingException" + }, + { + "target": "com.amazonaws.cleanrooms#ValidationException" + } + ], + "traits": { + "aws.iam#actionPermissionDescription": "Grants permission to list analysis log exports", + "smithy.api#documentation": "

Lists analysis log exports, sorted by the most recent export. Results are paginated. Use the nextToken parameter to retrieve additional results.

", + "smithy.api#http": { + "code": 200, + "method": "GET", + "uri": "/memberships/{membershipIdentifier}/analysislogexports" + }, + "smithy.api#paginated": { + "items": "analysisLogExports", + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.cleanrooms#ListAnalysisLogExportsInput": { + "type": "structure", + "members": { + "membershipIdentifier": { + "target": "com.amazonaws.cleanrooms#MembershipIdentifier", + "traits": { + "smithy.api#documentation": "

A unique identifier for the membership to list analysis log exports for. Currently accepts the membership ID.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "MembershipId" + } + }, + "analysisIdentifier": { + "target": "com.amazonaws.cleanrooms#UUID", + "traits": { + "smithy.api#documentation": "

A filter on the unique identifier of the protected query that the analysis logs were exported for.

", + "smithy.api#httpQuery": "analysisIdentifier" + } + }, + "status": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportStatus", + "traits": { + "smithy.api#documentation": "

A filter on the status of the analysis log export.

", + "smithy.api#httpQuery": "status" + } + }, + "nextToken": { + "target": "com.amazonaws.cleanrooms#PaginationToken", + "traits": { + "smithy.api#documentation": "

The pagination token that's used to fetch the next set of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "maxResults": { + "target": "com.amazonaws.cleanrooms#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results that are returned for an API request call. The service chooses a default number if you don't set one. The service might return a nextToken even if the maxResults value has not been met.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cleanrooms#ListAnalysisLogExportsOutput": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.cleanrooms#PaginationToken", + "traits": { + "smithy.api#documentation": "

The pagination token that's used to fetch the next set of results.

" + } + }, + "analysisLogExports": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportSummaryList", + "traits": { + "smithy.api#documentation": "

A list of analysis log exports.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cleanrooms#ListAnalysisTemplates": { "type": "operation", "input": { @@ -14999,6 +15438,17 @@ "smithy.api#output": {} } }, + "com.amazonaws.cleanrooms#LogExportAnalysisType": { + "type": "enum", + "members": { + "PROTECTED_QUERY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROTECTED_QUERY" + } + } + } + }, "com.amazonaws.cleanrooms#MLMemberAbilities": { "type": "structure", "members": { @@ -15120,6 +15570,12 @@ "traits": { "smithy.api#enumValue": "CAN_RUN_JOB" } + }, + "CAN_EXPORT_QUERY_ANALYSIS_LOG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CAN_EXPORT_QUERY_ANALYSIS_LOG" + } } } }, @@ -15136,7 +15592,7 @@ "memberAbilities": { "target": "com.amazonaws.cleanrooms#MemberAbilities", "traits": { - "smithy.api#documentation": "

The abilities granted to the collaboration member. These determine what actions the member can perform within the collaboration.

The following values are currently not supported: CAN_QUERY and CAN_RUN_JOB.

Set the value of memberAbilities to [] to allow a member to contribute data.

Set the value of memberAbilities to [CAN_RECEIVE_RESULTS] to allow a member to contribute data and receive results.

", + "smithy.api#documentation": "

The abilities granted to the collaboration member. These determine what actions the member can perform within the collaboration.

The following values are currently not supported: CAN_QUERY and CAN_RUN_JOB.

Set the value of memberAbilities to [] to allow a member to contribute data.

Set the value of memberAbilities to [CAN_RECEIVE_RESULTS] to allow a member to contribute data and receive results.

Set the value of memberAbilities to [CAN_EXPORT_QUERY_ANALYSIS_LOG] so that the member can export the analysis logs for a protected query. Having this ability isn't sufficient on its own: You can export logs only for queries that you ran or paid for.

", "smithy.api#required": {} } }, @@ -15704,12 +16160,18 @@ { "target": "com.amazonaws.cleanrooms#DisallowIntermediateTable" }, + { + "target": "com.amazonaws.cleanrooms#GetAnalysisLogExport" + }, { "target": "com.amazonaws.cleanrooms#GetProtectedJob" }, { "target": "com.amazonaws.cleanrooms#GetProtectedQuery" }, + { + "target": "com.amazonaws.cleanrooms#ListAnalysisLogExports" + }, { "target": "com.amazonaws.cleanrooms#ListPrivacyBudgets" }, @@ -15722,6 +16184,9 @@ { "target": "com.amazonaws.cleanrooms#PreviewPrivacyImpact" }, + { + "target": "com.amazonaws.cleanrooms#StartAnalysisLogExport" + }, { "target": "com.amazonaws.cleanrooms#StartProtectedJob" }, @@ -16275,7 +16740,7 @@ ], "traits": { "aws.iam#actionPermissionDescription": "Grants permission to populate an intermediate table by executing its stored query", - "smithy.api#documentation": "

Executes the stored query of an intermediate table to materialize data into managed storage. With this operation, you can perform initial population and subsequent refreshes. Each call creates a new version. The returned analysis ID can be tracked using GetProtectedQuery. Only the intermediate table owner can call this operation.

", + "smithy.api#documentation": "

Runs the stored query of an intermediate table and makes the results available for querying. Each call creates a new version. Use GetProtectedQuery with the returned analysis ID to track progress. Only the intermediate table owner can call this operation.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -16344,7 +16809,7 @@ "analysisId": { "target": "com.amazonaws.cleanrooms#AnalysisIdentifier", "traits": { - "smithy.api#documentation": "

The identifier for the protected query execution. Use this value with GetProtectedQuery to track the population progress.

", + "smithy.api#documentation": "

The identifier for the protected query execution that populated the intermediate table.

", "smithy.api#required": {} } }, @@ -16387,7 +16852,7 @@ "queryString": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The SQL query string used to populate the intermediate table. Maximum length of 500,000 characters.

", + "smithy.api#documentation": "

The SQL query string used to populate the intermediate table.

", "smithy.api#length": { "max": 500000 } @@ -19238,6 +19703,97 @@ } } }, + "com.amazonaws.cleanrooms#StartAnalysisLogExport": { + "type": "operation", + "input": { + "target": "com.amazonaws.cleanrooms#StartAnalysisLogExportInput" + }, + "output": { + "target": "com.amazonaws.cleanrooms#StartAnalysisLogExportOutput" + }, + "errors": [ + { + "target": "com.amazonaws.cleanrooms#AccessDeniedException" + }, + { + "target": "com.amazonaws.cleanrooms#InternalServerException" + }, + { + "target": "com.amazonaws.cleanrooms#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cleanrooms#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.cleanrooms#ThrottlingException" + }, + { + "target": "com.amazonaws.cleanrooms#ValidationException" + } + ], + "traits": { + "aws.iam#actionPermissionDescription": "Grants permission to start an analysis log export", + "smithy.api#documentation": "

Starts an export of the Apache Spark logs for a protected query to an Amazon S3 bucket that you own. Use the exported logs to diagnose a query that failed or that ran more slowly than you expected.

Clean Rooms exports a redacted copy of the Spark logs instead of the raw logs. Analyze the exported logs with the tooling of your choice, such as Spark History Server. For details about what the exported logs contain, see https://docs.aws.amazon.com/clean-rooms/latest/userguide/export-analysis-logs-contents.html.

The export runs asynchronously and returns with a status of IN_PROGRESS. Call GetAnalysisLogExport to poll for the final status.

To use this operation, you must have the CAN_EXPORT_QUERY_ANALYSIS_LOG ability for your membership. You must also be the query runner or the query payer. Having the ability alone is not sufficient.

The query must have reached a terminal state, and it must have reached the execution stage. A query that failed validation or that was canceled before it started produces no Spark logs.

Log export isn't supported for queries that use differential privacy, and isn't supported for PySpark jobs.

The destination bucket must be in the same Amazon Web Services Region as the collaboration. Cross-Region export isn't supported.

For more information, see https://docs.aws.amazon.com/clean-rooms/latest/userguide/export-analysis-logs.html.

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/memberships/{membershipIdentifier}/analysislogexports" + } + } + }, + "com.amazonaws.cleanrooms#StartAnalysisLogExportInput": { + "type": "structure", + "members": { + "membershipIdentifier": { + "target": "com.amazonaws.cleanrooms#MembershipIdentifier", + "traits": { + "smithy.api#documentation": "

A unique identifier for the membership to export the analysis logs for. Currently accepts a membership ID.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "MembershipId" + } + }, + "analysisId": { + "target": "com.amazonaws.cleanrooms#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the protected query that you want to export the analysis logs for.

", + "smithy.api#required": {} + } + }, + "analysisType": { + "target": "com.amazonaws.cleanrooms#LogExportAnalysisType", + "traits": { + "smithy.api#documentation": "

The type of analysis that the logs are exported for. Currently, only PROTECTED_QUERY is supported.

", + "smithy.api#required": {} + } + }, + "resultConfiguration": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExportResultConfiguration", + "traits": { + "smithy.api#documentation": "

The details needed to write the exported analysis logs.

You don't need to create an IAM role for log export. Clean Rooms writes the exported logs using your own identity, so Clean Rooms writes the exported logs only where your existing permissions allow.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cleanrooms#StartAnalysisLogExportOutput": { + "type": "structure", + "members": { + "analysisLogExport": { + "target": "com.amazonaws.cleanrooms#AnalysisLogExport", + "traits": { + "smithy.api#documentation": "

The analysis log export that was started. The status is IN_PROGRESS.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cleanrooms#StartProtectedJob": { "type": "operation", "input": { @@ -20370,6 +20926,9 @@ { "target": "com.amazonaws.cleanrooms#ResourceNotFoundException" }, + { + "target": "com.amazonaws.cleanrooms#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.cleanrooms#ThrottlingException" }, diff --git a/codegen/sdk/aws-models/clouddirectory.json b/codegen/sdk/aws-models/clouddirectory.json index f4853d85ca9..ab210895d17 100644 --- a/codegen/sdk/aws-models/clouddirectory.json +++ b/codegen/sdk/aws-models/clouddirectory.json @@ -364,7 +364,7 @@ "name": "clouddirectory" }, "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Amazon Cloud Directory\n

Amazon Cloud Directory is a component of the AWS Directory Service that simplifies the\n development and management of cloud-scale web, mobile, and IoT applications. This guide\n describes the Cloud Directory operations that you can call programmatically and includes\n detailed information on data types and errors. For information about Cloud Directory features, see AWS Directory\n Service and the Amazon Cloud Directory Developer Guide.

", + "smithy.api#documentation": "Amazon Cloud Directory\n

Amazon Cloud Directory is a component of the AWS Directory Service that simplifies the\n development and management of cloud-scale web, mobile, and IoT applications. This guide\n describes the Cloud Directory operations that you can call programmatically and includes\n detailed information on data types and errors. For information about Cloud Directory features, see AWS Directory\n Service and the Amazon Cloud Directory Developer Guide.

\n

Amazon Cloud Directory is no longer open to new customers and will reach end of support on July 24, 2027. For alternatives to Amazon Cloud Directory, explore Amazon DynamoDB and Amazon Neptune. If you need help choosing the right alternative for your use case, or for any other questions, contact AWS Support.

", "smithy.api#title": "Amazon CloudDirectory", "smithy.rules#endpointBdd": { "version": "1.1", diff --git a/codegen/sdk/aws-models/connect.json b/codegen/sdk/aws-models/connect.json index 483f474766e..7fdb36ab665 100644 --- a/codegen/sdk/aws-models/connect.json +++ b/codegen/sdk/aws-models/connect.json @@ -1431,6 +1431,9 @@ { "target": "com.amazonaws.connect#CreateIntegrationAssociation" }, + { + "target": "com.amazonaws.connect#CreateMetric" + }, { "target": "com.amazonaws.connect#CreateNotification" }, @@ -1548,6 +1551,9 @@ { "target": "com.amazonaws.connect#DeleteIntegrationAssociation" }, + { + "target": "com.amazonaws.connect#DeleteMetric" + }, { "target": "com.amazonaws.connect#DeleteNotification" }, @@ -1665,6 +1671,9 @@ { "target": "com.amazonaws.connect#DescribeInstanceStorageConfig" }, + { + "target": "com.amazonaws.connect#DescribeMetric" + }, { "target": "com.amazonaws.connect#DescribeNotification" }, @@ -1926,6 +1935,9 @@ { "target": "com.amazonaws.connect#ListLexBots" }, + { + "target": "com.amazonaws.connect#ListMetrics" + }, { "target": "com.amazonaws.connect#ListNotifications" }, @@ -2088,6 +2100,9 @@ { "target": "com.amazonaws.connect#SearchHoursOfOperations" }, + { + "target": "com.amazonaws.connect#SearchMetrics" + }, { "target": "com.amazonaws.connect#SearchNotifications" }, @@ -2301,6 +2316,12 @@ { "target": "com.amazonaws.connect#UpdateInstanceStorageConfig" }, + { + "target": "com.amazonaws.connect#UpdateMetricContent" + }, + { + "target": "com.amazonaws.connect#UpdateMetricMetadata" + }, { "target": "com.amazonaws.connect#UpdateNotificationContent" }, @@ -6287,6 +6308,52 @@ "smithy.api#documentation": "

Information about automatic fail configuration for an evaluation form.

" } }, + "com.amazonaws.connect#AvailableFilter": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.connect#FilterId", + "traits": { + "smithy.api#documentation": "

The identifier of the filter.

" + } + }, + "Type": { + "target": "com.amazonaws.connect#AvailableFilterType", + "traits": { + "smithy.api#documentation": "

The type of the filter. Valid values: METRIC_LEVEL | RESOURCE_LEVEL.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that is available for use with the metric. Part of an AvailableFilterList that describes the filters that are available for use with the metric.

" + } + }, + "com.amazonaws.connect#AvailableFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#AvailableFilter" + } + }, + "com.amazonaws.connect#AvailableFilterType": { + "type": "enum", + "members": { + "METRIC_LEVEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "METRIC_LEVEL" + } + }, + "RESOURCE_LEVEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE_LEVEL" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of an available metric filter. Valid values: METRIC_LEVEL | RESOURCE_LEVEL.

" + } + }, "com.amazonaws.connect#AvailableNumberSummary": { "type": "structure", "members": { @@ -7553,6 +7620,60 @@ } } }, + "com.amazonaws.connect#CalculationComponent": { + "type": "structure", + "members": { + "Alias": { + "target": "com.amazonaws.connect#ComponentAlias", + "traits": { + "smithy.api#documentation": "

The alias used to reference this component in the calculation expression.

", + "smithy.api#required": {} + } + }, + "MetricName": { + "target": "com.amazonaws.connect#MetricName", + "traits": { + "smithy.api#documentation": "

The name of an AWS-managed metric used in this calculation component (for example, CONTACTS_HANDLED). Mutually exclusive with MetricId.

" + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The ARN of an AWS-managed metric used in this calculation component. Mutually exclusive with MetricName.

" + } + }, + "MetricFilters": { + "target": "com.amazonaws.connect#MetricFilterList", + "traits": { + "smithy.api#documentation": "

The filters applied to the calculation component.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents a component metric referenced in a custom metric calculation formula.

" + } + }, + "com.amazonaws.connect#CalculationComponentList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#CalculationComponent" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, + "com.amazonaws.connect#CalculationExpression": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, "com.amazonaws.connect#Campaign": { "type": "structure", "members": { @@ -8235,6 +8356,15 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#ComponentAlias": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, "com.amazonaws.connect#Concurrency": { "type": "integer", "traits": { @@ -12683,6 +12813,140 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#CreateMetric": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#CreateMetricRequest" + }, + "output": { + "target": "com.amazonaws.connect#CreateMetricResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#DuplicateResourceException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#LimitExceededException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a new metric definition for the specified Connect Customer instance. You can create custom metrics\n that use formulas referencing existing Amazon Web Services-managed metrics, optionally with filters applied.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/metrics/definitions/{InstanceId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.connect#CreateMetricRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.connect#MetricName", + "traits": { + "smithy.api#documentation": "

The name of the metric.

", + "smithy.api#required": {} + } + }, + "MetricCalculation": { + "target": "com.amazonaws.connect#MetricCalculation", + "traits": { + "smithy.api#documentation": "

The calculation definition for the metric, including the formula expression and the component metrics it references.

", + "smithy.api#required": {} + } + }, + "Unit": { + "target": "com.amazonaws.connect#MetricUnit", + "traits": { + "smithy.api#documentation": "

The display unit for the metric's data.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.connect#MetricStatus", + "traits": { + "smithy.api#documentation": "

The publish status of the metric. Set to PUBLISHED to make the metric available for use in dashboards and reports, or SAVED to keep it in draft state.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.connect#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. If not provided, the Amazon Web Services\n SDK populates this field. For more information about idempotency, see\n Making retries safe with idempotent APIs.

", + "smithy.api#idempotencyToken": {} + } + }, + "Description": { + "target": "com.amazonaws.connect#MetricDescription", + "traits": { + "smithy.api#documentation": "

The description of the metric.

" + } + }, + "PositiveTrendIndicator": { + "target": "com.amazonaws.connect#TrendIndicator", + "traits": { + "smithy.api#documentation": "

How an increase in the metric value should be interpreted. Valid values: POSITIVE, NEUTRAL, NEGATIVE.

" + } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource. For example, { \"Tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#CreateMetricResponse": { + "type": "structure", + "members": { + "MetricArn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the metric.

", + "smithy.api#required": {} + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#CreateNotification": { "type": "operation", "input": { @@ -16648,6 +16912,15 @@ "smithy.api#documentation": "

A decimal search condition for Search APIs.

" } }, + "com.amazonaws.connect#DefaultStat": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, "com.amazonaws.connect#DefaultVocabulary": { "type": "structure", "members": { @@ -17800,6 +18073,77 @@ "smithy.api#input": {} } }, + "com.amazonaws.connect#DeleteMetric": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#DeleteMetricRequest" + }, + "output": { + "target": "com.amazonaws.connect#DeleteMetricResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an existing metric from the specified Connect Customer instance. This operation fails with ResourceConflictException if the metric is currently in use in a dashboard.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/metrics/definitions/{InstanceId}/{MetricId}", + "code": 200 + } + } + }, + "com.amazonaws.connect#DeleteMetricRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#DeleteMetricResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#DeleteNotification": { "type": "operation", "input": { @@ -20593,6 +20937,83 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#DescribeMetric": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#DescribeMetricRequest" + }, + "output": { + "target": "com.amazonaws.connect#DescribeMetricResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the full definition of an existing metric from the specified Connect Customer instance.

", + "smithy.api#http": { + "method": "GET", + "uri": "/metrics/definitions/{InstanceId}/{MetricId}", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.connect#DescribeMetricRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric to describe. Adding the $SAVED qualifier will describe the saved version of the metric. Adding $LATEST or omitting a qualifier will describe the published version.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#DescribeMetricResponse": { + "type": "structure", + "members": { + "Metric": { + "target": "com.amazonaws.connect#MetricDefinition", + "traits": { + "smithy.api#documentation": "

The metric definition.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#DescribeNotification": { "type": "operation", "input": { @@ -28300,6 +28721,15 @@ } } }, + "com.amazonaws.connect#FilterId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, "com.amazonaws.connect#FilterV2": { "type": "structure", "members": { @@ -36281,6 +36711,108 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#ListMetrics": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#ListMetricsRequest" + }, + "output": { + "target": "com.amazonaws.connect#ListMetricsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves a paginated list of metric summaries for the specified Connect Customer instance. Use pagination to ensure that the operation returns quickly and successfully.

", + "smithy.api#http": { + "method": "GET", + "uri": "/metrics/definitions/{InstanceId}", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "MetricSummaryList", + "pageSize": "MaxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.connect#ListMetricsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Type": { + "target": "com.amazonaws.connect#MetricType", + "traits": { + "smithy.api#documentation": "

The type of metrics to list. Valid values: AWS_MANAGED | CUSTOMER_MANAGED.

", + "smithy.api#httpQuery": "type" + } + }, + "MaxResults": { + "target": "com.amazonaws.connect#MaxResult100", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return per page.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "NextToken": { + "target": "com.amazonaws.connect#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous \nresponse in the next request to retrieve the next set of results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#ListMetricsResponse": { + "type": "structure", + "members": { + "MetricSummaryList": { + "target": "com.amazonaws.connect#MetricSummaryList", + "traits": { + "smithy.api#documentation": "

The list of metric summaries.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.connect#NextToken", + "traits": { + "smithy.api#documentation": "

If there are additional results, this is the token for the next set of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#ListNotifications": { "type": "operation", "input": { @@ -40403,6 +40935,57 @@ } } }, + "com.amazonaws.connect#MetricCalculation": { + "type": "structure", + "members": { + "CalculationComponents": { + "target": "com.amazonaws.connect#CalculationComponentList", + "traits": { + "smithy.api#documentation": "

The list of component metrics referenced in the calculation formula. Each component has an alias used in the formula expression.

", + "smithy.api#required": {} + } + }, + "Calculation": { + "target": "com.amazonaws.connect#CalculationExpression", + "traits": { + "smithy.api#documentation": "

The formula expression that defines how the metric is calculated. Uses component aliases (for example, 100 * SUM(M1) / SUM(M2)).

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the formula and component metrics that define a custom metric calculation.

" + } + }, + "com.amazonaws.connect#MetricCategory": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.connect#MetricCreationMethod": { + "type": "enum", + "members": { + "SERVICE_LEVEL_BUILDER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SERVICE_LEVEL_BUILDER" + } + }, + "METRIC_BUILDER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "METRIC_BUILDER" + } + } + }, + "traits": { + "smithy.api#documentation": "

The method used to create a custom metric. Valid values: SERVICE_LEVEL_BUILDER | METRIC_BUILDER.

" + } + }, "com.amazonaws.connect#MetricDataCollectionsV2": { "type": "list", "member": { @@ -40429,6 +41012,390 @@ "smithy.api#documentation": "

Contains the name, thresholds, and metric filters.

" } }, + "com.amazonaws.connect#MetricDefinition": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the metric. May be qualified with $SAVED or $LATEST.

", + "smithy.api#required": {} + } + }, + "Id": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.connect#MetricName", + "traits": { + "smithy.api#documentation": "

The name of the metric.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.connect#MetricDescription", + "traits": { + "smithy.api#documentation": "

The description of the metric.

" + } + }, + "MetricCalculation": { + "target": "com.amazonaws.connect#MetricCalculation", + "traits": { + "smithy.api#documentation": "

The calculation definition for the metric.

" + } + }, + "CreationMethod": { + "target": "com.amazonaws.connect#MetricCreationMethod", + "traits": { + "smithy.api#documentation": "

The method used to create the metric. Valid values: SERVICE_LEVEL_BUILDER (created with the guided service-level experience) | METRIC_BUILDER (created with the free-form metric builder).

" + } + }, + "Status": { + "target": "com.amazonaws.connect#MetricStatus", + "traits": { + "smithy.api#documentation": "

The publish status of the metric. Valid values: PUBLISHED | SAVED.

" + } + }, + "Type": { + "target": "com.amazonaws.connect#MetricType", + "traits": { + "smithy.api#documentation": "

The type of the metric. Valid values: AWS_MANAGED | CUSTOMER_MANAGED.

", + "smithy.api#required": {} + } + }, + "Unit": { + "target": "com.amazonaws.connect#MetricUnit", + "traits": { + "smithy.api#documentation": "

The display unit for the metric's data.

", + "smithy.api#required": {} + } + }, + "PositiveTrendIndicator": { + "target": "com.amazonaws.connect#TrendIndicator", + "traits": { + "smithy.api#documentation": "

How an increase in the metric value should be interpreted. Valid values: POSITIVE, NEUTRAL, NEGATIVE.

" + } + }, + "Groupings": { + "target": "com.amazonaws.connect#MetricGroupingList", + "traits": { + "smithy.api#documentation": "

The groupings available for this metric.

", + "smithy.api#required": {} + } + }, + "Filters": { + "target": "com.amazonaws.connect#AvailableFilterList", + "traits": { + "smithy.api#documentation": "

The filters applied to the metric.

", + "smithy.api#required": {} + } + }, + "EffectiveTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

The earliest time that can be queried for this metric.

" + } + }, + "RefreshRate": { + "target": "com.amazonaws.connect#RefreshRate", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The minimum interval, in seconds, between data refreshes for this metric.

" + } + }, + "Category": { + "target": "com.amazonaws.connect#MetricCategory", + "traits": { + "smithy.api#documentation": "

The category of the metric.

", + "smithy.api#required": {} + } + }, + "SupportedStats": { + "target": "com.amazonaws.connect#SupportedStatsList", + "traits": { + "smithy.api#documentation": "

The stat aggregations available for this metric.

" + } + }, + "DefaultStat": { + "target": "com.amazonaws.connect#DefaultStat", + "traits": { + "smithy.api#documentation": "

The default stat aggregation for the metric.

" + } + }, + "SupportsPreaggregateCalculation": { + "target": "com.amazonaws.connect#SupportsPreaggregateCalculation", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether the metric can be used inside aggregating statistical functions (SUM, AVG, etc.) in custom metric calculations.

", + "smithy.api#required": {} + } + }, + "SupportsCustomCalculation": { + "target": "com.amazonaws.connect#SupportsCustomCalculation", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether the metric can be used as a component of custom metrics.

", + "smithy.api#required": {} + } + }, + "PrimaryEventSource": { + "target": "com.amazonaws.connect#PrimaryEventSource", + "traits": { + "smithy.api#documentation": "

The primary event source for the metric data.

" + } + }, + "PrimaryEventSourceEffectiveTimestampType": { + "target": "com.amazonaws.connect#PrimaryEventSourceEffectiveTimestampType", + "traits": { + "smithy.api#documentation": "

The timestamp type that determines where the metric appears on a time series.

" + } + }, + "CreatedTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the metric was created.

" + } + }, + "CreatedUser": { + "target": "com.amazonaws.connect#CreatedByInfo", + "traits": { + "smithy.api#documentation": "

The user that created the metric. The creator for metrics created through the CreateMetric API will be Amazon Connect API.

" + } + }, + "LastModifiedRegion": { + "target": "com.amazonaws.connect#RegionName", + "traits": { + "smithy.api#documentation": "

The region where the metric was last modified.

" + } + }, + "LastModifiedTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the metric was last modified.

" + } + }, + "LastModifiedUser": { + "target": "com.amazonaws.connect#CreatedByInfo", + "traits": { + "smithy.api#documentation": "

The user that last modified the metric. For modifications made through the API, this will be Amazon Connect API.

" + } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource. For example, { \"Tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the full definition of a metric, including its calculation, unit, status, and trend indicator.

" + } + }, + "com.amazonaws.connect#MetricDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 500 + } + } + }, + "com.amazonaws.connect#MetricFilter": { + "type": "structure", + "members": { + "MetricFilterKey": { + "target": "com.amazonaws.connect#MetricFilterKey", + "traits": { + "smithy.api#documentation": "

The key identifying the field to filter on.

", + "smithy.api#required": {} + } + }, + "Negate": { + "target": "com.amazonaws.connect#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether the filter condition is negated. When set to true, the filter excludes matching data instead of including it.

" + } + }, + "NumberCondition": { + "target": "com.amazonaws.connect#MetricFilterNumberCondition", + "traits": { + "smithy.api#documentation": "

A numeric comparison condition.

" + } + }, + "StringCondition": { + "target": "com.amazonaws.connect#MetricFilterStringCondition", + "traits": { + "smithy.api#documentation": "

A string comparison condition.

" + } + }, + "BooleanCondition": { + "target": "com.amazonaws.connect#MetricFilterBooleanCondition", + "traits": { + "smithy.api#documentation": "

A boolean comparison condition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter condition applied to a metric component in a calculation. Filters restrict the data included in the metric computation.

" + } + }, + "com.amazonaws.connect#MetricFilterBooleanCondition": { + "type": "structure", + "members": { + "Comparison": { + "target": "com.amazonaws.connect#MetricFilterBooleanConditionComparison", + "traits": { + "smithy.api#documentation": "

The comparison operator. Valid values: IS_TRUE (matches when the field is true) | IS_FALSE (matches when the field is false).

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A boolean comparison condition for metric filters.

" + } + }, + "com.amazonaws.connect#MetricFilterBooleanConditionComparison": { + "type": "enum", + "members": { + "IS_TRUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IS_TRUE" + } + }, + "IS_FALSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IS_FALSE" + } + } + }, + "traits": { + "smithy.api#documentation": "

The boolean comparison operator for metric filters. Valid values: IS_TRUE | IS_FALSE.

" + } + }, + "com.amazonaws.connect#MetricFilterKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.connect#MetricFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#MetricFilter" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 5 + } + } + }, + "com.amazonaws.connect#MetricFilterNumberCondition": { + "type": "structure", + "members": { + "Comparison": { + "target": "com.amazonaws.connect#MetricFilterNumberConditionComparison", + "traits": { + "smithy.api#documentation": "

The comparison operator. Valid values: LESSER (less than) | LESSER_OR_EQUAL (less than or equal to) | GREATER (greater than) | GREATER_OR_EQUAL (greater than or equal to).

", + "smithy.api#required": {} + } + }, + "Values": { + "target": "com.amazonaws.connect#NumberValueList", + "traits": { + "smithy.api#documentation": "

The numeric values to compare against.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A numeric comparison condition for metric filters.

" + } + }, + "com.amazonaws.connect#MetricFilterNumberConditionComparison": { + "type": "enum", + "members": { + "LESSER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LESSER" + } + }, + "LESSER_OR_EQUAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LESSER_OR_EQUAL" + } + }, + "GREATER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GREATER" + } + }, + "GREATER_OR_EQUAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GREATER_OR_EQUAL" + } + } + }, + "traits": { + "smithy.api#documentation": "

The numeric comparison operator for metric filters. Valid values: LESSER | LESSER_OR_EQUAL | GREATER | GREATER_OR_EQUAL.

" + } + }, + "com.amazonaws.connect#MetricFilterStringCondition": { + "type": "structure", + "members": { + "Comparison": { + "target": "com.amazonaws.connect#MetricFilterStringConditionComparison", + "traits": { + "smithy.api#documentation": "

The comparison operator. Valid values: MATCHES_ANY (matches any of the specified values) | MATCHES_NONE (matches none of the specified values).

", + "smithy.api#required": {} + } + }, + "Values": { + "target": "com.amazonaws.connect#StringValueList", + "traits": { + "smithy.api#documentation": "

The string values to compare against.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A string comparison condition for metric filters.

" + } + }, + "com.amazonaws.connect#MetricFilterStringConditionComparison": { + "type": "enum", + "members": { + "MATCHES_ANY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MATCHES_ANY" + } + }, + "MATCHES_NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MATCHES_NONE" + } + } + }, + "traits": { + "smithy.api#documentation": "

The string comparison operator for metric filters. Valid values: MATCHES_ANY | MATCHES_NONE.

" + } + }, "com.amazonaws.connect#MetricFilterV2": { "type": "structure", "members": { @@ -40480,6 +41447,12 @@ } } }, + "com.amazonaws.connect#MetricGroupingList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#String" + } + }, "com.amazonaws.connect#MetricId": { "type": "string", "traits": { @@ -40515,6 +41488,15 @@ "smithy.api#documentation": "

The interval period with the start and end time for the metrics.

" } }, + "com.amazonaws.connect#MetricName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, "com.amazonaws.connect#MetricNameV2": { "type": "string" }, @@ -40550,6 +41532,191 @@ "target": "com.amazonaws.connect#MetricResultV2" } }, + "com.amazonaws.connect#MetricSearchConditionList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#MetricSearchCriteria" + } + }, + "com.amazonaws.connect#MetricSearchCriteria": { + "type": "structure", + "members": { + "OrConditions": { + "target": "com.amazonaws.connect#MetricSearchConditionList", + "traits": { + "smithy.api#documentation": "

A list of conditions to be met, where at least one condition must be satisfied.

" + } + }, + "AndConditions": { + "target": "com.amazonaws.connect#MetricSearchConditionList", + "traits": { + "smithy.api#documentation": "

A list of conditions that must all be satisfied.

" + } + }, + "StringCondition": { + "target": "com.amazonaws.connect#StringCondition" + }, + "BooleanCondition": { + "target": "com.amazonaws.connect#BooleanCondition" + } + }, + "traits": { + "smithy.api#documentation": "

Defines the search criteria for filtering metrics.

" + } + }, + "com.amazonaws.connect#MetricSearchFilter": { + "type": "structure", + "members": { + "TagFilter": { + "target": "com.amazonaws.connect#ControlPlaneTagFilter", + "traits": { + "smithy.api#documentation": "

An object that can be used to specify tag conditions inside the SearchFilter. This accepts an OR of AND (List of List) input where:

\n
    \n
  • \n

    The top level list specifies conditions that need to be applied with OR operator.

    \n
  • \n
  • \n

    The inner list specifies conditions that need to be applied with AND operator.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Filters to apply when searching for metrics.

" + } + }, + "com.amazonaws.connect#MetricSearchSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#MetricDefinition" + } + }, + "com.amazonaws.connect#MetricStatus": { + "type": "enum", + "members": { + "PUBLISHED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PUBLISHED" + } + }, + "SAVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SAVED" + } + } + }, + "traits": { + "smithy.api#documentation": "

The publish status of a metric. Valid values: PUBLISHED | SAVED.

" + } + }, + "com.amazonaws.connect#MetricSummary": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the metric.

", + "smithy.api#required": {} + } + }, + "Id": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.connect#MetricName", + "traits": { + "smithy.api#documentation": "

The name of the metric.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.connect#MetricStatus", + "traits": { + "smithy.api#documentation": "

The publish status of the metric.

", + "smithy.api#required": {} + } + }, + "Type": { + "target": "com.amazonaws.connect#MetricType", + "traits": { + "smithy.api#documentation": "

The type of the metric.

", + "smithy.api#required": {} + } + }, + "LastModifiedRegion": { + "target": "com.amazonaws.connect#RegionName", + "traits": { + "smithy.api#documentation": "

The region where the metric was last modified.

" + } + }, + "LastModifiedTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the metric was last modified.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains summary information about a metric.

" + } + }, + "com.amazonaws.connect#MetricSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#MetricSummary" + } + }, + "com.amazonaws.connect#MetricType": { + "type": "enum", + "members": { + "AWS_MANAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_MANAGED" + } + }, + "CUSTOMER_MANAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOMER_MANAGED" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of the metric. Valid values: AWS_MANAGED | CUSTOMER_MANAGED.

" + } + }, + "com.amazonaws.connect#MetricUnit": { + "type": "enum", + "members": { + "INTEGER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTEGER" + } + }, + "DOUBLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOUBLE" + } + }, + "PERCENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PERCENT" + } + }, + "SECONDS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SECONDS" + } + } + }, + "traits": { + "smithy.api#documentation": "

The display unit for metric data. Valid values: INTEGER | DOUBLE | PERCENT | SECONDS.

" + } + }, "com.amazonaws.connect#MetricV2": { "type": "structure", "members": { @@ -41433,6 +42600,18 @@ "smithy.api#documentation": "

Information about a reference when the referenceType is NUMBER. Otherwise,\n null.

" } }, + "com.amazonaws.connect#NumberValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#Double" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.connect#NumericQuestionPropertyAutomationLabel": { "type": "enum", "members": { @@ -44900,6 +46079,24 @@ } } }, + "com.amazonaws.connect#PrimaryEventSource": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.connect#PrimaryEventSourceEffectiveTimestampType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, "com.amazonaws.connect#PrimaryValue": { "type": "structure", "members": { @@ -47575,6 +48772,12 @@ } } }, + "com.amazonaws.connect#RefreshRate": { + "type": "long", + "traits": { + "smithy.api#default": 0 + } + }, "com.amazonaws.connect#RefreshTokenDuration": { "type": "integer", "traits": { @@ -50772,6 +51975,114 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#SearchMetrics": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#SearchMetricsRequest" + }, + "output": { + "target": "com.amazonaws.connect#SearchMetricsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Searches for metrics in the specified Connect Customer instance using search criteria and optional tag-based filters. Use pagination to ensure that the operation returns quickly and successfully.

", + "smithy.api#http": { + "method": "POST", + "uri": "/search-metrics", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Metrics", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.connect#SearchMetricsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.connect#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous \nresponse in the next request to retrieve the next set of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.connect#MaxResult100", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return per page.

" + } + }, + "SearchFilter": { + "target": "com.amazonaws.connect#MetricSearchFilter", + "traits": { + "smithy.api#documentation": "

Filters to be applied to search results.

" + } + }, + "SearchCriteria": { + "target": "com.amazonaws.connect#MetricSearchCriteria", + "traits": { + "smithy.api#documentation": "

The search criteria to filter the metrics.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#SearchMetricsResponse": { + "type": "structure", + "members": { + "Metrics": { + "target": "com.amazonaws.connect#MetricSearchSummaryList", + "traits": { + "smithy.api#documentation": "

The metrics that matched the search criteria.

" + } + }, + "NextToken": { + "target": "com.amazonaws.connect#NextToken", + "traits": { + "smithy.api#documentation": "

If there are additional results, this is the token for the next set of results.

" + } + }, + "ApproximateTotalCount": { + "target": "com.amazonaws.connect#ApproximateTotalCount", + "traits": { + "smithy.api#documentation": "

The approximate total number of metrics that matched your search criteria.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#SearchNotifications": { "type": "operation", "input": { @@ -51344,7 +52655,7 @@ "ResourceTypes": { "target": "com.amazonaws.connect#ResourceTypeList", "traits": { - "smithy.api#documentation": "

The list of resource types to be used to search tags from. If not provided or if any empty list is provided,\n this API will search from all supported resource types. Note that lowercase and - are required.

\n

\n Supported resource types\n

\n
    \n
  • \n

    agent

    \n
  • \n
  • \n

    agent-state

    \n
  • \n
  • \n

    routing-profile

    \n
  • \n
  • \n

    standard-queue

    \n
  • \n
  • \n

    security-profile

    \n
  • \n
  • \n

    operating-hours

    \n
  • \n
  • \n

    prompt

    \n
  • \n
  • \n

    contact-flow

    \n
  • \n
  • \n

    flow- module

    \n
  • \n
  • \n

    transfer-destination (also known as quick connect)

    \n
  • \n
" + "smithy.api#documentation": "

The list of resource types to be used to search tags from. If not provided or if any empty list is provided,\n this API will search from all supported resource types. Note that lowercase and - are required.

\n

\n Supported resource types\n

\n
    \n
  • \n

    agent

    \n
  • \n
  • \n

    agent-state

    \n
  • \n
  • \n

    routing-profile

    \n
  • \n
  • \n

    standard-queue

    \n
  • \n
  • \n

    security-profile

    \n
  • \n
  • \n

    operating-hours

    \n
  • \n
  • \n

    prompt

    \n
  • \n
  • \n

    contact-flow

    \n
  • \n
  • \n

    flow- module

    \n
  • \n
  • \n

    transfer-destination (also known as quick connect)

    \n
  • \n
  • \n

    metric

    \n
  • \n
" } }, "NextToken": { @@ -56365,6 +57676,18 @@ "smithy.api#documentation": "

Information about a reference when the referenceType is STRING. Otherwise,\n null.

" } }, + "com.amazonaws.connect#StringValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#String" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.connect#Subject": { "type": "string", "traits": { @@ -56619,6 +57942,24 @@ "target": "com.amazonaws.connect#SupportedMessagingContentType" } }, + "com.amazonaws.connect#SupportedStatsList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#String" + } + }, + "com.amazonaws.connect#SupportsCustomCalculation": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.connect#SupportsPreaggregateCalculation": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, "com.amazonaws.connect#SuspendContactRecording": { "type": "operation", "input": { @@ -56870,7 +58211,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds the specified tags to the specified resource.

\n

Some of the supported resource types are agents, routing profiles, queues, quick connects, flows, agent\n statuses, hours of operation, phone numbers, security profiles, and task templates. For a complete list, see Tagging resources in Connect Customer.

\n

For sample policies that use tags, see Connect Customer Identity-Based Policy\n Examples in the Connect Customer Administrator Guide.

", + "smithy.api#documentation": "

Adds the specified tags to the specified resource.

\n

Some of the supported resource types are agents, routing profiles, queues, quick connects, flows, agent\n statuses, hours of operation, phone numbers, security profiles, task templates, and custom metrics. For a complete list, see Tagging resources in Connect Customer.

\n

For sample policies that use tags, see Connect Customer Identity-Based Policy\n Examples in the Connect Customer Administrator Guide.

", "smithy.api#http": { "method": "POST", "uri": "/tags/{resourceArn}", @@ -58478,6 +59819,32 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#TrendIndicator": { + "type": "enum", + "members": { + "POSITIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POSITIVE" + } + }, + "NEGATIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NEGATIVE" + } + }, + "NEUTRAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NEUTRAL" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies how to interpret a positive trend in metric data. Valid values: POSITIVE | NEGATIVE | NEUTRAL.

" + } + }, "com.amazonaws.connect#URI": { "type": "string", "traits": { @@ -61009,6 +62376,177 @@ "smithy.api#input": {} } }, + "com.amazonaws.connect#UpdateMetricContent": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#UpdateMetricContentRequest" + }, + "output": { + "target": "com.amazonaws.connect#UpdateMetricContentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the calculation, unit, and/or trend indicator of an existing metric in the specified Connect Customer instance.

", + "smithy.api#http": { + "method": "POST", + "uri": "/metrics/definitions/{InstanceId}/{MetricId}/content", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.connect#UpdateMetricContentRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric to update. Adding the $SAVED qualifier will update the saved version of the metric. Adding $LATEST or omitting a qualifier will update the published version.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MetricCalculation": { + "target": "com.amazonaws.connect#MetricCalculation", + "traits": { + "smithy.api#documentation": "

The updated calculation definition for the metric.

" + } + }, + "Unit": { + "target": "com.amazonaws.connect#MetricUnit", + "traits": { + "smithy.api#documentation": "

The updated display unit for the metric.

" + } + }, + "PositiveTrendIndicator": { + "target": "com.amazonaws.connect#TrendIndicator", + "traits": { + "smithy.api#documentation": "

How an increase in the metric value should be interpreted. Valid values: POSITIVE, NEUTRAL, NEGATIVE.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#UpdateMetricContentResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#UpdateMetricMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#UpdateMetricMetadataRequest" + }, + "output": { + "target": "com.amazonaws.connect#UpdateMetricMetadataResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#DuplicateResourceException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the name and/or description of an existing metric in the specified Connect Customer instance.

", + "smithy.api#http": { + "method": "POST", + "uri": "/metrics/definitions/{InstanceId}/{MetricId}/metadata", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.connect#UpdateMetricMetadataRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MetricId": { + "target": "com.amazonaws.connect#MetricId", + "traits": { + "smithy.api#documentation": "

The identifier of the metric to update. Adding the $SAVED qualifier will update the saved version of the metric. Adding $LATEST or omitting a qualifier will update the published version.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.connect#MetricName", + "traits": { + "smithy.api#documentation": "

The updated name of the metric.

" + } + }, + "Description": { + "target": "com.amazonaws.connect#MetricDescription", + "traits": { + "smithy.api#documentation": "

The updated description of the metric.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#UpdateMetricMetadataResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#UpdateNotificationContent": { "type": "operation", "input": { diff --git a/codegen/sdk/aws-models/datazone.json b/codegen/sdk/aws-models/datazone.json index aa9eff7f47b..d8f10e306aa 100644 --- a/codegen/sdk/aws-models/datazone.json +++ b/codegen/sdk/aws-models/datazone.json @@ -1757,6 +1757,12 @@ "smithy.api#required": {} } }, + "scopeName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the materialized asset scope.

" + } + }, "errorMessage": { "target": "smithy.api#String", "traits": { diff --git a/codegen/sdk/aws-models/eks.json b/codegen/sdk/aws-models/eks.json index 50659397de2..6337595cb4f 100644 --- a/codegen/sdk/aws-models/eks.json +++ b/codegen/sdk/aws-models/eks.json @@ -2263,6 +2263,33 @@ "target": "com.amazonaws.eks#AddonInfo" } }, + "com.amazonaws.eks#AllowedValuesConstraint": { + "type": "structure", + "members": { + "allowedValues": { + "target": "com.amazonaws.eks#AllowedValuesList", + "traits": { + "smithy.api#documentation": "

The list of allowed values.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A constraint specifying the allowed values for a parameter.

" + } + }, + "com.amazonaws.eks#AllowedValuesList": { + "type": "list", + "member": { + "target": "com.amazonaws.eks#String" + }, + "traits": { + "smithy.api#documentation": "

A list of allowed string values for a parameter constraint.

", + "smithy.api#length": { + "min": 0, + "max": 20 + } + } + }, "com.amazonaws.eks#ArgoCdAwsIdcConfigRequest": { "type": "structure", "members": { @@ -3605,6 +3632,24 @@ "traits": { "smithy.api#documentation": "

The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.

" } + }, + "kubeApiServerConfig": { + "target": "com.amazonaws.eks#KubeApiServerConfigResponse", + "traits": { + "smithy.api#documentation": "

The Kubernetes API server configuration for the cluster.

" + } + }, + "kubeSchedulerConfig": { + "target": "com.amazonaws.eks#KubeSchedulerConfigResponse", + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler configuration for the cluster.

" + } + }, + "kubeControllerManagerConfig": { + "target": "com.amazonaws.eks#KubeControllerManagerConfigResponse", + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager configuration for the cluster.

" + } } }, "traits": { @@ -3890,6 +3935,18 @@ "traits": { "smithy.api#documentation": "

The patch version of Kubernetes for this cluster version.

" } + }, + "controlPlaneScalingTiers": { + "target": "com.amazonaws.eks#ControlPlaneScalingTierList", + "traits": { + "smithy.api#documentation": "

The available provisioned control plane scaling tiers and their capabilities for this Kubernetes version.

" + } + }, + "controlPlaneComponentConfig": { + "target": "com.amazonaws.eks#ControlPlaneConfigInfo", + "traits": { + "smithy.api#documentation": "

The default control plane component configuration and constraints for this Kubernetes version.

" + } } }, "traits": { @@ -4129,6 +4186,32 @@ "smithy.api#documentation": "

The full description of your connected cluster.

" } }, + "com.amazonaws.eks#ControlPlaneConfigInfo": { + "type": "structure", + "members": { + "kubeApiServerConfig": { + "target": "com.amazonaws.eks#KubeApiServerVersionConfig", + "traits": { + "smithy.api#documentation": "

The Kubernetes API server configuration defaults and constraints.

" + } + }, + "kubeSchedulerConfig": { + "target": "com.amazonaws.eks#KubeSchedulerVersionConfig", + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler configuration defaults and constraints.

" + } + }, + "kubeControllerManagerConfig": { + "target": "com.amazonaws.eks#KubeControllerManagerVersionConfig", + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager configuration defaults and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The control plane component configuration defaults and constraints.

" + } + }, "com.amazonaws.eks#ControlPlaneEgressModeType": { "type": "enum", "members": { @@ -4206,6 +4289,57 @@ "smithy.api#documentation": "

The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.

" } }, + "com.amazonaws.eks#ControlPlaneScalingTierInfo": { + "type": "structure", + "members": { + "tierName": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The name of the scaling tier.

" + } + }, + "apiRequestConcurrency": { + "target": "com.amazonaws.eks#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum API request concurrency supported by this tier.

" + } + }, + "podSchedulingRatePerSecond": { + "target": "com.amazonaws.eks#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum pod scheduling rate per second supported by this tier.

" + } + }, + "clusterDatabaseSizeGb": { + "target": "com.amazonaws.eks#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum cluster database size in GB supported by this tier.

" + } + }, + "controlPlaneComponentConfigOverrides": { + "target": "com.amazonaws.eks#ControlPlaneConfigInfo", + "traits": { + "smithy.api#documentation": "

The control plane component configuration overrides specific to this scaling tier.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a provisioned control plane scaling tier.

" + } + }, + "com.amazonaws.eks#ControlPlaneScalingTierList": { + "type": "list", + "member": { + "target": "com.amazonaws.eks#ControlPlaneScalingTierInfo" + }, + "traits": { + "smithy.api#documentation": "

A list of available provisioned control plane scaling tiers.

", + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, "com.amazonaws.eks#CreateAccessConfigRequest": { "type": "structure", "members": { @@ -4744,6 +4878,24 @@ "traits": { "smithy.api#documentation": "

The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.

" } + }, + "kubeApiServerConfig": { + "target": "com.amazonaws.eks#KubeApiServerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes API server configuration for the new cluster.

" + } + }, + "kubeSchedulerConfig": { + "target": "com.amazonaws.eks#KubeSchedulerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler configuration for the new cluster.

" + } + }, + "kubeControllerManagerConfig": { + "target": "com.amazonaws.eks#KubeControllerManagerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager configuration for the new cluster.

" + } } }, "traits": { @@ -7541,6 +7693,46 @@ "smithy.api#output": {} } }, + "com.amazonaws.eks#DurationConstraints": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The minimum allowed duration value.

" + } + }, + "max": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The maximum allowed duration value.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Constraints for a duration parameter.

" + } + }, + "com.amazonaws.eks#DurationParameterConfig": { + "type": "structure", + "members": { + "defaultValue": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The default value for the duration parameter.

" + } + }, + "constraints": { + "target": "com.amazonaws.eks#DurationConstraints", + "traits": { + "smithy.api#documentation": "

The constraints for the duration parameter.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A duration parameter configuration with default value and constraints.

" + } + }, "com.amazonaws.eks#EksAnywhereSubscription": { "type": "structure", "members": { @@ -8170,6 +8362,48 @@ } } }, + "com.amazonaws.eks#HorizontalPodAutoscalerControllerConfigRequest": { + "type": "structure", + "members": { + "horizontalPodAutoscalerSyncPeriod": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The interval between each sync of the horizontal pod autoscaler. Valid values are single-unit durations such as 15s or 1m.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller configuration for the Kubernetes controller manager.

" + } + }, + "com.amazonaws.eks#HorizontalPodAutoscalerControllerConfigResponse": { + "type": "structure", + "members": { + "horizontalPodAutoscalerSyncPeriod": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The interval between each sync of the horizontal pod autoscaler.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller configuration for the Kubernetes controller manager.

" + } + }, + "com.amazonaws.eks#HorizontalPodAutoscalerControllerVersionConfig": { + "type": "structure", + "members": { + "horizontalPodAutoscalerSyncPeriod": { + "target": "com.amazonaws.eks#DurationParameterConfig", + "traits": { + "smithy.api#documentation": "

The HPA sync period configuration with default value and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller version configuration.

" + } + }, "com.amazonaws.eks#Identity": { "type": "structure", "members": { @@ -8536,6 +8770,26 @@ "smithy.api#default": 0 } }, + "com.amazonaws.eks#IntegerRangeConstraint": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.eks#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum allowed value.

" + } + }, + "max": { + "target": "com.amazonaws.eks#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum allowed value.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An integer range constraint specifying minimum and maximum allowed values.

" + } + }, "com.amazonaws.eks#InvalidParameterException": { "type": "structure", "members": { @@ -8690,6 +8944,150 @@ "target": "com.amazonaws.eks#Issue" } }, + "com.amazonaws.eks#KubeApiServerConfigRequest": { + "type": "structure", + "members": { + "eventTtl": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The duration that Kubernetes events are retained. Valid values are single-unit durations such as 30m or 1h.

" + } + }, + "serviceNodePortRange": { + "target": "com.amazonaws.eks#ServiceNodePortRange", + "traits": { + "smithy.api#documentation": "

The port range for NodePort services.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the Kubernetes API server on an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeApiServerConfigResponse": { + "type": "structure", + "members": { + "eventTtl": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The duration that Kubernetes events are retained.

" + } + }, + "serviceNodePortRange": { + "target": "com.amazonaws.eks#ServiceNodePortRange", + "traits": { + "smithy.api#documentation": "

The port range for NodePort services.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes API server configuration for an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeApiServerVersionConfig": { + "type": "structure", + "members": { + "eventTtl": { + "target": "com.amazonaws.eks#DurationParameterConfig", + "traits": { + "smithy.api#documentation": "

The event TTL configuration with default value and constraints.

" + } + }, + "serviceNodePortRange": { + "target": "com.amazonaws.eks#PortRangeParameterConfig", + "traits": { + "smithy.api#documentation": "

The service node port range configuration with default value and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes API server version-specific configuration defaults and constraints.

" + } + }, + "com.amazonaws.eks#KubeControllerManagerConfigRequest": { + "type": "structure", + "members": { + "horizontalPodAutoscalerControllerConfig": { + "target": "com.amazonaws.eks#HorizontalPodAutoscalerControllerConfigRequest", + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller configuration.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the Kubernetes controller manager on an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeControllerManagerConfigResponse": { + "type": "structure", + "members": { + "horizontalPodAutoscalerControllerConfig": { + "target": "com.amazonaws.eks#HorizontalPodAutoscalerControllerConfigResponse", + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller configuration.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager configuration for an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeControllerManagerVersionConfig": { + "type": "structure", + "members": { + "horizontalPodAutoscalerControllerConfig": { + "target": "com.amazonaws.eks#HorizontalPodAutoscalerControllerVersionConfig", + "traits": { + "smithy.api#documentation": "

The horizontal pod autoscaler controller configuration with default value and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager version-specific configuration defaults and constraints.

" + } + }, + "com.amazonaws.eks#KubeSchedulerConfigRequest": { + "type": "structure", + "members": { + "nodeResourcesFit": { + "target": "com.amazonaws.eks#NodeResourcesFitConfig", + "traits": { + "smithy.api#documentation": "

The node resource fit scoring configuration for the scheduler.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the Kubernetes scheduler on an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeSchedulerConfigResponse": { + "type": "structure", + "members": { + "nodeResourcesFit": { + "target": "com.amazonaws.eks#NodeResourcesFitConfig", + "traits": { + "smithy.api#documentation": "

The node resource fit scoring configuration for the scheduler.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler configuration for an Amazon EKS cluster.

" + } + }, + "com.amazonaws.eks#KubeSchedulerVersionConfig": { + "type": "structure", + "members": { + "nodeResourcesFit": { + "target": "com.amazonaws.eks#NodeResourcesFitVersionConfig", + "traits": { + "smithy.api#documentation": "

The NodeResourcesFit configuration with default value and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler version-specific configuration defaults and constraints.

" + } + }, "com.amazonaws.eks#KubernetesNetworkConfigRequest": { "type": "structure", "members": { @@ -10350,6 +10748,34 @@ "target": "com.amazonaws.eks#NodeRepairConfigOverrides" } }, + "com.amazonaws.eks#NodeResourcesFitConfig": { + "type": "structure", + "members": { + "scoringStrategy": { + "target": "com.amazonaws.eks#ScoringStrategy", + "traits": { + "smithy.api#documentation": "

The scoring strategy used to rank nodes during scheduling.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The NodeResourcesFit plugin configuration for the Kubernetes scheduler.

" + } + }, + "com.amazonaws.eks#NodeResourcesFitVersionConfig": { + "type": "structure", + "members": { + "scoringStrategy": { + "target": "com.amazonaws.eks#ScoringStrategyConfig", + "traits": { + "smithy.api#documentation": "

The scoring strategy configuration with default value and constraints.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The NodeResourcesFit version configuration with default value and constraints.

" + } + }, "com.amazonaws.eks#Nodegroup": { "type": "structure", "members": { @@ -11287,6 +11713,46 @@ "smithy.api#documentation": "

The summarized description of the association.

\n

Each summary is simplified by removing these fields compared to the full \n PodIdentityAssociation\n :

\n
    \n
  • \n

    The IAM role: roleArn\n

    \n
  • \n
  • \n

    The timestamp that the association was created at: createdAt\n

    \n
  • \n
  • \n

    The most recent timestamp that the association was modified at:. modifiedAt\n

    \n
  • \n
  • \n

    The tags on the association: tags\n

    \n
  • \n
" } }, + "com.amazonaws.eks#PortRangeConstraints": { + "type": "structure", + "members": { + "minPort": { + "target": "com.amazonaws.eks#IntegerRangeConstraint", + "traits": { + "smithy.api#documentation": "

The constraints for the minimum port value.

" + } + }, + "maxPort": { + "target": "com.amazonaws.eks#IntegerRangeConstraint", + "traits": { + "smithy.api#documentation": "

The constraints for the maximum port value.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Constraints for a port range parameter.

" + } + }, + "com.amazonaws.eks#PortRangeParameterConfig": { + "type": "structure", + "members": { + "defaultValue": { + "target": "com.amazonaws.eks#ServiceNodePortRange", + "traits": { + "smithy.api#documentation": "

The default port range value.

" + } + }, + "constraints": { + "target": "com.amazonaws.eks#PortRangeConstraints", + "traits": { + "smithy.api#documentation": "

The constraints for the port range parameter.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A port range parameter configuration with default value and constraints.

" + } + }, "com.amazonaws.eks#Provider": { "type": "structure", "members": { @@ -11583,6 +12049,26 @@ } } }, + "com.amazonaws.eks#ResourceConstraints": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.eks#AllowedValuesConstraint", + "traits": { + "smithy.api#documentation": "

The allowed values for resource names.

" + } + }, + "weight": { + "target": "com.amazonaws.eks#IntegerRangeConstraint", + "traits": { + "smithy.api#documentation": "

The allowed range for resource weight values.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Constraints for resource weight entries.

" + } + }, "com.amazonaws.eks#ResourceInUseException": { "type": "structure", "members": { @@ -11713,6 +12199,59 @@ "smithy.api#httpError": 428 } }, + "com.amazonaws.eks#ResourceWeight": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.eks#ResourceWeightName", + "traits": { + "smithy.api#documentation": "

The name of the resource (for example, cpu or memory).

" + } + }, + "weight": { + "target": "com.amazonaws.eks#ResourceWeightValue", + "traits": { + "smithy.api#documentation": "

The weight assigned to the resource for scoring. Must be between 1 and 100.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A resource weight entry for the scheduler scoring strategy.

" + } + }, + "com.amazonaws.eks#ResourceWeightList": { + "type": "list", + "member": { + "target": "com.amazonaws.eks#ResourceWeight" + }, + "traits": { + "smithy.api#documentation": "

A list of resource weights for the scoring strategy.

", + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.eks#ResourceWeightName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The name of a resource used in the scheduler scoring strategy.

", + "smithy.api#length": { + "min": 1, + "max": 253 + } + } + }, + "com.amazonaws.eks#ResourceWeightValue": { + "type": "integer", + "traits": { + "smithy.api#documentation": "

The weight value for a resource in the scheduler scoring strategy. Must be between 1 and 100.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, "com.amazonaws.eks#RoleArn": { "type": "string", "traits": { @@ -11736,6 +12275,86 @@ "smithy.api#documentation": "

The rollback configuration for the cluster version rollback.

" } }, + "com.amazonaws.eks#ScoringStrategy": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.eks#ScoringStrategyType", + "traits": { + "smithy.api#documentation": "

The scoring strategy type. Valid values are LeastAllocated or MostAllocated.

" + } + }, + "resources": { + "target": "com.amazonaws.eks#ResourceWeightList", + "traits": { + "smithy.api#documentation": "

The resource weights used for scoring nodes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The scoring strategy configuration for the NodeResourcesFit scheduler plugin.

" + } + }, + "com.amazonaws.eks#ScoringStrategyConfig": { + "type": "structure", + "members": { + "defaultValue": { + "target": "com.amazonaws.eks#ScoringStrategy", + "traits": { + "smithy.api#documentation": "

The default scoring strategy.

" + } + }, + "constraints": { + "target": "com.amazonaws.eks#ScoringStrategyConstraints", + "traits": { + "smithy.api#documentation": "

The constraints for the scoring strategy.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The scoring strategy configuration with default value and constraints.

" + } + }, + "com.amazonaws.eks#ScoringStrategyConstraints": { + "type": "structure", + "members": { + "scoringStrategy": { + "target": "com.amazonaws.eks#AllowedValuesConstraint", + "traits": { + "smithy.api#documentation": "

The allowed values for the scoring strategy type.

" + } + }, + "resources": { + "target": "com.amazonaws.eks#ResourceConstraints", + "traits": { + "smithy.api#documentation": "

The constraints for resource weights.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Constraints for the scoring strategy configuration.

" + } + }, + "com.amazonaws.eks#ScoringStrategyType": { + "type": "enum", + "members": { + "LEAST_ALLOCATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LeastAllocated" + } + }, + "MOST_ALLOCATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MostAllocated" + } + } + }, + "traits": { + "smithy.api#documentation": "

The scoring strategy type for the NodeResourcesFit scheduler plugin.

" + } + }, "com.amazonaws.eks#ServerException": { "type": "structure", "members": { @@ -11776,6 +12395,28 @@ "smithy.api#httpError": 500 } }, + "com.amazonaws.eks#ServiceNodePortRange": { + "type": "structure", + "members": { + "minPort": { + "target": "com.amazonaws.eks#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The minimum port number in the range.

" + } + }, + "maxPort": { + "target": "com.amazonaws.eks#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum port number in the range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The port range for Kubernetes NodePort services.

" + } + }, "com.amazonaws.eks#ServiceUnavailableException": { "type": "structure", "members": { @@ -12745,6 +13386,24 @@ "traits": { "smithy.api#documentation": "

The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.

" } + }, + "kubeApiServerConfig": { + "target": "com.amazonaws.eks#KubeApiServerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes API server configuration for the updated cluster.

" + } + }, + "kubeSchedulerConfig": { + "target": "com.amazonaws.eks#KubeSchedulerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes scheduler configuration for the updated cluster.

" + } + }, + "kubeControllerManagerConfig": { + "target": "com.amazonaws.eks#KubeControllerManagerConfigRequest", + "traits": { + "smithy.api#documentation": "

The Kubernetes controller manager configuration for the updated cluster.

" + } } }, "traits": { @@ -13508,6 +14167,24 @@ "traits": { "smithy.api#enumValue": "ControlPlaneEgressMode" } + }, + "KUBE_API_SERVER_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KubeApiServerConfig" + } + }, + "KUBE_SCHEDULER_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KubeSchedulerConfig" + } + }, + "KUBE_CONTROLLER_MANAGER_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KubeControllerManagerConfig" + } } } }, @@ -13808,6 +14485,12 @@ "traits": { "smithy.api#enumValue": "VersionRollback" } + }, + "CONTROL_PLANE_COMPONENT_CONFIG_UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ControlPlaneComponentConfigUpdate" + } } } }, diff --git a/codegen/sdk/aws-models/organizations.json b/codegen/sdk/aws-models/organizations.json index bb4cdc10ab4..5790bb79a56 100644 --- a/codegen/sdk/aws-models/organizations.json +++ b/codegen/sdk/aws-models/organizations.json @@ -5858,7 +5858,7 @@ "Type": { "target": "com.amazonaws.organizations#HandshakePartyType", "traits": { - "smithy.api#documentation": "

The type of ID for the participant.

", + "smithy.api#documentation": "

The type of ID for the participant.

\n \n

ORGANIZATION is valid only in the response context (identifying the inviting\n organization). Valid input values for the Target parameter are ACCOUNT and EMAIL\n only.

\n
", "smithy.api#required": {} } } diff --git a/codegen/sdk/aws-models/textract.json b/codegen/sdk/aws-models/textract.json index 258184cada5..090634ba371 100644 --- a/codegen/sdk/aws-models/textract.json +++ b/codegen/sdk/aws-models/textract.json @@ -407,7 +407,7 @@ "HumanLoopConfig": { "target": "com.amazonaws.textract#HumanLoopConfig", "traits": { - "smithy.api#documentation": "

Sets the configuration for the human in the loop workflow for analyzing\n documents.

" + "smithy.api#documentation": "

Sets the configuration for the human in the loop workflow for analyzing\n documents.

\n \n

Amazon Textract uses Amazon Augmented AI (A2I) to run the human review\n workflows that you specify in HumanLoopConfig. A2I entered\n maintenance mode in July 2026 and no longer accepts new customers. If your account is not an\n existing A2I customer, requests fail with an\n InvalidParameterException. For more information, see AWS\n service availability. If you're an existing A2I customer but receive\n this error, contact AWS Support and request assistance from the A2I team.

\n
" } }, "QueriesConfig": { @@ -668,7 +668,7 @@ } }, "traits": { - "smithy.api#documentation": "

Amazon Textract isn't able to read the document. For more information on the document\n limits in Amazon Textract, see limits.

", + "smithy.api#documentation": "

Amazon Textract isn't able to read the document. For more information on the document\n limits in Amazon Textract, see Hard limits.

", "smithy.api#error": "client" } }, @@ -1963,7 +1963,7 @@ "RotationAngle": { "target": "com.amazonaws.textract#Angle", "traits": { - "smithy.api#documentation": "

Provides a numerical value corresponding to the rotation of the text.

" + "smithy.api#documentation": "

Provides a numerical value corresponding to the rotation of the WORD block. \n Possible values are 0, 90, 180, and 270.

" } } }, @@ -2824,7 +2824,7 @@ } }, "traits": { - "smithy.api#documentation": "

Sets up the human review workflow the document will be sent to if one of the conditions\n is met. You can also set certain attributes of the image before review.

" + "smithy.api#documentation": "

Sets up the human review workflow the document will be sent to if one of the conditions\n is met. You can also set certain attributes of the image before review.

\n \n

Amazon Textract uses Amazon Augmented AI (A2I) to run the human review\n workflows that you specify in HumanLoopConfig. A2I entered\n maintenance mode in July 2026 and no longer accepts new customers. If your account is not an\n existing A2I customer, requests fail with an\n InvalidParameterException. For more information, see AWS\n service availability. If you're an existing A2I customer but receive\n this error, contact AWS Support and request assistance from the A2I team.

\n
" } }, "com.amazonaws.textract#HumanLoopDataAttributes": { From ce85303f733f29c25afb966d5cc6f0112cc45f66 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Tue, 11 Aug 2026 18:16:23 +0000 Subject: [PATCH 17/22] chore: release 1.8.28 --- CHANGELOG.md | 15 +++++++++++++++ codegen/sdk/packages.json | 6 ++++++ gradle.properties | 2 +- 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 40ff18ddbc5..5d415d15551 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [1.8.28] - 08/11/2026 + +### Features +* (**accountaccess**) Adds SDK support for AWS IAM account access manager, a feature that enables mapping of IAM roles to the users and groups in AWS IAM Identity Center. +* (**bedrockagentcore**) Adding online eval arn as input for recommendation API +* (**cleanrooms**) Adds support for exporting redacted query execution logs in AWS Clean Rooms +* (**connect**) Seven new APIs for managing custom metrics, including create, describe, update, and delete. Using Custom Metrics, customers of Amazon Connect Customer can tailor analytics dashboards to their needs by applying custom thresholds, filters, and calculations to one or more out of the box measurements. +* (**datazone**) GetSubscriptionGrant now returns materialized asset scope name for mapping Lake Formation data cell filters or Redshift views to subscription grants. +* (**eks**) This feature would give customers the ability to selectively tune certain configurations of Kubernetes control plane components in an Amazon EKS cluster. + +### Documentation +* (**clouddirectory**) Added an end-of-support notice to Amazon Cloud Directory public CLI reference documentation. +* (**organizations**) Documentation update for AWS Organizations that clarifies valid input values for the HandshakePartyType parameter in the InviteAccountToOrganization. API ORGANIZATION is valid in responses only. valid input values are ACCOUNT and EMAIL +* (**textract**) Amazon A2I entered maintenance mode in July 2026 and now rejects StartHumanLoop requests from accounts that it does not recognize as existing customers. This update adds a corresponding note to the HumanLoopConfig parameter documentation so that the API Reference and SDK docs explain this behavior. + ## [1.8.27] - 08/10/2026 ### Features diff --git a/codegen/sdk/packages.json b/codegen/sdk/packages.json index 68b79c6703d..58b1d322bde 100644 --- a/codegen/sdk/packages.json +++ b/codegen/sdk/packages.json @@ -48,6 +48,12 @@ "artifactName": "account", "brazilName": "AwsSdkKotlinAccount" }, + { + "sdkId": "Account Access", + "namespace": "aws.sdk.kotlin.services.accountaccess", + "artifactName": "accountaccess", + "brazilName": "AwsSdkKotlinAccountAccess" + }, { "sdkId": "Agent Registry", "namespace": "aws.sdk.kotlin.services.agentregistry", diff --git a/gradle.properties b/gradle.properties index cc15ec0e767..2c16a5e1e3c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.28-SNAPSHOT +sdkVersion=1.8.28 # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 5f45220e7a33b40f9d29c43f81aa302d88db3ae8 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Tue, 11 Aug 2026 18:16:25 +0000 Subject: [PATCH 18/22] chore: bump snapshot version to 1.8.29-SNAPSHOT --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 2c16a5e1e3c..f51ccf35bf8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.28 +sdkVersion=1.8.29-SNAPSHOT # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From e3487a2fb85f2bd24b9964d9f56e11cb71de32c2 Mon Sep 17 00:00:00 2001 From: Luigi Liu <71552006+luigi617@users.noreply.github.com> Date: Tue, 11 Aug 2026 21:31:38 +0000 Subject: [PATCH 19/22] bump version (#1976) Co-authored-by: luigi liu --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f9d20ecc9f4..28a4cd54751 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -13,7 +13,7 @@ atomicfu-version = "0.33.0" binary-compatibility-validator-version = "0.18.1" # smithy-kotlin -smithy-kotlin-version = "1.7.6" +smithy-kotlin-version = "1.7.7" # codegen smithy-version = "1.72.1" From 44efba77670395c23a956914cc83834ad8e43e06 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Wed, 12 Aug 2026 18:05:46 +0000 Subject: [PATCH 20/22] feat: update AWS API models --- codegen/sdk/aws-models/dsql.json | 2 +- codegen/sdk/aws-models/glue.json | 33 +- codegen/sdk/aws-models/iam.json | 910 +- codegen/sdk/aws-models/mediaconnect.json | 60 + codegen/sdk/aws-models/odb.json | 5011 ++++-- codegen/sdk/aws-models/quicksight.json | 2859 +++- codegen/sdk/aws-models/wellarchitected.json | 15475 ++++++++++++------ 7 files changed, 18089 insertions(+), 6261 deletions(-) diff --git a/codegen/sdk/aws-models/dsql.json b/codegen/sdk/aws-models/dsql.json index 31e6b3cdda7..403721eb6ea 100644 --- a/codegen/sdk/aws-models/dsql.json +++ b/codegen/sdk/aws-models/dsql.json @@ -1861,7 +1861,7 @@ "min": 1, "max": 2048 }, - "smithy.api#pattern": "^arn:aws.*:kinesis:.*:\\d{12}:stream/\\S+$" + "smithy.api#pattern": "^arn:aws[a-zA-Z\\-]*:kinesis:[a-zA-Z0-9\\-]*:\\d{12}:stream/[a-zA-Z0-9+=,.@_/\\-]+$" } }, "com.amazonaws.dsql#KinesisTargetDefinition": { diff --git a/codegen/sdk/aws-models/glue.json b/codegen/sdk/aws-models/glue.json index 60bff1b548a..f1976d4e807 100644 --- a/codegen/sdk/aws-models/glue.json +++ b/codegen/sdk/aws-models/glue.json @@ -22563,6 +22563,7 @@ } }, "traits": { + "smithy.api#documentation": "

The asset metadata returned by the GetAsset operation.

", "smithy.api#output": {} } }, @@ -24206,6 +24207,7 @@ } }, "traits": { + "smithy.api#documentation": "

The export configuration returned by the GetDataCatalogExportConfiguration operation.

", "smithy.api#output": {} } }, @@ -36297,7 +36299,7 @@ "TableName": { "target": "com.amazonaws.glue#NameString", "traits": { - "smithy.api#documentation": "

The name of the table for which statistics is generated.

" + "smithy.api#documentation": "

The name of the materialized view.

" } }, "MaxResults": { @@ -37617,7 +37619,10 @@ "type": "structure", "members": { "Message": { - "target": "com.amazonaws.glue#MessageString" + "target": "com.amazonaws.glue#MessageString", + "traits": { + "smithy.api#documentation": "

A message describing the problem.

" + } } }, "traits": { @@ -37649,7 +37654,7 @@ "TableName": { "target": "com.amazonaws.glue#TableName", "traits": { - "smithy.api#documentation": "

The name of the table for which statistics is generated.

" + "smithy.api#documentation": "

The name of the materialized view.

" } }, "CatalogId": { @@ -37661,7 +37666,7 @@ "Role": { "target": "com.amazonaws.glue#Role", "traits": { - "smithy.api#documentation": "

The IAM role that the service assumes to generate statistics.

" + "smithy.api#documentation": "

The IAM role that the service assumes to run the materialized view refresh task.

" } }, "Status": { @@ -37728,7 +37733,10 @@ "type": "structure", "members": { "Message": { - "target": "com.amazonaws.glue#MessageString" + "target": "com.amazonaws.glue#MessageString", + "traits": { + "smithy.api#documentation": "

A message describing the problem.

" + } } }, "traits": { @@ -37746,7 +37754,10 @@ "type": "structure", "members": { "Message": { - "target": "com.amazonaws.glue#MessageString" + "target": "com.amazonaws.glue#MessageString", + "traits": { + "smithy.api#documentation": "

A message describing the problem.

" + } } }, "traits": { @@ -40985,6 +40996,7 @@ } }, "traits": { + "smithy.api#documentation": "

The export configuration returned by the PutDataCatalogExportConfiguration operation.

", "smithy.api#output": {} } }, @@ -45039,6 +45051,7 @@ } }, "traits": { + "smithy.api#documentation": "

The search results returned by the SearchAssets operation.

", "smithy.api#output": {} } }, @@ -47676,7 +47689,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a materialized view refresh task run, for a specified table and columns.

" + "smithy.api#documentation": "

Starts a materialized view refresh task run for a specified materialized view.

" } }, "com.amazonaws.glue#StartMaterializedViewRefreshTaskRunRequest": { @@ -47699,7 +47712,7 @@ "TableName": { "target": "com.amazonaws.glue#NameString", "traits": { - "smithy.api#documentation": "

The name of the table to generate run the materialized view refresh task.

", + "smithy.api#documentation": "

The name of the materialized view to run the refresh task for.

", "smithy.api#required": {} } }, @@ -48531,7 +48544,7 @@ } ], "traits": { - "smithy.api#documentation": "

Stops a materialized view refresh task run, for a specified table and columns.

" + "smithy.api#documentation": "

Stops a materialized view refresh task run for a specified materialized view.

" } }, "com.amazonaws.glue#StopMaterializedViewRefreshTaskRunRequest": { @@ -48554,7 +48567,7 @@ "TableName": { "target": "com.amazonaws.glue#NameString", "traits": { - "smithy.api#documentation": "

The name of the table to generate statistics.

", + "smithy.api#documentation": "

The name of the materialized view.

", "smithy.api#required": {} } } diff --git a/codegen/sdk/aws-models/iam.json b/codegen/sdk/aws-models/iam.json index 396d2c92c06..34828db9b61 100644 --- a/codegen/sdk/aws-models/iam.json +++ b/codegen/sdk/aws-models/iam.json @@ -36,6 +36,9 @@ { "target": "com.amazonaws.iam#AcceptDelegationRequest" }, + { + "target": "com.amazonaws.iam#AcquireRole" + }, { "target": "com.amazonaws.iam#AddClientIDToOpenIDConnectProvider" }, @@ -225,6 +228,9 @@ { "target": "com.amazonaws.iam#GetAccountPasswordPolicy" }, + { + "target": "com.amazonaws.iam#GetAccountProperties" + }, { "target": "com.amazonaws.iam#GetAccountSummary" }, @@ -279,6 +285,9 @@ { "target": "com.amazonaws.iam#GetRolePolicy" }, + { + "target": "com.amazonaws.iam#GetRoleTemplateVersion" + }, { "target": "com.amazonaws.iam#GetSAMLProvider" }, @@ -411,6 +420,9 @@ { "target": "com.amazonaws.iam#ListVirtualMFADevices" }, + { + "target": "com.amazonaws.iam#PutAccountProperties" + }, { "target": "com.amazonaws.iam#PutGroupPolicy" }, @@ -4097,6 +4109,92 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.iam#AcquireRole": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#AcquireRoleRequest" + }, + "output": { + "target": "com.amazonaws.iam#AcquireRoleResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#ConcurrentModificationException" + }, + { + "target": "com.amazonaws.iam#EntityAlreadyExistsException" + }, + { + "target": "com.amazonaws.iam#InvalidInputException" + }, + { + "target": "com.amazonaws.iam#LimitExceededException" + }, + { + "target": "com.amazonaws.iam#MalformedPolicyDocumentException" + }, + { + "target": "com.amazonaws.iam#NameConflictException" + }, + { + "target": "com.amazonaws.iam#NoSuchEntityException" + }, + { + "target": "com.amazonaws.iam#RoleModifiedException" + }, + { + "target": "com.amazonaws.iam#RoleTemplateDisabledException" + }, + { + "target": "com.amazonaws.iam#ServiceFailureException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an IAM role from the specified role template. The new role takes its\n configuration—including its name, path, trust policy, inline and managed policies,\n permissions boundary, tags, and maximum session duration—from the role\n template version that you specify. For more information about roles, see IAM roles in the\n IAM User Guide.

\n

If the template version defines parameters, use the ReplacementValues\n parameter to supply the values that the service substitutes into the role during\n creation.

" + } + }, + "com.amazonaws.iam#AcquireRoleRequest": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.iam#arnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role template to create the role from.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", + "smithy.api#required": {} + } + }, + "TemplateMinorVersion": { + "target": "com.amazonaws.iam#integerType", + "traits": { + "smithy.api#documentation": "

The minor version of the role template to use. If you do not specify a minor version,\n the service uses the template's default minor version.

" + } + }, + "ReplacementValues": { + "target": "com.amazonaws.iam#mapStringReplacementValueEntry", + "traits": { + "smithy.api#documentation": "

A map of values to substitute for the parameters that are defined in the role template\n version. Each key is a parameter name from the template, and each value is a structure\n that contains the replacement values for that parameter.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#AcquireRoleResponse": { + "type": "structure", + "members": { + "Role": { + "target": "com.amazonaws.iam#Role", + "traits": { + "smithy.api#documentation": "

A structure that contains details about the IAM role that was created.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#ActionNameListType": { "type": "list", "member": { @@ -8781,6 +8879,47 @@ "smithy.api#output": {} } }, + "com.amazonaws.iam#GetAccountProperties": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#GetAccountPropertiesRequest" + }, + "output": { + "target": "com.amazonaws.iam#GetAccountPropertiesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#InvalidInputException" + }, + { + "target": "com.amazonaws.iam#ServiceFailureException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the account-level properties for the caller's Amazon Web Services account. Account\n properties are configuration settings that control account-wide IAM features such as\n Role Manager.

\n

The service returns properties as key-value pairs in\n Namespace/PropertyName format. Each namespace groups related\n configuration settings. Use PutAccountProperties to modify these properties.

" + } + }, + "com.amazonaws.iam#GetAccountPropertiesRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#GetAccountPropertiesResponse": { + "type": "structure", + "members": { + "Properties": { + "target": "com.amazonaws.iam#accountPropertiesMapType", + "traits": { + "smithy.api#documentation": "

A map of account property key-value pairs. Keys are in the format\n Namespace/PropertyName.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#GetAccountSummary": { "type": "operation", "input": { @@ -10096,6 +10235,65 @@ "smithy.api#output": {} } }, + "com.amazonaws.iam#GetRoleTemplateVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#GetRoleTemplateVersionRequest" + }, + "output": { + "target": "com.amazonaws.iam#GetRoleTemplateVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#InvalidInputException" + }, + { + "target": "com.amazonaws.iam#NoSuchEntityException" + }, + { + "target": "com.amazonaws.iam#ServiceFailureException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves information about a version of the specified role template. Role templates\n define a reusable configuration—including role name and path patterns, trust\n policy, inline and managed policies, permissions boundary, tags, and maximum session\n duration—that you use to create IAM roles with AcquireRole.

\n

If you do not specify a minor version, the service returns the template's default\n minor version.

" + } + }, + "com.amazonaws.iam#GetRoleTemplateVersionRequest": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.iam#arnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role template whose version you want to\n retrieve.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", + "smithy.api#required": {} + } + }, + "MinorVersion": { + "target": "com.amazonaws.iam#minorVersionType", + "traits": { + "smithy.api#documentation": "

The minor version of the role template to retrieve. If you do not specify a minor\n version, the service returns the template's default minor version.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#GetRoleTemplateVersionResponse": { + "type": "structure", + "members": { + "RoleTemplateVersion": { + "target": "com.amazonaws.iam#RoleTemplateVersion", + "traits": { + "smithy.api#documentation": "

A structure that contains details about the requested role template version.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#GetSAMLProvider": { "type": "operation", "input": { @@ -10909,6 +11107,28 @@ "smithy.api#documentation": "

Contains information about an IAM group, including all of the group's policies.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" } }, + "com.amazonaws.iam#InlinePolicy": { + "type": "structure", + "members": { + "PolicyName": { + "target": "com.amazonaws.iam#policyNameType", + "traits": { + "smithy.api#documentation": "

The name of the inline policy.

", + "smithy.api#required": {} + } + }, + "PolicyDocument": { + "target": "com.amazonaws.iam#policyDocumentType", + "traits": { + "smithy.api#documentation": "

The inline policy document.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains an inline policy template that the service embeds in roles that you create from a\n role template.

" + } + }, "com.amazonaws.iam#InlinePolicyIdentifierType": { "type": "structure", "members": { @@ -14455,6 +14675,23 @@ "target": "com.amazonaws.iam#ManagedPolicyDetail" } }, + "com.amazonaws.iam#NameConflictException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.iam#nameConflictMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "NameConflict", + "httpResponseCode": 409 + }, + "smithy.api#documentation": "

The request was rejected because the resulting role name conflicts with an existing role\n in the account.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, "com.amazonaws.iam#NoSuchEntityException": { "type": "structure", "members": { @@ -14596,6 +14833,60 @@ "smithy.api#documentation": "

Contains information about the effect that Organizations has on a policy simulation.

" } }, + "com.amazonaws.iam#ParameterDefinition": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.iam#parameterNameType", + "traits": { + "smithy.api#documentation": "

The name of the parameter.

", + "smithy.api#required": {} + } + }, + "Type": { + "target": "com.amazonaws.iam#parameterTypeType", + "traits": { + "smithy.api#documentation": "

The data type of the parameter. Valid values are String,\n StringList, Number, NumberList,\n Arn, and ArnList.

", + "smithy.api#required": {} + } + }, + "SubType": { + "target": "com.amazonaws.iam#parameterSubTypeType", + "traits": { + "smithy.api#documentation": "

An optional subtype that further constrains the values that are allowed for the\n parameter.

" + } + }, + "Description": { + "target": "com.amazonaws.iam#parameterDescriptionType", + "traits": { + "smithy.api#documentation": "

A description of the parameter.

" + } + }, + "IsRequired": { + "target": "com.amazonaws.iam#booleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether you must supply a value for the parameter when you create a role from\n the template.

" + } + }, + "DefaultValue": { + "target": "com.amazonaws.iam#parameterDefaultValueType", + "traits": { + "smithy.api#documentation": "

The value that the service uses for the parameter when you do not supply one.

" + } + }, + "Immutable": { + "target": "com.amazonaws.iam#booleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether you can change the parameter value after you create the role.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines a parameter that a role template accepts. You supply values for these parameters\n when you create a role with AcquireRole.

" + } + }, "com.amazonaws.iam#PasswordPolicy": { "type": "structure", "members": { @@ -15230,60 +15521,105 @@ "smithy.api#documentation": "

Contains the row and column of a location of a Statement element in a\n policy document.

\n

This data type is used as a member of the \n Statement\n type.

" } }, - "com.amazonaws.iam#PutGroupPolicy": { + "com.amazonaws.iam#PutAccountProperties": { "type": "operation", "input": { - "target": "com.amazonaws.iam#PutGroupPolicyRequest" + "target": "com.amazonaws.iam#PutAccountPropertiesRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.iam#PutAccountPropertiesResponse" }, "errors": [ { - "target": "com.amazonaws.iam#LimitExceededException" - }, - { - "target": "com.amazonaws.iam#MalformedPolicyDocumentException" + "target": "com.amazonaws.iam#ConcurrentModificationException" }, { - "target": "com.amazonaws.iam#NoSuchEntityException" + "target": "com.amazonaws.iam#InvalidInputException" }, { "target": "com.amazonaws.iam#ServiceFailureException" } ], "traits": { - "smithy.api#documentation": "

Adds or updates an inline policy document that is embedded in the specified IAM\n group.

\n

A user can also have managed policies attached to it. To attach a managed policy to a\n group, use \n AttachGroupPolicy\n . To create a new managed policy, use\n \n CreatePolicy\n . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

\n

For information about the maximum number of inline policies that you can embed in a\n group, see IAM and STS quotas in the IAM User Guide.

\n \n

Because policy documents can be large, you should use POST rather than GET when\n calling PutGroupPolicy. For general information about using the Query\n API with IAM, see Making query requests in the\n IAM User Guide.

\n
", - "smithy.api#examples": [ - { - "title": "To add a policy to a group", - "documentation": "The following command adds a policy named IAMReadAccess to the IAM group named PowerUsers.", - "input": { - "GroupName": "PowerUsers", - "PolicyName": "IAMReadAccess", - "PolicyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Action\":[\"iam:Get*\",\"iam:List*\",\"iam:Generate*\"],\"Resource\":\"*\"}}" - } - } - ] + "smithy.api#documentation": "

Sets account-level properties for the caller's Amazon Web Services account. Account properties are\n configuration settings that control account-wide IAM features such as Role\n Manager.

\n

Specify properties as key-value pairs in\n Namespace/PropertyName format. All properties in a single request must\n belong to the same namespace. Use GetAccountProperties to view the current properties.

" } }, - "com.amazonaws.iam#PutGroupPolicyRequest": { + "com.amazonaws.iam#PutAccountPropertiesRequest": { "type": "structure", "members": { - "GroupName": { - "target": "com.amazonaws.iam#groupNameType", - "traits": { - "smithy.api#documentation": "

The name of the group to associate the policy with.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-.

", - "smithy.api#required": {} - } - }, - "PolicyName": { - "target": "com.amazonaws.iam#policyNameType", + "Properties": { + "target": "com.amazonaws.iam#accountPropertiesMapType", "traits": { - "smithy.api#documentation": "

The name of the policy document.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", + "smithy.api#documentation": "

A map of property key-value pairs to set. All keys must belong to the same\n namespace.

\n

Each key uses the format Namespace/PropertyName. The key must contain\n exactly one / separating the namespace from the property name, and cannot\n start or end with /.

\n

The service validates each value based on the property key's expected type. For\n example, boolean properties expect true or false.

", "smithy.api#required": {} } - }, + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#PutAccountPropertiesResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#PutGroupPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#PutGroupPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.iam#LimitExceededException" + }, + { + "target": "com.amazonaws.iam#MalformedPolicyDocumentException" + }, + { + "target": "com.amazonaws.iam#NoSuchEntityException" + }, + { + "target": "com.amazonaws.iam#ServiceFailureException" + } + ], + "traits": { + "smithy.api#documentation": "

Adds or updates an inline policy document that is embedded in the specified IAM\n group.

\n

A user can also have managed policies attached to it. To attach a managed policy to a\n group, use \n AttachGroupPolicy\n . To create a new managed policy, use\n \n CreatePolicy\n . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

\n

For information about the maximum number of inline policies that you can embed in a\n group, see IAM and STS quotas in the IAM User Guide.

\n \n

Because policy documents can be large, you should use POST rather than GET when\n calling PutGroupPolicy. For general information about using the Query\n API with IAM, see Making query requests in the\n IAM User Guide.

\n
", + "smithy.api#examples": [ + { + "title": "To add a policy to a group", + "documentation": "The following command adds a policy named IAMReadAccess to the IAM group named PowerUsers.", + "input": { + "GroupName": "PowerUsers", + "PolicyName": "IAMReadAccess", + "PolicyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Action\":[\"iam:Get*\",\"iam:List*\",\"iam:Generate*\"],\"Resource\":\"*\"}}" + } + } + ] + } + }, + "com.amazonaws.iam#PutGroupPolicyRequest": { + "type": "structure", + "members": { + "GroupName": { + "target": "com.amazonaws.iam#groupNameType", + "traits": { + "smithy.api#documentation": "

The name of the group to associate the policy with.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-.

", + "smithy.api#required": {} + } + }, + "PolicyName": { + "target": "com.amazonaws.iam#policyNameType", + "traits": { + "smithy.api#documentation": "

The name of the policy document.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", + "smithy.api#required": {} + } + }, "PolicyDocument": { "target": "com.amazonaws.iam#policyDocumentType", "traits": { @@ -15756,6 +16092,21 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#ReplacementValueEntry": { + "type": "structure", + "members": { + "Values": { + "target": "com.amazonaws.iam#replacementValueListType", + "traits": { + "smithy.api#documentation": "

The list of replacement values for the template parameter.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the list of replacement values for a single template parameter used when\n creating a role from a role template.

" + } + }, "com.amazonaws.iam#ReportContentType": { "type": "blob" }, @@ -16079,6 +16430,12 @@ "traits": { "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the IAM user\n Guide.

" } + }, + "SourceRoleTemplate": { + "target": "com.amazonaws.iam#SourceRoleTemplate", + "traits": { + "smithy.api#documentation": "

Contains information about the role template that this role was created from. This\n member is present only for roles created with AcquireRole.

" + } } }, "traits": { @@ -16182,6 +16539,188 @@ "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the IAM user\n Guide.

\n

This data type is returned as a response element in the GetRole and GetAccountAuthorizationDetails operations.

" } }, + "com.amazonaws.iam#RoleModifiedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.iam#roleModifiedMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "RoleModified", + "httpResponseCode": 409 + }, + "smithy.api#documentation": "

The request was rejected because someone modified the role template while the service was\n creating the role. Wait a few minutes and try the request again.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.iam#RoleTemplateDisabledException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.iam#roleTemplateDisabledMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "RoleTemplateDisabled", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The request was rejected because the specified role template is disabled. A disabled\n role template cannot be used to create new roles. Contact your administrator to enable the\n role template, or use a different role template.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.iam#RoleTemplateVersion": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.iam#arnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the role template.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

" + } + }, + "TemplateName": { + "target": "com.amazonaws.iam#roleTemplateNameType", + "traits": { + "smithy.api#documentation": "

The friendly name that identifies the role template.

" + } + }, + "TemplateVersionId": { + "target": "com.amazonaws.iam#idType", + "traits": { + "smithy.api#documentation": "

The identifier of the role template version.

" + } + }, + "Description": { + "target": "com.amazonaws.iam#roleTemplateDescriptionType", + "traits": { + "smithy.api#documentation": "

The description of the role template.

" + } + }, + "MajorVersion": { + "target": "com.amazonaws.iam#integerType", + "traits": { + "smithy.api#documentation": "

The major version number of the role template.

" + } + }, + "DefaultMinorVersion": { + "target": "com.amazonaws.iam#minorVersionType", + "traits": { + "smithy.api#documentation": "

The minor version that the service uses by default when you create a role from this template\n without specifying a minor version.

" + } + }, + "ManagedByType": { + "target": "com.amazonaws.iam#managedByTypeType", + "traits": { + "smithy.api#documentation": "

Indicates that the role template is managed by an Amazon Web Services service.

" + } + }, + "ManagedByValue": { + "target": "com.amazonaws.iam#managedByValueType", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Web Services service that manages the role template.

" + } + }, + "Enabled": { + "target": "com.amazonaws.iam#booleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether the role template is enabled. When a template is disabled, you cannot\n create roles from it.

" + } + }, + "MinorVersion": { + "target": "com.amazonaws.iam#minorVersionType", + "traits": { + "smithy.api#documentation": "

The minor version number of this role template version.

" + } + }, + "RoleNamePattern": { + "target": "com.amazonaws.iam#roleNamePatternType", + "traits": { + "smithy.api#documentation": "

The pattern that is used to generate the name of a role that is created from this\n template. The pattern can include @{parameter} placeholders that are replaced\n with the values you supply in the ReplacementValues parameter of AcquireRole.

" + } + }, + "RolePathPattern": { + "target": "com.amazonaws.iam#rolePathPatternType", + "traits": { + "smithy.api#documentation": "

The pattern that is used to generate the path of a role that is created from this\n template.

" + } + }, + "RoleDescriptionPattern": { + "target": "com.amazonaws.iam#roleDescriptionPatternType", + "traits": { + "smithy.api#documentation": "

The pattern that is used to generate the description of a role that is created from this\n template.

" + } + }, + "AssumeRolePolicyDocumentTemplate": { + "target": "com.amazonaws.iam#policyDocumentType", + "traits": { + "smithy.api#documentation": "

The trust policy template that grants an entity permission to assume roles that you\n create from this template.

" + } + }, + "InlinePolicyTemplates": { + "target": "com.amazonaws.iam#inlinePolicyTemplateListType", + "traits": { + "smithy.api#documentation": "

A list of inline policy templates that the service embeds in roles that you create from\n this template.

" + } + }, + "ManagedPolicyArns": { + "target": "com.amazonaws.iam#managedPolicyArnListType", + "traits": { + "smithy.api#documentation": "

A list of the ARNs of the managed policies that the service attaches to roles that you\n create from this template.

" + } + }, + "PermissionBoundaryArn": { + "target": "com.amazonaws.iam#arnType", + "traits": { + "smithy.api#documentation": "

The ARN of the policy that sets the permissions boundary for roles that you create from\n this template.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

" + } + }, + "ParametersDefinition": { + "target": "com.amazonaws.iam#parametersDefinitionListType", + "traits": { + "smithy.api#documentation": "

A list of the parameters that are defined for this role template version. You supply\n values for these parameters when you create a role with AcquireRole.

" + } + }, + "RoleTagsTemplate": { + "target": "com.amazonaws.iam#tagTemplateListType", + "traits": { + "smithy.api#documentation": "

A list of tag templates that are applied to roles that are created from this\n template.

" + } + }, + "MaxSessionDuration": { + "target": "com.amazonaws.iam#roleMaxSessionDurationType", + "traits": { + "smithy.api#documentation": "

The maximum session duration (in seconds) for roles that are created from this\n template.

" + } + }, + "VersionEnabled": { + "target": "com.amazonaws.iam#booleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether this specific minor version of the role template is enabled.

" + } + }, + "CreateTimestamp": { + "target": "com.amazonaws.iam#dateType", + "traits": { + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the role template version was created.

" + } + }, + "UpdateTimestamp": { + "target": "com.amazonaws.iam#dateType", + "traits": { + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the role template version was last updated.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about a version of an IAM role template, including the\n configuration that is used to create roles with AcquireRole. This structure\n is returned as a response element by the GetRoleTemplateVersion operation.

" + } + }, "com.amazonaws.iam#RoleUsageListType": { "type": "list", "member": { @@ -17133,6 +17672,28 @@ "target": "com.amazonaws.iam#policyDocumentType" } }, + "com.amazonaws.iam#SourceRoleTemplate": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.iam#arnType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role template that the role was created\n from.

", + "smithy.api#required": {} + } + }, + "TemplateMinorVersion": { + "target": "com.amazonaws.iam#integerType", + "traits": { + "smithy.api#documentation": "

The minor version of the role template that was used to create the role.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about the role template that a role was created from.

" + } + }, "com.amazonaws.iam#Statement": { "type": "structure", "members": { @@ -17569,6 +18130,28 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#TagTemplate": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.iam#tagTemplateKeyType", + "traits": { + "smithy.api#documentation": "

The key name of the tag.

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.iam#tagTemplateValueType", + "traits": { + "smithy.api#documentation": "

The value associated with the tag key.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents a tag that is applied to roles that are created from a role template. The key\n and value can include @{parameter} placeholders that are replaced with\n template parameter values when the role is created.

" + } + }, "com.amazonaws.iam#TagUser": { "type": "operation", "input": { @@ -19546,6 +20129,35 @@ "smithy.api#pattern": "^\\d{12}$" } }, + "com.amazonaws.iam#accountPropertiesMapType": { + "type": "map", + "key": { + "target": "com.amazonaws.iam#accountPropertyKeyType" + }, + "value": { + "target": "com.amazonaws.iam#accountPropertyValueType" + } + }, + "com.amazonaws.iam#accountPropertyKeyType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + }, + "smithy.api#pattern": "^[A-Za-z][A-Za-z0-9/_-]*$" + } + }, + "com.amazonaws.iam#accountPropertyValueType": { + "type": "string", + "traits": { + "smithy.api#documentation": "String representation of the property value. The service will validate\n and coerce the value based on the property key's expected type.\n For example, integer properties expect numeric strings, and boolean\n properties expect \"true\" or \"false\".", + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, "com.amazonaws.iam#allUsers": { "type": "boolean" }, @@ -19869,6 +20481,12 @@ "smithy.api#pattern": "^[\\w]+$" } }, + "com.amazonaws.iam#inlinePolicyTemplateListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#InlinePolicy" + } + }, "com.amazonaws.iam#instanceProfileListType": { "type": "list", "member": { @@ -19965,6 +20583,47 @@ "com.amazonaws.iam#malformedPolicyDocumentMessage": { "type": "string" }, + "com.amazonaws.iam#managedByTypeType": { + "type": "enum", + "members": { + "Service": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Service" + } + } + } + }, + "com.amazonaws.iam#managedByValueType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.iam#managedPolicyArnListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#arnType" + } + }, + "com.amazonaws.iam#mapStringReplacementValueEntry": { + "type": "map", + "key": { + "target": "com.amazonaws.iam#stringType" + }, + "value": { + "target": "com.amazonaws.iam#ReplacementValueEntry" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 30 + } + } + }, "com.amazonaws.iam#markerType": { "type": "string", "traits": { @@ -20011,6 +20670,12 @@ } } }, + "com.amazonaws.iam#minorVersionType": { + "type": "integer" + }, + "com.amazonaws.iam#nameConflictMessage": { + "type": "string" + }, "com.amazonaws.iam#noSuchEntityMessage": { "type": "string" }, @@ -20063,6 +20728,89 @@ "smithy.api#pattern": "^[a-zA-Z0-9:/+=,.@_-]+$" } }, + "com.amazonaws.iam#parameterDefaultValueType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.iam#parameterDescriptionType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1000 + } + } + }, + "com.amazonaws.iam#parameterNameType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.iam#parameterSubTypeType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + } + } + }, + "com.amazonaws.iam#parameterTypeType": { + "type": "enum", + "members": { + "String": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "String" + } + }, + "StringList": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "StringList" + } + }, + "Number": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Number" + } + }, + "NumberList": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NumberList" + } + }, + "Arn": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Arn" + } + }, + "ArnList": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ArnList" + } + } + } + }, + "com.amazonaws.iam#parametersDefinitionListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#ParameterDefinition" + } + }, "com.amazonaws.iam#passwordPolicyViolationMessage": { "type": "string" }, @@ -20409,6 +21157,18 @@ "smithy.api#pattern": "^http(s?)://[a-zA-Z0-9._/-]*(\\?[a-zA-Z0-9._=&-]*)?(#[a-zA-Z0-9._/-]*)?$" } }, + "com.amazonaws.iam#replacementValueListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#stringType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 20 + } + } + }, "com.amazonaws.iam#reportGenerationLimitExceededMessage": { "type": "string" }, @@ -20445,6 +21205,15 @@ "com.amazonaws.iam#responseMarkerType": { "type": "string" }, + "com.amazonaws.iam#roleDescriptionPatternType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, "com.amazonaws.iam#roleDescriptionType": { "type": "string", "traits": { @@ -20479,6 +21248,18 @@ } } }, + "com.amazonaws.iam#roleModifiedMessage": { + "type": "string" + }, + "com.amazonaws.iam#roleNamePatternType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, "com.amazonaws.iam#roleNameType": { "type": "string", "traits": { @@ -20489,12 +21270,45 @@ "smithy.api#pattern": "^[\\w+=,.@-]+$" } }, + "com.amazonaws.iam#rolePathPatternType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^/[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u00A1-\\u00FF]*/$" + } + }, "com.amazonaws.iam#rolePermissionRestrictionArnListType": { "type": "list", "member": { "target": "com.amazonaws.iam#arnType" } }, + "com.amazonaws.iam#roleTemplateDescriptionType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 512 + }, + "smithy.api#pattern": "^[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u00A1-\\u00FF]*$" + } + }, + "com.amazonaws.iam#roleTemplateDisabledMessage": { + "type": "string" + }, + "com.amazonaws.iam#roleTemplateNameType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\w+=,.\\-]+$" + } + }, "com.amazonaws.iam#serialNumberType": { "type": "string", "traits": { @@ -21001,6 +21815,38 @@ } } }, + "com.amazonaws.iam#tagTemplateKeyType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@{}]+$" + } + }, + "com.amazonaws.iam#tagTemplateListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#TagTemplate" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.iam#tagTemplateValueType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@{}]*$" + } + }, "com.amazonaws.iam#tagValueType": { "type": "string", "traits": { diff --git a/codegen/sdk/aws-models/mediaconnect.json b/codegen/sdk/aws-models/mediaconnect.json index 14a6bdd6c37..eb6af29a440 100644 --- a/codegen/sdk/aws-models/mediaconnect.json +++ b/codegen/sdk/aws-models/mediaconnect.json @@ -2741,6 +2741,7 @@ "mediaconnect:TagResource", "medialive:UpdateChannel", "ec2:CreateNetworkInterface", + "ec2:CreateTags", "iam:PassRole" ] }, @@ -3040,6 +3041,7 @@ "mediaconnect:TagResource", "medialive:UpdateInput", "ec2:CreateNetworkInterface", + "ec2:CreateTags", "iam:PassRole" ] }, @@ -3128,6 +3130,13 @@ "smithy.api#jsonName": "tags" } }, + "FabricConfiguration": { + "target": "com.amazonaws.mediaconnect#FabricConfiguration", + "traits": { + "smithy.api#documentation": "

The fabric configuration settings for the router output.

", + "smithy.api#jsonName": "fabricConfiguration" + } + }, "ClientToken": { "target": "com.amazonaws.mediaconnect#ClientToken", "traits": { @@ -5066,6 +5075,39 @@ } } }, + "com.amazonaws.mediaconnect#FabricConfiguration": { + "type": "structure", + "members": { + "RecoveryLatencyMode": { + "target": "com.amazonaws.mediaconnect#FabricLatencyMode", + "traits": { + "smithy.api#documentation": "

The recovery latency mode for the router fabric connection. Valid values include the following:

  • BALANCED (default) – Optimizes for stream quality.

  • LOW_LATENCY – Reduces latency at the potential cost of stream quality under adverse network conditions.

", + "smithy.api#jsonName": "recoveryLatencyMode", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The fabric configuration settings for the router output.

" + } + }, + "com.amazonaws.mediaconnect#FabricLatencyMode": { + "type": "enum", + "members": { + "BALANCED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BALANCED" + } + }, + "LOW_LATENCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LOW_LATENCY" + } + } + } + }, "com.amazonaws.mediaconnect#FailoverConfig": { "type": "structure", "members": { @@ -14570,6 +14612,15 @@ "smithy.api#documentation": "

The current maintenance schedule details for this router output.

", "smithy.api#jsonName": "maintenanceSchedule" } + }, + "FabricConfiguration": { + "target": "com.amazonaws.mediaconnect#FabricConfiguration", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The fabric configuration settings for the router output.

", + "smithy.api#jsonName": "fabricConfiguration", + "smithy.api#required": {} + } } }, "traits": { @@ -19024,6 +19075,7 @@ "mediaconnect:UpdateFlowOutput", "medialive:UpdateChannel", "ec2:CreateNetworkInterface", + "ec2:CreateTags", "iam:PassRole" ] }, @@ -19270,6 +19322,7 @@ "mediaconnect:UpdateFlowSource", "medialive:UpdateInput", "ec2:CreateNetworkInterface", + "ec2:CreateTags", "iam:PassRole" ] }, @@ -19338,6 +19391,13 @@ "smithy.api#documentation": "

The updated maintenance configuration settings for the router output, including any changes to preferred maintenance windows and schedules.

", "smithy.api#jsonName": "maintenanceConfiguration" } + }, + "FabricConfiguration": { + "target": "com.amazonaws.mediaconnect#FabricConfiguration", + "traits": { + "smithy.api#documentation": "

The updated fabric configuration settings for the router output. You cannot update the fabric configuration while the output has an active route. You must unroute the output before updating the fabric configuration.

", + "smithy.api#jsonName": "fabricConfiguration" + } } }, "traits": { diff --git a/codegen/sdk/aws-models/odb.json b/codegen/sdk/aws-models/odb.json index 8831a130a38..8f7b2b44c0a 100644 --- a/codegen/sdk/aws-models/odb.json +++ b/codegen/sdk/aws-models/odb.json @@ -252,6 +252,99 @@ "smithy.api#output": {} } }, + "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmCluster": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmClusterInput" + }, + "output": { + "target": "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmClusterOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Adds virtual machines to the specified Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmClusterInput": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster to add virtual machines to.

", + "smithy.api#required": {} + } + }, + "desiredNodeCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The desired number of nodes in the Exascale VM cluster after the association.

", + "smithy.api#range": { + "min": 1 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmClusterOutput": { + "type": "structure", + "members": { + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" + } + }, + "exadbVmClusterId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.odb#AutonomousDatabase": { "type": "structure", "members": { @@ -4049,7 +4142,7 @@ "scanDnsName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.

" + "smithy.api#documentation": "

The fully qualified domain name (FQDN) of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.

" } }, "scanDnsRecordId": { @@ -4345,7 +4438,7 @@ "scanDnsName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.

" + "smithy.api#documentation": "

The fully qualified domain name (FQDN) of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.

" } }, "scanDnsRecordId": { @@ -5628,7 +5721,7 @@ "dbNodeStorageSizeInGBs": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The amount of local node storage, in gigabytes (GBs), to allocate for the VM cluster.

" + "smithy.api#documentation": "

The amount of local node storage, in gigabytes (GB), to allocate for the VM cluster.

" } }, "dbServers": { @@ -5664,7 +5757,7 @@ "memorySizeInGBs": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The amount of memory, in gigabytes (GBs), to allocate for the VM cluster.

" + "smithy.api#documentation": "

The amount of memory, in gigabytes (GB), to allocate for the VM cluster.

" } }, "systemVersion": { @@ -5754,13 +5847,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#CreateOdbNetwork": { + "com.amazonaws.odb#CreateExadbVmCluster": { "type": "operation", "input": { - "target": "com.amazonaws.odb#CreateOdbNetworkInput" + "target": "com.amazonaws.odb#CreateExadbVmClusterInput" }, "output": { - "target": "com.amazonaws.odb#CreateOdbNetworkOutput" + "target": "com.amazonaws.odb#CreateExadbVmClusterOutput" }, "errors": [ { @@ -5772,6 +5865,9 @@ { "target": "com.amazonaws.odb#InternalServerException" }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, { "target": "com.amazonaws.odb#ServiceQuotaExceededException" }, @@ -5787,177 +5883,229 @@ "aws:RequestTag/${TagKey}", "aws:TagKeys" ], - "smithy.api#documentation": "

Creates an ODB network.

", + "smithy.api#documentation": "

Creates an Exascale VM cluster.

", "smithy.api#idempotent": {} } }, - "com.amazonaws.odb#CreateOdbNetworkInput": { + "com.amazonaws.odb#CreateExadbVmClusterInput": { "type": "structure", "members": { "displayName": { "target": "com.amazonaws.odb#ResourceDisplayName", "traits": { - "smithy.api#documentation": "

A user-friendly name for the ODB network.

", + "smithy.api#documentation": "

A user-friendly name for the Exascale VM cluster.

", "smithy.api#required": {} } }, - "availabilityZone": { - "target": "smithy.api#String", + "enabledEcpuCount": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Availability Zone (AZ) where the ODB network is located.

This operation requires that you specify a value for either availabilityZone or availabilityZoneId.

", - "smithy.api#length": { - "min": 1, - "max": 255 - } + "smithy.api#documentation": "

The number of ECPUs to enable for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 0 + }, + "smithy.api#required": {} } }, - "availabilityZoneId": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault for this Exascale VM cluster.

", + "smithy.api#required": {} + } + }, + "gridImageId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The AZ ID of the AZ where the ODB network is located.

This operation requires that you specify a value for either availabilityZone or availabilityZoneId.

", + "smithy.api#documentation": "

The Grid Infrastructure software image ID for the Exascale VM cluster.

", "smithy.api#length": { "min": 1, "max": 255 - } + }, + "smithy.api#required": {} } }, - "clientSubnetCidr": { - "target": "smithy.api#String", + "hostname": { + "target": "com.amazonaws.odb#Hostname", "traits": { - "smithy.api#documentation": "

The CIDR range of the client subnet for the ODB network.

Constraints:

  • Must not overlap with the CIDR range of the backup subnet.

  • Must not overlap with the CIDR ranges of the VPCs that are connected to the ODB network.

  • Must not use the following CIDR ranges that are reserved by OCI:

    • 100.106.0.0/16 and 100.107.0.0/16

    • 169.254.0.0/16

    • 224.0.0.0 - 239.255.255.255

    • 240.0.0.0 - 255.255.255.255

", - "smithy.api#length": { - "min": 1, - "max": 43 + "smithy.api#documentation": "

The host name for the Exascale VM cluster.

", + "smithy.api#required": {} + } + }, + "nodeCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of nodes in the Exascale VM cluster.

", + "smithy.api#range": { + "min": 1 }, "smithy.api#required": {} } }, - "backupSubnetCidr": { - "target": "smithy.api#String", + "odbNetworkId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The CIDR range of the backup subnet for the ODB network.

Constraints:

  • Must not overlap with the CIDR range of the client subnet.

  • Must not overlap with the CIDR ranges of the VPCs that are connected to the ODB network.

  • Must not use the following CIDR ranges that are reserved by OCI:

    • 100.106.0.0/16 and 100.107.0.0/16

    • 169.254.0.0/16

    • 224.0.0.0 - 239.255.255.255

    • 240.0.0.0 - 255.255.255.255

", - "smithy.api#length": { - "min": 1, - "max": 43 - } + "smithy.api#documentation": "

The unique identifier of the ODB network for the Exascale VM cluster.

", + "smithy.api#required": {} } }, - "customDomainName": { + "shape": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name to use for the resources in the ODB network.

", + "smithy.api#documentation": "

The shape of the Exascale VM cluster.

", "smithy.api#length": { "min": 1, "max": 255 - } + }, + "smithy.api#required": {} } }, - "defaultDnsPrefix": { - "target": "smithy.api#String", + "sshPublicKeys": { + "target": "com.amazonaws.odb#StringList", "traits": { - "smithy.api#documentation": "

The DNS prefix to the default DNS domain name. The default DNS domain name is oraclevcn.com.

", - "smithy.api#length": { - "min": 1, - "max": 15 - }, - "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9]*$" + "smithy.api#documentation": "

The public key portion of one or more key pairs used for SSH access to the Exascale VM cluster.

", + "smithy.api#required": {} } }, - "clientToken": { - "target": "com.amazonaws.odb#GeneralInputString", + "totalEcpuCount": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, the Amazon Web Services SDK automatically generates a client token and uses it for the request to ensure idempotency. The client token is valid for up to 24 hours after it's first used.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#length": { - "min": 8, - "max": 64 - } + "smithy.api#documentation": "

The total number of ECPUs for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 2 + }, + "smithy.api#required": {} } }, - "s3Access": { - "target": "com.amazonaws.odb#Access", + "vmFileSystemStorageTotalSizeInGBs": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

Specifies the configuration for Amazon S3 access from the ODB network.

" + "smithy.api#documentation": "

The total amount of file system storage, in gigabytes (GB), for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 0 + }, + "smithy.api#required": {} } }, - "zeroEtlAccess": { - "target": "com.amazonaws.odb#Access", + "clusterName": { + "target": "com.amazonaws.odb#ClusterName", "traits": { - "smithy.api#documentation": "

Specifies the configuration for Zero-ETL access from the ODB network.

" + "smithy.api#documentation": "

A name for the Grid Infrastructure cluster. The name isn't case sensitive.

" } }, - "stsAccess": { - "target": "com.amazonaws.odb#Access", + "dataCollectionOptions": { + "target": "com.amazonaws.odb#DataCollectionOptions", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Security Token Service (STS) access configuration for the ODB network.

" + "smithy.api#documentation": "

The set of preferences for the various diagnostic collection options for the Exascale VM cluster.

" } }, - "kmsAccess": { - "target": "com.amazonaws.odb#Access", + "licenseModel": { + "target": "com.amazonaws.odb#LicenseModel", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) access configuration for the ODB network.

" + "smithy.api#documentation": "

The Oracle license model to apply to the Exascale VM cluster.

" } }, - "s3PolicyDocument": { - "target": "com.amazonaws.odb#PolicyDocument", + "scanListenerPortTcp": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

Specifies the endpoint policy for Amazon S3 access from the ODB network.

" + "smithy.api#documentation": "

The port number for TCP connections to the single client access name (SCAN) listener.

", + "smithy.api#range": { + "min": 1024, + "max": 8999 + } } }, - "stsPolicyDocument": { - "target": "com.amazonaws.odb#PolicyDocument", + "scanListenerPortTcpSsl": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Security Token Service (STS) policy document that defines permissions for token service usage within the ODB network.

" + "smithy.api#documentation": "

The port number for TCP connections with SSL to the single client access name (SCAN) listener.

", + "smithy.api#range": { + "min": 1024, + "max": 8999 + } } }, - "kmsPolicyDocument": { - "target": "com.amazonaws.odb#PolicyDocument", + "shapeAttribute": { + "target": "com.amazonaws.odb#ShapeAttribute", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) policy document that defines permissions for key usage within the ODB network.

" + "smithy.api#documentation": "

The shape attribute for the Exascale VM cluster.

" } }, - "crossRegionS3RestoreSourcesToEnable": { - "target": "com.amazonaws.odb#StringList", + "systemVersion": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The cross-Region Amazon S3 restore sources to enable for the ODB network.

" + "smithy.api#documentation": "

The version of the operating system of the image for the Exascale VM cluster.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } }, "tags": { "target": "com.amazonaws.odb#RequestTagMap", "traits": { - "smithy.api#documentation": "

The list of resource tags to apply to the ODB network.

" + "smithy.api#documentation": "

The list of resource tags to apply to the Exascale VM cluster.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone for the Exascale VM cluster.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "clientToken": { + "target": "com.amazonaws.odb#GeneralInputString", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, the Amazon Web Services SDK automatically generates one and uses it for the request to ensure idempotency. The client token is valid for up to 24 hours after it's first used.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 8, + "max": 64 + } } } }, "traits": { - "smithy.api#input": {} + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#ExascaleDbStorageVaultResource" + }, + { + "resource": "com.amazonaws.odb#OdbNetworkResource" + } + ] } }, - "com.amazonaws.odb#CreateOdbNetworkOutput": { + "com.amazonaws.odb#CreateExadbVmClusterOutput": { "type": "structure", "members": { "displayName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The user-friendly name of the ODB network.

" + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" } }, "status": { "target": "com.amazonaws.odb#ResourceStatus", "traits": { - "smithy.api#documentation": "

The current status of the ODB network.

" + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" } }, "statusReason": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Additional information about the status of the ODB network.

" + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" } }, - "odbNetworkId": { + "exadbVmClusterId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The unique identifier of the ODB network.

", + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", "smithy.api#required": {} } } @@ -5966,13 +6114,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#CreateOdbPeeringConnection": { + "com.amazonaws.odb#CreateExascaleDbStorageVault": { "type": "operation", "input": { - "target": "com.amazonaws.odb#CreateOdbPeeringConnectionInput" + "target": "com.amazonaws.odb#CreateExascaleDbStorageVaultInput" }, "output": { - "target": "com.amazonaws.odb#CreateOdbPeeringConnectionOutput" + "target": "com.amazonaws.odb#CreateExascaleDbStorageVaultOutput" }, "errors": [ { @@ -5985,7 +6133,7 @@ "target": "com.amazonaws.odb#InternalServerException" }, { - "target": "com.amazonaws.odb#ResourceNotFoundException" + "target": "com.amazonaws.odb#ServiceQuotaExceededException" }, { "target": "com.amazonaws.odb#ThrottlingException" @@ -5999,97 +6147,141 @@ "aws:RequestTag/${TagKey}", "aws:TagKeys" ], - "smithy.api#documentation": "

Creates a peering connection between an ODB network and a VPC.

A peering connection enables private connectivity between the networks for application-tier communication.

", + "smithy.api#documentation": "

Creates an Exascale storage vault.

", "smithy.api#idempotent": {} } }, - "com.amazonaws.odb#CreateOdbPeeringConnectionInput": { + "com.amazonaws.odb#CreateExascaleDbStorageVaultInput": { "type": "structure", "members": { - "odbNetworkId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", "traits": { - "smithy.api#documentation": "

The unique identifier of the ODB network that initiates the peering connection.

", + "smithy.api#documentation": "

A user-friendly name for the Exascale storage vault.

", "smithy.api#required": {} } }, - "peerNetworkId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "highCapacityDatabaseStorageTotalSizeInGBs": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The unique identifier of the peer network. This can be either a VPC ID or another ODB network ID.

", + "smithy.api#documentation": "

The total size of the high-capacity database storage, in gigabytes (GB), for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + }, "smithy.api#required": {} } }, - "displayName": { - "target": "com.amazonaws.odb#ResourceDisplayName", + "additionalFlashCacheInPercent": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The display name for the ODB peering connection.

" + "smithy.api#documentation": "

The additional flash cache percentage for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + } } }, - "peerNetworkCidrsToBeAdded": { - "target": "com.amazonaws.odb#PeeredCidrList", + "autoscaleLimitInGBs": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

A list of CIDR blocks to add to the peering connection. These CIDR blocks define the IP address ranges that can communicate through the peering connection.

" + "smithy.api#documentation": "

The autoscale limit in gigabytes (GB) for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + } } }, - "peerNetworkRouteTableIds": { - "target": "com.amazonaws.odb#PeerNetworkRouteTableIdList", + "availabilityZoneId": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The unique identifier of the VPC route table for which a route to the ODB network is automatically created during peering connection establishment.

" + "smithy.api#documentation": "

The Availability Zone ID for the Exascale storage vault.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } }, - "clientToken": { - "target": "com.amazonaws.odb#GeneralInputString", + "availabilityZone": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The client token for the ODB peering connection request.

Constraints:

  • Must be unique for each request.

", - "smithy.api#idempotencyToken": {}, + "smithy.api#documentation": "

The Availability Zone for the Exascale storage vault.

", "smithy.api#length": { - "min": 8, - "max": 64 + "min": 1, + "max": 255 + } + } + }, + "description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of the Exascale storage vault.

", + "smithy.api#length": { + "min": 1, + "max": 400 } } }, + "isAutoscaleEnabled": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether autoscaling is enabled for the Exascale storage vault.

" + } + }, "tags": { "target": "com.amazonaws.odb#RequestTagMap", "traits": { - "smithy.api#documentation": "

The tags to assign to the ODB peering connection.

" + "smithy.api#documentation": "

The list of resource tags to apply to the Exascale storage vault.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone for the Exascale storage vault.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "clientToken": { + "target": "com.amazonaws.odb#GeneralInputString", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, the Amazon Web Services SDK automatically generates one and uses it for the request to ensure idempotency. The client token is valid for up to 24 hours after it's first used.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 8, + "max": 64 + } } } }, "traits": { - "smithy.api#input": {}, - "smithy.api#references": [ - { - "resource": "com.amazonaws.odb#OdbNetworkResource" - } - ] + "smithy.api#input": {} } }, - "com.amazonaws.odb#CreateOdbPeeringConnectionOutput": { + "com.amazonaws.odb#CreateExascaleDbStorageVaultOutput": { "type": "structure", "members": { "displayName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The display name of the ODB peering connection.

" + "smithy.api#documentation": "

The user-friendly name for the Exascale storage vault.

" } }, "status": { "target": "com.amazonaws.odb#ResourceStatus", "traits": { - "smithy.api#documentation": "

The status of the ODB peering connection.

" + "smithy.api#documentation": "

The current status of the Exascale storage vault.

" } }, "statusReason": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The reason for the current status of the ODB peering connection.

" + "smithy.api#documentation": "

Additional information about the status of the Exascale storage vault.

" } }, - "odbPeeringConnectionId": { + "exascaleDbStorageVaultId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The unique identifier of the ODB peering connection.

", + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault.

", "smithy.api#required": {} } } @@ -6098,917 +6290,975 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#CrossRegionDataGuardConfiguration": { - "type": "structure", - "members": { - "sourceAutonomousDatabaseArn": { - "target": "com.amazonaws.odb#Arn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source Autonomous Database for the cross-Region Oracle Data Guard configuration.

", - "smithy.api#required": {} - } - } + "com.amazonaws.odb#CreateOdbNetwork": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#CreateOdbNetworkInput" }, + "output": { + "target": "com.amazonaws.odb#CreateOdbNetworkOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], "traits": { - "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a cross-Region Oracle Data Guard peer.

" + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "smithy.api#documentation": "

Creates an ODB network.

", + "smithy.api#idempotent": {} } }, - "com.amazonaws.odb#CrossRegionDisasterRecoveryConfiguration": { + "com.amazonaws.odb#CreateOdbNetworkInput": { "type": "structure", "members": { - "sourceAutonomousDatabaseArn": { - "target": "com.amazonaws.odb#Arn", + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source Autonomous Database for the cross-Region disaster recovery configuration.

", + "smithy.api#documentation": "

A user-friendly name for the ODB network.

", "smithy.api#required": {} } }, - "remoteDisasterRecoveryType": { - "target": "com.amazonaws.odb#DisasterRecoveryType", + "availabilityZone": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The type of remote disaster recovery to configure, either Autonomous Data Guard or backup-based.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Web Services Availability Zone (AZ) where the ODB network is located.

This operation requires that you specify a value for either availabilityZone or availabilityZoneId.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } }, - "isReplicateAutomaticBackups": { - "target": "smithy.api#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether automatic backups are replicated to the disaster recovery database.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a cross-Region disaster recovery peer.

" - } - }, - "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccess": { - "type": "structure", - "members": { - "region": { + "availabilityZoneId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Region for cross-Region Amazon S3 restore access.

" + "smithy.api#documentation": "

The AZ ID of the AZ where the ODB network is located.

This operation requires that you specify a value for either availabilityZone or availabilityZoneId.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } }, - "ipv4Addresses": { - "target": "com.amazonaws.odb#StringList", + "clientSubnetCidr": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The IPv4 addresses allowed for cross-Region Amazon S3 restore access.

" + "smithy.api#documentation": "

The CIDR range of the client subnet for the ODB network.

Constraints:

  • Must not overlap with the CIDR range of the backup subnet.

  • Must not overlap with the CIDR ranges of the VPCs that are connected to the ODB network.

  • Must not use the following CIDR ranges that are reserved by OCI:

    • 100.106.0.0/16 and 100.107.0.0/16

    • 169.254.0.0/16

    • 224.0.0.0 - 239.255.255.255

    • 240.0.0.0 - 255.255.255.255

", + "smithy.api#length": { + "min": 1, + "max": 43 + }, + "smithy.api#required": {} } }, - "status": { - "target": "com.amazonaws.odb#ManagedResourceStatus", - "traits": { - "smithy.api#documentation": "

The current status of the cross-Region Amazon S3 restore access configuration.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The configuration access for the cross-Region Amazon S3 database restore source for the ODB network.

" - } - }, - "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccessList": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccess" - } - }, - "com.amazonaws.odb#CustomerContact": { - "type": "structure", - "members": { - "email": { - "target": "com.amazonaws.odb#SensitiveString", + "backupSubnetCidr": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The email address of the contact.

", + "smithy.api#documentation": "

The CIDR range of the backup subnet for the ODB network.

Constraints:

  • Must not overlap with the CIDR range of the client subnet.

  • Must not overlap with the CIDR ranges of the VPCs that are connected to the ODB network.

  • Must not use the following CIDR ranges that are reserved by OCI:

    • 100.106.0.0/16 and 100.107.0.0/16

    • 169.254.0.0/16

    • 224.0.0.0 - 239.255.255.255

    • 240.0.0.0 - 255.255.255.255

", "smithy.api#length": { "min": 1, - "max": 320 + "max": 43 } } - } - }, - "traits": { - "smithy.api#documentation": "

A contact to receive notification from Oracle about maintenance updates for a specific Exadata infrastructure.

" - } - }, - "com.amazonaws.odb#CustomerContacts": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#CustomerContact" - } - }, - "com.amazonaws.odb#CustomerManagedAwsSecretConfiguration": { - "type": "structure", - "members": { - "iamRoleArn": { - "target": "com.amazonaws.odb#RoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that OCI assumes to retrieve the secret value.

" - } }, - "secretId": { - "target": "com.amazonaws.odb#SecretIdOrArn", + "customDomainName": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The identifier or ARN of the Amazon Web Services Secrets Manager secret that contains the password.

" + "smithy.api#documentation": "

The domain name to use for the resources in the ODB network.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } }, - "externalIdType": { - "target": "com.amazonaws.odb#ExternalIdType", + "defaultDnsPrefix": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The type of Oracle Cloud Identifier (OCID) used as the external ID when assuming the IAM role.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The configuration of a customer-managed Amazon Web Services Secrets Manager secret used to supply a password.

" - } - }, - "com.amazonaws.odb#CustomerManagedAwsSecretConfigurationInput": { - "type": "structure", - "members": { - "secretId": { - "target": "com.amazonaws.odb#SecretIdOrArn", - "traits": { - "smithy.api#documentation": "

The identifier or ARN of the Amazon Web Services Secrets Manager secret that contains the password.

" + "smithy.api#documentation": "

The DNS prefix to the default DNS domain name. The default DNS domain name is oraclevcn.com.

", + "smithy.api#length": { + "min": 1, + "max": 15 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9]*$" } }, - "iamRoleArn": { - "target": "com.amazonaws.odb#RoleArn", + "clientToken": { + "target": "com.amazonaws.odb#GeneralInputString", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that OCI assumes to retrieve the secret value.

" + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, the Amazon Web Services SDK automatically generates a client token and uses it for the request to ensure idempotency. The client token is valid for up to 24 hours after it's first used.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 8, + "max": 64 + } } }, - "externalIdType": { - "target": "com.amazonaws.odb#ExternalIdType", + "s3Access": { + "target": "com.amazonaws.odb#Access", "traits": { - "smithy.api#documentation": "

The type of Oracle Cloud Identifier (OCID) used as the external ID when assuming the IAM role.

The valid values depend on the operation. For the CreateAutonomousDatabase operation, only compartment_ocid and tenant_ocid are allowed. For the UpdateAutonomousDatabase and CreateAutonomousDatabaseWallet operations, database_ocid, compartment_ocid, and tenant_ocid are all allowed.

" + "smithy.api#documentation": "

Specifies the configuration for Amazon S3 access from the ODB network.

" } - } - }, - "traits": { - "smithy.api#documentation": "

The input configuration for a customer-managed Amazon Web Services Secrets Manager secret used to supply a password.

" - } - }, - "com.amazonaws.odb#DataCollectionOptions": { - "type": "structure", - "members": { - "isDiagnosticsEventsEnabled": { - "target": "smithy.api#Boolean", + }, + "zeroEtlAccess": { + "target": "com.amazonaws.odb#Access", "traits": { - "smithy.api#documentation": "

Indicates whether diagnostic collection is enabled for the VM cluster.

" + "smithy.api#documentation": "

Specifies the configuration for Zero-ETL access from the ODB network.

" } }, - "isHealthMonitoringEnabled": { - "target": "smithy.api#Boolean", + "stsAccess": { + "target": "com.amazonaws.odb#Access", "traits": { - "smithy.api#documentation": "

Indicates whether health monitoring is enabled for the VM cluster.

" + "smithy.api#documentation": "

The Amazon Web Services Security Token Service (STS) access configuration for the ODB network.

" } }, - "isIncidentLogsEnabled": { - "target": "smithy.api#Boolean", + "kmsAccess": { + "target": "com.amazonaws.odb#Access", "traits": { - "smithy.api#documentation": "

Indicates whether incident logs are enabled for the cloud VM cluster.

" + "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) access configuration for the ODB network.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the data collection options enabled for a VM cluster.

" - } - }, - "com.amazonaws.odb#DataGuardRole": { - "type": "enum", - "members": { - "PRIMARY": { - "target": "smithy.api#Unit", + }, + "s3PolicyDocument": { + "target": "com.amazonaws.odb#PolicyDocument", "traits": { - "smithy.api#enumValue": "PRIMARY" + "smithy.api#documentation": "

Specifies the endpoint policy for Amazon S3 access from the ODB network.

" } }, - "STANDBY": { - "target": "smithy.api#Unit", + "stsPolicyDocument": { + "target": "com.amazonaws.odb#PolicyDocument", "traits": { - "smithy.api#enumValue": "STANDBY" + "smithy.api#documentation": "

The Amazon Web Services Security Token Service (STS) policy document that defines permissions for token service usage within the ODB network.

" } }, - "DISABLED_STANDBY": { - "target": "smithy.api#Unit", + "kmsPolicyDocument": { + "target": "com.amazonaws.odb#PolicyDocument", "traits": { - "smithy.api#enumValue": "DISABLED_STANDBY" + "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) policy document that defines permissions for key usage within the ODB network.

" } }, - "BACKUP_COPY": { - "target": "smithy.api#Unit", + "crossRegionS3RestoreSourcesToEnable": { + "target": "com.amazonaws.odb#StringList", "traits": { - "smithy.api#enumValue": "BACKUP_COPY" + "smithy.api#documentation": "

The cross-Region Amazon S3 restore sources to enable for the ODB network.

" } }, - "SNAPSHOT_STANDBY": { - "target": "smithy.api#Unit", + "tags": { + "target": "com.amazonaws.odb#RequestTagMap", "traits": { - "smithy.api#enumValue": "SNAPSHOT_STANDBY" + "smithy.api#documentation": "

The list of resource tags to apply to the ODB network.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.odb#DataSafeStatus": { - "type": "enum", + "com.amazonaws.odb#CreateOdbNetworkOutput": { + "type": "structure", "members": { - "REGISTERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REGISTERING" - } - }, - "REGISTERED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REGISTERED" - } - }, - "DEREGISTERING": { - "target": "smithy.api#Unit", + "displayName": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "DEREGISTERING" + "smithy.api#documentation": "

The user-friendly name of the ODB network.

" } }, - "NOT_REGISTERED": { - "target": "smithy.api#Unit", + "status": { + "target": "com.amazonaws.odb#ResourceStatus", "traits": { - "smithy.api#enumValue": "NOT_REGISTERED" + "smithy.api#documentation": "

The current status of the ODB network.

" } }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FAILED" - } - } - } - }, - "com.amazonaws.odb#DatabaseCloneConfiguration": { - "type": "structure", - "members": { - "sourceAutonomousDatabaseId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "statusReason": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The unique identifier of the source Autonomous Database to clone.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Additional information about the status of the ODB network.

" } }, - "cloneType": { - "target": "com.amazonaws.odb#CloneType", + "odbNetworkId": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The type of clone to create, either a full clone, a metadata clone, or a partial clone.

", + "smithy.api#documentation": "

The unique identifier of the ODB network.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a clone of an existing database.

" + "smithy.api#output": {} } }, - "com.amazonaws.odb#DatabaseConnectionStringMap": { - "type": "map", - "key": { - "target": "smithy.api#String" + "com.amazonaws.odb#CreateOdbPeeringConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#CreateOdbPeeringConnectionInput" }, - "value": { - "target": "smithy.api#String" + "output": { + "target": "com.amazonaws.odb#CreateOdbPeeringConnectionOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:TagKeys" + ], + "smithy.api#documentation": "

Creates a peering connection between an ODB network and a VPC.

A peering connection enables private connectivity between the networks for application-tier communication.

", + "smithy.api#idempotent": {} } }, - "com.amazonaws.odb#DatabaseConnectionStringProfile": { + "com.amazonaws.odb#CreateOdbPeeringConnectionInput": { "type": "structure", "members": { - "consumerGroup": { - "target": "smithy.api#String", + "odbNetworkId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The consumer group associated with the connection string profile.

" + "smithy.api#documentation": "

The unique identifier of the ODB network that initiates the peering connection.

", + "smithy.api#required": {} } }, - "displayName": { - "target": "smithy.api#String", + "peerNetworkId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The user-friendly name of the connection string profile.

" + "smithy.api#documentation": "

The unique identifier of the peer network. This can be either a VPC ID or another ODB network ID.

", + "smithy.api#required": {} } }, - "hostFormat": { - "target": "smithy.api#String", + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", "traits": { - "smithy.api#documentation": "

The host name format used in the connection string.

" + "smithy.api#documentation": "

The display name for the ODB peering connection.

" } }, - "isRegional": { - "target": "smithy.api#Boolean", + "peerNetworkCidrsToBeAdded": { + "target": "com.amazonaws.odb#PeeredCidrList", "traits": { - "smithy.api#documentation": "

Indicates whether the connection string profile is regional.

" + "smithy.api#documentation": "

A list of CIDR blocks to add to the peering connection. These CIDR blocks define the IP address ranges that can communicate through the peering connection.

" } }, - "protocol": { - "target": "smithy.api#String", + "peerNetworkRouteTableIds": { + "target": "com.amazonaws.odb#PeerNetworkRouteTableIdList", "traits": { - "smithy.api#documentation": "

The protocol used by the connection string profile.

" + "smithy.api#documentation": "

The unique identifier of the VPC route table for which a route to the ODB network is automatically created during peering connection establishment.

" } }, - "sessionMode": { - "target": "smithy.api#String", + "clientToken": { + "target": "com.amazonaws.odb#GeneralInputString", "traits": { - "smithy.api#documentation": "

The session mode of the connection string profile.

" + "smithy.api#documentation": "

The client token for the ODB peering connection request.

Constraints:

  • Must be unique for each request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 8, + "max": 64 + } } }, - "syntaxFormat": { - "target": "smithy.api#String", + "tags": { + "target": "com.amazonaws.odb#RequestTagMap", "traits": { - "smithy.api#documentation": "

The syntax format of the connection string profile.

" + "smithy.api#documentation": "

The tags to assign to the ODB peering connection.

" } - }, - "tlsAuthentication": { + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#OdbNetworkResource" + } + ] + } + }, + "com.amazonaws.odb#CreateOdbPeeringConnectionOutput": { + "type": "structure", + "members": { + "displayName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The TLS authentication method used by the connection string profile.

" + "smithy.api#documentation": "

The display name of the ODB peering connection.

" } }, - "value": { + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The status of the ODB peering connection.

" + } + }, + "statusReason": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The connection string value of the profile.

" + "smithy.api#documentation": "

The reason for the current status of the ODB peering connection.

" + } + }, + "odbPeeringConnectionId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the ODB peering connection.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

A connection string profile for an Autonomous Database.

" - } - }, - "com.amazonaws.odb#DatabaseConnectionStringProfileList": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#DatabaseConnectionStringProfile" + "smithy.api#output": {} } }, - "com.amazonaws.odb#DatabaseEdition": { - "type": "enum", + "com.amazonaws.odb#CrossRegionDataGuardConfiguration": { + "type": "structure", "members": { - "STANDARD_EDITION": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_EDITION" - } - }, - "ENTERPRISE_EDITION": { - "target": "smithy.api#Unit", + "sourceAutonomousDatabaseArn": { + "target": "com.amazonaws.odb#Arn", "traits": { - "smithy.api#enumValue": "ENTERPRISE_EDITION" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source Autonomous Database for the cross-Region Oracle Data Guard configuration.

", + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a cross-Region Oracle Data Guard peer.

" } }, - "com.amazonaws.odb#DatabaseManagementStatus": { - "type": "enum", + "com.amazonaws.odb#CrossRegionDisasterRecoveryConfiguration": { + "type": "structure", "members": { - "ENABLING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ENABLING" - } - }, - "ENABLED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ENABLED" - } - }, - "DISABLING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DISABLING" - } - }, - "NOT_ENABLED": { - "target": "smithy.api#Unit", + "sourceAutonomousDatabaseArn": { + "target": "com.amazonaws.odb#Arn", "traits": { - "smithy.api#enumValue": "NOT_ENABLED" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source Autonomous Database for the cross-Region disaster recovery configuration.

", + "smithy.api#required": {} } }, - "FAILED_ENABLING": { - "target": "smithy.api#Unit", + "remoteDisasterRecoveryType": { + "target": "com.amazonaws.odb#DisasterRecoveryType", "traits": { - "smithy.api#enumValue": "FAILED_ENABLING" + "smithy.api#documentation": "

The type of remote disaster recovery to configure, either Autonomous Data Guard or backup-based.

", + "smithy.api#required": {} } }, - "FAILED_DISABLING": { - "target": "smithy.api#Unit", + "isReplicateAutomaticBackups": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#enumValue": "FAILED_DISABLING" + "smithy.api#documentation": "

Indicates whether automatic backups are replicated to the disaster recovery database.

" } } + }, + "traits": { + "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a cross-Region disaster recovery peer.

" } }, - "com.amazonaws.odb#DatabaseStandbySummary": { + "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccess": { "type": "structure", "members": { - "availabilityDomain": { + "region": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The availability domain of the standby Autonomous Database.

" + "smithy.api#documentation": "

The Amazon Web Services Region for cross-Region Amazon S3 restore access.

" } }, - "lagTimeInSeconds": { - "target": "smithy.api#Integer", + "ipv4Addresses": { + "target": "com.amazonaws.odb#StringList", "traits": { - "smithy.api#documentation": "

The time lag, in seconds, between the standby database and the primary database.

" + "smithy.api#documentation": "

The IPv4 addresses allowed for cross-Region Amazon S3 restore access.

" } }, "status": { - "target": "com.amazonaws.odb#AutonomousDatabaseResourceStatus", + "target": "com.amazonaws.odb#ManagedResourceStatus", "traits": { - "smithy.api#documentation": "

The current status of the standby Autonomous Database.

" + "smithy.api#documentation": "

The current status of the cross-Region Amazon S3 restore access configuration.

" } - }, - "statusReason": { - "target": "smithy.api#String", + } + }, + "traits": { + "smithy.api#documentation": "

The configuration access for the cross-Region Amazon S3 database restore source for the ODB network.

" + } + }, + "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccessList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#CrossRegionS3RestoreSourcesAccess" + } + }, + "com.amazonaws.odb#CustomerContact": { + "type": "structure", + "members": { + "email": { + "target": "com.amazonaws.odb#SensitiveString", "traits": { - "smithy.api#documentation": "

Additional information about the current status of the standby Autonomous Database, if applicable.

" + "smithy.api#documentation": "

The email address of the contact.

", + "smithy.api#length": { + "min": 1, + "max": 320 + } } - }, - "maintenanceTargetComponent": { - "target": "smithy.api#String", + } + }, + "traits": { + "smithy.api#documentation": "

A contact to receive notification from Oracle about maintenance updates for a specific Exadata infrastructure.

" + } + }, + "com.amazonaws.odb#CustomerContacts": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#CustomerContact" + } + }, + "com.amazonaws.odb#CustomerManagedAwsSecretConfiguration": { + "type": "structure", + "members": { + "iamRoleArn": { + "target": "com.amazonaws.odb#RoleArn", "traits": { - "smithy.api#documentation": "

The component on the standby Autonomous Database that the current maintenance is being applied to.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that OCI assumes to retrieve the secret value.

" } }, - "timeDataGuardRoleChanged": { - "target": "smithy.api#Timestamp", + "secretId": { + "target": "com.amazonaws.odb#SecretIdOrArn", "traits": { - "smithy.api#documentation": "

The date and time when the Oracle Data Guard role of the standby database last changed.

", - "smithy.api#timestampFormat": "date-time" + "smithy.api#documentation": "

The identifier or ARN of the Amazon Web Services Secrets Manager secret that contains the password.

" } }, - "timeDisasterRecoveryRoleChanged": { - "target": "smithy.api#Timestamp", + "externalIdType": { + "target": "com.amazonaws.odb#ExternalIdType", "traits": { - "smithy.api#documentation": "

The date and time when the disaster recovery role of the standby database last changed.

", - "smithy.api#timestampFormat": "date-time" + "smithy.api#documentation": "

The type of Oracle Cloud Identifier (OCID) used as the external ID when assuming the IAM role.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration of a customer-managed Amazon Web Services Secrets Manager secret used to supply a password.

" + } + }, + "com.amazonaws.odb#CustomerManagedAwsSecretConfigurationInput": { + "type": "structure", + "members": { + "secretId": { + "target": "com.amazonaws.odb#SecretIdOrArn", + "traits": { + "smithy.api#documentation": "

The identifier or ARN of the Amazon Web Services Secrets Manager secret that contains the password.

" } }, - "timeMaintenanceBegin": { - "target": "smithy.api#Timestamp", + "iamRoleArn": { + "target": "com.amazonaws.odb#RoleArn", "traits": { - "smithy.api#documentation": "

The date and time when the next maintenance of the standby database begins.

", - "smithy.api#timestampFormat": "date-time" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that OCI assumes to retrieve the secret value.

" } }, - "timeMaintenanceEnd": { - "target": "smithy.api#Timestamp", + "externalIdType": { + "target": "com.amazonaws.odb#ExternalIdType", "traits": { - "smithy.api#documentation": "

The date and time when the next maintenance of the standby database ends.

", - "smithy.api#timestampFormat": "date-time" + "smithy.api#documentation": "

The type of Oracle Cloud Identifier (OCID) used as the external ID when assuming the IAM role.

The valid values depend on the operation. For the CreateAutonomousDatabase operation, only compartment_ocid and tenant_ocid are allowed. For the UpdateAutonomousDatabase and CreateAutonomousDatabaseWallet operations, database_ocid, compartment_ocid, and tenant_ocid are all allowed.

" } } }, "traits": { - "smithy.api#documentation": "

A summary of a standby Autonomous Database in an Oracle Data Guard configuration.

" + "smithy.api#documentation": "

The input configuration for a customer-managed Amazon Web Services Secrets Manager secret used to supply a password.

" } }, - "com.amazonaws.odb#DatabaseTool": { + "com.amazonaws.odb#DataCollectionOptions": { "type": "structure", "members": { - "isEnabled": { + "isDiagnosticsEventsEnabled": { "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether the database management tool is enabled.

" - } - }, - "name": { - "target": "smithy.api#String", - "traits": { - "smithy.api#documentation": "

The name of the database management tool.

" + "smithy.api#documentation": "

Indicates whether diagnostic collection is enabled for the VM cluster.

" } }, - "computeCount": { - "target": "smithy.api#Double", + "isHealthMonitoringEnabled": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

The compute capacity allocated to the database management tool.

" + "smithy.api#documentation": "

Indicates whether health monitoring is enabled for the VM cluster.

" } }, - "maxIdleTimeInMinutes": { - "target": "smithy.api#Integer", + "isIncidentLogsEnabled": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

The maximum amount of time, in minutes, that the database management tool can be idle before it is shut down.

" + "smithy.api#documentation": "

Indicates whether incident logs are enabled for the cloud VM cluster.

" } } }, "traits": { - "smithy.api#documentation": "

Information about a database management tool for an Autonomous Database.

" - } - }, - "com.amazonaws.odb#DatabaseToolList": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#DatabaseTool" + "smithy.api#documentation": "

Information about the data collection options enabled for a VM cluster.

" } }, - "com.amazonaws.odb#DatabaseType": { + "com.amazonaws.odb#DataGuardRole": { "type": "enum", "members": { - "REGULAR": { + "PRIMARY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "REGULAR" + "smithy.api#enumValue": "PRIMARY" } }, - "CLONE": { + "STANDBY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "CLONE" + "smithy.api#enumValue": "STANDBY" } - } - } - }, - "com.amazonaws.odb#DayOfWeek": { - "type": "structure", - "members": { - "name": { - "target": "com.amazonaws.odb#DayOfWeekName", + }, + "DISABLED_STANDBY": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the day of the week.

" + "smithy.api#enumValue": "DISABLED_STANDBY" } - } - }, - "traits": { - "smithy.api#documentation": "

An enumeration of days of the week used for scheduling maintenance windows.

" - } - }, - "com.amazonaws.odb#DayOfWeekName": { - "type": "enum", - "members": { - "MONDAY": { + }, + "BACKUP_COPY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "MONDAY" + "smithy.api#enumValue": "BACKUP_COPY" } }, - "TUESDAY": { + "SNAPSHOT_STANDBY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TUESDAY" + "smithy.api#enumValue": "SNAPSHOT_STANDBY" } - }, - "WEDNESDAY": { + } + } + }, + "com.amazonaws.odb#DataSafeStatus": { + "type": "enum", + "members": { + "REGISTERING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "WEDNESDAY" + "smithy.api#enumValue": "REGISTERING" } }, - "THURSDAY": { + "REGISTERED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "THURSDAY" + "smithy.api#enumValue": "REGISTERED" } }, - "FRIDAY": { + "DEREGISTERING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "FRIDAY" + "smithy.api#enumValue": "DEREGISTERING" } }, - "SATURDAY": { + "NOT_REGISTERED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SATURDAY" + "smithy.api#enumValue": "NOT_REGISTERED" } }, - "SUNDAY": { + "FAILED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SUNDAY" + "smithy.api#enumValue": "FAILED" } } } }, - "com.amazonaws.odb#DaysOfWeek": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#DayOfWeek" - } - }, - "com.amazonaws.odb#DbIormConfig": { + "com.amazonaws.odb#DatabaseCloneConfiguration": { "type": "structure", "members": { - "dbName": { - "target": "smithy.api#String", - "traits": { - "smithy.api#documentation": "

The database name. For the default DbPlan, the dbName is default.

" - } - }, - "flashCacheLimit": { - "target": "smithy.api#String", + "sourceAutonomousDatabaseId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The flash cache limit for this database. This value is internally configured based on the share value assigned to the database.

" + "smithy.api#documentation": "

The unique identifier of the source Autonomous Database to clone.

", + "smithy.api#required": {} } }, - "share": { - "target": "smithy.api#Integer", + "cloneType": { + "target": "com.amazonaws.odb#CloneType", "traits": { - "smithy.api#documentation": "

The relative priority of this database.

" + "smithy.api#documentation": "

The type of clone to create, either a full clone, a metadata clone, or a partial clone.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The IORM configuration settings for the database.

" + "smithy.api#documentation": "

The configuration for creating an Autonomous Database as a clone of an existing database.

" } }, - "com.amazonaws.odb#DbIormConfigList": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#DbIormConfig" + "com.amazonaws.odb#DatabaseConnectionStringMap": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" } }, - "com.amazonaws.odb#DbNode": { + "com.amazonaws.odb#DatabaseConnectionStringProfile": { "type": "structure", "members": { - "dbNodeId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the DB node.

" - } - }, - "dbNodeArn": { - "target": "com.amazonaws.odb#ResourceArn", + "consumerGroup": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DB node.

" + "smithy.api#documentation": "

The consumer group associated with the connection string profile.

" } }, - "status": { - "target": "com.amazonaws.odb#DbNodeResourceStatus", + "displayName": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The current status of the DB node.

" + "smithy.api#documentation": "

The user-friendly name of the connection string profile.

" } }, - "statusReason": { + "hostFormat": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Additional information about the status of the DB node.

" + "smithy.api#documentation": "

The host name format used in the connection string.

" } }, - "additionalDetails": { - "target": "smithy.api#String", + "isRegional": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

Additional information about the planned maintenance.

" + "smithy.api#documentation": "

Indicates whether the connection string profile is regional.

" } }, - "backupIpId": { + "protocol": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The Oracle Cloud ID (OCID) of the backup IP address that's associated with the DB node.

" + "smithy.api#documentation": "

The protocol used by the connection string profile.

" } }, - "backupVnic2Id": { + "sessionMode": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The OCID of the second backup VNIC.

" + "smithy.api#documentation": "

The session mode of the connection string profile.

" } }, - "backupVnicId": { + "syntaxFormat": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The OCID of the backup VNIC.

" + "smithy.api#documentation": "

The syntax format of the connection string profile.

" } }, - "cpuCoreCount": { - "target": "smithy.api#Integer", + "tlsAuthentication": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Number of CPU cores enabled on the DB node.

" + "smithy.api#documentation": "

The TLS authentication method used by the connection string profile.

" } }, - "dbNodeStorageSizeInGBs": { - "target": "smithy.api#Integer", + "value": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The amount of local node storage, in gigabytes (GBs), that's allocated on the DB node.

" + "smithy.api#documentation": "

The connection string value of the profile.

" } - }, - "dbServerId": { - "target": "com.amazonaws.odb#ResourceId", + } + }, + "traits": { + "smithy.api#documentation": "

A connection string profile for an Autonomous Database.

" + } + }, + "com.amazonaws.odb#DatabaseConnectionStringProfileList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#DatabaseConnectionStringProfile" + } + }, + "com.amazonaws.odb#DatabaseEdition": { + "type": "enum", + "members": { + "STANDARD_EDITION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The unique identifier of the Db server that is associated with the DB node.

" + "smithy.api#enumValue": "STANDARD_EDITION" } }, - "dbSystemId": { - "target": "smithy.api#String", + "ENTERPRISE_EDITION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OCID of the DB system.

" + "smithy.api#enumValue": "ENTERPRISE_EDITION" } - }, - "faultDomain": { - "target": "smithy.api#String", + } + } + }, + "com.amazonaws.odb#DatabaseManagementStatus": { + "type": "enum", + "members": { + "ENABLING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the fault domain the instance is contained in.

" + "smithy.api#enumValue": "ENABLING" } }, - "hostIpId": { - "target": "smithy.api#String", + "ENABLED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OCID of the host IP address that's associated with the DB node.

" + "smithy.api#enumValue": "ENABLED" } }, - "hostname": { - "target": "smithy.api#String", + "DISABLING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The host name for the DB node.

" + "smithy.api#enumValue": "DISABLING" } }, - "ocid": { - "target": "smithy.api#String", + "NOT_ENABLED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OCID of the DB node.

" + "smithy.api#enumValue": "NOT_ENABLED" } }, - "ociResourceAnchorName": { - "target": "smithy.api#String", + "FAILED_ENABLING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the OCI resource anchor for the DB node.

" + "smithy.api#enumValue": "FAILED_ENABLING" } }, - "maintenanceType": { - "target": "com.amazonaws.odb#DbNodeMaintenanceType", + "FAILED_DISABLING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of database node maintenance. Either VMDB_REBOOT_MIGRATION or EXADBXS_REBOOT_MIGRATION.

" + "smithy.api#enumValue": "FAILED_DISABLING" } - }, - "memorySizeInGBs": { - "target": "smithy.api#Integer", + } + } + }, + "com.amazonaws.odb#DatabaseStandbySummary": { + "type": "structure", + "members": { + "availabilityDomain": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The allocated memory in GBs on the DB node.

" + "smithy.api#documentation": "

The availability domain of the standby Autonomous Database.

" } }, - "softwareStorageSizeInGB": { + "lagTimeInSeconds": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The size (in GB) of the block storage volume allocation for the DB system.

" + "smithy.api#documentation": "

The time lag, in seconds, between the standby database and the primary database.

" } }, - "createdAt": { - "target": "smithy.api#Timestamp", + "status": { + "target": "com.amazonaws.odb#AutonomousDatabaseResourceStatus", "traits": { - "smithy.api#documentation": "

The date and time when the DB node was created.

", - "smithy.api#timestampFormat": "date-time" + "smithy.api#documentation": "

The current status of the standby Autonomous Database.

" } }, - "timeMaintenanceWindowEnd": { + "statusReason": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

End date and time of maintenance window.

" + "smithy.api#documentation": "

Additional information about the current status of the standby Autonomous Database, if applicable.

" } }, - "timeMaintenanceWindowStart": { + "maintenanceTargetComponent": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Start date and time of maintenance window.

" + "smithy.api#documentation": "

The component on the standby Autonomous Database that the current maintenance is being applied to.

" } }, - "totalCpuCoreCount": { - "target": "smithy.api#Integer", + "timeDataGuardRoleChanged": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The total number of CPU cores reserved on the DB node.

" + "smithy.api#documentation": "

The date and time when the Oracle Data Guard role of the standby database last changed.

", + "smithy.api#timestampFormat": "date-time" } }, - "vnic2Id": { - "target": "smithy.api#String", + "timeDisasterRecoveryRoleChanged": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The OCID of the second VNIC.

" + "smithy.api#documentation": "

The date and time when the disaster recovery role of the standby database last changed.

", + "smithy.api#timestampFormat": "date-time" } }, - "vnicId": { - "target": "smithy.api#String", + "timeMaintenanceBegin": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The OCID of the VNIC.

" + "smithy.api#documentation": "

The date and time when the next maintenance of the standby database begins.

", + "smithy.api#timestampFormat": "date-time" } }, - "privateIpAddress": { - "target": "smithy.api#String", + "timeMaintenanceEnd": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The private IP address assigned to the DB node.

" + "smithy.api#documentation": "

The date and time when the next maintenance of the standby database ends.

", + "smithy.api#timestampFormat": "date-time" + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a standby Autonomous Database in an Oracle Data Guard configuration.

" + } + }, + "com.amazonaws.odb#DatabaseTool": { + "type": "structure", + "members": { + "isEnabled": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the database management tool is enabled.

" } }, - "floatingIpAddress": { + "name": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The floating IP address assigned to the DB node.

" + "smithy.api#documentation": "

The name of the database management tool.

" + } + }, + "computeCount": { + "target": "smithy.api#Double", + "traits": { + "smithy.api#documentation": "

The compute capacity allocated to the database management tool.

" + } + }, + "maxIdleTimeInMinutes": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The maximum amount of time, in minutes, that the database management tool can be idle before it is shut down.

" } } }, "traits": { - "smithy.api#documentation": "

Information about a DB node.

" + "smithy.api#documentation": "

Information about a database management tool for an Autonomous Database.

" } }, - "com.amazonaws.odb#DbNodeList": { + "com.amazonaws.odb#DatabaseToolList": { "type": "list", "member": { - "target": "com.amazonaws.odb#DbNodeSummary" + "target": "com.amazonaws.odb#DatabaseTool" } }, - "com.amazonaws.odb#DbNodeMaintenanceType": { + "com.amazonaws.odb#DatabaseType": { "type": "enum", "members": { - "VMDB_REBOOT_MIGRATION": { + "REGULAR": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "VMDB_REBOOT_MIGRATION" + "smithy.api#enumValue": "REGULAR" + } + }, + "CLONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLONE" } } } }, - "com.amazonaws.odb#DbNodeResource": { - "type": "resource", - "identifiers": { - "dbNodeId": { - "target": "com.amazonaws.odb#ResourceId" + "com.amazonaws.odb#DayOfWeek": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.odb#DayOfWeekName", + "traits": { + "smithy.api#documentation": "

The name of the day of the week.

" + } } }, - "read": { - "target": "com.amazonaws.odb#GetDbNode" - }, - "list": { - "target": "com.amazonaws.odb#ListDbNodes" - }, - "operations": [ - { - "target": "com.amazonaws.odb#RebootDbNode" - }, - { - "target": "com.amazonaws.odb#StartDbNode" - }, - { - "target": "com.amazonaws.odb#StopDbNode" - } - ], "traits": { - "aws.iam#conditionKeys": [ - "aws:ResourceTag/${TagKey}" - ], - "aws.iam#iamResource": { - "name": "db-node" - } + "smithy.api#documentation": "

An enumeration of days of the week used for scheduling maintenance windows.

" } }, - "com.amazonaws.odb#DbNodeResourceStatus": { + "com.amazonaws.odb#DayOfWeekName": { "type": "enum", "members": { - "AVAILABLE": { + "MONDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "AVAILABLE" + "smithy.api#enumValue": "MONDAY" } }, - "FAILED": { + "TUESDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "FAILED" + "smithy.api#enumValue": "TUESDAY" } }, - "PROVISIONING": { + "WEDNESDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "PROVISIONING" + "smithy.api#enumValue": "WEDNESDAY" } }, - "TERMINATED": { + "THURSDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TERMINATED" + "smithy.api#enumValue": "THURSDAY" } }, - "TERMINATING": { + "FRIDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TERMINATING" + "smithy.api#enumValue": "FRIDAY" } }, - "UPDATING": { + "SATURDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "UPDATING" + "smithy.api#enumValue": "SATURDAY" } }, - "STOPPING": { + "SUNDAY": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "STOPPING" + "smithy.api#enumValue": "SUNDAY" + } + } + } + }, + "com.amazonaws.odb#DaysOfWeek": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#DayOfWeek" + } + }, + "com.amazonaws.odb#DbIormConfig": { + "type": "structure", + "members": { + "dbName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The database name. For the default DbPlan, the dbName is default.

" } }, - "STOPPED": { - "target": "smithy.api#Unit", + "flashCacheLimit": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "STOPPED" + "smithy.api#documentation": "

The flash cache limit for this database. This value is internally configured based on the share value assigned to the database.

" } }, - "STARTING": { - "target": "smithy.api#Unit", + "share": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#enumValue": "STARTING" + "smithy.api#documentation": "

The relative priority of this database.

" } } + }, + "traits": { + "smithy.api#documentation": "

The IORM configuration settings for the database.

" } }, - "com.amazonaws.odb#DbNodeSummary": { + "com.amazonaws.odb#DbIormConfigList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#DbIormConfig" + } + }, + "com.amazonaws.odb#DbNode": { "type": "structure", "members": { "dbNodeId": { @@ -7050,19 +7300,19 @@ "backupVnic2Id": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The OCID of the second backup virtual network interface card (VNIC) for the DB node.

" + "smithy.api#documentation": "

The OCID of the second backup VNIC.

" } }, "backupVnicId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The OCID of the backup VNIC for the DB node.

" + "smithy.api#documentation": "

The OCID of the backup VNIC.

" } }, "cpuCoreCount": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The number of CPU cores enabled on the DB node.

" + "smithy.api#documentation": "

Number of CPU cores enabled on the DB node.

" } }, "dbNodeStorageSizeInGBs": { @@ -7074,7 +7324,7 @@ "dbServerId": { "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the database server that's associated with the DB node.

" + "smithy.api#documentation": "

The unique identifier of the Db server that is associated with the DB node.

" } }, "dbSystemId": { @@ -7086,7 +7336,7 @@ "faultDomain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the fault domain where the DB node is located.

" + "smithy.api#documentation": "

The name of the fault domain the instance is contained in.

" } }, "hostIpId": { @@ -7116,19 +7366,19 @@ "maintenanceType": { "target": "com.amazonaws.odb#DbNodeMaintenanceType", "traits": { - "smithy.api#documentation": "

The type of maintenance the DB node.

" + "smithy.api#documentation": "

The type of database node maintenance. Either VMDB_REBOOT_MIGRATION or EXADBXS_REBOOT_MIGRATION.

" } }, "memorySizeInGBs": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The amount of memory, in gigabytes (GB), that allocated on the DB node.

" + "smithy.api#documentation": "

The allocated memory in GBs on the DB node.

" } }, "softwareStorageSizeInGB": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The size of the block storage volume, in gigabytes (GB), that's allocated for the DB system. This attribute applies only for virtual machine DB systems.

" + "smithy.api#documentation": "

The size (in GB) of the block storage volume allocation for the DB system.

" } }, "createdAt": { @@ -7141,13 +7391,13 @@ "timeMaintenanceWindowEnd": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The end date and time of the maintenance window.

" + "smithy.api#documentation": "

End date and time of maintenance window.

" } }, "timeMaintenanceWindowStart": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The start date and time of the maintenance window.

" + "smithy.api#documentation": "

Start date and time of maintenance window.

" } }, "totalCpuCoreCount": { @@ -7167,25 +7417,311 @@ "traits": { "smithy.api#documentation": "

The OCID of the VNIC.

" } + }, + "privateIpAddress": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The private IP address assigned to the DB node.

" + } + }, + "floatingIpAddress": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The floating IP address assigned to the DB node.

" + } } }, "traits": { "smithy.api#documentation": "

Information about a DB node.

" } }, - "com.amazonaws.odb#DbServer": { - "type": "structure", + "com.amazonaws.odb#DbNodeList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#DbNodeSummary" + } + }, + "com.amazonaws.odb#DbNodeMaintenanceType": { + "type": "enum", "members": { - "dbServerId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier for the database server.

" - } - }, - "status": { - "target": "com.amazonaws.odb#ResourceStatus", + "VMDB_REBOOT_MIGRATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The current status of the database server.

" + "smithy.api#enumValue": "VMDB_REBOOT_MIGRATION" + } + } + } + }, + "com.amazonaws.odb#DbNodeResource": { + "type": "resource", + "identifiers": { + "dbNodeId": { + "target": "com.amazonaws.odb#ResourceId" + } + }, + "read": { + "target": "com.amazonaws.odb#GetDbNode" + }, + "list": { + "target": "com.amazonaws.odb#ListDbNodes" + }, + "operations": [ + { + "target": "com.amazonaws.odb#RebootDbNode" + }, + { + "target": "com.amazonaws.odb#StartDbNode" + }, + { + "target": "com.amazonaws.odb#StopDbNode" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "name": "db-node" + } + } + }, + "com.amazonaws.odb#DbNodeResourceStatus": { + "type": "enum", + "members": { + "AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AVAILABLE" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "PROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROVISIONING" + } + }, + "TERMINATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TERMINATED" + } + }, + "TERMINATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TERMINATING" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "STOPPING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPING" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + }, + "STARTING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STARTING" + } + } + } + }, + "com.amazonaws.odb#DbNodeSummary": { + "type": "structure", + "members": { + "dbNodeId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the DB node.

" + } + }, + "dbNodeArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DB node.

" + } + }, + "status": { + "target": "com.amazonaws.odb#DbNodeResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the DB node.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the DB node.

" + } + }, + "additionalDetails": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the planned maintenance.

" + } + }, + "backupIpId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Oracle Cloud ID (OCID) of the backup IP address that's associated with the DB node.

" + } + }, + "backupVnic2Id": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the second backup virtual network interface card (VNIC) for the DB node.

" + } + }, + "backupVnicId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the backup VNIC for the DB node.

" + } + }, + "cpuCoreCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of CPU cores enabled on the DB node.

" + } + }, + "dbNodeStorageSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The amount of local node storage, in gigabytes (GB), that's allocated on the DB node.

" + } + }, + "dbServerId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the database server that's associated with the DB node.

" + } + }, + "dbSystemId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the DB system.

" + } + }, + "faultDomain": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the fault domain where the DB node is located.

" + } + }, + "hostIpId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the host IP address that's associated with the DB node.

" + } + }, + "hostname": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The host name for the DB node.

" + } + }, + "ocid": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the DB node.

" + } + }, + "ociResourceAnchorName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the OCI resource anchor for the DB node.

" + } + }, + "maintenanceType": { + "target": "com.amazonaws.odb#DbNodeMaintenanceType", + "traits": { + "smithy.api#documentation": "

The type of maintenance the DB node.

" + } + }, + "memorySizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The amount of memory, in gigabytes (GB), that allocated on the DB node.

" + } + }, + "softwareStorageSizeInGB": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The size of the block storage volume, in gigabytes (GB), that's allocated for the DB system. This attribute applies only for virtual machine DB systems.

" + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the DB node was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "timeMaintenanceWindowEnd": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The end date and time of the maintenance window.

" + } + }, + "timeMaintenanceWindowStart": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The start date and time of the maintenance window.

" + } + }, + "totalCpuCoreCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total number of CPU cores reserved on the DB node.

" + } + }, + "vnic2Id": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the second VNIC.

" + } + }, + "vnicId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the VNIC.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a DB node.

" + } + }, + "com.amazonaws.odb#DbServer": { + "type": "structure", + "members": { + "dbServerId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the database server.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the database server.

" } }, "statusReason": { @@ -7630,7 +8166,13 @@ "smithy.api#documentation": "

The shape type. This property is determined by the CPU hardware.

" } }, - "name": { + "shapeAttributes": { + "target": "com.amazonaws.odb#ShapeAttributeList", + "traits": { + "smithy.api#documentation": "

If provided and applicable, return DB System shape parameters based on the shape attribute provided.

" + } + }, + "name": { "target": "smithy.api#String", "traits": { "smithy.api#documentation": "

The name of the shape.

" @@ -7956,6 +8498,116 @@ "smithy.api#output": {} } }, + "com.amazonaws.odb#DeleteExadbVmCluster": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#DeleteExadbVmClusterInput" + }, + "output": { + "target": "com.amazonaws.odb#DeleteExadbVmClusterOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes the specified Exascale VM cluster.

", + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.odb#DeleteExadbVmClusterInput": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster to delete.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#DeleteExadbVmClusterOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#DeleteExascaleDbStorageVault": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#DeleteExascaleDbStorageVaultInput" + }, + "output": { + "target": "com.amazonaws.odb#DeleteExascaleDbStorageVaultOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes the specified Exascale storage vault.

", + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.odb#DeleteExascaleDbStorageVaultInput": { + "type": "structure", + "members": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault to delete.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#DeleteExascaleDbStorageVaultOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.odb#DeleteOdbNetwork": { "type": "operation", "input": { @@ -8158,6 +8810,93 @@ "smithy.api#output": {} } }, + "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmCluster": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmClusterInput" + }, + "output": { + "target": "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmClusterOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes virtual machines from the specified Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmClusterInput": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster to remove virtual machines from.

", + "smithy.api#required": {} + } + }, + "dbNodeIds": { + "target": "com.amazonaws.odb#ResourceIdList", + "traits": { + "smithy.api#documentation": "

The list of DB node IDs to remove from the Exascale VM cluster.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmClusterOutput": { + "type": "structure", + "members": { + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" + } + }, + "exadbVmClusterId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.odb#DisasterRecoveryConfiguration": { "type": "structure", "members": { @@ -8271,128 +9010,1044 @@ "ORACLE_MANAGED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ORACLE_MANAGED" + "smithy.api#enumValue": "ORACLE_MANAGED" + } + }, + "AWS_KMS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_KMS" + } + }, + "OKV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OKV" + } + }, + "OCI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OCI" + } + } + } + }, + "com.amazonaws.odb#EncryptionKeyProviderInput": { + "type": "enum", + "members": { + "ORACLE_MANAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ORACLE_MANAGED" + } + }, + "AWS_KMS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_KMS" + } + } + } + }, + "com.amazonaws.odb#EncryptionSummary": { + "type": "structure", + "members": { + "encryptionKeyProvider": { + "target": "com.amazonaws.odb#EncryptionKeyProvider", + "traits": { + "smithy.api#documentation": "

The provider of the encryption key used for the Autonomous Database.

" + } + }, + "encryptionKeyConfiguration": { + "target": "com.amazonaws.odb#EncryptionKeyConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration of the encryption key used for the Autonomous Database.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The encryption configuration for an Autonomous Database.

" + } + }, + "com.amazonaws.odb#ExadataIormConfig": { + "type": "structure", + "members": { + "dbPlans": { + "target": "com.amazonaws.odb#DbIormConfigList", + "traits": { + "smithy.api#documentation": "

An array of IORM settings for all the database in the Exadata DB system.

" + } + }, + "lifecycleDetails": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the current lifecycleState.

" + } + }, + "lifecycleState": { + "target": "com.amazonaws.odb#IormLifecycleState", + "traits": { + "smithy.api#documentation": "

The current state of IORM configuration for the Exadata DB system.

" + } + }, + "objective": { + "target": "com.amazonaws.odb#Objective", + "traits": { + "smithy.api#documentation": "

The current value for the IORM objective. The default is AUTO.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The IORM settings of the Exadata DB system.

" + } + }, + "com.amazonaws.odb#ExadbVmCluster": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", + "smithy.api#required": {} + } + }, + "clusterName": { + "target": "com.amazonaws.odb#ClusterName", + "traits": { + "smithy.api#documentation": "

The name of the Grid Infrastructure (GI) cluster.

" + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the Exascale VM cluster was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "dataCollectionOptions": { + "target": "com.amazonaws.odb#DataCollectionOptions", + "traits": { + "smithy.api#documentation": "

The set of diagnostic collection options enabled for the Exascale VM cluster.

" + } + }, + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" + } + }, + "domain": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The domain of the Exascale VM cluster.

" + } + }, + "enabledEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of elastic compute processing units (ECPUs) enabled on the Exascale VM cluster.

" + } + }, + "exadbVmClusterArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale VM cluster.

" + } + }, + "exascaleDbStorageVaultArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale storage vault associated with this Exascale VM cluster.

" + } + }, + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault associated with this Exascale VM cluster.

" + } + }, + "giVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The software version of the Oracle Grid Infrastructure (GI) for the Exascale VM cluster.

" + } + }, + "gridImageId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Grid Infrastructure software image ID for the Exascale VM cluster.

" + } + }, + "gridImageType": { + "target": "com.amazonaws.odb#GridImageType", + "traits": { + "smithy.api#documentation": "

The type of Grid Infrastructure image for the Exascale VM cluster.

" + } + }, + "hostname": { + "target": "com.amazonaws.odb#Hostname", + "traits": { + "smithy.api#documentation": "

The host name for the Exascale VM cluster.

" + } + }, + "iamRoles": { + "target": "com.amazonaws.odb#IamRoleList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Identity and Access Management (IAM) service roles associated with the Exascale VM cluster.

" + } + }, + "iormConfigCache": { + "target": "com.amazonaws.odb#ExadataIormConfig", + "traits": { + "smithy.api#documentation": "

The I/O Resource Management (IORM) configuration cache details for the Exascale VM cluster.

" + } + }, + "lastUpdateHistoryEntryId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Oracle Cloud ID (OCID) of the last maintenance update history entry.

" + } + }, + "licenseModel": { + "target": "com.amazonaws.odb#LicenseModel", + "traits": { + "smithy.api#documentation": "

The Oracle license model applied to the Exascale VM cluster.

" + } + }, + "listenerPort": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number configured for the listener on the Exascale VM cluster.

" + } + }, + "memorySizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The amount of memory, in gigabytes (GB), that's allocated for the Exascale VM cluster.

" + } + }, + "nodeCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of nodes in the Exascale VM cluster.

" + } + }, + "ocid": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the Exascale VM cluster.

" + } + }, + "ociResourceAnchorName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the OCI resource anchor for the Exascale VM cluster.

" + } + }, + "ociUrl": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The HTTPS link to the Exascale VM cluster in Oracle Cloud Infrastructure (OCI).

" + } + }, + "odbNetworkArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the ODB network associated with this Exascale VM cluster.

" + } + }, + "odbNetworkId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the ODB network for the Exascale VM cluster.

" + } + }, + "percentProgress": { + "target": "smithy.api#Float", + "traits": { + "smithy.api#documentation": "

The amount of progress made on the current operation on the Exascale VM cluster, expressed as a percentage.

" + } + }, + "scanDnsName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The fully qualified domain name (FQDN) of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanDnsRecordId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the DNS record for the SCAN IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanIpIds": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The OCID of the SCAN IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanListenerPortTcp": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number for TCP connections to the single client access name (SCAN) listener for the Exascale VM cluster.

" + } + }, + "scanListenerPortTcpSsl": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number for TCP connections with SSL to the single client access name (SCAN) listener for the Exascale VM cluster.

" + } + }, + "shape": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The hardware model name of the Exadata infrastructure that's running the Exascale VM cluster.

" + } + }, + "shapeAttribute": { + "target": "com.amazonaws.odb#ShapeAttribute", + "traits": { + "smithy.api#documentation": "

The shape attribute for the Exascale VM cluster.

" + } + }, + "snapshotFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The snapshot file system storage details for the Exascale VM cluster.

" + } + }, + "sshPublicKeys": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The public key portion of one or more key pairs used for SSH access to the Exascale VM cluster.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" + } + }, + "systemVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The operating system version of the image chosen for the Exascale VM cluster.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone of the Exascale VM cluster.

" + } + }, + "totalEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total number of ECPUs for the Exascale VM cluster.

" + } + }, + "totalFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The total file system storage details for the Exascale VM cluster.

" + } + }, + "vipIds": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The virtual IP (VIP) addresses associated with the Exascale VM cluster. One VIP address is assigned per node to support failover. If a node fails, its VIP is reassigned to another active node in the cluster.

" + } + }, + "vmFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The VM file system storage details for the Exascale VM cluster.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about an Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#ExadbVmClusterList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#ExadbVmClusterSummary" + } + }, + "com.amazonaws.odb#ExadbVmClusterResource": { + "type": "resource", + "identifiers": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn" + } + }, + "create": { + "target": "com.amazonaws.odb#CreateExadbVmCluster" + }, + "read": { + "target": "com.amazonaws.odb#GetExadbVmCluster" + }, + "update": { + "target": "com.amazonaws.odb#UpdateExadbVmCluster" + }, + "delete": { + "target": "com.amazonaws.odb#DeleteExadbVmCluster" + }, + "list": { + "target": "com.amazonaws.odb#ListExadbVmClusters" + }, + "operations": [ + { + "target": "com.amazonaws.odb#AssociateVirtualMachinesToExadbVmCluster" + }, + { + "target": "com.amazonaws.odb#DisassociateVirtualMachinesFromExadbVmCluster" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "name": "exadb-vm-cluster" + } + } + }, + "com.amazonaws.odb#ExadbVmClusterStorageDetails": { + "type": "structure", + "members": { + "totalSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total storage size, in gigabytes (GB).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Storage details for an Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#ExadbVmClusterSummary": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", + "smithy.api#required": {} + } + }, + "clusterName": { + "target": "com.amazonaws.odb#ClusterName", + "traits": { + "smithy.api#documentation": "

The name of the Grid Infrastructure (GI) cluster.

" + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the Exascale VM cluster was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "dataCollectionOptions": { + "target": "com.amazonaws.odb#DataCollectionOptions", + "traits": { + "smithy.api#documentation": "

The set of diagnostic collection options enabled for the Exascale VM cluster.

" + } + }, + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" + } + }, + "domain": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The domain of the Exascale VM cluster.

" + } + }, + "enabledEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of elastic compute processing units (ECPUs) enabled on the Exascale VM cluster.

" + } + }, + "exadbVmClusterArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale VM cluster.

" + } + }, + "exascaleDbStorageVaultArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale storage vault associated with this Exascale VM cluster.

" + } + }, + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault associated with this Exascale VM cluster.

" + } + }, + "giVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The software version of the Oracle Grid Infrastructure (GI) for the Exascale VM cluster.

" + } + }, + "gridImageId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Grid Infrastructure software image ID for the Exascale VM cluster.

" + } + }, + "gridImageType": { + "target": "com.amazonaws.odb#GridImageType", + "traits": { + "smithy.api#documentation": "

The type of Grid Infrastructure image for the Exascale VM cluster.

" + } + }, + "hostname": { + "target": "com.amazonaws.odb#Hostname", + "traits": { + "smithy.api#documentation": "

The host name for the Exascale VM cluster.

" + } + }, + "iamRoles": { + "target": "com.amazonaws.odb#IamRoleList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Identity and Access Management (IAM) service roles associated with the Exascale VM cluster.

" + } + }, + "iormConfigCache": { + "target": "com.amazonaws.odb#ExadataIormConfig", + "traits": { + "smithy.api#documentation": "

The I/O Resource Management (IORM) configuration cache details for the Exascale VM cluster.

" + } + }, + "lastUpdateHistoryEntryId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Oracle Cloud ID (OCID) of the last maintenance update history entry.

" + } + }, + "licenseModel": { + "target": "com.amazonaws.odb#LicenseModel", + "traits": { + "smithy.api#documentation": "

The Oracle license model applied to the Exascale VM cluster.

" + } + }, + "listenerPort": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number configured for the listener on the Exascale VM cluster.

" + } + }, + "memorySizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The amount of memory, in gigabytes (GB), that's allocated for the Exascale VM cluster.

" + } + }, + "nodeCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of nodes in the Exascale VM cluster.

" + } + }, + "ocid": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the Exascale VM cluster.

" + } + }, + "ociResourceAnchorName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the OCI resource anchor for the Exascale VM cluster.

" + } + }, + "ociUrl": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The HTTPS link to the Exascale VM cluster in Oracle Cloud Infrastructure (OCI).

" + } + }, + "odbNetworkArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the ODB network associated with this Exascale VM cluster.

" + } + }, + "odbNetworkId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the ODB network for the Exascale VM cluster.

" + } + }, + "percentProgress": { + "target": "smithy.api#Float", + "traits": { + "smithy.api#documentation": "

The amount of progress made on the current operation on the Exascale VM cluster, expressed as a percentage.

" + } + }, + "scanDnsName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The fully qualified domain name (FQDN) of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanDnsRecordId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the DNS record for the SCAN IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanIpIds": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The OCID of the SCAN IP addresses that are associated with the Exascale VM cluster.

" + } + }, + "scanListenerPortTcp": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number for TCP connections to the single client access name (SCAN) listener for the Exascale VM cluster.

" + } + }, + "scanListenerPortTcpSsl": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The port number for TCP connections with SSL to the single client access name (SCAN) listener for the Exascale VM cluster.

" + } + }, + "shape": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The hardware model name of the Exadata infrastructure that's running the Exascale VM cluster.

" + } + }, + "shapeAttribute": { + "target": "com.amazonaws.odb#ShapeAttribute", + "traits": { + "smithy.api#documentation": "

The shape attribute for the Exascale VM cluster.

" + } + }, + "snapshotFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The snapshot file system storage details for the Exascale VM cluster.

" + } + }, + "sshPublicKeys": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The public key portion of one or more key pairs used for SSH access to the Exascale VM cluster.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" + } + }, + "systemVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The operating system version of the image chosen for the Exascale VM cluster.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone of the Exascale VM cluster.

" + } + }, + "totalEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total number of ECPUs for the Exascale VM cluster.

" + } + }, + "totalFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The total file system storage details for the Exascale VM cluster.

" + } + }, + "vipIds": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The virtual IP (VIP) addresses associated with the Exascale VM cluster. One VIP address is assigned per node to support failover. If a node fails, its VIP is reassigned to another active node in the cluster.

" + } + }, + "vmFileSystemStorage": { + "target": "com.amazonaws.odb#ExadbVmClusterStorageDetails", + "traits": { + "smithy.api#documentation": "

The VM file system storage details for the Exascale VM cluster.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information about an Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#ExascaleDbStorageDetails": { + "type": "structure", + "members": { + "availableSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The available storage size, in gigabytes (GB).

" + } + }, + "totalSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total storage size, in gigabytes (GB).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The storage details for an Exascale storage vault.

" + } + }, + "com.amazonaws.odb#ExascaleDbStorageVault": { + "type": "structure", + "members": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault.

", + "smithy.api#required": {} + } + }, + "additionalFlashCacheInPercent": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The additional flash cache percentage for the Exascale storage vault.

" + } + }, + "attachedShapeAttributes": { + "target": "com.amazonaws.odb#ShapeAttributeList", + "traits": { + "smithy.api#documentation": "

The list of shape attributes attached to the Exascale storage vault.

" + } + }, + "autoscaleLimitInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The autoscale limit in gigabytes (GB) for the Exascale storage vault.

" + } + }, + "availabilityZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone for the Exascale storage vault.

" + } + }, + "availabilityZoneId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone ID for the Exascale storage vault.

" + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the Exascale storage vault was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The description of the Exascale storage vault.

" + } + }, + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale storage vault.

" + } + }, + "vmClusterArns": { + "target": "com.amazonaws.odb#ResourceArnList", + "traits": { + "smithy.api#documentation": "

The list of Amazon Resource Names (ARNs) of the VM clusters associated with this Exascale storage vault.

" + } + }, + "vmClusterCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of VM clusters associated with this Exascale storage vault.

" + } + }, + "vmClusterIds": { + "target": "com.amazonaws.odb#ResourceIdList", + "traits": { + "smithy.api#documentation": "

The list of unique identifiers of the VM clusters associated with this Exascale storage vault.

" + } + }, + "exascaleDbStorageVaultArn": { + "target": "com.amazonaws.odb#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale storage vault.

" + } + }, + "highCapacityDatabaseStorage": { + "target": "com.amazonaws.odb#ExascaleDbStorageDetails", + "traits": { + "smithy.api#documentation": "

The high-capacity database storage details for the Exascale storage vault.

" + } + }, + "isAutoscaleEnabled": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether autoscaling is enabled for the Exascale storage vault.

" + } + }, + "ocid": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The OCID of the Exascale storage vault.

" + } + }, + "ociResourceAnchorName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the OCI resource anchor for the Exascale storage vault.

" + } + }, + "ociUrl": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The HTTPS link to the Exascale storage vault in Oracle Cloud Infrastructure (OCI).

" + } + }, + "percentProgress": { + "target": "smithy.api#Float", + "traits": { + "smithy.api#documentation": "

The amount of progress made on the current operation on the Exascale storage vault, expressed as a percentage.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale storage vault.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale storage vault.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone of the Exascale storage vault.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about an Exascale storage vault.

" + } + }, + "com.amazonaws.odb#ExascaleDbStorageVaultList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#ExascaleDbStorageVaultSummary" + } + }, + "com.amazonaws.odb#ExascaleDbStorageVaultResource": { + "type": "resource", + "identifiers": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn" + } + }, + "create": { + "target": "com.amazonaws.odb#CreateExascaleDbStorageVault" + }, + "read": { + "target": "com.amazonaws.odb#GetExascaleDbStorageVault" + }, + "update": { + "target": "com.amazonaws.odb#UpdateExascaleDbStorageVault" + }, + "delete": { + "target": "com.amazonaws.odb#DeleteExascaleDbStorageVault" + }, + "list": { + "target": "com.amazonaws.odb#ListExascaleDbStorageVaults" + }, + "traits": { + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "name": "exascale-db-storage-vault" + } + } + }, + "com.amazonaws.odb#ExascaleDbStorageVaultSummary": { + "type": "structure", + "members": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault.

", + "smithy.api#required": {} + } + }, + "additionalFlashCacheInPercent": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The additional flash cache percentage for the Exascale storage vault.

" + } + }, + "attachedShapeAttributes": { + "target": "com.amazonaws.odb#ShapeAttributeList", + "traits": { + "smithy.api#documentation": "

The list of shape attributes attached to the Exascale storage vault.

" + } + }, + "autoscaleLimitInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The autoscale limit in gigabytes (GB) for the Exascale storage vault.

" + } + }, + "availabilityZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone for the Exascale storage vault.

" + } + }, + "availabilityZoneId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone ID for the Exascale storage vault.

" + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the Exascale storage vault was created.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The description of the Exascale storage vault.

" + } + }, + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale storage vault.

" } }, - "AWS_KMS": { - "target": "smithy.api#Unit", + "vmClusterArns": { + "target": "com.amazonaws.odb#ResourceArnList", "traits": { - "smithy.api#enumValue": "AWS_KMS" + "smithy.api#documentation": "

The list of Amazon Resource Names (ARNs) of the VM clusters associated with this Exascale storage vault.

" } }, - "OKV": { - "target": "smithy.api#Unit", + "vmClusterCount": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#enumValue": "OKV" + "smithy.api#documentation": "

The number of VM clusters associated with this Exascale storage vault.

" } }, - "OCI": { - "target": "smithy.api#Unit", + "vmClusterIds": { + "target": "com.amazonaws.odb#ResourceIdList", "traits": { - "smithy.api#enumValue": "OCI" + "smithy.api#documentation": "

The list of unique identifiers of the VM clusters associated with this Exascale storage vault.

" } - } - } - }, - "com.amazonaws.odb#EncryptionKeyProviderInput": { - "type": "enum", - "members": { - "ORACLE_MANAGED": { - "target": "smithy.api#Unit", + }, + "exascaleDbStorageVaultArn": { + "target": "com.amazonaws.odb#ResourceArn", "traits": { - "smithy.api#enumValue": "ORACLE_MANAGED" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Exascale storage vault.

" } }, - "AWS_KMS": { - "target": "smithy.api#Unit", + "highCapacityDatabaseStorage": { + "target": "com.amazonaws.odb#ExascaleDbStorageDetails", "traits": { - "smithy.api#enumValue": "AWS_KMS" + "smithy.api#documentation": "

The high-capacity database storage details for the Exascale storage vault.

" } - } - } - }, - "com.amazonaws.odb#EncryptionSummary": { - "type": "structure", - "members": { - "encryptionKeyProvider": { - "target": "com.amazonaws.odb#EncryptionKeyProvider", + }, + "isAutoscaleEnabled": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

The provider of the encryption key used for the Autonomous Database.

" + "smithy.api#documentation": "

Specifies whether autoscaling is enabled for the Exascale storage vault.

" } }, - "encryptionKeyConfiguration": { - "target": "com.amazonaws.odb#EncryptionKeyConfiguration", + "ocid": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The configuration of the encryption key used for the Autonomous Database.

" + "smithy.api#documentation": "

The OCID of the Exascale storage vault.

" } - } - }, - "traits": { - "smithy.api#documentation": "

The encryption configuration for an Autonomous Database.

" - } - }, - "com.amazonaws.odb#ExadataIormConfig": { - "type": "structure", - "members": { - "dbPlans": { - "target": "com.amazonaws.odb#DbIormConfigList", + }, + "ociResourceAnchorName": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

An array of IORM settings for all the database in the Exadata DB system.

" + "smithy.api#documentation": "

The name of the OCI resource anchor for the Exascale storage vault.

" } }, - "lifecycleDetails": { + "ociUrl": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Additional information about the current lifecycleState.

" + "smithy.api#documentation": "

The HTTPS link to the Exascale storage vault in Oracle Cloud Infrastructure (OCI).

" } }, - "lifecycleState": { - "target": "com.amazonaws.odb#IormLifecycleState", + "percentProgress": { + "target": "smithy.api#Float", "traits": { - "smithy.api#documentation": "

The current state of IORM configuration for the Exadata DB system.

" + "smithy.api#documentation": "

The amount of progress made on the current operation on the Exascale storage vault, expressed as a percentage.

" } }, - "objective": { - "target": "com.amazonaws.odb#Objective", + "status": { + "target": "com.amazonaws.odb#ResourceStatus", "traits": { - "smithy.api#documentation": "

The current value for the IORM objective. The default is AUTO.

" + "smithy.api#documentation": "

The current status of the Exascale storage vault.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale storage vault.

" + } + }, + "timeZone": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The time zone of the Exascale storage vault.

" } } }, "traits": { - "smithy.api#documentation": "

The IORM settings of the Exadata DB system.

" - } - }, - "com.amazonaws.odb#ExadbVmClusterResource": { - "type": "resource", - "identifiers": { - "exadbVmClusterId": { - "target": "com.amazonaws.odb#ResourceIdOrArn" - } - }, - "traits": { - "aws.iam#conditionKeys": [ - "aws:ResourceTag/${TagKey}" - ], - "aws.iam#iamResource": { - "name": "exadb-vm-cluster" - } - } - }, - "com.amazonaws.odb#ExascaleDbStorageVaultResource": { - "type": "resource", - "identifiers": { - "exascaleDbStorageVaultId": { - "target": "com.amazonaws.odb#ResourceIdOrArn" - } - }, - "traits": { - "aws.iam#conditionKeys": [ - "aws:ResourceTag/${TagKey}" - ], - "aws.iam#iamResource": { - "name": "exascale-db-storage-vault" - } + "smithy.api#documentation": "

Summary information about an Exascale storage vault.

" } }, "com.amazonaws.odb#ExternalIdType": { @@ -8992,50 +10647,190 @@ "com.amazonaws.odb#GetDbNodeInput": { "type": "structure", "members": { - "cloudVmClusterId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "dbNodeId": { - "target": "com.amazonaws.odb#ResourceId", + "cloudVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node. You must specify either this parameter or exadbVmClusterId.

" + } + }, + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster that contains the DB node. You must specify either this parameter or cloudVmClusterId.

" + } + }, + "dbNodeId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the DB node to retrieve information about.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#CloudVmClusterResource" + }, + { + "resource": "com.amazonaws.odb#ExadbVmClusterResource" + } + ] + } + }, + "com.amazonaws.odb#GetDbNodeOutput": { + "type": "structure", + "members": { + "dbNode": { + "target": "com.amazonaws.odb#DbNode" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#GetDbServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#GetDbServerInput" + }, + "output": { + "target": "com.amazonaws.odb#GetDbServerOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns information about the specified database server.

", + "smithy.api#readonly": {} + } + }, + "com.amazonaws.odb#GetDbServerInput": { + "type": "structure", + "members": { + "cloudExadataInfrastructureId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure that contains the database server.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dbServerId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the database server to retrieve information about.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" + } + ] + } + }, + "com.amazonaws.odb#GetDbServerOutput": { + "type": "structure", + "members": { + "dbServer": { + "target": "com.amazonaws.odb#DbServer", + "traits": { + "smithy.api#documentation": "

The details of the requested database server.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#GetExadbVmCluster": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#GetExadbVmClusterInput" + }, + "output": { + "target": "com.amazonaws.odb#GetExadbVmClusterOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns information about the specified Exascale VM cluster.

", + "smithy.api#readonly": {} + } + }, + "com.amazonaws.odb#GetExadbVmClusterInput": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The unique identifier of the DB node to retrieve information about.

", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {}, - "smithy.api#references": [ - { - "resource": "com.amazonaws.odb#CloudVmClusterResource" - } - ] + "smithy.api#input": {} } }, - "com.amazonaws.odb#GetDbNodeOutput": { + "com.amazonaws.odb#GetExadbVmClusterOutput": { "type": "structure", "members": { - "dbNode": { - "target": "com.amazonaws.odb#DbNode" + "exadbVmCluster": { + "target": "com.amazonaws.odb#ExadbVmCluster", + "traits": { + "smithy.api#documentation": "

The Exascale VM cluster.

", + "smithy.api#required": {} + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.odb#GetDbServer": { + "com.amazonaws.odb#GetExascaleDbStorageVault": { "type": "operation", "input": { - "target": "com.amazonaws.odb#GetDbServerInput" + "target": "com.amazonaws.odb#GetExascaleDbStorageVaultInput" }, "output": { - "target": "com.amazonaws.odb#GetDbServerOutput" + "target": "com.amazonaws.odb#GetExascaleDbStorageVaultOutput" }, "errors": [ { @@ -9055,46 +10850,33 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the specified database server.

", + "smithy.api#documentation": "

Returns information about the specified Exascale storage vault.

", "smithy.api#readonly": {} } }, - "com.amazonaws.odb#GetDbServerInput": { + "com.amazonaws.odb#GetExascaleDbStorageVaultInput": { "type": "structure", "members": { - "cloudExadataInfrastructureId": { + "exascaleDbStorageVaultId": { "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure that contains the database server.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "dbServerId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the database server to retrieve information about.

", - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {}, - "smithy.api#references": [ - { - "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" - } - ] + "smithy.api#input": {} } }, - "com.amazonaws.odb#GetDbServerOutput": { + "com.amazonaws.odb#GetExascaleDbStorageVaultOutput": { "type": "structure", "members": { - "dbServer": { - "target": "com.amazonaws.odb#DbServer", + "exascaleDbStorageVault": { + "target": "com.amazonaws.odb#ExascaleDbStorageVault", "traits": { - "smithy.api#documentation": "

The details of the requested database server.

" + "smithy.api#documentation": "

The Exascale storage vault.

", + "smithy.api#required": {} } } }, @@ -9241,21 +11023,245 @@ "odbNetwork": { "target": "com.amazonaws.odb#OdbNetwork", "traits": { - "smithy.api#documentation": "

The ODB network.

" + "smithy.api#documentation": "

The ODB network.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#GetOdbPeeringConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#GetOdbPeeringConnectionInput" + }, + "output": { + "target": "com.amazonaws.odb#GetOdbPeeringConnectionOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves information about an ODB peering connection.

", + "smithy.api#readonly": {} + } + }, + "com.amazonaws.odb#GetOdbPeeringConnectionInput": { + "type": "structure", + "members": { + "odbPeeringConnectionId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the ODB peering connection to retrieve information about.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#GetOdbPeeringConnectionOutput": { + "type": "structure", + "members": { + "odbPeeringConnection": { + "target": "com.amazonaws.odb#OdbPeeringConnection" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#GiMinorVersionList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#GiMinorVersionSummary" + } + }, + "com.amazonaws.odb#GiMinorVersionSummary": { + "type": "structure", + "members": { + "version": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The GI minor version.

", + "smithy.api#required": {} + } + }, + "gridImageId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Grid Infrastructure software image ID for this minor version.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information about an Oracle Grid Infrastructure (GI) minor version.

" + } + }, + "com.amazonaws.odb#GiVersionList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#GiVersionSummary" + } + }, + "com.amazonaws.odb#GiVersionSummary": { + "type": "structure", + "members": { + "version": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The GI software version.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a specific version of Oracle Grid Infrastructure (GI) software that can be installed on a VM cluster.

" + } + }, + "com.amazonaws.odb#GridImageType": { + "type": "enum", + "members": { + "RELEASE_UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#documentation": "

A release update grid image.

", + "smithy.api#enumValue": "RELEASE_UPDATE" + } + }, + "CUSTOM_IMAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#documentation": "

A custom grid image.

", + "smithy.api#enumValue": "CUSTOM_IMAGE" + } + } + } + }, + "com.amazonaws.odb#Hostname": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 12 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9]$" + } + }, + "com.amazonaws.odb#HoursOfDay": { + "type": "list", + "member": { + "target": "smithy.api#Integer" + } + }, + "com.amazonaws.odb#IamRole": { + "type": "structure", + "members": { + "iamRoleArn": { + "target": "com.amazonaws.odb#RoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) service role.

" + } + }, + "status": { + "target": "com.amazonaws.odb#IamRoleStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Amazon Web Services Identity and Access Management (IAM) service role.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the current status of the Amazon Web Services Identity and Access Management (IAM) service role, if applicable.

" + } + }, + "awsIntegration": { + "target": "com.amazonaws.odb#SupportedAwsIntegration", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services integration configuration settings for the Amazon Web Services Identity and Access Management (IAM) service role.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about an Amazon Web Services Identity and Access Management (IAM) service role associated with a resource.

" + } + }, + "com.amazonaws.odb#IamRoleList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#IamRole" + } + }, + "com.amazonaws.odb#IamRoleStatus": { + "type": "enum", + "members": { + "ASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATING" + } + }, + "DISASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISASSOCIATING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "CONNECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONNECTED" + } + }, + "DISCONNECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISCONNECTED" + } + }, + "PARTIALLY_CONNECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PARTIALLY_CONNECTED" + } + }, + "UNKNOWN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNKNOWN" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.odb#GetOdbPeeringConnection": { + "com.amazonaws.odb#InitializeService": { "type": "operation", "input": { - "target": "com.amazonaws.odb#GetOdbPeeringConnectionInput" + "target": "com.amazonaws.odb#InitializeServiceInput" }, "output": { - "target": "com.amazonaws.odb#GetOdbPeeringConnectionOutput" + "target": "com.amazonaws.odb#InitializeServiceOutput" }, "errors": [ { @@ -9264,9 +11270,6 @@ { "target": "com.amazonaws.odb#InternalServerException" }, - { - "target": "com.amazonaws.odb#ResourceNotFoundException" - }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -9275,19 +11278,24 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about an ODB peering connection.

", - "smithy.api#readonly": {} + "smithy.api#documentation": "

Initializes the ODB service for the first time in an account.

", + "smithy.api#idempotent": {} } }, - "com.amazonaws.odb#GetOdbPeeringConnectionInput": { + "com.amazonaws.odb#InitializeServiceInput": { "type": "structure", "members": { - "odbPeeringConnectionId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "ociIdentityDomain": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

The unique identifier of the ODB peering connection to retrieve information about.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#default": true, + "smithy.api#documentation": "

The Oracle Cloud Infrastructure (OCI) identity domain configuration for service initialization.

" + } + }, + "autonomousDatabaseOciAwsSecretsManagerIntegration": { + "target": "com.amazonaws.odb#Access", + "traits": { + "smithy.api#documentation": "

Specifies whether to enable or disable the OCI service-account role for Amazon Web Services Secrets Manager integration with Autonomous Database.

" } } }, @@ -9295,145 +11303,251 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#GetOdbPeeringConnectionOutput": { + "com.amazonaws.odb#InitializeServiceOutput": { "type": "structure", - "members": { - "odbPeeringConnection": { - "target": "com.amazonaws.odb#OdbPeeringConnection" - } - }, + "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.odb#GiVersionList": { + "com.amazonaws.odb#IntegerList": { "type": "list", "member": { - "target": "com.amazonaws.odb#GiVersionSummary" + "target": "smithy.api#Integer" } }, - "com.amazonaws.odb#GiVersionSummary": { + "com.amazonaws.odb#InternalServerException": { "type": "structure", "members": { - "version": { + "message": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The GI software version.

" + "smithy.api#required": {} + } + }, + "retryAfterSeconds": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of seconds to wait before retrying the request after an internal server error.

", + "smithy.api#httpHeader": "Retry-After" } } }, "traits": { - "smithy.api#documentation": "

Information about a specific version of Oracle Grid Infrastructure (GI) software that can be installed on a VM cluster.

" + "smithy.api#documentation": "

Occurs when there is an internal failure in the Oracle Database@Amazon Web Services service. Wait and try again.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500, + "smithy.api#retryable": {} } }, - "com.amazonaws.odb#Hostname": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 12 + "com.amazonaws.odb#IormLifecycleState": { + "type": "enum", + "members": { + "BOOTSTRAPPING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BOOTSTRAPPING" + } }, - "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9]$" - } - }, - "com.amazonaws.odb#HoursOfDay": { - "type": "list", - "member": { - "target": "smithy.api#Integer" + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + }, + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + } } }, - "com.amazonaws.odb#IamRole": { + "com.amazonaws.odb#KmsAccess": { "type": "structure", "members": { - "iamRoleArn": { - "target": "com.amazonaws.odb#RoleArn", + "status": { + "target": "com.amazonaws.odb#ManagedResourceStatus", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) service role.

" + "smithy.api#documentation": "

The current status of the Amazon Web Services Key Management Service (KMS) access configuration.

" } }, - "status": { - "target": "com.amazonaws.odb#IamRoleStatus", + "ipv4Addresses": { + "target": "com.amazonaws.odb#StringList", "traits": { - "smithy.api#documentation": "

The current status of the Amazon Web Services Identity and Access Management (IAM) service role.

" + "smithy.api#documentation": "

The IPv4 addresses allowed for Amazon Web Services Key Management Service (KMS) access.

" } }, - "statusReason": { + "domainName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Additional information about the current status of the Amazon Web Services Identity and Access Management (IAM) service role, if applicable.

" + "smithy.api#documentation": "

The domain name for Amazon Web Services Key Management Service (KMS) access configuration.

" } }, - "awsIntegration": { - "target": "com.amazonaws.odb#SupportedAwsIntegration", + "kmsPolicyDocument": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The Amazon Web Services integration configuration settings for the Amazon Web Services Identity and Access Management (IAM) service role.

" + "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) policy document that defines permissions for key usage.

" } } }, "traits": { - "smithy.api#documentation": "

Information about an Amazon Web Services Identity and Access Management (IAM) service role associated with a resource.

" + "smithy.api#documentation": "

Configuration for Amazon Web Services Key Management Service (KMS) access from the ODB network.

" } }, - "com.amazonaws.odb#IamRoleList": { - "type": "list", - "member": { - "target": "com.amazonaws.odb#IamRole" + "com.amazonaws.odb#KmsKeyIdOrArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_:./-]+$" } }, - "com.amazonaws.odb#IamRoleStatus": { + "com.amazonaws.odb#LicenseModel": { "type": "enum", "members": { - "ASSOCIATING": { + "BRING_YOUR_OWN_LICENSE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ASSOCIATING" + "smithy.api#enumValue": "BRING_YOUR_OWN_LICENSE" } }, - "DISASSOCIATING": { + "LICENSE_INCLUDED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "DISASSOCIATING" + "smithy.api#enumValue": "LICENSE_INCLUDED" } + } + } + }, + "com.amazonaws.odb#ListAutonomousDatabaseBackups": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#ListAutonomousDatabaseBackupsInput" + }, + "output": { + "target": "com.amazonaws.odb#ListAutonomousDatabaseBackupsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" }, - "FAILED": { - "target": "smithy.api#Unit", + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the backups of the specified Autonomous Database.

", + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "autonomousDatabaseBackups" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.odb#ListAutonomousDatabaseBackupsInput": { + "type": "structure", + "members": { + "maxResults": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#enumValue": "FAILED" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "CONNECTED": { - "target": "smithy.api#Unit", + "nextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "CONNECTED" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1, + "max": 8192 + } } }, - "DISCONNECTED": { - "target": "smithy.api#Unit", + "autonomousDatabaseId": { + "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#enumValue": "DISCONNECTED" + "smithy.api#documentation": "

The unique identifier of the Autonomous Database whose backups you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "PARTIALLY_CONNECTED": { - "target": "smithy.api#Unit", + "status": { + "target": "com.amazonaws.odb#AutonomousDatabaseBackupStatus", + "traits": { + "smithy.api#documentation": "

The status of the Autonomous Database backups to return results for.

" + } + }, + "type": { + "target": "com.amazonaws.odb#AutonomousDatabaseBackupType", + "traits": { + "smithy.api#documentation": "

The type of the Autonomous Database backups to return results for.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#ListAutonomousDatabaseBackupsOutput": { + "type": "structure", + "members": { + "nextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "PARTIALLY_CONNECTED" + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "UNKNOWN": { - "target": "smithy.api#Unit", + "autonomousDatabaseBackups": { + "target": "com.amazonaws.odb#AutonomousDatabaseBackupList", "traits": { - "smithy.api#enumValue": "UNKNOWN" + "smithy.api#documentation": "

The list of Autonomous Database backups along with their properties.

", + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.odb#InitializeService": { + "com.amazonaws.odb#ListAutonomousDatabaseCharacterSets": { "type": "operation", "input": { - "target": "com.amazonaws.odb#InitializeServiceInput" + "target": "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsInput" }, "output": { - "target": "com.amazonaws.odb#InitializeServiceOutput" + "target": "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsOutput" }, "errors": [ { @@ -9450,24 +11564,45 @@ } ], "traits": { - "smithy.api#documentation": "

Initializes the ODB service for the first time in an account.

", - "smithy.api#idempotent": {} + "smithy.api#documentation": "

Lists the available character sets for Autonomous Databases.

", + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "autonomousDatabaseCharacterSets" + }, + "smithy.api#readonly": {} } }, - "com.amazonaws.odb#InitializeServiceInput": { + "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsInput": { "type": "structure", "members": { - "ociIdentityDomain": { - "target": "smithy.api#Boolean", + "maxResults": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#default": true, - "smithy.api#documentation": "

The Oracle Cloud Infrastructure (OCI) identity domain configuration for service initialization.

" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "autonomousDatabaseOciAwsSecretsManagerIntegration": { - "target": "com.amazonaws.odb#Access", + "nextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Specifies whether to enable or disable the OCI service-account role for Amazon Web Services Secrets Manager integration with Autonomous Database.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1, + "max": 8192 + } + } + }, + "characterSetType": { + "target": "com.amazonaws.odb#characterSetType", + "traits": { + "smithy.api#documentation": "

The type of character set to return results for, either the database character set or the national character set.

" } } }, @@ -9475,144 +11610,129 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#InitializeServiceOutput": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.odb#IntegerList": { - "type": "list", - "member": { - "target": "smithy.api#Integer" - } - }, - "com.amazonaws.odb#InternalServerException": { + "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsOutput": { "type": "structure", "members": { - "message": { + "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#required": {} + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "retryAfterSeconds": { - "target": "smithy.api#Integer", + "autonomousDatabaseCharacterSets": { + "target": "com.amazonaws.odb#AutonomousDatabaseCharacterSetList", "traits": { - "smithy.api#documentation": "

The number of seconds to wait before retrying the request after an internal server error.

", - "smithy.api#httpHeader": "Retry-After" + "smithy.api#documentation": "

The list of available Autonomous Database character sets.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Occurs when there is an internal failure in the Oracle Database@Amazon Web Services service. Wait and try again.

", - "smithy.api#error": "server", - "smithy.api#httpError": 500, - "smithy.api#retryable": {} + "smithy.api#output": {} } }, - "com.amazonaws.odb#IormLifecycleState": { - "type": "enum", - "members": { - "BOOTSTRAPPING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BOOTSTRAPPING" - } + "com.amazonaws.odb#ListAutonomousDatabaseClones": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#ListAutonomousDatabaseClonesInput" + }, + "output": { + "target": "com.amazonaws.odb#ListAutonomousDatabaseClonesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" }, - "DISABLED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DISABLED" - } + { + "target": "com.amazonaws.odb#InternalServerException" }, - "ENABLED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ENABLED" - } + { + "target": "com.amazonaws.odb#ResourceNotFoundException" }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FAILED" - } + { + "target": "com.amazonaws.odb#ThrottlingException" }, - "UPDATING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "UPDATING" - } + { + "target": "com.amazonaws.odb#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

Lists the clones of the specified Autonomous Database.

", + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "autonomousDatabaseClones" + }, + "smithy.api#readonly": {} } }, - "com.amazonaws.odb#KmsAccess": { + "com.amazonaws.odb#ListAutonomousDatabaseClonesInput": { "type": "structure", "members": { - "status": { - "target": "com.amazonaws.odb#ManagedResourceStatus", - "traits": { - "smithy.api#documentation": "

The current status of the Amazon Web Services Key Management Service (KMS) access configuration.

" - } - }, - "ipv4Addresses": { - "target": "com.amazonaws.odb#StringList", + "maxResults": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The IPv4 addresses allowed for Amazon Web Services Key Management Service (KMS) access.

" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "domainName": { + "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name for Amazon Web Services Key Management Service (KMS) access configuration.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1, + "max": 8192 + } } }, - "kmsPolicyDocument": { - "target": "smithy.api#String", + "autonomousDatabaseId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) policy document that defines permissions for key usage.

" + "smithy.api#documentation": "

The unique identifier of the source Autonomous Database whose clones you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Configuration for Amazon Web Services Key Management Service (KMS) access from the ODB network.

" - } - }, - "com.amazonaws.odb#KmsKeyIdOrArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^[a-zA-Z0-9_:./-]+$" + "smithy.api#input": {} } }, - "com.amazonaws.odb#LicenseModel": { - "type": "enum", + "com.amazonaws.odb#ListAutonomousDatabaseClonesOutput": { + "type": "structure", "members": { - "BRING_YOUR_OWN_LICENSE": { - "target": "smithy.api#Unit", + "nextToken": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "BRING_YOUR_OWN_LICENSE" + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "LICENSE_INCLUDED": { - "target": "smithy.api#Unit", + "autonomousDatabaseClones": { + "target": "com.amazonaws.odb#AutonomousDatabaseList", "traits": { - "smithy.api#enumValue": "LICENSE_INCLUDED" + "smithy.api#documentation": "

The list of Autonomous Database clones along with their properties.

", + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseBackups": { + "com.amazonaws.odb#ListAutonomousDatabasePeers": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseBackupsInput" + "target": "com.amazonaws.odb#ListAutonomousDatabasePeersInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseBackupsOutput" + "target": "com.amazonaws.odb#ListAutonomousDatabasePeersOutput" }, "errors": [ { @@ -9632,17 +11752,17 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the backups of the specified Autonomous Database.

", + "smithy.api#documentation": "

Lists the peer databases of the specified Autonomous Database.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabaseBackups" + "items": "autonomousDatabasePeers" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseBackupsInput": { + "com.amazonaws.odb#ListAutonomousDatabasePeersInput": { "type": "structure", "members": { "maxResults": { @@ -9659,32 +11779,20 @@ "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#httpQuery": "nextToken", - "smithy.api#length": { - "min": 1, - "max": 8192 - } - } - }, - "autonomousDatabaseId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the Autonomous Database whose backups you want to list.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "status": { - "target": "com.amazonaws.odb#AutonomousDatabaseBackupStatus", - "traits": { - "smithy.api#documentation": "

The status of the Autonomous Database backups to return results for.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1, + "max": 8192 + } } }, - "type": { - "target": "com.amazonaws.odb#AutonomousDatabaseBackupType", + "autonomousDatabaseId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The type of the Autonomous Database backups to return results for.

" + "smithy.api#documentation": "

The unique identifier of the Autonomous Database whose peer databases you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, @@ -9692,7 +11800,7 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseBackupsOutput": { + "com.amazonaws.odb#ListAutonomousDatabasePeersOutput": { "type": "structure", "members": { "nextToken": { @@ -9701,10 +11809,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "autonomousDatabaseBackups": { - "target": "com.amazonaws.odb#AutonomousDatabaseBackupList", + "autonomousDatabasePeers": { + "target": "com.amazonaws.odb#AutonomousDatabasePeerList", "traits": { - "smithy.api#documentation": "

The list of Autonomous Database backups along with their properties.

", + "smithy.api#documentation": "

The list of peer databases for the Autonomous Database.

", "smithy.api#required": {} } } @@ -9713,13 +11821,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseCharacterSets": { + "com.amazonaws.odb#ListAutonomousDatabaseVersions": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsInput" + "target": "com.amazonaws.odb#ListAutonomousDatabaseVersionsInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsOutput" + "target": "com.amazonaws.odb#ListAutonomousDatabaseVersionsOutput" }, "errors": [ { @@ -9736,17 +11844,17 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the available character sets for Autonomous Databases.

", + "smithy.api#documentation": "

Lists the available Oracle Database software versions for Autonomous Databases.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabaseCharacterSets" + "items": "autonomousDatabaseVersions" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsInput": { + "com.amazonaws.odb#ListAutonomousDatabaseVersionsInput": { "type": "structure", "members": { "maxResults": { @@ -9771,10 +11879,10 @@ } } }, - "characterSetType": { - "target": "com.amazonaws.odb#characterSetType", + "dbWorkload": { + "target": "com.amazonaws.odb#DbWorkload", "traits": { - "smithy.api#documentation": "

The type of character set to return results for, either the database character set or the national character set.

" + "smithy.api#documentation": "

The intended use of the Autonomous Database to return versions for, such as transaction processing, data warehouse, JSON database, or APEX.

" } } }, @@ -9782,7 +11890,7 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseCharacterSetsOutput": { + "com.amazonaws.odb#ListAutonomousDatabaseVersionsOutput": { "type": "structure", "members": { "nextToken": { @@ -9791,10 +11899,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "autonomousDatabaseCharacterSets": { - "target": "com.amazonaws.odb#AutonomousDatabaseCharacterSetList", + "autonomousDatabaseVersions": { + "target": "com.amazonaws.odb#AutonomousDatabaseVersionList", "traits": { - "smithy.api#documentation": "

The list of available Autonomous Database character sets.

", + "smithy.api#documentation": "

The list of available Autonomous Database software versions.

", "smithy.api#required": {} } } @@ -9803,13 +11911,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseClones": { + "com.amazonaws.odb#ListAutonomousDatabases": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseClonesInput" + "target": "com.amazonaws.odb#ListAutonomousDatabasesInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseClonesOutput" + "target": "com.amazonaws.odb#ListAutonomousDatabasesOutput" }, "errors": [ { @@ -9818,9 +11926,6 @@ { "target": "com.amazonaws.odb#InternalServerException" }, - { - "target": "com.amazonaws.odb#ResourceNotFoundException" - }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -9829,17 +11934,17 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the clones of the specified Autonomous Database.

", + "smithy.api#documentation": "

Returns information about the Autonomous Databases owned by your Amazon Web Services account in the current Amazon Web Services Region.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabaseClones" + "items": "autonomousDatabases" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseClonesInput": { + "com.amazonaws.odb#ListAutonomousDatabasesInput": { "type": "structure", "members": { "maxResults": { @@ -9863,21 +11968,13 @@ "max": 8192 } } - }, - "autonomousDatabaseId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", - "traits": { - "smithy.api#documentation": "

The unique identifier of the source Autonomous Database whose clones you want to list.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseClonesOutput": { + "com.amazonaws.odb#ListAutonomousDatabasesOutput": { "type": "structure", "members": { "nextToken": { @@ -9886,10 +11983,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "autonomousDatabaseClones": { + "autonomousDatabases": { "target": "com.amazonaws.odb#AutonomousDatabaseList", "traits": { - "smithy.api#documentation": "

The list of Autonomous Database clones along with their properties.

", + "smithy.api#documentation": "

The list of Autonomous Databases along with their properties.

", "smithy.api#required": {} } } @@ -9898,13 +11995,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabasePeers": { + "com.amazonaws.odb#ListAutonomousVirtualMachines": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabasePeersInput" + "target": "com.amazonaws.odb#ListAutonomousVirtualMachinesInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabasePeersOutput" + "target": "com.amazonaws.odb#ListAutonomousVirtualMachinesOutput" }, "errors": [ { @@ -9924,23 +12021,23 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the peer databases of the specified Autonomous Database.

", + "smithy.api#documentation": "

Lists all Autonomous VMs in an Autonomous VM cluster.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabasePeers" + "items": "autonomousVirtualMachines" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabasePeersInput": { + "com.amazonaws.odb#ListAutonomousVirtualMachinesInput": { "type": "structure", "members": { "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#documentation": "

The maximum number of items to return per page.

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -9951,7 +12048,7 @@ "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#documentation": "

The pagination token to continue listing from.

", "smithy.api#httpQuery": "nextToken", "smithy.api#length": { "min": 1, @@ -9959,32 +12056,37 @@ } } }, - "autonomousDatabaseId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "cloudAutonomousVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the Autonomous Database whose peer databases you want to list.

", + "smithy.api#documentation": "

The unique identifier of the Autonomous VM cluster whose virtual machines you're listing.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {} + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#CloudAutonomousVmClusterResource" + } + ] } }, - "com.amazonaws.odb#ListAutonomousDatabasePeersOutput": { + "com.amazonaws.odb#ListAutonomousVirtualMachinesOutput": { "type": "structure", "members": { "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" + "smithy.api#documentation": "

The pagination token from which to continue listing.

" } }, - "autonomousDatabasePeers": { - "target": "com.amazonaws.odb#AutonomousDatabasePeerList", + "autonomousVirtualMachines": { + "target": "com.amazonaws.odb#AutonomousVirtualMachineList", "traits": { - "smithy.api#documentation": "

The list of peer databases for the Autonomous Database.

", + "smithy.api#documentation": "

The list of Autonomous VMs in the specified Autonomous VM cluster.

", "smithy.api#required": {} } } @@ -9993,13 +12095,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseVersions": { + "com.amazonaws.odb#ListCloudAutonomousVmClusters": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseVersionsInput" + "target": "com.amazonaws.odb#ListCloudAutonomousVmClustersInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabaseVersionsOutput" + "target": "com.amazonaws.odb#ListCloudAutonomousVmClustersOutput" }, "errors": [ { @@ -10008,6 +12110,9 @@ { "target": "com.amazonaws.odb#InternalServerException" }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -10016,23 +12121,23 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the available Oracle Database software versions for Autonomous Databases.

", + "smithy.api#documentation": "

Lists all Autonomous VM clusters in a specified Cloud Exadata infrastructure.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabaseVersions" + "items": "cloudAutonomousVmClusters" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabaseVersionsInput": { + "com.amazonaws.odb#ListCloudAutonomousVmClustersInput": { "type": "structure", "members": { "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#documentation": "

The maximum number of items to return per page.

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10043,7 +12148,7 @@ "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#documentation": "

The pagination token to continue listing from.

", "smithy.api#httpQuery": "nextToken", "smithy.api#length": { "min": 1, @@ -10051,30 +12156,35 @@ } } }, - "dbWorkload": { - "target": "com.amazonaws.odb#DbWorkload", + "cloudExadataInfrastructureId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The intended use of the Autonomous Database to return versions for, such as transaction processing, data warehouse, JSON database, or APEX.

" + "smithy.api#documentation": "

The unique identifier of the Cloud Exadata Infrastructure that hosts the Autonomous VM clusters to be listed.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" + } + ] } }, - "com.amazonaws.odb#ListAutonomousDatabaseVersionsOutput": { + "com.amazonaws.odb#ListCloudAutonomousVmClustersOutput": { "type": "structure", "members": { "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" + "smithy.api#documentation": "

The pagination token to continue listing from.

" } }, - "autonomousDatabaseVersions": { - "target": "com.amazonaws.odb#AutonomousDatabaseVersionList", + "cloudAutonomousVmClusters": { + "target": "com.amazonaws.odb#CloudAutonomousVmClusterList", "traits": { - "smithy.api#documentation": "

The list of available Autonomous Database software versions.

", + "smithy.api#documentation": "

The list of Autonomous VM clusters in the specified Cloud Exadata Infrastructure.

", "smithy.api#required": {} } } @@ -10083,13 +12193,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousDatabases": { + "com.amazonaws.odb#ListCloudExadataInfrastructures": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousDatabasesInput" + "target": "com.amazonaws.odb#ListCloudExadataInfrastructuresInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousDatabasesOutput" + "target": "com.amazonaws.odb#ListCloudExadataInfrastructuresOutput" }, "errors": [ { @@ -10106,23 +12216,23 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the Autonomous Databases owned by your Amazon Web Services account in the current Amazon Web Services Region.

", + "smithy.api#documentation": "

Returns information about the Exadata infrastructures owned by your Amazon Web Services account.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousDatabases" + "items": "cloudExadataInfrastructures" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousDatabasesInput": { + "com.amazonaws.odb#ListCloudExadataInfrastructuresInput": { "type": "structure", "members": { "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10146,7 +12256,7 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#ListAutonomousDatabasesOutput": { + "com.amazonaws.odb#ListCloudExadataInfrastructuresOutput": { "type": "structure", "members": { "nextToken": { @@ -10155,10 +12265,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "autonomousDatabases": { - "target": "com.amazonaws.odb#AutonomousDatabaseList", + "cloudExadataInfrastructures": { + "target": "com.amazonaws.odb#CloudExadataInfrastructureList", "traits": { - "smithy.api#documentation": "

The list of Autonomous Databases along with their properties.

", + "smithy.api#documentation": "

The list of Exadata infrastructures along with their properties.

", "smithy.api#required": {} } } @@ -10167,13 +12277,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListAutonomousVirtualMachines": { + "com.amazonaws.odb#ListCloudVmClusters": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListAutonomousVirtualMachinesInput" + "target": "com.amazonaws.odb#ListCloudVmClustersInput" }, "output": { - "target": "com.amazonaws.odb#ListAutonomousVirtualMachinesOutput" + "target": "com.amazonaws.odb#ListCloudVmClustersOutput" }, "errors": [ { @@ -10193,23 +12303,23 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all Autonomous VMs in an Autonomous VM cluster.

", + "smithy.api#documentation": "

Returns information about the VM clusters owned by your Amazon Web Services account or only the ones on the specified Exadata infrastructure.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "autonomousVirtualMachines" + "items": "cloudVmClusters" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListAutonomousVirtualMachinesInput": { + "com.amazonaws.odb#ListCloudVmClustersInput": { "type": "structure", "members": { "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return per page.

", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10220,7 +12330,7 @@ "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The pagination token to continue listing from.

", + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "smithy.api#httpQuery": "nextToken", "smithy.api#length": { "min": 1, @@ -10228,12 +12338,10 @@ } } }, - "cloudAutonomousVmClusterId": { - "target": "com.amazonaws.odb#ResourceId", + "cloudExadataInfrastructureId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", "traits": { - "smithy.api#documentation": "

The unique identifier of the Autonomous VM cluster whose virtual machines you're listing.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure.

" } } }, @@ -10241,24 +12349,24 @@ "smithy.api#input": {}, "smithy.api#references": [ { - "resource": "com.amazonaws.odb#CloudAutonomousVmClusterResource" + "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" } ] } }, - "com.amazonaws.odb#ListAutonomousVirtualMachinesOutput": { + "com.amazonaws.odb#ListCloudVmClustersOutput": { "type": "structure", "members": { "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The pagination token from which to continue listing.

" + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "autonomousVirtualMachines": { - "target": "com.amazonaws.odb#AutonomousVirtualMachineList", + "cloudVmClusters": { + "target": "com.amazonaws.odb#CloudVmClusterList", "traits": { - "smithy.api#documentation": "

The list of Autonomous VMs in the specified Autonomous VM cluster.

", + "smithy.api#documentation": "

The list of VM clusters along with their properties.

", "smithy.api#required": {} } } @@ -10267,13 +12375,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListCloudAutonomousVmClusters": { + "com.amazonaws.odb#ListDbNodes": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListCloudAutonomousVmClustersInput" + "target": "com.amazonaws.odb#ListDbNodesInput" }, "output": { - "target": "com.amazonaws.odb#ListCloudAutonomousVmClustersOutput" + "target": "com.amazonaws.odb#ListDbNodesOutput" }, "errors": [ { @@ -10293,23 +12401,23 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all Autonomous VM clusters in a specified Cloud Exadata infrastructure.

", + "smithy.api#documentation": "

Returns information about the DB nodes for the specified VM cluster.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "cloudAutonomousVmClusters" + "items": "dbNodes" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListCloudAutonomousVmClustersInput": { + "com.amazonaws.odb#ListDbNodesInput": { "type": "structure", "members": { "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return per page.

", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10320,7 +12428,7 @@ "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The pagination token to continue listing from.

", + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "smithy.api#httpQuery": "nextToken", "smithy.api#length": { "min": 1, @@ -10328,10 +12436,16 @@ } } }, - "cloudExadataInfrastructureId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "cloudVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the Cloud Exadata Infrastructure that hosts the Autonomous VM clusters to be listed.

" + "smithy.api#documentation": "

The unique identifier of the VM cluster. You must specify either this parameter or exadbVmClusterId.

" + } + }, + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster. You must specify either this parameter or cloudVmClusterId.

" } } }, @@ -10339,24 +12453,27 @@ "smithy.api#input": {}, "smithy.api#references": [ { - "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" + "resource": "com.amazonaws.odb#CloudVmClusterResource" + }, + { + "resource": "com.amazonaws.odb#ExadbVmClusterResource" } ] } }, - "com.amazonaws.odb#ListCloudAutonomousVmClustersOutput": { + "com.amazonaws.odb#ListDbNodesOutput": { "type": "structure", "members": { "nextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The pagination token to continue listing from.

" + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "cloudAutonomousVmClusters": { - "target": "com.amazonaws.odb#CloudAutonomousVmClusterList", + "dbNodes": { + "target": "com.amazonaws.odb#DbNodeList", "traits": { - "smithy.api#documentation": "

The list of Autonomous VM clusters in the specified Cloud Exadata Infrastructure.

", + "smithy.api#documentation": "

The list of DB nodes along with their properties.

", "smithy.api#required": {} } } @@ -10365,13 +12482,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListCloudExadataInfrastructures": { + "com.amazonaws.odb#ListDbServers": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListCloudExadataInfrastructuresInput" + "target": "com.amazonaws.odb#ListDbServersInput" }, "output": { - "target": "com.amazonaws.odb#ListCloudExadataInfrastructuresOutput" + "target": "com.amazonaws.odb#ListDbServersOutput" }, "errors": [ { @@ -10380,6 +12497,9 @@ { "target": "com.amazonaws.odb#InternalServerException" }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -10388,19 +12508,27 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the Exadata infrastructures owned by your Amazon Web Services account.

", + "smithy.api#documentation": "

Returns information about the database servers that belong to the specified Exadata infrastructure.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "cloudExadataInfrastructures" + "items": "dbServers" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListCloudExadataInfrastructuresInput": { + "com.amazonaws.odb#ListDbServersInput": { "type": "structure", "members": { + "cloudExadataInfrastructureId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, "maxResults": { "target": "smithy.api#Integer", "traits": { @@ -10425,10 +12553,15 @@ } }, "traits": { - "smithy.api#input": {} + "smithy.api#input": {}, + "smithy.api#references": [ + { + "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" + } + ] } }, - "com.amazonaws.odb#ListCloudExadataInfrastructuresOutput": { + "com.amazonaws.odb#ListDbServersOutput": { "type": "structure", "members": { "nextToken": { @@ -10437,10 +12570,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "cloudExadataInfrastructures": { - "target": "com.amazonaws.odb#CloudExadataInfrastructureList", + "dbServers": { + "target": "com.amazonaws.odb#DbServerList", "traits": { - "smithy.api#documentation": "

The list of Exadata infrastructures along with their properties.

", + "smithy.api#documentation": "

The list of database servers along with their properties.

", "smithy.api#required": {} } } @@ -10449,13 +12582,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListCloudVmClusters": { + "com.amazonaws.odb#ListDbSystemShapes": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListCloudVmClustersInput" + "target": "com.amazonaws.odb#ListDbSystemShapesInput" }, "output": { - "target": "com.amazonaws.odb#ListCloudVmClustersOutput" + "target": "com.amazonaws.odb#ListDbSystemShapesOutput" }, "errors": [ { @@ -10464,9 +12597,6 @@ { "target": "com.amazonaws.odb#InternalServerException" }, - { - "target": "com.amazonaws.odb#ResourceNotFoundException" - }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -10475,17 +12605,17 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the VM clusters owned by your Amazon Web Services account or only the ones on the specified Exadata infrastructure.

", + "smithy.api#documentation": "

Returns information about the shapes that are available for an Exadata infrastructure.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "cloudVmClusters" + "items": "dbSystemShapes" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListCloudVmClustersInput": { + "com.amazonaws.odb#ListDbSystemShapesInput": { "type": "structure", "members": { "maxResults": { @@ -10510,23 +12640,42 @@ } } }, - "cloudExadataInfrastructureId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", + "availabilityZone": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure.

" + "smithy.api#documentation": "

The logical name of the AZ, for example, us-east-1a. This name varies depending on the account.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "availabilityZoneId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The physical ID of the AZ, for example, use1-az4. This ID persists across accounts.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "shapeFamily": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The shape family to filter results by.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } } } }, "traits": { - "smithy.api#input": {}, - "smithy.api#references": [ - { - "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" - } - ] + "smithy.api#input": {} } }, - "com.amazonaws.odb#ListCloudVmClustersOutput": { + "com.amazonaws.odb#ListDbSystemShapesOutput": { "type": "structure", "members": { "nextToken": { @@ -10535,10 +12684,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "cloudVmClusters": { - "target": "com.amazonaws.odb#CloudVmClusterList", + "dbSystemShapes": { + "target": "com.amazonaws.odb#DbSystemShapeList", "traits": { - "smithy.api#documentation": "

The list of VM clusters along with their properties.

", + "smithy.api#documentation": "

The list of shapes and their properties.

", "smithy.api#required": {} } } @@ -10547,13 +12696,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListDbNodes": { + "com.amazonaws.odb#ListExadbVmClusters": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListDbNodesInput" + "target": "com.amazonaws.odb#ListExadbVmClustersInput" }, "output": { - "target": "com.amazonaws.odb#ListDbNodesOutput" + "target": "com.amazonaws.odb#ListExadbVmClustersOutput" }, "errors": [ { @@ -10573,23 +12722,30 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the DB nodes for the specified VM cluster.

", + "smithy.api#documentation": "

Returns information about the Exascale VM clusters owned by your Amazon Web Services account.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "dbNodes" + "items": "exadbVmClusters" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListDbNodesInput": { + "com.amazonaws.odb#ListExadbVmClustersInput": { "type": "structure", "members": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault to list the associated Exascale VM clusters.

", + "smithy.api#httpQuery": "exascaleDbStorageVaultId" + } + }, "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10607,26 +12763,18 @@ "max": 8192 } } - }, - "cloudVmClusterId": { - "target": "com.amazonaws.odb#ResourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier of the VM cluster.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } } }, "traits": { "smithy.api#input": {}, "smithy.api#references": [ { - "resource": "com.amazonaws.odb#CloudVmClusterResource" + "resource": "com.amazonaws.odb#ExascaleDbStorageVaultResource" } ] } }, - "com.amazonaws.odb#ListDbNodesOutput": { + "com.amazonaws.odb#ListExadbVmClustersOutput": { "type": "structure", "members": { "nextToken": { @@ -10635,10 +12783,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "dbNodes": { - "target": "com.amazonaws.odb#DbNodeList", + "exadbVmClusters": { + "target": "com.amazonaws.odb#ExadbVmClusterList", "traits": { - "smithy.api#documentation": "

The list of DB nodes along with their properties.

", + "smithy.api#documentation": "

The list of Exascale VM clusters.

", "smithy.api#required": {} } } @@ -10647,13 +12795,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListDbServers": { + "com.amazonaws.odb#ListExascaleDbStorageVaults": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListDbServersInput" + "target": "com.amazonaws.odb#ListExascaleDbStorageVaultsInput" }, "output": { - "target": "com.amazonaws.odb#ListDbServersOutput" + "target": "com.amazonaws.odb#ListExascaleDbStorageVaultsOutput" }, "errors": [ { @@ -10662,9 +12810,6 @@ { "target": "com.amazonaws.odb#InternalServerException" }, - { - "target": "com.amazonaws.odb#ResourceNotFoundException" - }, { "target": "com.amazonaws.odb#ThrottlingException" }, @@ -10673,31 +12818,23 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the database servers that belong to the specified Exadata infrastructure.

", + "smithy.api#documentation": "

Returns information about the Exascale storage vaults owned by your Amazon Web Services account.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "dbServers" + "items": "exascaleDbStorageVaults" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListDbServersInput": { + "com.amazonaws.odb#ListExascaleDbStorageVaultsInput": { "type": "structure", "members": { - "cloudExadataInfrastructureId": { - "target": "com.amazonaws.odb#ResourceIdOrArn", - "traits": { - "smithy.api#documentation": "

The unique identifier of the Oracle Exadata infrastructure.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", "smithy.api#httpQuery": "maxResults", "smithy.api#range": { "min": 1, @@ -10718,15 +12855,10 @@ } }, "traits": { - "smithy.api#input": {}, - "smithy.api#references": [ - { - "resource": "com.amazonaws.odb#CloudExadataInfrastructureResource" - } - ] + "smithy.api#input": {} } }, - "com.amazonaws.odb#ListDbServersOutput": { + "com.amazonaws.odb#ListExascaleDbStorageVaultsOutput": { "type": "structure", "members": { "nextToken": { @@ -10735,10 +12867,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "dbServers": { - "target": "com.amazonaws.odb#DbServerList", + "exascaleDbStorageVaults": { + "target": "com.amazonaws.odb#ExascaleDbStorageVaultList", "traits": { - "smithy.api#documentation": "

The list of database servers along with their properties.

", + "smithy.api#documentation": "

The list of Exascale storage vaults.

", "smithy.api#required": {} } } @@ -10747,13 +12879,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.odb#ListDbSystemShapes": { + "com.amazonaws.odb#ListGiMinorVersions": { "type": "operation", "input": { - "target": "com.amazonaws.odb#ListDbSystemShapesInput" + "target": "com.amazonaws.odb#ListGiMinorVersionsInput" }, "output": { - "target": "com.amazonaws.odb#ListDbSystemShapesOutput" + "target": "com.amazonaws.odb#ListGiMinorVersionsOutput" }, "errors": [ { @@ -10770,24 +12902,34 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the shapes that are available for an Exadata infrastructure.

", + "smithy.api#documentation": "

Returns a list of the Oracle Grid Infrastructure (GI) minor versions for the specified major version.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", "pageSize": "maxResults", - "items": "dbSystemShapes" + "items": "giMinorVersions" }, "smithy.api#readonly": {} } }, - "com.amazonaws.odb#ListDbSystemShapesInput": { + "com.amazonaws.odb#ListGiMinorVersionsInput": { "type": "structure", "members": { + "giVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Oracle Grid Infrastructure (GI) major version.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#required": {} + } + }, "maxResults": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

Default: 10

", - "smithy.api#httpQuery": "maxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output.

", "smithy.api#range": { "min": 1, "max": 1000 @@ -10798,17 +12940,26 @@ "target": "smithy.api#String", "traits": { "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#httpQuery": "nextToken", "smithy.api#length": { "min": 1, "max": 8192 } } }, + "shapeFamily": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The shape family for the GI minor version.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, "availabilityZone": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The logical name of the AZ, for example, us-east-1a. This name varies depending on the account.

", + "smithy.api#documentation": "

The Availability Zone to filter GI minor versions.

", "smithy.api#length": { "min": 1, "max": 255 @@ -10818,7 +12969,7 @@ "availabilityZoneId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The physical ID of the AZ, for example, use1-az4. This ID persists across accounts.

", + "smithy.api#documentation": "

The Availability Zone ID to filter GI minor versions.

", "smithy.api#length": { "min": 1, "max": 255 @@ -10830,7 +12981,7 @@ "smithy.api#input": {} } }, - "com.amazonaws.odb#ListDbSystemShapesOutput": { + "com.amazonaws.odb#ListGiMinorVersionsOutput": { "type": "structure", "members": { "nextToken": { @@ -10839,10 +12990,10 @@ "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

" } }, - "dbSystemShapes": { - "target": "com.amazonaws.odb#DbSystemShapeList", + "giMinorVersions": { + "target": "com.amazonaws.odb#GiMinorVersionList", "traits": { - "smithy.api#documentation": "

The list of shapes and their properties.

", + "smithy.api#documentation": "

The list of GI minor versions.

", "smithy.api#required": {} } } @@ -12037,6 +14188,9 @@ { "target": "com.amazonaws.odb#ListDbSystemShapes" }, + { + "target": "com.amazonaws.odb#ListGiMinorVersions" + }, { "target": "com.amazonaws.odb#ListGiVersions" }, @@ -13859,9 +16013,13 @@ "cloudVmClusterId": { "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to reboot.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to reboot. You must specify either this parameter or exadbVmClusterId.

" + } + }, + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster that contains the DB node to reboot. You must specify either this parameter or cloudVmClusterId.

" } }, "dbNodeId": { @@ -13878,6 +16036,9 @@ "smithy.api#references": [ { "resource": "com.amazonaws.odb#CloudVmClusterResource" + }, + { + "resource": "com.amazonaws.odb#ExadbVmClusterResource" } ] } @@ -13997,6 +16158,12 @@ "smithy.api#pattern": "^arn:(?:aws|aws-cn|aws-us-gov|aws-iso-{0,1}[a-z]{0,1}):[a-z0-9-]+:[a-z0-9-]*:[0-9]+:[a-z0-9-]+/[a-z0-9-_]{6,64}$" } }, + "com.amazonaws.odb#ResourceArnList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#ResourceArn" + } + }, "com.amazonaws.odb#ResourceDisplayName": { "type": "string", "traits": { @@ -14443,6 +16610,31 @@ "smithy.api#httpError": 402 } }, + "com.amazonaws.odb#ShapeAttribute": { + "type": "enum", + "members": { + "SMART_STORAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#documentation": "

Smart storage shape attribute.

", + "smithy.api#enumValue": "SMART_STORAGE" + } + }, + "BLOCK_STORAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#documentation": "

Block storage shape attribute.

", + "smithy.api#enumValue": "BLOCK_STORAGE" + } + } + } + }, + "com.amazonaws.odb#ShapeAttributeList": { + "type": "list", + "member": { + "target": "com.amazonaws.odb#ShapeAttribute" + } + }, "com.amazonaws.odb#ShapeType": { "type": "enum", "members": { @@ -14791,9 +16983,13 @@ "cloudVmClusterId": { "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to start.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to start. You must specify either this parameter or exadbVmClusterId.

" + } + }, + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster that contains the DB node to start. You must specify either this parameter or cloudVmClusterId.

" } }, "dbNodeId": { @@ -14810,6 +17006,9 @@ "smithy.api#references": [ { "resource": "com.amazonaws.odb#CloudVmClusterResource" + }, + { + "resource": "com.amazonaws.odb#ExadbVmClusterResource" } ] } @@ -14961,9 +17160,13 @@ "cloudVmClusterId": { "target": "com.amazonaws.odb#ResourceId", "traits": { - "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to stop.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The unique identifier of the VM cluster that contains the DB node to stop. You must specify either this parameter or exadbVmClusterId.

" + } + }, + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster that contains the DB node to stop. You must specify either this parameter or cloudVmClusterId.

" } }, "dbNodeId": { @@ -14980,6 +17183,9 @@ "smithy.api#references": [ { "resource": "com.amazonaws.odb#CloudVmClusterResource" + }, + { + "resource": "com.amazonaws.odb#ExadbVmClusterResource" } ] } @@ -15498,14 +17704,43 @@ "exadbVmClusterId": "resourceArn" } } - ] - } - }, - "com.amazonaws.odb#UntagResourceResponse": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} + ] + } + }, + "com.amazonaws.odb#UntagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#UpdateAction": { + "type": "enum", + "members": { + "ROLLING_APPLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLING_APPLY" + } + }, + "NON_ROLLING_APPLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NON_ROLLING_APPLY" + } + }, + "PRECHECK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRECHECK" + } + }, + "ROLLBACK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK" + } + } } }, "com.amazonaws.odb#UpdateAutonomousDatabase": { @@ -16075,6 +18310,292 @@ "smithy.api#output": {} } }, + "com.amazonaws.odb#UpdateExadbVmCluster": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#UpdateExadbVmClusterInput" + }, + "output": { + "target": "com.amazonaws.odb#UpdateExadbVmClusterOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the specified Exascale VM cluster.

" + } + }, + "com.amazonaws.odb#UpdateExadbVmClusterInput": { + "type": "structure", + "members": { + "exadbVmClusterId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster to update.

", + "smithy.api#required": {} + } + }, + "dataCollectionOptions": { + "target": "com.amazonaws.odb#DataCollectionOptions", + "traits": { + "smithy.api#documentation": "

The set of preferences for the various diagnostic collection options for the Exascale VM cluster.

" + } + }, + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", + "traits": { + "smithy.api#documentation": "

A new user-friendly name for the Exascale VM cluster.

" + } + }, + "enabledEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of ECPUs to enable for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 0 + } + } + }, + "gridImageId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Grid Infrastructure software image ID for the Exascale VM cluster.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "licenseModel": { + "target": "com.amazonaws.odb#LicenseModel", + "traits": { + "smithy.api#documentation": "

The Oracle license model to apply to the Exascale VM cluster.

" + } + }, + "sshPublicKeys": { + "target": "com.amazonaws.odb#StringList", + "traits": { + "smithy.api#documentation": "

The public key portion of one or more key pairs used for SSH access to the Exascale VM cluster.

" + } + }, + "systemVersion": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The version of the operating system of the image for the Exascale VM cluster.

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + }, + "totalEcpuCount": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total number of ECPUs for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 2 + } + } + }, + "updateAction": { + "target": "com.amazonaws.odb#UpdateAction", + "traits": { + "smithy.api#documentation": "

The update action to perform on the Exascale VM cluster.

" + } + }, + "vmFileSystemStorageTotalSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total amount of file system storage, in gigabytes (GB), for the Exascale VM cluster.

", + "smithy.api#range": { + "min": 0 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#UpdateExadbVmClusterOutput": { + "type": "structure", + "members": { + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale VM cluster.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale VM cluster.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale VM cluster.

" + } + }, + "exadbVmClusterId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale VM cluster.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.odb#UpdateExascaleDbStorageVault": { + "type": "operation", + "input": { + "target": "com.amazonaws.odb#UpdateExascaleDbStorageVaultInput" + }, + "output": { + "target": "com.amazonaws.odb#UpdateExascaleDbStorageVaultOutput" + }, + "errors": [ + { + "target": "com.amazonaws.odb#AccessDeniedException" + }, + { + "target": "com.amazonaws.odb#ConflictException" + }, + { + "target": "com.amazonaws.odb#InternalServerException" + }, + { + "target": "com.amazonaws.odb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.odb#ThrottlingException" + }, + { + "target": "com.amazonaws.odb#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the specified Exascale storage vault.

" + } + }, + "com.amazonaws.odb#UpdateExascaleDbStorageVaultInput": { + "type": "structure", + "members": { + "exascaleDbStorageVaultId": { + "target": "com.amazonaws.odb#ResourceIdOrArn", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault to update.

", + "smithy.api#required": {} + } + }, + "additionalFlashCacheInPercent": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The additional flash cache percentage for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + } + } + }, + "autoscaleLimitInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The autoscale limit in gigabytes (GB) for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + } + } + }, + "description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A new description for the Exascale storage vault.

", + "smithy.api#length": { + "min": 1, + "max": 400 + } + } + }, + "displayName": { + "target": "com.amazonaws.odb#ResourceDisplayName", + "traits": { + "smithy.api#documentation": "

A new user-friendly name for the Exascale storage vault.

" + } + }, + "highCapacityDatabaseStorageTotalSizeInGBs": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The total size of the high-capacity database storage, in gigabytes (GB), for the Exascale storage vault.

", + "smithy.api#range": { + "min": 0 + } + } + }, + "isAutoscaleEnabled": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether autoscaling is enabled for the Exascale storage vault.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.odb#UpdateExascaleDbStorageVaultOutput": { + "type": "structure", + "members": { + "displayName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The user-friendly name for the Exascale storage vault.

" + } + }, + "status": { + "target": "com.amazonaws.odb#ResourceStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Exascale storage vault.

" + } + }, + "statusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Additional information about the status of the Exascale storage vault.

" + } + }, + "exascaleDbStorageVaultId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Exascale storage vault.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.odb#UpdateOdbNetwork": { "type": "operation", "input": { diff --git a/codegen/sdk/aws-models/quicksight.json b/codegen/sdk/aws-models/quicksight.json index faed51ef025..c72b5fcf5fc 100644 --- a/codegen/sdk/aws-models/quicksight.json +++ b/codegen/sdk/aws-models/quicksight.json @@ -2455,6 +2455,38 @@ } } }, + "com.amazonaws.quicksight#ApplicableTo": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.quicksight#ApplicableToType", + "traits": { + "smithy.api#documentation": "

The type of scoping that determines which principals the approval policy applies to. Valid values\n are defined as follows:

\n
    \n
  • \n

    \n GROUP: The policy applies only to principals in the groups specified by\n GroupArns. When you use GROUP, you must also provide a value for\n GroupArns.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "GroupArns": { + "target": "com.amazonaws.quicksight#GroupArnList", + "traits": { + "smithy.api#documentation": "

The list of group ARNs that the policy applies to. Required when type is GROUP.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The scoping configuration that determines which principals an approval policy applies to.

" + } + }, + "com.amazonaws.quicksight#ApplicableToType": { + "type": "enum", + "members": { + "GROUP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GROUP" + } + } + } + }, "com.amazonaws.quicksight#ApplicationArn": { "type": "string", "traits": { @@ -2491,6 +2523,100 @@ "smithy.api#documentation": "

The application theme.

" } }, + "com.amazonaws.quicksight#ApprovalGroupList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#Arn" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.quicksight#ApprovalPolicy": { + "type": "structure", + "members": { + "PolicyId": { + "target": "com.amazonaws.quicksight#PolicyId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the approval policy.

", + "smithy.api#required": {} + } + }, + "PolicyArn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the approval policy.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#PolicyName", + "traits": { + "smithy.api#documentation": "

The name of the approval policy.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.quicksight#PolicyDescription", + "traits": { + "smithy.api#documentation": "

A description of the approval policy.

" + } + }, + "Actions": { + "target": "com.amazonaws.quicksight#GovernedActionList", + "traits": { + "smithy.api#documentation": "

The list of governed actions that trigger the approval workflow.

", + "smithy.api#required": {} + } + }, + "AssetTypes": { + "target": "com.amazonaws.quicksight#AssetTypeList", + "traits": { + "smithy.api#documentation": "

The list of asset types that the approval policy applies to.

", + "smithy.api#required": {} + } + }, + "ApplicableTo": { + "target": "com.amazonaws.quicksight#ApplicableTo", + "traits": { + "smithy.api#documentation": "

The scoping configuration that determines who the approval policy applies to.

", + "smithy.api#required": {} + } + }, + "ApprovalGroups": { + "target": "com.amazonaws.quicksight#ApprovalGroupList", + "traits": { + "smithy.api#documentation": "

The list of group ARNs whose members can approve requests.

", + "smithy.api#required": {} + } + }, + "CreatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the approval policy was created.

", + "smithy.api#required": {} + } + }, + "UpdatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the approval policy was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A governance approval policy that specifies which principals and governed actions require\n approval, and which assets the policy applies to.

" + } + }, + "com.amazonaws.quicksight#ApprovalPolicyList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#ApprovalPolicy" + } + }, "com.amazonaws.quicksight#ArcAxisConfiguration": { "type": "structure", "members": { @@ -2686,6 +2812,12 @@ "traits": { "smithy.api#documentation": "

An optional list of structures that controls how Folder resources are\n parameterized in the returned CloudFormation template.

" } + }, + "TopicsV2": { + "target": "com.amazonaws.quicksight#AssetBundleExportJobTopicV2OverridePropertiesList", + "traits": { + "smithy.api#documentation": "

An optional list of structures that controls how Topic resources are\n parameterized in the returned CloudFormation template.

" + } } }, "traits": { @@ -3363,6 +3495,69 @@ } } }, + "com.amazonaws.quicksight#AssetBundleExportJobTopicV2OverrideProperties": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the specific Topic resource whose override properties are\n configured in this structure.

", + "smithy.api#required": {} + } + }, + "Properties": { + "target": "com.amazonaws.quicksight#AssetBundleExportJobTopicV2PropertyToOverrideList", + "traits": { + "smithy.api#documentation": "

A list of Topic resource properties to generate variables for in the\n returned CloudFormation template.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Controls how a specific Topic resource is parameterized in the returned\n CloudFormation template.

" + } + }, + "com.amazonaws.quicksight#AssetBundleExportJobTopicV2OverridePropertiesList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetBundleExportJobTopicV2OverrideProperties" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.quicksight#AssetBundleExportJobTopicV2PropertyToOverride": { + "type": "enum", + "members": { + "NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Name" + } + }, + "DESCRIPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Description" + } + } + } + }, + "com.amazonaws.quicksight#AssetBundleExportJobTopicV2PropertyToOverrideList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetBundleExportJobTopicV2PropertyToOverride" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.quicksight#AssetBundleExportJobVPCConnectionOverrideProperties": { "type": "structure", "members": { @@ -4161,6 +4356,12 @@ "traits": { "smithy.api#documentation": "

A list of overrides for any Folder resources that are present in the asset\n bundle that is imported.

" } + }, + "TopicsV2": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideParametersList", + "traits": { + "smithy.api#documentation": "

A list of overrides for any Topic resources that are present in the asset\n bundle that is imported.

" + } } }, "traits": { @@ -4205,6 +4406,12 @@ "traits": { "smithy.api#documentation": "

A list of permissions for the folders that you want to apply overrides to.

" } + }, + "TopicsV2": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverridePermissionsList", + "traits": { + "smithy.api#documentation": "

A list of permissions for the topics that you want to apply overrides to.

" + } } }, "traits": { @@ -4255,6 +4462,12 @@ "traits": { "smithy.api#documentation": "

A list of tag overrides for any Folder resources that are present in the\n asset bundle that is imported.

" } + }, + "TopicsV2": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideTagsList", + "traits": { + "smithy.api#documentation": "

A list of tag overrides for any Topic resources that are present in the\n asset bundle that is imported.

" + } } }, "traits": { @@ -4522,6 +4735,113 @@ } } }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideParameters": { + "type": "structure", + "members": { + "TopicId": { + "target": "com.amazonaws.quicksight#ResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the topic that you want to apply overrides to.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#ResourceName", + "traits": { + "smithy.api#documentation": "

A new name for the topic.

" + } + }, + "Description": { + "target": "com.amazonaws.quicksight#TopicDescription", + "traits": { + "smithy.api#documentation": "

A new description for the topic.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The override parameters for a single topic that is being imported.

" + } + }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideParametersList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideParameters" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverridePermissions": { + "type": "structure", + "members": { + "TopicIds": { + "target": "com.amazonaws.quicksight#AssetBundleRestrictiveResourceIdList", + "traits": { + "smithy.api#documentation": "

A list of topic IDs that you want to apply overrides to. You can use * to\n override all topics in this asset bundle.

", + "smithy.api#required": {} + } + }, + "Permissions": { + "target": "com.amazonaws.quicksight#AssetBundleResourcePermissions", + "traits": { + "smithy.api#documentation": "

A list of permissions for the topics that you want to apply overrides to.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a list of permissions to be applied to a list of topic\n IDs.

" + } + }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverridePermissionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverridePermissions" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2 + } + } + }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideTags": { + "type": "structure", + "members": { + "TopicIds": { + "target": "com.amazonaws.quicksight#AssetBundleRestrictiveResourceIdList", + "traits": { + "smithy.api#documentation": "

A list of topic IDs that you want to apply overrides to. You can use * to\n override all topics in this asset bundle.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.quicksight#TagList", + "traits": { + "smithy.api#documentation": "

A list of tags for the topics that you want to apply overrides to.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a list of tags to be assigned to a list of topic IDs.

" + } + }, + "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideTagsList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobTopicV2OverrideTags" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, "com.amazonaws.quicksight#AssetBundleImportJobVPCConnectionOverrideParameters": { "type": "structure", "members": { @@ -4801,6 +5121,40 @@ "smithy.api#documentation": "

An array of analysis level configurations.

" } }, + "com.amazonaws.quicksight#AssetType": { + "type": "enum", + "members": { + "AGENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AGENT" + } + }, + "SPACE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SPACE" + } + }, + "KNOWLEDGE_BASE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KNOWLEDGE_BASE" + } + } + } + }, + "com.amazonaws.quicksight#AssetTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#AssetType" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, "com.amazonaws.quicksight#AssignmentStatus": { "type": "enum", "members": { @@ -6494,6 +6848,145 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#BatchDescribeUserLimits": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimitsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimitsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes the effective resource limits for one or more Amazon Quick Sight users, including the limits that apply to each user based on their profile assignments.

", + "smithy.api#http": { + "method": "POST", + "uri": "/governance/limits/accounts/{accountId}/user-limits", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#BatchDescribeUserLimitsError": { + "type": "structure", + "members": { + "userName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the user that failed.

" + } + }, + "namespace": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The namespace of the user that failed.

" + } + }, + "userArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ARN of the user that failed.

" + } + }, + "errorCode": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The error code for the failure.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The error message for the failure.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a user whose limits could not be described in a batch operation.

" + } + }, + "com.amazonaws.quicksight#BatchDescribeUserLimitsErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimitsError" + } + }, + "com.amazonaws.quicksight#BatchDescribeUserLimitsRequest": { + "type": "structure", + "members": { + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the users.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "users": { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimitsRequestUsersList", + "traits": { + "smithy.api#documentation": "

A list of users to describe limits for. Each entry contains a user name and namespace.

" + } + }, + "resourceTypes": { + "target": "com.amazonaws.quicksight#ResourceTypeList", + "traits": { + "smithy.api#documentation": "

An optional filter that limits the results to specific resource types. If you don't specify a value, the operation returns limits for all resource types.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#BatchDescribeUserLimitsRequestUsersList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#UserLimitsEntry" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.quicksight#BatchDescribeUserLimitsResponse": { + "type": "structure", + "members": { + "userLimits": { + "target": "com.amazonaws.quicksight#UserLimitsList", + "traits": { + "smithy.api#documentation": "

A list of user limits results. Each entry contains the effective limits for a user.

", + "smithy.api#required": {} + } + }, + "errors": { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimitsErrorList", + "traits": { + "smithy.api#documentation": "

A list of errors for users whose limits could not be described.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#BigQueryParameters": { "type": "structure", "members": { @@ -12869,6 +13362,117 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#CreateApprovalPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#CreateApprovalPolicyRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#CreateApprovalPolicyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#LimitExceededException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an approval policy in Quick Sight.

", + "smithy.api#http": { + "method": "POST", + "uri": "/governance/approvalworkflows/policies", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#CreateApprovalPolicyRequest": { + "type": "structure", + "members": { + "PolicyId": { + "target": "com.amazonaws.quicksight#PolicyId", + "traits": { + "smithy.api#documentation": "

The unique identifier to assign to the approval policy. You cannot change this value after you create the policy.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#PolicyName", + "traits": { + "smithy.api#documentation": "

The name of the approval policy.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.quicksight#PolicyDescription", + "traits": { + "smithy.api#documentation": "

A description of the approval policy.

" + } + }, + "Actions": { + "target": "com.amazonaws.quicksight#GovernedActionList", + "traits": { + "smithy.api#documentation": "

The list of governed actions that trigger the approval workflow.

", + "smithy.api#required": {} + } + }, + "AssetTypes": { + "target": "com.amazonaws.quicksight#AssetTypeList", + "traits": { + "smithy.api#documentation": "

The list of asset types that the approval policy applies to.

", + "smithy.api#required": {} + } + }, + "ApplicableTo": { + "target": "com.amazonaws.quicksight#ApplicableTo", + "traits": { + "smithy.api#documentation": "

The scoping configuration that determines who the approval policy applies to.

", + "smithy.api#required": {} + } + }, + "ApprovalGroups": { + "target": "com.amazonaws.quicksight#ApprovalGroupList", + "traits": { + "smithy.api#documentation": "

The list of group ARNs whose members can approve requests.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#CreateApprovalPolicyResponse": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.quicksight#ApprovalPolicy", + "traits": { + "smithy.api#documentation": "

The approval policy that was created.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#CreateBrand": { "type": "operation", "input": { @@ -13707,13 +14311,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.quicksight#CreateFlow": { + "com.amazonaws.quicksight#CreateDlpSetting": { "type": "operation", "input": { - "target": "com.amazonaws.quicksight#CreateFlowRequest" + "target": "com.amazonaws.quicksight#CreateDlpSettingRequest" }, "output": { - "target": "com.amazonaws.quicksight#CreateFlowResponse" + "target": "com.amazonaws.quicksight#CreateDlpSettingResponse" }, "errors": [ { @@ -13726,7 +14330,7 @@ "target": "com.amazonaws.quicksight#InternalFailureException" }, { - "target": "com.amazonaws.quicksight#InvalidParameterValueException" + "target": "com.amazonaws.quicksight#InvalidRequestException" }, { "target": "com.amazonaws.quicksight#LimitExceededException" @@ -13734,64 +14338,78 @@ { "target": "com.amazonaws.quicksight#ResourceExistsException" }, - { - "target": "com.amazonaws.quicksight#ResourceNotFoundException" - }, { "target": "com.amazonaws.quicksight#ThrottlingException" } ], "traits": { - "smithy.api#documentation": "

Creates a new flow in the specified Amazon Web Services account. Creates both a DRAFT and PUBLISHED (auto-published) version.

\n

This operation is idempotent. Supply a ClientToken to safely retry without creating duplicate resources.

", + "smithy.api#documentation": "

Creates a data loss prevention (DLP) setting configuration for an Amazon Web Services account. A DLP setting defines the DLP provider, the enforcement behavior, and the Quick capabilities that the setting applies to.

", "smithy.api#http": { "method": "POST", - "uri": "/accounts/{AwsAccountId}/flows", + "uri": "/accounts/{AwsAccountId}/data-loss-prevention/settings/{DlpSettingId}", "code": 200 } } }, - "com.amazonaws.quicksight#CreateFlowRequest": { + "com.amazonaws.quicksight#CreateDlpSettingRequest": { "type": "structure", "members": { "AwsAccountId": { - "target": "com.amazonaws.quicksight#AccountId", + "target": "com.amazonaws.quicksight#AwsAccountId", "traits": { - "smithy.api#documentation": "

The ID of the Amazon Web Services account where you want to create the flow.

", + "smithy.api#documentation": "

The ID of the Amazon Web Services account in which to create the DLP setting.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

A unique identifier for the DLP setting.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "Name": { - "target": "com.amazonaws.quicksight#TitleInput", + "target": "com.amazonaws.quicksight#DlpSettingName", "traits": { - "smithy.api#documentation": "

The display name for the flow.

", + "smithy.api#documentation": "

A human-readable display name for the DLP setting.

", "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.quicksight#FlowDescriptionInput", + "ProviderType": { + "target": "com.amazonaws.quicksight#DlpProviderType", "traits": { - "smithy.api#documentation": "

The description for the flow.

" + "smithy.api#documentation": "

The type of external DLP provider to use for sensitivity label classification. Currently, the only supported value is MICROSOFT_PURVIEW.

", + "smithy.api#required": {} } }, - "FlowDefinition": { - "target": "com.amazonaws.quicksight#SensitiveDocument", + "ProviderConfig": { + "target": "com.amazonaws.quicksight#ProviderConfig", "traits": { - "smithy.api#documentation": "

The definition of the flow, specifying the steps and configurations. This is the flow definition in Quick Flow's internal format. The format is subject to change.

\n \n

Always derive or depend on the flow definition from the DescribeFlow operation to ensure you are working with the latest format.

\n
", + "smithy.api#documentation": "

The provider-specific configuration for the DLP integration. This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

", "smithy.api#required": {} } }, - "Permissions": { - "target": "com.amazonaws.quicksight#PermissionsList", + "ProviderOutageAction": { + "target": "com.amazonaws.quicksight#DlpAction", "traits": { - "smithy.api#documentation": "

Initial permissions for the flow. If omitted, the flow is created without any permissions.

" + "smithy.api#documentation": "

The behavior to apply when the DLP provider is unreachable. Valid values are ALLOW, WARN, and BLOCK.

", + "smithy.api#required": {} } }, - "ClientToken": { - "target": "com.amazonaws.quicksight#CreateFlowRequestClientTokenString", + "Enabled": { + "target": "com.amazonaws.quicksight#Boolean", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "smithy.api#idempotencyToken": {} + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether DLP enforcement is active for this setting. Set to true to enable enforcement, or false to disable it at time of setting creation.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.quicksight#TagList", + "traits": { + "smithy.api#documentation": "

A list of resource tags to apply to the DLP setting. You can use tags to manage access to your Amazon Web Services resources.

" } } }, @@ -13799,29 +14417,20 @@ "smithy.api#input": {} } }, - "com.amazonaws.quicksight#CreateFlowRequestClientTokenString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - } - } - }, - "com.amazonaws.quicksight#CreateFlowResponse": { + "com.amazonaws.quicksight#CreateDlpSettingResponse": { "type": "structure", "members": { "Arn": { - "target": "smithy.api#String", + "target": "com.amazonaws.quicksight#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the flow.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the created DLP setting.

", "smithy.api#required": {} } }, - "FlowId": { - "target": "com.amazonaws.quicksight#FlowId", + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", "traits": { - "smithy.api#documentation": "

The unique identifier of the flow.

", + "smithy.api#documentation": "

The ID of the created DLP setting.

", "smithy.api#required": {} } }, @@ -13830,27 +14439,156 @@ "traits": { "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" } - }, - "Status": { - "target": "com.amazonaws.quicksight#StatusCode", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The HTTP status of the request.

", - "smithy.api#httpResponseCode": {} - } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.quicksight#CreateFolder": { + "com.amazonaws.quicksight#CreateFlow": { "type": "operation", "input": { - "target": "com.amazonaws.quicksight#CreateFolderRequest" + "target": "com.amazonaws.quicksight#CreateFlowRequest" }, "output": { - "target": "com.amazonaws.quicksight#CreateFolderResponse" + "target": "com.amazonaws.quicksight#CreateFlowResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#LimitExceededException" + }, + { + "target": "com.amazonaws.quicksight#ResourceExistsException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a new flow in the specified Amazon Web Services account. Creates both a DRAFT and PUBLISHED (auto-published) version.

\n

This operation is idempotent. Supply a ClientToken to safely retry without creating duplicate resources.

", + "smithy.api#http": { + "method": "POST", + "uri": "/accounts/{AwsAccountId}/flows", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#CreateFlowRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account where you want to create the flow.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#TitleInput", + "traits": { + "smithy.api#documentation": "

The display name for the flow.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.quicksight#FlowDescriptionInput", + "traits": { + "smithy.api#documentation": "

The description for the flow.

" + } + }, + "FlowDefinition": { + "target": "com.amazonaws.quicksight#SensitiveDocument", + "traits": { + "smithy.api#documentation": "

The definition of the flow, specifying the steps and configurations. This is the flow definition in Quick Flow's internal format. The format is subject to change.

\n \n

Always derive or depend on the flow definition from the DescribeFlow operation to ensure you are working with the latest format.

\n
", + "smithy.api#required": {} + } + }, + "Permissions": { + "target": "com.amazonaws.quicksight#PermissionsList", + "traits": { + "smithy.api#documentation": "

Initial permissions for the flow. If omitted, the flow is created without any permissions.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.quicksight#CreateFlowRequestClientTokenString", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#CreateFlowRequestClientTokenString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.quicksight#CreateFlowResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the flow.

", + "smithy.api#required": {} + } + }, + "FlowId": { + "target": "com.amazonaws.quicksight#FlowId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the flow.

", + "smithy.api#required": {} + } + }, + "RequestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#httpResponseCode": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#CreateFolder": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#CreateFolderRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#CreateFolderResponse" }, "errors": [ { @@ -14740,6 +15478,131 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#CreateLimitsProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#CreateLimitsProfileRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#CreateLimitsProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#LimitExceededException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a limits profile that defines resource usage limits for Amazon Quick Sight users.

", + "smithy.api#http": { + "method": "POST", + "uri": "/governance/limits/accounts/{accountId}/profiles", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#CreateLimitsProfileRequest": { + "type": "structure", + "members": { + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profile.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "profileName": { + "target": "com.amazonaws.quicksight#ProfileName", + "traits": { + "smithy.api#documentation": "

A display name for the limits profile.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.quicksight#ProfileDescription", + "traits": { + "smithy.api#documentation": "

A description for the limits profile.

" + } + }, + "resourceLimits": { + "target": "com.amazonaws.quicksight#CreateLimitsProfileRequestResourceLimitsMap", + "traits": { + "smithy.api#documentation": "

A map of resource types to their limit values for this profile.

", + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.quicksight#CreateLimitsProfileRequestClientTokenString", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#CreateLimitsProfileRequestClientTokenString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.quicksight#CreateLimitsProfileRequestResourceLimitsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.quicksight#ResourceType" + }, + "value": { + "target": "com.amazonaws.quicksight#ProfileLimitValue" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.quicksight#CreateLimitsProfileResponse": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.quicksight#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the created limits profile.

", + "smithy.api#required": {} + } + }, + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the created limits profile.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#CreateNamespace": { "type": "operation", "input": { @@ -23109,26 +23972,23 @@ "smithy.api#output": {} } }, - "com.amazonaws.quicksight#DeleteBrand": { + "com.amazonaws.quicksight#DeleteApprovalPolicy": { "type": "operation", "input": { - "target": "com.amazonaws.quicksight#DeleteBrandRequest" + "target": "com.amazonaws.quicksight#DeleteApprovalPolicyRequest" }, "output": { - "target": "com.amazonaws.quicksight#DeleteBrandResponse" + "target": "com.amazonaws.quicksight#DeleteApprovalPolicyResponse" }, "errors": [ { "target": "com.amazonaws.quicksight#AccessDeniedException" }, { - "target": "com.amazonaws.quicksight#ConflictException" - }, - { - "target": "com.amazonaws.quicksight#InternalServerException" + "target": "com.amazonaws.quicksight#InternalFailureException" }, { - "target": "com.amazonaws.quicksight#InvalidRequestException" + "target": "com.amazonaws.quicksight#InvalidParameterValueException" }, { "target": "com.amazonaws.quicksight#ResourceNotFoundException" @@ -23138,22 +23998,83 @@ } ], "traits": { - "smithy.api#documentation": "\n

This API permanently deletes the specified Quick Sight brand. When you delete a brand:

\n
    \n
  • \n

    The brand and all its associated branding elements are permanently removed

    \n
  • \n
  • \n

    Any applications or dashboards using this brand will revert to default styling

    \n
  • \n
  • \n

    This action cannot be undone through the API

    \n
  • \n
\n

\n Before proceeding: Verify that the brand is no longer needed and consider the impact on any applications currently using this brand.

\n
\n

Deletes an Quick Sight brand.

", + "smithy.api#documentation": "

Deletes an approval policy in Quick Sight.

", "smithy.api#http": { "method": "DELETE", - "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "uri": "/governance/approvalworkflows/policies/{PolicyId}", "code": 200 }, "smithy.api#idempotent": {} } }, - "com.amazonaws.quicksight#DeleteBrandAssignment": { + "com.amazonaws.quicksight#DeleteApprovalPolicyRequest": { + "type": "structure", + "members": { + "PolicyId": { + "target": "com.amazonaws.quicksight#PolicyId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the approval policy to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteApprovalPolicyResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DeleteBrand": { "type": "operation", "input": { - "target": "com.amazonaws.quicksight#DeleteBrandAssignmentRequest" + "target": "com.amazonaws.quicksight#DeleteBrandRequest" }, "output": { - "target": "com.amazonaws.quicksight#DeleteBrandAssignmentResponse" + "target": "com.amazonaws.quicksight#DeleteBrandResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "\n

This API permanently deletes the specified Quick Sight brand. When you delete a brand:

\n
    \n
  • \n

    The brand and all its associated branding elements are permanently removed

    \n
  • \n
  • \n

    Any applications or dashboards using this brand will revert to default styling

    \n
  • \n
  • \n

    This action cannot be undone through the API

    \n
  • \n
\n

\n Before proceeding: Verify that the brand is no longer needed and consider the impact on any applications currently using this brand.

\n
\n

Deletes an Quick Sight brand.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandAssignment": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteBrandAssignmentRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteBrandAssignmentResponse" }, "errors": [ { @@ -23801,6 +24722,93 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DeleteDlpSetting": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteDlpSettingRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteDlpSettingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a DLP setting configuration from an Amazon Web Services account.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/data-loss-prevention/settings/{DlpSettingId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#DeleteDlpSettingRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the DLP setting that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the DLP setting that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteDlpSettingResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the deleted DLP setting.

", + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the deleted DLP setting.

", + "smithy.api#required": {} + } + }, + "RequestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DeleteFlow": { "type": "operation", "input": { @@ -24566,6 +25574,83 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DeleteLimitsProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteLimitsProfileRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteLimitsProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a limits profile.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/governance/limits/accounts/{accountId}/profiles/{profileId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#DeleteLimitsProfileRequest": { + "type": "structure", + "members": { + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the limits profile to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profile.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteLimitsProfileResponse": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.quicksight#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the deleted limits profile.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DeleteNamespace": { "type": "operation", "input": { @@ -27298,6 +28383,72 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DescribeApprovalPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeApprovalPolicyRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeApprovalPolicyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes an approval policy in Quick Sight.

", + "smithy.api#http": { + "method": "GET", + "uri": "/governance/approvalworkflows/policies/{PolicyId}", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#DescribeApprovalPolicyRequest": { + "type": "structure", + "members": { + "PolicyId": { + "target": "com.amazonaws.quicksight#PolicyId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the approval policy to describe.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeApprovalPolicyResponse": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.quicksight#ApprovalPolicy", + "traits": { + "smithy.api#documentation": "

The approval policy.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DescribeAssetBundleExportJob": { "type": "operation", "input": { @@ -29382,6 +30533,86 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DescribeDlpSetting": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeDlpSettingRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeDlpSettingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes the full configuration of a DLP setting in an Amazon Web Services account.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/data-loss-prevention/settings/{DlpSettingId}", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#DescribeDlpSettingRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the DLP setting that you want to describe.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the DLP setting that you want to describe.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeDlpSettingResponse": { + "type": "structure", + "members": { + "DlpSetting": { + "target": "com.amazonaws.quicksight#DlpSettingDetails", + "traits": { + "smithy.api#documentation": "

The full configuration of the requested DLP setting, returned as a DlpSettingDetails object.

", + "smithy.api#required": {} + } + }, + "RequestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DescribeFlow": { "type": "operation", "input": { @@ -30643,6 +31874,80 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DescribeLimitsProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeLimitsProfileRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeLimitsProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes the properties of an existing limits profile.

", + "smithy.api#http": { + "method": "GET", + "uri": "/governance/limits/accounts/{accountId}/profiles/{profileId}", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#DescribeLimitsProfileRequest": { + "type": "structure", + "members": { + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the limits profile.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profile.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeLimitsProfileResponse": { + "type": "structure", + "members": { + "profile": { + "target": "com.amazonaws.quicksight#LimitsProfile", + "traits": { + "smithy.api#documentation": "

The details of the requested limits profile, including its name, description, resource limits, and metadata.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DescribeNamespace": { "type": "operation", "input": { @@ -33319,6 +34624,217 @@ "smithy.api#documentation": "

A structure that represents additional options for display formatting.

" } }, + "com.amazonaws.quicksight#DlpAction": { + "type": "enum", + "members": { + "ALLOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALLOW" + } + }, + "WARN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WARN" + } + }, + "BLOCK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BLOCK" + } + } + } + }, + "com.amazonaws.quicksight#DlpProviderType": { + "type": "enum", + "members": { + "MICROSOFT_PURVIEW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MICROSOFT_PURVIEW" + } + } + } + }, + "com.amazonaws.quicksight#DlpSettingDetails": { + "type": "structure", + "members": { + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#DlpSettingName", + "traits": { + "smithy.api#documentation": "

The display name of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.quicksight#DlpSettingStatus", + "traits": { + "smithy.api#documentation": "

The status of the DLP setting. Valid values are ACTIVE and INACTIVE.

", + "smithy.api#required": {} + } + }, + "ProviderType": { + "target": "com.amazonaws.quicksight#DlpProviderType", + "traits": { + "smithy.api#documentation": "

The type of external DLP provider used for sensitivity label classification.

", + "smithy.api#required": {} + } + }, + "ProviderConfig": { + "target": "com.amazonaws.quicksight#ProviderConfig", + "traits": { + "smithy.api#documentation": "

The provider-specific configuration for the DLP integration.

", + "smithy.api#required": {} + } + }, + "ProviderOutageAction": { + "target": "com.amazonaws.quicksight#DlpAction", + "traits": { + "smithy.api#documentation": "

The behavior applied when the DLP provider is unreachable. Valid values are ALLOW, WARN, and BLOCK.

", + "smithy.api#required": {} + } + }, + "CreatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the DLP setting was created, in ISO 8601 format.

", + "smithy.api#required": {} + } + }, + "UpdatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the DLP setting was most recently updated, in ISO 8601 format.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The full configuration details of a DLP setting.

" + } + }, + "com.amazonaws.quicksight#DlpSettingId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-_]+$" + } + }, + "com.amazonaws.quicksight#DlpSettingName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[A-Za-z0-9](?:[\\w- &]*[A-Za-z0-9])?$" + } + }, + "com.amazonaws.quicksight#DlpSettingStatus": { + "type": "enum", + "members": { + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "INACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INACTIVE" + } + } + } + }, + "com.amazonaws.quicksight#DlpSettingSummary": { + "type": "structure", + "members": { + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#DlpSettingName", + "traits": { + "smithy.api#documentation": "

The display name of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DLP setting.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.quicksight#DlpSettingStatus", + "traits": { + "smithy.api#documentation": "

The status of the DLP setting. Valid values are ACTIVE and INACTIVE.

", + "smithy.api#required": {} + } + }, + "ProviderType": { + "target": "com.amazonaws.quicksight#DlpProviderType", + "traits": { + "smithy.api#documentation": "

The type of external DLP provider used for sensitivity label classification.

", + "smithy.api#required": {} + } + }, + "CreatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the DLP setting was created, in ISO 8601 format.

", + "smithy.api#required": {} + } + }, + "UpdatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the DLP setting was most recently updated, in ISO 8601 format.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a DLP setting returned by list operations.

" + } + }, + "com.amazonaws.quicksight#DlpSettingSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#DlpSettingSummary" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, "com.amazonaws.quicksight#DnsResolverList": { "type": "list", "member": { @@ -33513,6 +35029,63 @@ } } }, + "com.amazonaws.quicksight#EffectiveLimit": { + "type": "structure", + "members": { + "resourceType": { + "target": "com.amazonaws.quicksight#ResourceType", + "traits": { + "smithy.api#documentation": "

The type of resource that the limit applies to.

", + "smithy.api#required": {} + } + }, + "limitValue": { + "target": "com.amazonaws.quicksight#EffectiveLimitLimitValueLong", + "traits": { + "smithy.api#documentation": "

The maximum allowed value for the resource.

", + "smithy.api#required": {} + } + }, + "limitUnit": { + "target": "com.amazonaws.quicksight#LimitUnit", + "traits": { + "smithy.api#documentation": "

The unit of measurement for the limit.

", + "smithy.api#required": {} + } + }, + "source": { + "target": "com.amazonaws.quicksight#LimitSource", + "traits": { + "smithy.api#documentation": "

The source from which this limit was inherited. Possible values:

\n
    \n
  • \n

    \n DIRECT_USER – The limit comes from a profile directly assigned to the user.

    \n
  • \n
  • \n

    \n GROUP – The limit comes from a profile assigned to a group the user belongs to.

    \n
  • \n
  • \n

    \n ROLE – The limit comes from a profile assigned to a role the user has.

    \n
  • \n
  • \n

    \n ACCOUNT – The limit comes from the account-level default profile.

    \n
  • \n
  • \n

    \n SYSTEM_DEFAULT – The limit comes from the built-in system default.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The identifier of the limits profile that defines this limit.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The effective limit for a resource type that applies to a user, considering all applicable profile assignments and inheritance rules.

" + } + }, + "com.amazonaws.quicksight#EffectiveLimitLimitValueLong": { + "type": "long", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.quicksight#EffectiveLimitList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#EffectiveLimit" + } + }, "com.amazonaws.quicksight#ElementValue": { "type": "string", "traits": { @@ -39691,6 +41264,29 @@ } } }, + "com.amazonaws.quicksight#GovernedAction": { + "type": "enum", + "members": { + "SHARE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHARE" + } + } + } + }, + "com.amazonaws.quicksight#GovernedActionList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#GovernedAction" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.quicksight#GradientColor": { "type": "structure", "members": { @@ -40006,6 +41602,17 @@ "smithy.api#documentation": "

A group in Quick Sight consists of a set of users. You can\n use groups to make it easier to manage access and security.

" } }, + "com.amazonaws.quicksight#GroupArnList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#Arn" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, "com.amazonaws.quicksight#GroupByColumnNameList": { "type": "list", "member": { @@ -43386,12 +44993,12 @@ "template": { "target": "com.amazonaws.quicksight#KbTemplate", "traits": { - "smithy.api#documentation": "

The template document that defines the knowledge base behavior.

" + "smithy.api#documentation": "

The connector configuration for the knowledge base data source. The structure depends on the connector type of the data source referenced by DataSourceArn.

\n

The template must be a JSON object. The required fields vary by connector type:

\n
    \n
  • \n

    \n Amazon S3 (S3V2) – Requires connectionConfiguration with bucketName. Supports filterConfiguration for inclusion and exclusion prefixes and patterns. Supports accessControlConfiguration and deletionProtectionConfiguration.

    \n
  • \n
  • \n

    \n Google Drive (GOOGLEDRIVEV3) – Requires connectionConfiguration with authType set to SERVICE_ACCOUNT. Supports dataEntityConfiguration with crawlMyDrive, crawlSharedWithMe, and crawlSharedDrives.

    \n
  • \n
  • \n

    \n OneDrive (ONEDRIVEV3) – Requires authType at the template root level set to TWO_LEGGED_OAUTH. Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with crawlPersonalDrives and crawlSharedWithMe.

    \n
  • \n
  • \n

    \n SharePoint (SHAREPOINTV3) – Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with siteUrls, crawlFiles, and crawlPages.

    \n
  • \n
  • \n

    \n Web Crawler (WEBCRAWLERV3) – Requires connectionConfiguration with seedUrls or siteMapUrls (mutually exclusive) and authType. Supports crawlConfiguration for crawl depth, rate limits, and scope. Supports filterConfiguration for file size limits and URL patterns. Valid values for authType: NO_AUTH, BASIC_AUTH, FORM, SAML.

    \n
  • \n
\n

The optional deletionProtectionConfiguration object is supported by all connector types. It contains enableDeletionProtection and deletionProtectionThreshold.

" } } }, "traits": { - "smithy.api#documentation": "

The template configuration for a knowledge base.

" + "smithy.api#documentation": "

The template configuration for a knowledge base. This object contains connector-specific configuration that defines how data is crawled and indexed.

" } }, "com.amazonaws.quicksight#KeyPairCredentials": { @@ -43581,7 +45188,7 @@ "templateConfiguration": { "target": "com.amazonaws.quicksight#KbTemplateConfiguration", "traits": { - "smithy.api#documentation": "

The template configuration for the knowledge base.

" + "smithy.api#documentation": "

The template configuration that defines how the data source connector crawls and indexes data for the knowledge base. The template structure varies by connector type. See KbTemplateConfiguration for connector-specific details.

" } } }, @@ -43912,6 +45519,65 @@ "smithy.api#documentation": "

A summary of a knowledge base, including its identifier, name, status, and metadata.

" } }, + "com.amazonaws.quicksight#LabelActionMapping": { + "type": "structure", + "members": { + "LabelId": { + "target": "com.amazonaws.quicksight#LabelId", + "traits": { + "smithy.api#documentation": "

The identifier of the sensitivity label from the DLP provider.

", + "smithy.api#required": {} + } + }, + "LabelName": { + "target": "com.amazonaws.quicksight#LabelName", + "traits": { + "smithy.api#documentation": "

The display name of the sensitivity label from the DLP provider.

", + "smithy.api#required": {} + } + }, + "Action": { + "target": "com.amazonaws.quicksight#DlpAction", + "traits": { + "smithy.api#documentation": "

The enforcement action to apply when content with this sensitivity label is detected. Valid values are ALLOW, BLOCK, and WARN.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Maps a sensitivity label from Microsoft Purview to an enforcement action.

" + } + }, + "com.amazonaws.quicksight#LabelActionMappingList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#LabelActionMapping" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.quicksight#LabelId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, + "com.amazonaws.quicksight#LabelName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, "com.amazonaws.quicksight#LabelOptions": { "type": "structure", "members": { @@ -44295,6 +45961,76 @@ "smithy.api#httpError": 409 } }, + "com.amazonaws.quicksight#LimitSource": { + "type": "enum", + "members": { + "DIRECT_USER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DIRECT_USER" + } + }, + "GROUP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GROUP" + } + }, + "ROLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLE" + } + }, + "ACCOUNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCOUNT" + } + }, + "SYSTEM_DEFAULT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SYSTEM_DEFAULT" + } + } + }, + "traits": { + "smithy.api#documentation": "

The source from which an effective limit was inherited.

" + } + }, + "com.amazonaws.quicksight#LimitUnit": { + "type": "enum", + "members": { + "MB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MB" + } + }, + "GB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GB" + } + }, + "HOURS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HOURS" + } + }, + "DAYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DAYS" + } + } + }, + "traits": { + "smithy.api#documentation": "

The unit of measurement for a resource limit value.

" + } + }, "com.amazonaws.quicksight#LimitedSensitiveString": { "type": "string", "traits": { @@ -44314,6 +46050,75 @@ } } }, + "com.amazonaws.quicksight#LimitsProfile": { + "type": "structure", + "members": { + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the limits profile.

", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.quicksight#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the limits profile.

", + "smithy.api#required": {} + } + }, + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profile.

", + "smithy.api#required": {} + } + }, + "profileName": { + "target": "com.amazonaws.quicksight#ProfileName", + "traits": { + "smithy.api#documentation": "

The display name of the limits profile.

", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.quicksight#ProfileDescription", + "traits": { + "smithy.api#documentation": "

The description of the limits profile.

" + } + }, + "resourceLimits": { + "target": "com.amazonaws.quicksight#ResourceLimitsMap", + "traits": { + "smithy.api#documentation": "

A map of resource types to their limit values.

", + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the limits profile was created.

", + "smithy.api#required": {} + } + }, + "updatedAt": { + "target": "com.amazonaws.quicksight#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the limits profile was last updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A limits profile that defines resource usage limits for Amazon Quick Sight users. Limits profiles can be assigned to users, groups, or roles to control resource consumption.

" + } + }, + "com.amazonaws.quicksight#LimitsProfileList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#LimitsProfile" + } + }, "com.amazonaws.quicksight#LineChartAggregatedFieldWells": { "type": "structure", "members": { @@ -45198,6 +47003,90 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#ListApprovalPolicies": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#ListApprovalPoliciesRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#ListApprovalPoliciesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists all approval policies in the specified Quick Sight account. The results are paginated. If the\n response includes a NextToken value, pass it in a subsequent call to retrieve the next\n set of results.

", + "smithy.api#http": { + "method": "GET", + "uri": "/governance/approvalworkflows/policies", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Policies", + "pageSize": "MaxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#ListApprovalPoliciesRequest": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.quicksight#PaginationToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", + "smithy.api#httpQuery": "next-token" + } + }, + "MaxResults": { + "target": "com.amazonaws.quicksight#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If you don't specify a value, the\n service returns a default number of results. Use the NextToken value in the response\n to retrieve additional results.

", + "smithy.api#httpQuery": "max-results" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#ListApprovalPoliciesResponse": { + "type": "structure", + "members": { + "Policies": { + "target": "com.amazonaws.quicksight#ApprovalPolicyList", + "traits": { + "smithy.api#documentation": "

The list of approval policies.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#PaginationToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#ListAssetBundleExportJobs": { "type": "operation", "input": { @@ -46088,6 +47977,101 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#ListDlpSettings": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#ListDlpSettingsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#ListDlpSettingsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists all DLP settings in an Amazon Web Services account.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/data-loss-prevention/settings", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "DlpSettingSummaries", + "pageSize": "MaxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#ListDlpSettingsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the DLP settings that you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#PaginationToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", + "smithy.api#httpQuery": "next-token" + } + }, + "MaxResults": { + "target": "com.amazonaws.quicksight#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return per request.

", + "smithy.api#httpQuery": "max-results" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#ListDlpSettingsResponse": { + "type": "structure", + "members": { + "DlpSettingSummaries": { + "target": "com.amazonaws.quicksight#DlpSettingSummaryList", + "traits": { + "smithy.api#documentation": "

A list of DlpSettingSummary objects for the DLP settings in the account. The list is empty if no DLP settings have been configured.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#PaginationToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" + } + }, + "RequestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#ListFlows": { "type": "operation", "input": { @@ -47370,6 +49354,111 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#ListLimitsProfiles": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#ListLimitsProfilesRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#ListLimitsProfilesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists all limits profiles in an Amazon Quick Sight account. Results are paginated. Use the maxResults parameter to limit the number of results returned in a single call, and use the nextToken parameter to retrieve the next page of results.

", + "smithy.api#http": { + "method": "GET", + "uri": "/governance/limits/accounts/{accountId}/profiles", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "profiles", + "pageSize": "maxResults" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.quicksight#ListLimitsProfilesRequest": { + "type": "structure", + "members": { + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profiles.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "resourceType": { + "target": "com.amazonaws.quicksight#ResourceType", + "traits": { + "smithy.api#documentation": "

An optional filter that limits the results to profiles that contain the specified resource type. If you don't specify a value, the operation returns all profiles.

", + "smithy.api#httpQuery": "resourceType" + } + }, + "maxResults": { + "target": "com.amazonaws.quicksight#ListLimitsProfilesRequestMaxResultsInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. If you don't specify a value, the service uses the default maximum.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#ListLimitsProfilesRequestMaxResultsInteger": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.quicksight#ListLimitsProfilesResponse": { + "type": "structure", + "members": { + "profiles": { + "target": "com.amazonaws.quicksight#LimitsProfileList", + "traits": { + "smithy.api#documentation": "

A list of limits profiles.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#ListNamespaces": { "type": "operation", "input": { @@ -50476,6 +52565,50 @@ "smithy.api#documentation": "

The metric comparison computation configuration.

" } }, + "com.amazonaws.quicksight#MicrosoftPurviewCredentials": { + "type": "structure", + "members": { + "SecretArn": { + "target": "com.amazonaws.quicksight#SecretManagerArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Amazon Web Services Secrets Manager secret that contains the Microsoft Purview OAuth credentials. The secret includes the Azure tenant ID, client ID, and client secret or certificate.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The credentials for Microsoft Purview DLP integration. The credentials are stored in Amazon Web Services Secrets Manager and referenced by ARN.

" + } + }, + "com.amazonaws.quicksight#MicrosoftPurviewProviderConfig": { + "type": "structure", + "members": { + "Credentials": { + "target": "com.amazonaws.quicksight#MicrosoftPurviewCredentials", + "traits": { + "smithy.api#documentation": "

The credentials used to authenticate with Microsoft Purview.

", + "smithy.api#required": {} + } + }, + "LabelActionMappings": { + "target": "com.amazonaws.quicksight#LabelActionMappingList", + "traits": { + "smithy.api#documentation": "

The mappings from Microsoft Purview sensitivity labels to enforcement actions.

", + "smithy.api#required": {} + } + }, + "UnmappedAction": { + "target": "com.amazonaws.quicksight#DlpAction", + "traits": { + "smithy.api#documentation": "

The default action to apply to content that has no sensitivity label or whose label is not mapped. Valid values are ALLOW, BLOCK, and WARN.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The full configuration for Microsoft Purview DLP integration, including the provider credentials and the label-action mappings that define the enforcement policy.

" + } + }, "com.amazonaws.quicksight#MinimumLabelType": { "type": "structure", "members": { @@ -52524,6 +54657,15 @@ "smithy.api#documentation": "

The pagination configuration for a table visual or boxplot.

" } }, + "com.amazonaws.quicksight#PaginationToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 4096 + } + } + }, "com.amazonaws.quicksight#Palette": { "type": "structure", "members": { @@ -55044,6 +57186,34 @@ "smithy.api#documentation": "

The table query sorting options for the plugin visual.

" } }, + "com.amazonaws.quicksight#PolicyDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.quicksight#PolicyId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-_]+$" + } + }, + "com.amazonaws.quicksight#PolicyName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, "com.amazonaws.quicksight#Port": { "type": "integer", "traits": { @@ -55376,6 +57546,64 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.quicksight#ProfileDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.quicksight#ProfileId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^lp-[a-f0-9-]+$" + } + }, + "com.amazonaws.quicksight#ProfileLimitValue": { + "type": "structure", + "members": { + "maxValue": { + "target": "com.amazonaws.quicksight#ProfileLimitValueMaxValueLong", + "traits": { + "smithy.api#documentation": "

The maximum allowed value for the resource.

", + "smithy.api#required": {} + } + }, + "unit": { + "target": "com.amazonaws.quicksight#LimitUnit", + "traits": { + "smithy.api#documentation": "

The unit of measurement for the limit value.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A value that defines a resource usage limit, consisting of a maximum value and a unit of measurement.

" + } + }, + "com.amazonaws.quicksight#ProfileLimitValueMaxValueLong": { + "type": "long", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.quicksight#ProfileName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, "com.amazonaws.quicksight#ProgressBarOptions": { "type": "structure", "members": { @@ -55478,6 +57706,20 @@ } } }, + "com.amazonaws.quicksight#ProviderConfig": { + "type": "union", + "members": { + "MicrosoftPurview": { + "target": "com.amazonaws.quicksight#MicrosoftPurviewProviderConfig", + "traits": { + "smithy.api#documentation": "

The configuration for a Microsoft Purview DLP integration.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The provider-specific configuration for a DLP integration. This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

" + } + }, "com.amazonaws.quicksight#PublicSpaceArn": { "type": "string", "traits": { @@ -55879,6 +58121,9 @@ { "target": "com.amazonaws.quicksight#BatchDeleteTopicReviewedAnswer" }, + { + "target": "com.amazonaws.quicksight#BatchDescribeUserLimits" + }, { "target": "com.amazonaws.quicksight#CancelIngestion" }, @@ -55897,6 +58142,9 @@ { "target": "com.amazonaws.quicksight#CreateAnalysis" }, + { + "target": "com.amazonaws.quicksight#CreateApprovalPolicy" + }, { "target": "com.amazonaws.quicksight#CreateBrand" }, @@ -55912,6 +58160,9 @@ { "target": "com.amazonaws.quicksight#CreateDataSource" }, + { + "target": "com.amazonaws.quicksight#CreateDlpSetting" + }, { "target": "com.amazonaws.quicksight#CreateFlow" }, @@ -55936,6 +58187,9 @@ { "target": "com.amazonaws.quicksight#CreateKnowledgeBase" }, + { + "target": "com.amazonaws.quicksight#CreateLimitsProfile" + }, { "target": "com.amazonaws.quicksight#CreateNamespace" }, @@ -55993,6 +58247,9 @@ { "target": "com.amazonaws.quicksight#DeleteAnalysis" }, + { + "target": "com.amazonaws.quicksight#DeleteApprovalPolicy" + }, { "target": "com.amazonaws.quicksight#DeleteBrand" }, @@ -56017,6 +58274,9 @@ { "target": "com.amazonaws.quicksight#DeleteDefaultQBusinessApplication" }, + { + "target": "com.amazonaws.quicksight#DeleteDlpSetting" + }, { "target": "com.amazonaws.quicksight#DeleteFlow" }, @@ -56041,6 +58301,9 @@ { "target": "com.amazonaws.quicksight#DeleteKnowledgeBase" }, + { + "target": "com.amazonaws.quicksight#DeleteLimitsProfile" + }, { "target": "com.amazonaws.quicksight#DeleteNamespace" }, @@ -56125,6 +58388,9 @@ { "target": "com.amazonaws.quicksight#DescribeAnalysisPermissions" }, + { + "target": "com.amazonaws.quicksight#DescribeApprovalPolicy" + }, { "target": "com.amazonaws.quicksight#DescribeAssetBundleExportJob" }, @@ -56182,6 +58448,9 @@ { "target": "com.amazonaws.quicksight#DescribeDefaultQBusinessApplication" }, + { + "target": "com.amazonaws.quicksight#DescribeDlpSetting" + }, { "target": "com.amazonaws.quicksight#DescribeFlow" }, @@ -56218,6 +58487,9 @@ { "target": "com.amazonaws.quicksight#DescribeKnowledgeBasePermissions" }, + { + "target": "com.amazonaws.quicksight#DescribeLimitsProfile" + }, { "target": "com.amazonaws.quicksight#DescribeNamespace" }, @@ -56323,6 +58595,9 @@ { "target": "com.amazonaws.quicksight#ListAnalyses" }, + { + "target": "com.amazonaws.quicksight#ListApprovalPolicies" + }, { "target": "com.amazonaws.quicksight#ListAssetBundleExportJobs" }, @@ -56347,6 +58622,9 @@ { "target": "com.amazonaws.quicksight#ListDataSources" }, + { + "target": "com.amazonaws.quicksight#ListDlpSettings" + }, { "target": "com.amazonaws.quicksight#ListFlows" }, @@ -56380,6 +58658,9 @@ { "target": "com.amazonaws.quicksight#ListKnowledgeBases" }, + { + "target": "com.amazonaws.quicksight#ListLimitsProfiles" + }, { "target": "com.amazonaws.quicksight#ListNamespaces" }, @@ -56548,6 +58829,9 @@ { "target": "com.amazonaws.quicksight#UpdateApplicationWithTokenExchangeGrant" }, + { + "target": "com.amazonaws.quicksight#UpdateApprovalPolicy" + }, { "target": "com.amazonaws.quicksight#UpdateBrand" }, @@ -56590,6 +58874,9 @@ { "target": "com.amazonaws.quicksight#UpdateDefaultQBusinessApplication" }, + { + "target": "com.amazonaws.quicksight#UpdateDlpSetting" + }, { "target": "com.amazonaws.quicksight#UpdateFlow" }, @@ -56623,6 +58910,9 @@ { "target": "com.amazonaws.quicksight#UpdateKnowledgeBasePermissions" }, + { + "target": "com.amazonaws.quicksight#UpdateLimitsProfile" + }, { "target": "com.amazonaws.quicksight#UpdateOAuthClientApplication" }, @@ -59804,6 +62094,15 @@ "com.amazonaws.quicksight#ResourceId": { "type": "string" }, + "com.amazonaws.quicksight#ResourceLimitsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.quicksight#ResourceType" + }, + "value": { + "target": "com.amazonaws.quicksight#ProfileLimitValue" + } + }, "com.amazonaws.quicksight#ResourceName": { "type": "string", "traits": { @@ -59919,6 +62218,32 @@ } } }, + "com.amazonaws.quicksight#ResourceType": { + "type": "enum", + "members": { + "INDEX_STORAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INDEX_STORAGE" + } + }, + "AGENT_HOURS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AGENT_HOURS" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of resource that a limit applies to.

" + } + }, + "com.amazonaws.quicksight#ResourceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#ResourceType" + } + }, "com.amazonaws.quicksight#ResourceUnavailableException": { "type": "structure", "members": { @@ -62686,6 +65011,16 @@ "smithy.api#pattern": "^arn:[-a-z0-9]*:secretsmanager:[-a-z0-9]*:[0-9]{12}:secret:.+$" } }, + "com.amazonaws.quicksight#SecretManagerArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[\\w]+)*:secretsmanager:[a-z0-9\\-]+:\\d{12}:secret:.+$" + } + }, "com.amazonaws.quicksight#SectionAfterPageBreak": { "type": "structure", "members": { @@ -70934,6 +73269,16 @@ "smithy.api#documentation": "

A filter used to restrict data based on a range of dates or times.

" } }, + "com.amazonaws.quicksight#TopicDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "\\S" + } + }, "com.amazonaws.quicksight#TopicDetails": { "type": "structure", "members": { @@ -75067,6 +77412,110 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#UpdateApprovalPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateApprovalPolicyRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateApprovalPolicyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates an approval policy in Quick Sight.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/governance/approvalworkflows/policies/{PolicyId}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#UpdateApprovalPolicyRequest": { + "type": "structure", + "members": { + "PolicyId": { + "target": "com.amazonaws.quicksight#PolicyId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the approval policy to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#PolicyName", + "traits": { + "smithy.api#documentation": "

The name of the approval policy.

" + } + }, + "Description": { + "target": "com.amazonaws.quicksight#PolicyDescription", + "traits": { + "smithy.api#documentation": "

A description of the approval policy.

" + } + }, + "Actions": { + "target": "com.amazonaws.quicksight#GovernedActionList", + "traits": { + "smithy.api#documentation": "

The list of governed actions that trigger the approval workflow.

" + } + }, + "AssetTypes": { + "target": "com.amazonaws.quicksight#AssetTypeList", + "traits": { + "smithy.api#documentation": "

The list of asset types that the approval policy applies to.

" + } + }, + "ApplicableTo": { + "target": "com.amazonaws.quicksight#ApplicableTo", + "traits": { + "smithy.api#documentation": "

The scoping configuration that determines who the approval policy applies to.

" + } + }, + "ApprovalGroups": { + "target": "com.amazonaws.quicksight#ApprovalGroupList", + "traits": { + "smithy.api#documentation": "

The list of group ARNs whose members can approve requests.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateApprovalPolicyResponse": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.quicksight#ApprovalPolicy", + "traits": { + "smithy.api#documentation": "

The updated approval policy.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#UpdateBrand": { "type": "operation", "input": { @@ -76675,6 +79124,127 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#UpdateDlpSetting": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateDlpSettingRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateDlpSettingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates an existing DLP setting configuration in an Amazon Web Services account. Fields that are omitted from the request retain their current values.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/data-loss-prevention/settings/{DlpSettingId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#UpdateDlpSettingRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the DLP setting that you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the DLP setting that you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.quicksight#DlpSettingName", + "traits": { + "smithy.api#documentation": "

An updated display name for the DLP setting.

" + } + }, + "ProviderType": { + "target": "com.amazonaws.quicksight#DlpProviderType", + "traits": { + "smithy.api#documentation": "

An updated DLP provider type. Currently, the only supported value is MICROSOFT_PURVIEW.

" + } + }, + "ProviderConfig": { + "target": "com.amazonaws.quicksight#ProviderConfig", + "traits": { + "smithy.api#documentation": "

An updated provider-specific configuration for the DLP integration. This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

" + } + }, + "ProviderOutageAction": { + "target": "com.amazonaws.quicksight#DlpAction", + "traits": { + "smithy.api#documentation": "

An updated behavior to apply when the DLP provider is unreachable. Valid values are ALLOW, WARN, and BLOCK.

" + } + }, + "Enabled": { + "target": "com.amazonaws.quicksight#Boolean", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Specifies whether DLP enforcement is active for this setting. Set to true to enable enforcement, or false to disable it.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateDlpSettingResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the updated DLP setting.

", + "smithy.api#required": {} + } + }, + "DlpSettingId": { + "target": "com.amazonaws.quicksight#DlpSettingId", + "traits": { + "smithy.api#documentation": "

The ID of the updated DLP setting.

", + "smithy.api#required": {} + } + }, + "RequestId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#UpdateFlow": { "type": "operation", "input": { @@ -77951,6 +80521,100 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#UpdateLimitsProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateLimitsProfileRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateLimitsProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the properties of an existing limits profile.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/governance/limits/accounts/{accountId}/profiles/{profileId}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#UpdateLimitsProfileRequest": { + "type": "structure", + "members": { + "profileId": { + "target": "com.amazonaws.quicksight#ProfileId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the limits profile to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "accountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the limits profile.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "profileName": { + "target": "com.amazonaws.quicksight#ProfileName", + "traits": { + "smithy.api#documentation": "

A new display name for the limits profile.

" + } + }, + "description": { + "target": "com.amazonaws.quicksight#ProfileDescription", + "traits": { + "smithy.api#documentation": "

A new description for the limits profile.

" + } + }, + "resourceLimits": { + "target": "com.amazonaws.quicksight#ResourceLimitsMap", + "traits": { + "smithy.api#documentation": "

A map of resource types to their updated limit values.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateLimitsProfileResponse": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.quicksight#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the updated limits profile.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#UpdateLinkPermissionList": { "type": "list", "member": { @@ -81216,6 +83880,63 @@ "smithy.api#documentation": "

The sort order for user index capacity results.

" } }, + "com.amazonaws.quicksight#UserLimits": { + "type": "structure", + "members": { + "userName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the user.

", + "smithy.api#required": {} + } + }, + "namespace": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The namespace of the user.

", + "smithy.api#required": {} + } + }, + "effectiveLimits": { + "target": "com.amazonaws.quicksight#EffectiveLimitList", + "traits": { + "smithy.api#documentation": "

A list of effective limits for the user.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The effective limits for an Amazon Quick Sight user.

" + } + }, + "com.amazonaws.quicksight#UserLimitsEntry": { + "type": "structure", + "members": { + "userName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the user.

", + "smithy.api#required": {} + } + }, + "namespace": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The namespace of the user.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Identifies a user for the BatchDescribeUserLimits operation.

" + } + }, + "com.amazonaws.quicksight#UserLimitsList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#UserLimits" + } + }, "com.amazonaws.quicksight#UserList": { "type": "list", "member": { diff --git a/codegen/sdk/aws-models/wellarchitected.json b/codegen/sdk/aws-models/wellarchitected.json index 7bedb2fcdb1..0604a0586ee 100644 --- a/codegen/sdk/aws-models/wellarchitected.json +++ b/codegen/sdk/aws-models/wellarchitected.json @@ -1,33 +1,5 @@ { "smithy": "2.0", - "metadata": { - "suppressions": [ - { - "id": "HttpMethodSemantics", - "namespace": "*" - }, - { - "id": "HttpResponseCodeSemantics", - "namespace": "*" - }, - { - "id": "PaginatedTrait", - "namespace": "*" - }, - { - "id": "HttpHeaderTrait", - "namespace": "*" - }, - { - "id": "HttpUriConflict", - "namespace": "*" - }, - { - "id": "Service", - "namespace": "*" - } - ] - }, "shapes": { "com.amazonaws.wellarchitected#AccessDeniedException": { "type": "structure", @@ -46,6 +18,12 @@ "smithy.api#httpError": 403 } }, + "com.amazonaws.wellarchitected#AccountId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\d{12}$" + } + }, "com.amazonaws.wellarchitected#AccountJiraConfigurationInput": { "type": "structure", "members": { @@ -185,7 +163,7 @@ } }, "traits": { - "smithy.api#documentation": "

The choice level additional resources for a custom lens.

\n

This field does not apply to Amazon Web Services official lenses.

" + "smithy.api#documentation": "

The choice level additional resources for a custom lens.

This field does not apply to Amazon Web Services official lenses.

" } }, "com.amazonaws.wellarchitected#AdditionalResourcesList": { @@ -194,1081 +172,5193 @@ "target": "com.amazonaws.wellarchitected#AdditionalResources" } }, - "com.amazonaws.wellarchitected#Answer": { + "com.amazonaws.wellarchitected#AgentProfileArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\\d{12}:agent-profile/([a-zA-Z0-9_-]+)$" + } + }, + "com.amazonaws.wellarchitected#AgentProfileSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#AgentProfileSummary" + }, + "traits": { + "smithy.api#uniqueItems": {} + } + }, + "com.amazonaws.wellarchitected#AgentProfileSummary": { "type": "structure", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" - }, - "QuestionDescription": { - "target": "com.amazonaws.wellarchitected#QuestionDescription" + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The system name of the profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$", + "smithy.api#required": {} + } }, - "ImprovementPlanUrl": { - "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The display name of the profile shown to users.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } }, - "HelpfulResourceUrl": { - "target": "com.amazonaws.wellarchitected#HelpfulResourceUrl" + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } }, - "HelpfulResourceDisplayText": { - "target": "com.amazonaws.wellarchitected#DisplayText", + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#documentation": "

The helpful resource text to be displayed for a custom lens.

\n

This field does not apply to Amazon Web Services official lenses.

" + "smithy.api#documentation": "

The business overview for this profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" } }, - "Choices": { - "target": "com.amazonaws.wellarchitected#Choices" + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars associated with this profile.

", + "smithy.api#required": {} + } }, - "SelectedChoices": { - "target": "com.amazonaws.wellarchitected#SelectedChoices" + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Indicates whether deletion protection is enabled for the profile.

" + } }, - "ChoiceAnswers": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswers", + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", "traits": { - "smithy.api#documentation": "

A list of selected choices to a question in your workload.

" + "smithy.api#documentation": "

The ARN of the IAM execution role used for recommendation actions.

", + "smithy.api#required": {} } }, - "IsApplicable": { - "target": "com.amazonaws.wellarchitected#IsApplicable" + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The aggregation configuration that defines which Amazon Web Services accounts and Regions to analyze.

", + "smithy.api#required": {} + } }, - "Risk": { - "target": "com.amazonaws.wellarchitected#Risk" + "arn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile.

", + "smithy.api#required": {} + } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" + "eligibleForScheduledGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for scheduled recommendation generation.

" + } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#AnswerReason", + "eligibleForArchitectureGeneration": { + "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "

The reason why the question is not applicable to your workload.

" + "smithy.api#documentation": "

Indicates whether the profile is valid for manual architecture generation.

" } }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#JiraConfiguration", + "fieldErrors": { + "target": "com.amazonaws.wellarchitected#FieldErrors", "traits": { - "smithy.api#documentation": "

Configuration of the Jira integration.

" + "smithy.api#documentation": "

A map of field paths to error messages for invalid or missing input fields.

" } - } - }, - "traits": { - "smithy.api#documentation": "

An answer of the question.

" - } - }, - "com.amazonaws.wellarchitected#AnswerReason": { - "type": "enum", - "members": { - "OUT_OF_SCOPE": { - "target": "smithy.api#Unit", + }, + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", "traits": { - "smithy.api#enumValue": "OUT_OF_SCOPE" + "smithy.api#documentation": "

The tags associated with the profile.

" } }, - "BUSINESS_PRIORITIES": { - "target": "smithy.api#Unit", + "createdBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "BUSINESS_PRIORITIES" + "smithy.api#documentation": "

The identifier of the user or system that created this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} } }, - "ARCHITECTURE_CONSTRAINTS": { - "target": "smithy.api#Unit", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "ARCHITECTURE_CONSTRAINTS" + "smithy.api#documentation": "

The timestamp when the profile was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" } }, - "OTHER": { - "target": "smithy.api#Unit", + "lastModifiedBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "OTHER" + "smithy.api#documentation": "

The identifier of the user or system that last modified this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } } }, - "NONE": { - "target": "smithy.api#Unit", + "lastModifiedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "NONE" + "smithy.api#documentation": "

The timestamp when the profile was last modified.

", + "smithy.api#timestampFormat": "date-time" } } + }, + "traits": { + "smithy.api#documentation": "

Summary of an optimization profile, including its configuration, metadata, and audit information.

" } }, - "com.amazonaws.wellarchitected#AnswerSummaries": { + "com.amazonaws.wellarchitected#AgentRecommendationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\\d{12}:agent-recommendation/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + } + }, + "com.amazonaws.wellarchitected#AgentRecommendationGenerationSummaries": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#AnswerSummary" - }, - "traits": { - "smithy.api#documentation": "

List of answer summaries of lens review in a workload.

" + "target": "com.amazonaws.wellarchitected#AgentRecommendationGenerationSummary" } }, - "com.amazonaws.wellarchitected#AnswerSummary": { + "com.amazonaws.wellarchitected#AgentRecommendationGenerationSummary": { "type": "structure", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the recommendation generation.

", + "smithy.api#required": {} + } }, - "Choices": { - "target": "com.amazonaws.wellarchitected#Choices" + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile used for this generation.

", + "smithy.api#required": {} + } }, - "SelectedChoices": { - "target": "com.amazonaws.wellarchitected#SelectedChoices" + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the recommendation generation.

" + } }, - "ChoiceAnswerSummaries": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummaries", + "status": { + "target": "com.amazonaws.wellarchitected#GenerationStatus", "traits": { - "smithy.api#documentation": "

A list of selected choices to a question in your workload.

" + "smithy.api#documentation": "

The current status of the recommendation generation.

", + "smithy.api#required": {} } }, - "IsApplicable": { - "target": "com.amazonaws.wellarchitected#IsApplicable" + "estimatedCompletionTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The estimated time for the generation to complete.

", + "smithy.api#timestampFormat": "date-time" + } }, - "Risk": { - "target": "com.amazonaws.wellarchitected#Risk" + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that started this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#AnswerReason", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" + "smithy.api#documentation": "

The timestamp when the generation was started.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" } }, - "QuestionType": { - "target": "com.amazonaws.wellarchitected#QuestionType", + "lastModifiedBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The type of the question.

" + "smithy.api#documentation": "

The identifier of the user or system that last modified this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } } }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#JiraConfiguration", + "lastModifiedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

Configuration of the Jira integration.

" + "smithy.api#documentation": "

The timestamp when the generation was last modified.

", + "smithy.api#timestampFormat": "date-time" } } }, "traits": { - "smithy.api#documentation": "

An answer summary of a lens review in a workload.

" + "smithy.api#documentation": "

Summary of a recommendation generation process initiated through the agent API.

" } }, - "com.amazonaws.wellarchitected#ApplicationArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 2084 - }, - "smithy.api#pattern": "^arn:aws[-a-z]*:servicecatalog:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:/applications/[a-z0-9]+$" + "com.amazonaws.wellarchitected#AgentRecommendationItemSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationItemSummary" } }, - "com.amazonaws.wellarchitected#AssociateLenses": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#AssociateLensesInput" - }, - "output": { - "target": "smithy.api#Unit" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#AgentRecommendationItemSummary": { + "type": "structure", + "members": { + "id": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the recommendation item.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#RecommendationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated recommendation.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "type": { + "target": "com.amazonaws.wellarchitected#RecommendationItemType", + "traits": { + "smithy.api#documentation": "

The type of the recommendation item.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "metadata": { + "target": "smithy.api#Document", + "traits": { + "smithy.api#documentation": "

Metadata containing a snapshot of the resource or recommendation at the time of generation.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this recommendation item.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the recommendation item was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this recommendation item.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the recommendation item was last modified.

", + "smithy.api#timestampFormat": "date-time" + } } - ], + }, "traits": { - "smithy.api#documentation": "

Associate a lens to a workload.

\n

Up to 10 lenses can be associated with a workload in a single API operation. A \n maximum of 20 lenses can be associated with a workload.

\n \n

\n Disclaimer\n

\n

By accessing and/or applying custom lenses created by another Amazon Web Services user or account, \n you acknowledge that custom lenses created by other users and shared with you are \n Third Party Content as defined in the Amazon Web Services Customer Agreement.

\n
", - "smithy.api#http": { - "method": "PATCH", - "uri": "/workloads/{WorkloadId}/associateLenses", - "code": 200 - } + "smithy.api#documentation": "

Summary of an agent recommendation item, representing an Amazon Web Services resource or recommendation affected by the optimization recommendation.

" } }, - "com.amazonaws.wellarchitected#AssociateLensesInput": { + "com.amazonaws.wellarchitected#AgentRecommendationRemediation": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#RecommendationArn", "traits": { - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

The ARN of the recommendation that this remediation belongs to.

", "smithy.api#required": {} } }, - "LensAliases": { - "target": "com.amazonaws.wellarchitected#LensAliases", + "type": { + "target": "com.amazonaws.wellarchitected#RemediationType", "traits": { - "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The remediation method.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Input to associate lens reviews.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#AssociateProfiles": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#AssociateProfilesInput" - }, - "output": { - "target": "smithy.api#Unit" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "steps": { + "target": "com.amazonaws.wellarchitected#RemediationSteps", + "traits": { + "smithy.api#documentation": "

The procedural steps to perform the remediation.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "resourceLinks": { + "target": "com.amazonaws.wellarchitected#ResourceLinks", + "traits": { + "smithy.api#documentation": "

External references associated with the steps.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Associate a profile with a workload.

", - "smithy.api#http": { - "method": "PATCH", - "uri": "/workloads/{WorkloadId}/associateProfiles", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#AssociateProfilesInput": { - "type": "structure", - "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "createdBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

The identifier of the user or system that created this remediation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, "smithy.api#required": {} } }, - "ProfileArns": { - "target": "com.amazonaws.wellarchitected#ProfileArns", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The list of profile ARNs to associate with the workload.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The timestamp when the remediation was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#AwsAccountId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

An Amazon Web Services account ID.

", - "smithy.api#length": { - "min": 12, - "max": 12 }, - "smithy.api#pattern": "^[0-9]{12}$" - } - }, - "com.amazonaws.wellarchitected#AwsRegion": { - "type": "string", - "traits": { - "smithy.api#documentation": "

An Amazon Web Services Region, for example, us-west-2 or\n ap-northeast-1.

", - "smithy.api#length": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.wellarchitected#Base64String": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The Base64-encoded string representation of a lens review report.

\n

This data can be used to create a PDF file.

\n

Only returned by GetConsolidatedReport \n when PDF format is requested.

" - } - }, - "com.amazonaws.wellarchitected#BestPractice": { - "type": "structure", - "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this remediation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } }, - "ChoiceTitle": { - "target": "com.amazonaws.wellarchitected#ChoiceTitle" + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the remediation was last modified.

", + "smithy.api#timestampFormat": "date-time" + } } }, "traits": { - "smithy.api#documentation": "

A best practice, or question choice, that has been identified as a risk in this question.

" + "smithy.api#documentation": "

The core fields for a remediation.

" } }, - "com.amazonaws.wellarchitected#BestPractices": { + "com.amazonaws.wellarchitected#AgentRecommendationRemediations": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#BestPractice" + "target": "com.amazonaws.wellarchitected#AgentRecommendationRemediation" } }, - "com.amazonaws.wellarchitected#CheckDescription": { - "type": "string" + "com.amazonaws.wellarchitected#AgentRecommendationSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationSummary" + } }, - "com.amazonaws.wellarchitected#CheckDetail": { + "com.amazonaws.wellarchitected#AgentRecommendationSummary": { "type": "structure", "members": { - "Id": { - "target": "com.amazonaws.wellarchitected#CheckId", + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#RecommendationArn", "traits": { - "smithy.api#documentation": "

Trusted Advisor check ID.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation.

", + "smithy.api#required": {} } }, - "Name": { - "target": "com.amazonaws.wellarchitected#CheckName", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#documentation": "

Trusted Advisor check name.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated profile.

", + "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.wellarchitected#CheckDescription", + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#documentation": "

Trusted Advisor check description.

" + "smithy.api#documentation": "

The title of the recommendation.

", + "smithy.api#length": { + "min": 3, + "max": 120 + }, + "smithy.api#required": {} } }, - "Provider": { - "target": "com.amazonaws.wellarchitected#CheckProvider", + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#documentation": "

Provider of the check related to the best practice.

" + "smithy.api#documentation": "

A description of the recommendation.

", + "smithy.api#length": { + "min": 80, + "max": 500 + }, + "smithy.api#required": {} } }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "type": { + "target": "com.amazonaws.wellarchitected#RecommendationType", "traits": { - "smithy.api#documentation": "

Well-Architected Lens ARN associated to the check.

" + "smithy.api#documentation": "

The type of the recommendation.

", + "smithy.api#required": {} } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillar that the recommendation addresses.

", + "smithy.api#required": {} + } }, - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "priority": { + "target": "com.amazonaws.wellarchitected#Priority", + "traits": { + "smithy.api#documentation": "

The priority of the recommendation.

", + "smithy.api#required": {} + } }, - "Status": { - "target": "com.amazonaws.wellarchitected#CheckStatus", + "effort": { + "target": "com.amazonaws.wellarchitected#Effort", "traits": { - "smithy.api#documentation": "

Status associated to the check.

" + "smithy.api#documentation": "

The effort required to implement the recommendation.

", + "smithy.api#required": {} } }, - "AccountId": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" + "status": { + "target": "com.amazonaws.wellarchitected#RecommendationStatus", + "traits": { + "smithy.api#documentation": "

The current status of the recommendation.

", + "smithy.api#required": {} + } }, - "FlaggedResources": { - "target": "com.amazonaws.wellarchitected#FlaggedResources", + "state": { + "target": "com.amazonaws.wellarchitected#RecommendationState", "traits": { - "smithy.api#documentation": "

Count of flagged resources associated to the check.

" + "smithy.api#documentation": "

The current state of the recommendation.

", + "smithy.api#required": {} } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#CheckFailureReason", + "updateReason": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#documentation": "

Reason associated to the check.

" + "smithy.api#documentation": "

The free-text reason associated with the recommendation's most recent status update.

", + "smithy.api#length": { + "min": 1, + "max": 4096 + } } }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - } - }, - "traits": { - "smithy.api#documentation": "

Account details for a Well-Architected best practice in relation to Trusted Advisor checks.

" - } - }, - "com.amazonaws.wellarchitected#CheckDetails": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#CheckDetail" - } - }, - "com.amazonaws.wellarchitected#CheckFailureReason": { - "type": "enum", - "members": { - "ASSUME_ROLE_ERROR": { - "target": "smithy.api#Unit", + "impact": { + "target": "com.amazonaws.wellarchitected#ImpactCategory", "traits": { - "smithy.api#enumValue": "ASSUME_ROLE_ERROR" + "smithy.api#documentation": "

The severity of the recommendation's impact.

", + "smithy.api#required": {} } }, - "ACCESS_DENIED": { - "target": "smithy.api#Unit", + "roi": { + "target": "com.amazonaws.wellarchitected#Roi", "traits": { - "smithy.api#enumValue": "ACCESS_DENIED" + "smithy.api#documentation": "

The return on investment estimate for the recommendation.

", + "smithy.api#required": {} } }, - "UNKNOWN_ERROR": { - "target": "smithy.api#Unit", + "numberOfResources": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#enumValue": "UNKNOWN_ERROR" + "smithy.api#documentation": "

The number of Amazon Web Services resources this recommendation affects.

" } }, - "PREMIUM_SUPPORT_REQUIRED": { - "target": "smithy.api#Unit", + "awsServices": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#enumValue": "PREMIUM_SUPPORT_REQUIRED" + "smithy.api#documentation": "

The Amazon Web Services services that the recommendation applies to.

" } - } - } - }, - "com.amazonaws.wellarchitected#CheckId": { - "type": "string" - }, - "com.amazonaws.wellarchitected#CheckName": { - "type": "string" - }, - "com.amazonaws.wellarchitected#CheckProvider": { - "type": "enum", - "members": { - "TRUSTED_ADVISOR": { - "target": "smithy.api#Unit", + }, + "businessUnits": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#enumValue": "TRUSTED_ADVISOR" + "smithy.api#documentation": "

The business units that own the affected resources.

" } - } - } - }, - "com.amazonaws.wellarchitected#CheckStatus": { - "type": "enum", - "members": { - "OKAY": { - "target": "smithy.api#Unit", + }, + "applications": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#enumValue": "OKAY" + "smithy.api#documentation": "

The applications that the recommendation targets.

" } }, - "WARNING": { - "target": "smithy.api#Unit", + "createdBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "WARNING" + "smithy.api#documentation": "

The identifier of the user or system that created this recommendation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} } }, - "ERROR": { - "target": "smithy.api#Unit", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "ERROR" + "smithy.api#documentation": "

The timestamp when the recommendation was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" } }, - "NOT_AVAILABLE": { - "target": "smithy.api#Unit", + "lastModifiedBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "NOT_AVAILABLE" + "smithy.api#documentation": "

The identifier of the user or system that last modified this recommendation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } } }, - "FETCH_FAILED": { - "target": "smithy.api#Unit", + "lastModifiedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "FETCH_FAILED" + "smithy.api#documentation": "

The timestamp when the recommendation was last modified.

", + "smithy.api#timestampFormat": "date-time" } } - } - }, - "com.amazonaws.wellarchitected#CheckStatusCount": { - "type": "integer", + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 101 - } + "smithy.api#documentation": "

Summary of an agent optimization recommendation returned by list operations.

" } }, - "com.amazonaws.wellarchitected#CheckSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#CheckSummary" - } - }, - "com.amazonaws.wellarchitected#CheckSummary": { + "com.amazonaws.wellarchitected#AggregationConfiguration": { "type": "structure", "members": { - "Id": { - "target": "com.amazonaws.wellarchitected#CheckId", + "accountId": { + "target": "com.amazonaws.wellarchitected#AccountId", "traits": { - "smithy.api#documentation": "

Trusted Advisor check ID.

" + "smithy.api#documentation": "

The Amazon Web Services account ID to analyze.

", + "smithy.api#required": {} } }, - "Name": { - "target": "com.amazonaws.wellarchitected#CheckName", + "regions": { + "target": "com.amazonaws.wellarchitected#Regions", "traits": { - "smithy.api#documentation": "

Trusted Advisor check name.

" + "smithy.api#documentation": "

A list of Amazon Web Services Regions to include in the analysis.

", + "smithy.api#required": {} } }, - "Provider": { - "target": "com.amazonaws.wellarchitected#CheckProvider", + "accessRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", "traits": { - "smithy.api#documentation": "

Provider of the check related to the best practice.

" + "smithy.api#documentation": "

The ARN of an IAM role to assume for resource analysis in this account.

", + "smithy.api#required": {} } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.

" + } + }, + "com.amazonaws.wellarchitected#AggregationConfigurations": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#AggregationConfiguration" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 }, - "Description": { - "target": "com.amazonaws.wellarchitected#CheckDescription", + "smithy.api#uniqueItems": {} + } + }, + "com.amazonaws.wellarchitected#Answer": { + "type": "structure", + "members": { + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" + }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" + }, + "QuestionDescription": { + "target": "com.amazonaws.wellarchitected#QuestionDescription" + }, + "ImprovementPlanUrl": { + "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + }, + "HelpfulResourceUrl": { + "target": "com.amazonaws.wellarchitected#HelpfulResourceUrl" + }, + "HelpfulResourceDisplayText": { + "target": "com.amazonaws.wellarchitected#DisplayText", "traits": { - "smithy.api#documentation": "

Trusted Advisor check description.

" + "smithy.api#documentation": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

" } }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "Choices": { + "target": "com.amazonaws.wellarchitected#Choices" }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "SelectedChoices": { + "target": "com.amazonaws.wellarchitected#SelectedChoices" + }, + "ChoiceAnswers": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswers", "traits": { - "smithy.api#documentation": "

Well-Architected Lens ARN associated to the check.

" + "smithy.api#documentation": "

A list of selected choices to a question in your workload.

" } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" + "IsApplicable": { + "target": "com.amazonaws.wellarchitected#IsApplicable" }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" + "Risk": { + "target": "com.amazonaws.wellarchitected#Risk" }, - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" }, - "Status": { - "target": "com.amazonaws.wellarchitected#CheckStatus", + "Reason": { + "target": "com.amazonaws.wellarchitected#AnswerReason", "traits": { - "smithy.api#documentation": "

Status associated to the check.

" + "smithy.api#documentation": "

The reason why the question is not applicable to your workload.

" } }, - "AccountSummary": { - "target": "com.amazonaws.wellarchitected#AccountSummary", + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#JiraConfiguration", "traits": { - "smithy.api#documentation": "

Account summary associated to the check.

" + "smithy.api#documentation": "

Configuration of the Jira integration.

" } } }, "traits": { - "smithy.api#documentation": "

Trusted Advisor check summary.

" + "smithy.api#documentation": "

An answer of the question.

" } }, - "com.amazonaws.wellarchitected#Choice": { - "type": "structure", + "com.amazonaws.wellarchitected#AnswerReason": { + "type": "enum", "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" - }, - "Title": { - "target": "com.amazonaws.wellarchitected#ChoiceTitle" + "OUT_OF_SCOPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OUT_OF_SCOPE" + } }, - "Description": { - "target": "com.amazonaws.wellarchitected#ChoiceDescription" + "BUSINESS_PRIORITIES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BUSINESS_PRIORITIES" + } }, - "HelpfulResource": { - "target": "com.amazonaws.wellarchitected#ChoiceContent", + "ARCHITECTURE_CONSTRAINTS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The helpful resource (both text and URL) for a particular choice.

\n

This field only applies to custom lenses. Each choice can have only one helpful resource.

" + "smithy.api#enumValue": "ARCHITECTURE_CONSTRAINTS" } }, - "ImprovementPlan": { - "target": "com.amazonaws.wellarchitected#ChoiceContent", + "OTHER": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The improvement plan (both text and URL) for a particular choice.

\n

This field only applies to custom lenses. Each choice can have only one improvement plan.

" + "smithy.api#enumValue": "OTHER" } }, - "AdditionalResources": { - "target": "com.amazonaws.wellarchitected#AdditionalResourcesList", + "NONE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The additional resources for a choice in a custom lens.

\n

A choice can have up to two additional resources: one of type HELPFUL_RESOURCE, \n one of type IMPROVEMENT_PLAN, or both.

" + "smithy.api#enumValue": "NONE" } } + } + }, + "com.amazonaws.wellarchitected#AnswerSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#AnswerSummary" }, "traits": { - "smithy.api#documentation": "

A choice available to answer question.

" + "smithy.api#documentation": "

List of answer summaries of lens review in a workload.

" } }, - "com.amazonaws.wellarchitected#ChoiceAnswer": { + "com.amazonaws.wellarchitected#AnswerSummary": { "type": "structure", "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - "Status": { - "target": "com.amazonaws.wellarchitected#ChoiceStatus", + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" + }, + "Choices": { + "target": "com.amazonaws.wellarchitected#Choices" + }, + "SelectedChoices": { + "target": "com.amazonaws.wellarchitected#SelectedChoices" + }, + "ChoiceAnswerSummaries": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummaries", "traits": { - "smithy.api#documentation": "

The status of a choice.

" + "smithy.api#documentation": "

A list of selected choices to a question in your workload.

" } }, + "IsApplicable": { + "target": "com.amazonaws.wellarchitected#IsApplicable" + }, + "Risk": { + "target": "com.amazonaws.wellarchitected#Risk" + }, "Reason": { - "target": "com.amazonaws.wellarchitected#ChoiceReason", + "target": "com.amazonaws.wellarchitected#AnswerReason", "traits": { "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#ChoiceNotes", + "QuestionType": { + "target": "com.amazonaws.wellarchitected#QuestionType", "traits": { - "smithy.api#documentation": "

The notes associated with a choice.

" + "smithy.api#documentation": "

The type of the question.

" + } + }, + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#JiraConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration of the Jira integration.

" } } }, "traits": { - "smithy.api#documentation": "

A choice that has been answered on a question in your workload.

" + "smithy.api#documentation": "

An answer summary of a lens review in a workload.

" } }, - "com.amazonaws.wellarchitected#ChoiceAnswerSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummary" + "com.amazonaws.wellarchitected#ApplicationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2084 + }, + "smithy.api#pattern": "^arn:aws[-a-z]*:servicecatalog:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:/applications/[a-z0-9]+$" } }, - "com.amazonaws.wellarchitected#ChoiceAnswerSummary": { - "type": "structure", + "com.amazonaws.wellarchitected#ApplicationType": { + "type": "enum", "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "SAS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SAS" + } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ChoiceStatus", + "DESKTOP_APPLICATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The status of a choice.

" + "smithy.api#enumValue": "DESKTOP_APPLICATION" } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#ChoiceReason", + "OTHER": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" + "smithy.api#enumValue": "OTHER" } } - }, - "traits": { - "smithy.api#documentation": "

A choice summary that has been answered on a question in your workload.

" } }, - "com.amazonaws.wellarchitected#ChoiceAnswers": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswer" + "com.amazonaws.wellarchitected#AssociateLenses": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#AssociateLensesInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Associate a lens to a workload.

Up to 10 lenses can be associated with a workload in a single API operation. A maximum of 20 lenses can be associated with a workload.

Disclaimer

By accessing and/or applying custom lenses created by another Amazon Web Services user or account, you acknowledge that custom lenses created by other users and shared with you are Third Party Content as defined in the Amazon Web Services Customer Agreement.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/workloads/{WorkloadId}/associateLenses", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ChoiceContent": { + "com.amazonaws.wellarchitected#AssociateLensesInput": { "type": "structure", "members": { - "DisplayText": { - "target": "com.amazonaws.wellarchitected#ChoiceContentDisplayText", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#documentation": "

The display text for the choice content.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "Url": { - "target": "com.amazonaws.wellarchitected#ChoiceContentUrl", + "LensAliases": { + "target": "com.amazonaws.wellarchitected#LensAliases", "traits": { - "smithy.api#documentation": "

The URL for the choice content.

" + "smithy.api#clientOptional": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The choice content.

" - } - }, - "com.amazonaws.wellarchitected#ChoiceContentDisplayText": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - } + "smithy.api#documentation": "

Input to associate lens reviews.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ChoiceContentUrl": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 + "com.amazonaws.wellarchitected#AssociateProfiles": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#AssociateProfilesInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Associate a profile with a workload.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/workloads/{WorkloadId}/associateProfiles", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#AssociateProfilesInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ProfileArns": { + "target": "com.amazonaws.wellarchitected#ProfileArns", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The list of profile ARNs to associate with the workload.

", + "smithy.api#required": {} + } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ChoiceDescription": { + "com.amazonaws.wellarchitected#AwsAccountId": { "type": "string", "traits": { - "smithy.api#documentation": "

The description of a choice.

", + "smithy.api#documentation": "

An Amazon Web Services account ID.

", "smithy.api#length": { - "min": 1, - "max": 1024 - } + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[0-9]{12}$" } }, - "com.amazonaws.wellarchitected#ChoiceId": { + "com.amazonaws.wellarchitected#AwsRegion": { "type": "string", "traits": { - "smithy.api#documentation": "

The ID of a choice.

", + "smithy.api#documentation": "

An Amazon Web Services Region, for example, us-west-2 or ap-northeast-1.

", "smithy.api#length": { - "min": 1, - "max": 64 + "max": 100 } } }, - "com.amazonaws.wellarchitected#ChoiceImprovementPlan": { + "com.amazonaws.wellarchitected#Base64String": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The Base64-encoded string representation of a lens review report.

This data can be used to create a PDF file.

Only returned by GetConsolidatedReport when PDF format is requested.

" + } + }, + "com.amazonaws.wellarchitected#BestPractice": { "type": "structure", "members": { "ChoiceId": { "target": "com.amazonaws.wellarchitected#ChoiceId" }, - "DisplayText": { - "target": "com.amazonaws.wellarchitected#DisplayText", - "traits": { - "smithy.api#documentation": "

The display text for the improvement plan.

" - } - }, - "ImprovementPlanUrl": { - "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + "ChoiceTitle": { + "target": "com.amazonaws.wellarchitected#ChoiceTitle" } }, "traits": { - "smithy.api#documentation": "

The choice level improvement plan.

" + "smithy.api#documentation": "

A best practice, or question choice, that has been identified as a risk in this question.

" } }, - "com.amazonaws.wellarchitected#ChoiceImprovementPlans": { + "com.amazonaws.wellarchitected#BestPractices": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ChoiceImprovementPlan" + "target": "com.amazonaws.wellarchitected#BestPractice" } }, - "com.amazonaws.wellarchitected#ChoiceNotes": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 250 - } - } + "com.amazonaws.wellarchitected#CheckDescription": { + "type": "string" }, - "com.amazonaws.wellarchitected#ChoiceReason": { - "type": "enum", + "com.amazonaws.wellarchitected#CheckDetail": { + "type": "structure", "members": { - "OUT_OF_SCOPE": { - "target": "smithy.api#Unit", + "Id": { + "target": "com.amazonaws.wellarchitected#CheckId", "traits": { - "smithy.api#enumValue": "OUT_OF_SCOPE" + "smithy.api#documentation": "

Trusted Advisor check ID.

" } }, - "BUSINESS_PRIORITIES": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.wellarchitected#CheckName", "traits": { - "smithy.api#enumValue": "BUSINESS_PRIORITIES" + "smithy.api#documentation": "

Trusted Advisor check name.

" } }, - "ARCHITECTURE_CONSTRAINTS": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.wellarchitected#CheckDescription", "traits": { - "smithy.api#enumValue": "ARCHITECTURE_CONSTRAINTS" + "smithy.api#documentation": "

Trusted Advisor check description.

" } }, - "OTHER": { - "target": "smithy.api#Unit", + "Provider": { + "target": "com.amazonaws.wellarchitected#CheckProvider", "traits": { - "smithy.api#enumValue": "OTHER" + "smithy.api#documentation": "

Provider of the check related to the best practice.

" } }, - "NONE": { - "target": "smithy.api#Unit", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#enumValue": "NONE" + "smithy.api#documentation": "

Well-Architected Lens ARN associated to the check.

" + } + }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" + }, + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, + "Status": { + "target": "com.amazonaws.wellarchitected#CheckStatus", + "traits": { + "smithy.api#documentation": "

Status associated to the check.

" + } + }, + "AccountId": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" + }, + "FlaggedResources": { + "target": "com.amazonaws.wellarchitected#FlaggedResources", + "traits": { + "smithy.api#documentation": "

Count of flagged resources associated to the check.

" + } + }, + "Reason": { + "target": "com.amazonaws.wellarchitected#CheckFailureReason", + "traits": { + "smithy.api#documentation": "

Reason associated to the check.

" + } + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the check was last updated.

" } } + }, + "traits": { + "smithy.api#documentation": "

Account details for a Well-Architected best practice in relation to Trusted Advisor checks.

" } }, - "com.amazonaws.wellarchitected#ChoiceStatus": { + "com.amazonaws.wellarchitected#CheckDetails": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#CheckDetail" + } + }, + "com.amazonaws.wellarchitected#CheckFailureReason": { "type": "enum", "members": { - "SELECTED": { + "ASSUME_ROLE_ERROR": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SELECTED" + "smithy.api#enumValue": "ASSUME_ROLE_ERROR" } }, - "NOT_APPLICABLE": { + "ACCESS_DENIED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "NOT_APPLICABLE" + "smithy.api#enumValue": "ACCESS_DENIED" } }, - "UNSELECTED": { + "UNKNOWN_ERROR": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "UNSELECTED" + "smithy.api#enumValue": "UNKNOWN_ERROR" + } + }, + "PREMIUM_SUPPORT_REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PREMIUM_SUPPORT_REQUIRED" } } } }, - "com.amazonaws.wellarchitected#ChoiceTitle": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The title of a choice.

", - "smithy.api#length": { - "min": 1, - "max": 512 + "com.amazonaws.wellarchitected#CheckId": { + "type": "string" + }, + "com.amazonaws.wellarchitected#CheckName": { + "type": "string" + }, + "com.amazonaws.wellarchitected#CheckProvider": { + "type": "enum", + "members": { + "TRUSTED_ADVISOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TRUSTED_ADVISOR" + } } } }, - "com.amazonaws.wellarchitected#ChoiceUpdate": { - "type": "structure", + "com.amazonaws.wellarchitected#CheckStatus": { + "type": "enum", "members": { - "Status": { - "target": "com.amazonaws.wellarchitected#ChoiceStatus", + "OKAY": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The status of a choice.

", - "smithy.api#required": {} + "smithy.api#enumValue": "OKAY" } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#ChoiceReason", + "WARNING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" + "smithy.api#enumValue": "WARNING" } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#ChoiceNotes", + "ERROR": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The notes associated with a choice.

" + "smithy.api#enumValue": "ERROR" } - } - }, - "traits": { - "smithy.api#documentation": "

A list of choices to be updated.

" - } - }, - "com.amazonaws.wellarchitected#ChoiceUpdates": { - "type": "map", - "key": { - "target": "com.amazonaws.wellarchitected#ChoiceId" - }, - "value": { - "target": "com.amazonaws.wellarchitected#ChoiceUpdate" - } - }, - "com.amazonaws.wellarchitected#Choices": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#Choice" - }, - "traits": { - "smithy.api#documentation": "

List of choices available for a question.

" + }, + "NOT_AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_AVAILABLE" + } + }, + "FETCH_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FETCH_FAILED" + } + } } }, - "com.amazonaws.wellarchitected#ClientRequestToken": { - "type": "string", + "com.amazonaws.wellarchitected#CheckStatusCount": { + "type": "integer", "traits": { - "smithy.api#documentation": "

A unique case-sensitive string used to ensure that this request is idempotent\n (executes only once).

\n

You should not reuse the same token for other requests. If you retry a request with\n the same client request token and the same parameters after the original request has completed\n successfully, the result of the original request is returned.

\n \n

This token is listed as required, however, if you do not specify it, the Amazon Web Services SDKs\n automatically generate one for you. If you are not using the Amazon Web Services SDK or the CLI,\n you must provide this token or the request will fail.

\n
", - "smithy.api#length": { + "smithy.api#range": { "min": 1, - "max": 2048 + "max": 101 } } }, - "com.amazonaws.wellarchitected#ConflictException": { + "com.amazonaws.wellarchitected#CheckSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#CheckSummary" + } + }, + "com.amazonaws.wellarchitected#CheckSummary": { "type": "structure", "members": { - "Message": { - "target": "com.amazonaws.wellarchitected#ExceptionMessage", + "Id": { + "target": "com.amazonaws.wellarchitected#CheckId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Trusted Advisor check ID.

" } }, - "ResourceId": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceId", + "Name": { + "target": "com.amazonaws.wellarchitected#CheckName", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Trusted Advisor check name.

" } }, - "ResourceType": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceType", + "Provider": { + "target": "com.amazonaws.wellarchitected#CheckProvider", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Provider of the check related to the best practice.

" } - } - }, - "traits": { - "smithy.api#documentation": "

The resource has already been processed, was deleted, or is too large.

", - "smithy.api#error": "client", - "smithy.api#httpError": 409 - } - }, - "com.amazonaws.wellarchitected#ConsolidatedReportMetric": { - "type": "structure", - "members": { - "MetricType": { - "target": "com.amazonaws.wellarchitected#MetricType", + }, + "Description": { + "target": "com.amazonaws.wellarchitected#CheckDescription", "traits": { - "smithy.api#documentation": "

The metric type of a metric in the consolidated report. Currently only WORKLOAD metric types are supported.

" + "smithy.api#documentation": "

Trusted Advisor check description.

" } }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the check summary was last updated.

" + } }, - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

Well-Architected Lens ARN associated to the check.

" + } }, - "WorkloadName": { - "target": "com.amazonaws.wellarchitected#WorkloadName" + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - "WorkloadArn": { - "target": "com.amazonaws.wellarchitected#WorkloadArn" + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" }, - "Lenses": { - "target": "com.amazonaws.wellarchitected#LensMetrics", + "Status": { + "target": "com.amazonaws.wellarchitected#CheckStatus", "traits": { - "smithy.api#documentation": "

The metrics for the lenses in the workload.

" + "smithy.api#documentation": "

Status associated to the check.

" } }, - "LensesAppliedCount": { - "target": "com.amazonaws.wellarchitected#LensesAppliedCount", + "AccountSummary": { + "target": "com.amazonaws.wellarchitected#AccountSummary", "traits": { - "smithy.api#documentation": "

The total number of lenses applied to the workload.

" + "smithy.api#documentation": "

Account summary associated to the check.

" } } }, "traits": { - "smithy.api#documentation": "

A metric that contributes to the consolidated report.

" - } - }, - "com.amazonaws.wellarchitected#ConsolidatedReportMetrics": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ConsolidatedReportMetric" - } - }, - "com.amazonaws.wellarchitected#Count": { - "type": "integer", - "traits": { - "smithy.api#documentation": "

A non-negative integer that denotes how many.

", - "smithy.api#range": { - "min": 0 - } + "smithy.api#documentation": "

Trusted Advisor check summary.

" } }, - "com.amazonaws.wellarchitected#CreateLensShare": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#CreateLensShareInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#CreateLensShareOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" + "com.amazonaws.wellarchitected#Choice": { + "type": "structure", + "members": { + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "Title": { + "target": "com.amazonaws.wellarchitected#ChoiceTitle" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "Description": { + "target": "com.amazonaws.wellarchitected#ChoiceDescription" }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + "HelpfulResource": { + "target": "com.amazonaws.wellarchitected#ChoiceContent", + "traits": { + "smithy.api#documentation": "

The helpful resource (both text and URL) for a particular choice.

This field only applies to custom lenses. Each choice can have only one helpful resource.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "ImprovementPlan": { + "target": "com.amazonaws.wellarchitected#ChoiceContent", + "traits": { + "smithy.api#documentation": "

The improvement plan (both text and URL) for a particular choice.

This field only applies to custom lenses. Each choice can have only one improvement plan.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "AdditionalResources": { + "target": "com.amazonaws.wellarchitected#AdditionalResourcesList", + "traits": { + "smithy.api#documentation": "

The additional resources for a choice in a custom lens.

A choice can have up to two additional resources: one of type HELPFUL_RESOURCE, one of type IMPROVEMENT_PLAN, or both.

" + } } - ], + }, "traits": { - "smithy.api#documentation": "

Create a lens share.

\n

The owner of a lens can share it with other Amazon Web Services accounts, users, an organization,\n and organizational units (OUs) in the same Amazon Web Services Region.\n Lenses provided by Amazon Web Services (Amazon Web Services Official Content) cannot be shared.

\n

\n Shared access to a lens is not removed until the lens invitation is deleted.

\n

If you share a lens with an organization or OU, all accounts in the organization or OU\n are granted access to the lens.

\n

For more information, see Sharing a custom lens in the\n Well-Architected Tool User Guide.

\n \n

\n Disclaimer\n

\n

By sharing your custom lenses with other Amazon Web Services accounts, \n you acknowledge that Amazon Web Services will make your custom lenses available to those \n other accounts. Those other accounts may continue to access and use your \n shared custom lenses even if you delete the custom lenses \n from your own Amazon Web Services account or terminate \n your Amazon Web Services account.

\n
", - "smithy.api#http": { - "method": "POST", - "uri": "/lenses/{LensAlias}/shares", - "code": 200 - } + "smithy.api#documentation": "

A choice available to answer question.

" } }, - "com.amazonaws.wellarchitected#CreateLensShareInput": { + "com.amazonaws.wellarchitected#ChoiceAnswer": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, + "Status": { + "target": "com.amazonaws.wellarchitected#ChoiceStatus", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The status of a choice.

" } }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith", + "Reason": { + "target": "com.amazonaws.wellarchitected#ChoiceReason", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "Notes": { + "target": "com.amazonaws.wellarchitected#ChoiceNotes", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The notes associated with a choice.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A choice that has been answered on a question in your workload.

" } }, - "com.amazonaws.wellarchitected#CreateLensShareOutput": { + "com.amazonaws.wellarchitected#ChoiceAnswerSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummary" + } + }, + "com.amazonaws.wellarchitected#ChoiceAnswerSummary": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, + "Status": { + "target": "com.amazonaws.wellarchitected#ChoiceStatus", + "traits": { + "smithy.api#documentation": "

The status of a choice.

" + } + }, + "Reason": { + "target": "com.amazonaws.wellarchitected#ChoiceReason", + "traits": { + "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" + } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

A choice summary that has been answered on a question in your workload.

" } }, - "com.amazonaws.wellarchitected#CreateLensVersion": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#CreateLensVersionInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#CreateLensVersionOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#ChoiceAnswers": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswer" + } + }, + "com.amazonaws.wellarchitected#ChoiceContent": { + "type": "structure", + "members": { + "DisplayText": { + "target": "com.amazonaws.wellarchitected#ChoiceContentDisplayText", + "traits": { + "smithy.api#documentation": "

The display text for the choice content.

" + } + }, + "Url": { + "target": "com.amazonaws.wellarchitected#ChoiceContentUrl", + "traits": { + "smithy.api#documentation": "

The URL for the choice content.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The choice content.

" + } + }, + "com.amazonaws.wellarchitected#ChoiceContentDisplayText": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceContentUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceDescription": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The description of a choice.

", + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The ID of a choice.

", + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceImprovementPlan": { + "type": "structure", + "members": { + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, + "DisplayText": { + "target": "com.amazonaws.wellarchitected#DisplayText", + "traits": { + "smithy.api#documentation": "

The display text for the improvement plan.

" + } + }, + "ImprovementPlanUrl": { + "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + } + }, + "traits": { + "smithy.api#documentation": "

The choice level improvement plan.

This value is only applicable to custom lenses.

" + } + }, + "com.amazonaws.wellarchitected#ChoiceImprovementPlans": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceImprovementPlan" + } + }, + "com.amazonaws.wellarchitected#ChoiceNotes": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 250 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceReason": { + "type": "enum", + "members": { + "OUT_OF_SCOPE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OUT_OF_SCOPE" + } + }, + "BUSINESS_PRIORITIES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BUSINESS_PRIORITIES" + } + }, + "ARCHITECTURE_CONSTRAINTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHITECTURE_CONSTRAINTS" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OTHER" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, + "com.amazonaws.wellarchitected#ChoiceStatus": { + "type": "enum", + "members": { + "SELECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SELECTED" + } + }, + "NOT_APPLICABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_APPLICABLE" + } + }, + "UNSELECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNSELECTED" + } + } + } + }, + "com.amazonaws.wellarchitected#ChoiceTitle": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The title of a choice.

", + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, + "com.amazonaws.wellarchitected#ChoiceUpdate": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.wellarchitected#ChoiceStatus", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The status of a choice.

", + "smithy.api#required": {} + } + }, + "Reason": { + "target": "com.amazonaws.wellarchitected#ChoiceReason", + "traits": { + "smithy.api#documentation": "

The reason why a choice is non-applicable to a question in your workload.

" + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#ChoiceNotes", + "traits": { + "smithy.api#documentation": "

The notes associated with a choice.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A list of choices to be updated.

" + } + }, + "com.amazonaws.wellarchitected#ChoiceUpdates": { + "type": "map", + "key": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, + "value": { + "target": "com.amazonaws.wellarchitected#ChoiceUpdate" + } + }, + "com.amazonaws.wellarchitected#Choices": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#Choice" + }, + "traits": { + "smithy.api#documentation": "

List of choices available for a question.

" + } + }, + "com.amazonaws.wellarchitected#ClientRequestToken": { + "type": "string", + "traits": { + "smithy.api#documentation": "

A unique case-sensitive string used to ensure that this request is idempotent (executes only once).

You should not reuse the same token for other requests. If you retry a request with the same client request token and the same parameters after the original request has completed successfully, the result of the original request is returned.

This token is listed as required, however, if you do not specify it, the Amazon Web Services SDKs automatically generate one for you. If you are not using the Amazon Web Services SDK or the CLI, you must provide this token or the request will fail.

", + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[\\x00-\\x7F]*$" + } + }, + "com.amazonaws.wellarchitected#ConflictException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.wellarchitected#ExceptionMessage", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ResourceId": { + "target": "com.amazonaws.wellarchitected#ExceptionResourceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ResourceType": { + "target": "com.amazonaws.wellarchitected#ExceptionResourceType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The resource has already been processed, was deleted, or is too large.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.wellarchitected#ConsolidatedReportMetric": { + "type": "structure", + "members": { + "MetricType": { + "target": "com.amazonaws.wellarchitected#MetricType", + "traits": { + "smithy.api#documentation": "

The metric type of a metric in the consolidated report. Currently only WORKLOAD metric types are supported.

" + } + }, + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" + }, + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "WorkloadName": { + "target": "com.amazonaws.wellarchitected#WorkloadName" + }, + "WorkloadArn": { + "target": "com.amazonaws.wellarchitected#WorkloadArn" + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the consolidated report metric was last updated.

" + } + }, + "Lenses": { + "target": "com.amazonaws.wellarchitected#LensMetrics", + "traits": { + "smithy.api#documentation": "

The metrics for the lenses in the workload.

" + } + }, + "LensesAppliedCount": { + "target": "com.amazonaws.wellarchitected#LensesAppliedCount", + "traits": { + "smithy.api#documentation": "

The total number of lenses applied to the workload.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A metric that contributes to the consolidated report.

" + } + }, + "com.amazonaws.wellarchitected#ConsolidatedReportMetrics": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ConsolidatedReportMetric" + } + }, + "com.amazonaws.wellarchitected#ContextAccountIdList": { + "type": "list", + "member": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^\\d{12}$" + } + } + }, + "com.amazonaws.wellarchitected#ContextAwsServiceList": { + "type": "list", + "member": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[\\P{C}]+$" + } + } + }, + "com.amazonaws.wellarchitected#ContextContent": { + "type": "structure", + "members": { + "accountIds": { + "target": "com.amazonaws.wellarchitected#ContextAccountIdList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account IDs associated with this application context.

", + "smithy.api#length": { + "max": 1000 + } + } + }, + "regions": { + "target": "com.amazonaws.wellarchitected#ContextRegionList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Regions where this application operates.

", + "smithy.api#length": { + "max": 50 + } + } + }, + "awsServices": { + "target": "com.amazonaws.wellarchitected#ContextAwsServiceList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services services used by this application.

", + "smithy.api#length": { + "max": 300 + } + } + }, + "resourceTypes": { + "target": "com.amazonaws.wellarchitected#ContextResourceTypeList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource types relevant to this application.

", + "smithy.api#length": { + "max": 1500 + } + } + }, + "resourceTags": { + "target": "com.amazonaws.wellarchitected#ContextResourceTagList", + "traits": { + "smithy.api#documentation": "

Resource tags used to scope this application context.

", + "smithy.api#length": { + "max": 20 + } + } + }, + "applicationOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A free-form overview of the application.

", + "smithy.api#length": { + "max": 10000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}\\r\\n])*$" + } + }, + "industry": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The industry vertical for this application.

", + "smithy.api#length": { + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}\\r\\n])*$" + } + }, + "applicationType": { + "target": "com.amazonaws.wellarchitected#ApplicationType", + "traits": { + "smithy.api#documentation": "

The type of the application.

" + } + }, + "criticality": { + "target": "com.amazonaws.wellarchitected#Criticality", + "traits": { + "smithy.api#documentation": "

The business criticality of the application.

" + } + }, + "architectureOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A free-form description of the application architecture.

", + "smithy.api#length": { + "max": 10000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}\\r\\n])*$" + } + }, + "additionalContext": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

Additional context not captured by other fields.

", + "smithy.api#length": { + "max": 10000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}\\r\\n])*$" + } + } + }, + "traits": { + "smithy.api#documentation": "

Typed content structure for a context. Contains application-specific fields that describe the environment used during recommendation generation.

" + } + }, + "com.amazonaws.wellarchitected#ContextRegionList": { + "type": "list", + "member": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-z]{2}(-gov)?-[a-z]+-\\d+$" + } + } + }, + "com.amazonaws.wellarchitected#ContextResourceTag": { + "type": "structure", + "members": { + "key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The tag key.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$", + "smithy.api#required": {} + } + }, + "value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The tag value.

", + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A key-value pair representing a resource tag used to scope context content.

" + } + }, + "com.amazonaws.wellarchitected#ContextResourceTagList": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ContextResourceTag" + } + }, + "com.amazonaws.wellarchitected#ContextResourceTypeList": { + "type": "list", + "member": { + "target": "smithy.api#String", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[\\P{C}]+$" + } + } + }, + "com.amazonaws.wellarchitected#ContextSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ContextSummary" + } + }, + "com.amazonaws.wellarchitected#ContextSummary": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the context.

", + "smithy.api#required": {} + } + }, + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated profile.

", + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The title of the context.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$", + "smithy.api#required": {} + } + }, + "contextType": { + "target": "com.amazonaws.wellarchitected#ContextType", + "traits": { + "smithy.api#documentation": "

The type of the context.

", + "smithy.api#required": {} + } + }, + "content": { + "target": "com.amazonaws.wellarchitected#ContextContent", + "traits": { + "smithy.api#documentation": "

The typed content of the context, containing application-specific fields such as account IDs, Regions, services, and resource types.

", + "smithy.api#required": {} + } + }, + "applicationType": { + "target": "com.amazonaws.wellarchitected#ApplicationType", + "traits": { + "smithy.api#documentation": "

The type of application described by this context.

" + } + }, + "criticality": { + "target": "com.amazonaws.wellarchitected#Criticality", + "traits": { + "smithy.api#documentation": "

The business criticality of the application described by this context.

" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this context.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the context was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this context.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the context was last modified.

", + "smithy.api#timestampFormat": "date-time" + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary of a context associated with a profile, representing application or environment information used during recommendation generation.

" + } + }, + "com.amazonaws.wellarchitected#ContextType": { + "type": "enum", + "members": { + "APPLICATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APPLICATION" + } + } + } + }, + "com.amazonaws.wellarchitected#Count": { + "type": "integer", + "traits": { + "smithy.api#documentation": "

A non-negative integer that denotes how many.

", + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.wellarchitected#CreateAgentContext": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateAgentContextRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateAgentContextResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a context associated with an optimization profile. Contexts provide application and environment information used during recommendation generation.

", + "smithy.api#http": { + "method": "POST", + "uri": "/api/v1/agent-profiles/{profileArn}/contexts" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "CreateAgentContext", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "title": "smoke-test-context", + "contextType": "APPLICATION", + "content": {} + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#CreateAgentContextRequest": { + "type": "structure", + "members": { + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } + }, + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile to associate the context with.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The title of the context.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$", + "smithy.api#required": {} + } + }, + "contextType": { + "target": "com.amazonaws.wellarchitected#ContextType", + "traits": { + "smithy.api#documentation": "

The type of the context.

", + "smithy.api#required": {} + } + }, + "content": { + "target": "com.amazonaws.wellarchitected#ContextContent", + "traits": { + "smithy.api#documentation": "

The typed content of the context. The structure contains application-specific fields such as account IDs, Regions, services, and resource types.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateAgentContextResponse": { + "type": "structure", + "members": { + "context": { + "target": "com.amazonaws.wellarchitected#ContextSummary", + "traits": { + "smithy.api#documentation": "

The created context summary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateAgentGoal": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateAgentGoalRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateAgentGoalResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an optimization goal associated with a profile. Goals define specific targets and objectives for the optimization process.

", + "smithy.api#http": { + "method": "POST", + "uri": "/api/v1/agent-profiles/{profileArn}/goals" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "CreateAgentGoal", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "pillars": [ + "COST_OPTIMIZATION" + ], + "title": "smoke-test-goal" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#CreateAgentGoalRequest": { + "type": "structure", + "members": { + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } + }, + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile to associate the goal with.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars to associate with this goal.

", + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The title of the goal.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the goal.

", + "smithy.api#length": { + "min": 1, + "max": 4000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateAgentGoalResponse": { + "type": "structure", + "members": { + "goal": { + "target": "com.amazonaws.wellarchitected#GoalSummary", + "traits": { + "smithy.api#documentation": "

The created goal summary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateAgentProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateAgentProfileRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateAgentProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an optimization profile that defines the scope and configuration for generating recommendations. A profile specifies the execution role, target pillars, and aggregation settings for analyzing your Amazon Web Services resources.

", + "smithy.api#http": { + "method": "POST", + "uri": "/api/v1/agent-profiles" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "CreateAgentProfile", + "params": { + "name": "smoke-test-profile", + "executionRoleArn": "arn:aws:iam::123456789012:role/test-role", + "aggregationConfiguration": [ + { + "accountId": "123456789012", + "regions": [ + "us-west-2" + ], + "accessRoleArn": "arn:aws:iam::123456789012:role/COINAccessRole" + } + ], + "pillars": [ + "COST_OPTIMIZATION" + ], + "tags": [ + { + "key": "test-key", + "value": "test-value" + } + ] + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#CreateAgentProfileRequest": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The system name of the profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The display name of the profile shown to users.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The business overview for this profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars to associate with this profile.

", + "smithy.api#required": {} + } + }, + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Indicates whether deletion protection is enabled for the profile.

" + } + }, + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM execution role used for recommendation actions.

", + "smithy.api#required": {} + } + }, + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The aggregation configuration that defines which Amazon Web Services accounts and Regions to analyze.

", + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } + }, + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", + "traits": { + "smithy.api#documentation": "

The tags to associate with the profile.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateAgentProfileResponse": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The system name of the created profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The display name of the created profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the created profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The business overview of the created profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars associated with the created profile.

", + "smithy.api#required": {} + } + }, + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Indicates whether deletion protection is enabled.

" + } + }, + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM execution role.

", + "smithy.api#required": {} + } + }, + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The aggregation configuration.

", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the created profile.

", + "smithy.api#required": {} + } + }, + "eligibleForScheduledGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for scheduled recommendation generation.

" + } + }, + "eligibleForArchitectureGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for manual architecture generation.

" + } + }, + "fieldErrors": { + "target": "com.amazonaws.wellarchitected#FieldErrors", + "traits": { + "smithy.api#documentation": "

A map of field paths to error messages for invalid or missing input fields.

" + } + }, + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", + "traits": { + "smithy.api#documentation": "

The tags associated with the created profile.

" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was last modified.

", + "smithy.api#timestampFormat": "date-time" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateLensShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateLensShareInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateLensShareOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a lens share.

The owner of a lens can share it with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Lenses provided by Amazon Web Services (Amazon Web Services Official Content) cannot be shared.

Shared access to a lens is not removed until the lens invitation is deleted.

If you share a lens with an organization or OU, all accounts in the organization or OU are granted access to the lens.

For more information, see Sharing a custom lens in the Well-Architected Tool User Guide.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", + "smithy.api#http": { + "method": "POST", + "uri": "/lenses/{LensAlias}/shares", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateLensShareInput": { + "type": "structure", + "members": { + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateLensShareOutput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateLensVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateLensVersionInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateLensVersionOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a new lens version.

A lens can have up to 100 versions.

Use this operation to publish a new lens version after you have imported a lens. The LensAlias is used to identify the lens to be published. The owner of a lens can share the lens with other Amazon Web Services accounts and users in the same Amazon Web Services Region. Only the owner of a lens can delete it.

", + "smithy.api#http": { + "method": "POST", + "uri": "/lenses/{LensAlias}/versions", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateLensVersionInput": { + "type": "structure", + "members": { + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The version of the lens being created.

", + "smithy.api#required": {} + } + }, + "IsMajorVersion": { + "target": "com.amazonaws.wellarchitected#IsMajorVersion", + "traits": { + "smithy.api#documentation": "

Set to true if this new major lens version.

" + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateLensVersionOutput": { + "type": "structure", + "members": { + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

The ARN for the lens.

" + } + }, + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The version of the lens.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateMilestone": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateMilestoneInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateMilestoneOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a milestone for an existing workload.

", + "smithy.api#http": { + "method": "POST", + "uri": "/workloads/{WorkloadId}/milestones", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateMilestoneInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MilestoneName": { + "target": "com.amazonaws.wellarchitected#MilestoneName", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for milestone creation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateMilestoneOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a create milestone call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateProfileInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateProfileOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a profile.

", + "smithy.api#http": { + "method": "POST", + "uri": "/profiles", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateProfileInput": { + "type": "structure", + "members": { + "ProfileName": { + "target": "com.amazonaws.wellarchitected#ProfileName", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Name of the profile.

", + "smithy.api#required": {} + } + }, + "ProfileDescription": { + "target": "com.amazonaws.wellarchitected#ProfileDescription", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The profile description.

", + "smithy.api#required": {} + } + }, + "ProfileQuestions": { + "target": "com.amazonaws.wellarchitected#ProfileQuestionUpdates", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The profile questions.

", + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

The tags assigned to the profile.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateProfileOutput": { + "type": "structure", + "members": { + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", + "traits": { + "smithy.api#documentation": "

The profile ARN.

" + } + }, + "ProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", + "traits": { + "smithy.api#documentation": "

Version of the profile.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateProfileShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateProfileShareInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateProfileShareOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a profile share.

", + "smithy.api#http": { + "method": "POST", + "uri": "/profiles/{ProfileArn}/shares", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateProfileShareInput": { + "type": "structure", + "members": { + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", + "traits": { + "smithy.api#documentation": "

The profile ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateProfileShareOutput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" + }, + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", + "traits": { + "smithy.api#documentation": "

The profile ARN.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateReviewTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateReviewTemplateInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateReviewTemplateOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a review template.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your review templates. If your review template or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", + "smithy.api#http": { + "method": "POST", + "uri": "/reviewTemplates", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateReviewTemplateInput": { + "type": "structure", + "members": { + "TemplateName": { + "target": "com.amazonaws.wellarchitected#TemplateName", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Name of the review template.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.wellarchitected#TemplateDescription", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The review template description.

", + "smithy.api#required": {} + } + }, + "Lenses": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Lenses applied to the review template.

", + "smithy.api#required": {} + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

The tags assigned to the review template.

" + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateReviewTemplateOutput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateTemplateShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateTemplateShareInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateTemplateShareOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a review template share.

The owner of a review template can share it with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region.

Shared access to a review template is not removed until the review template share invitation is deleted.

If you share a review template with an organization or OU, all accounts in the organization or OU are granted access to the review template.

Disclaimer

By sharing your review template with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your review template available to those other accounts.

", + "smithy.api#http": { + "method": "POST", + "uri": "/templates/shares/{TemplateArn}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateTemplateShareInput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateTemplateShareOutput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

" + } + }, + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateWorkload": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateWorkloadInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateWorkloadOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a new workload.

The owner of a workload can share the workload with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the Well-Architected Tool User Guide.

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

When creating a workload using a review template, you must have the following IAM permissions:

  • wellarchitected:GetReviewTemplate

  • wellarchitected:GetReviewTemplateAnswer

  • wellarchitected:ListReviewTemplateAnswers

  • wellarchitected:GetReviewTemplateLensReview

", + "smithy.api#http": { + "method": "POST", + "uri": "/workloads", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateWorkloadInput": { + "type": "structure", + "members": { + "WorkloadName": { + "target": "com.amazonaws.wellarchitected#WorkloadName", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.wellarchitected#WorkloadDescription", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "Environment": { + "target": "com.amazonaws.wellarchitected#WorkloadEnvironment", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "AccountIds": { + "target": "com.amazonaws.wellarchitected#WorkloadAccountIds" + }, + "AwsRegions": { + "target": "com.amazonaws.wellarchitected#WorkloadAwsRegions" + }, + "NonAwsRegions": { + "target": "com.amazonaws.wellarchitected#WorkloadNonAwsRegions" + }, + "PillarPriorities": { + "target": "com.amazonaws.wellarchitected#WorkloadPillarPriorities" + }, + "ArchitecturalDesign": { + "target": "com.amazonaws.wellarchitected#WorkloadArchitecturalDesign" + }, + "ReviewOwner": { + "target": "com.amazonaws.wellarchitected#WorkloadReviewOwner" + }, + "IndustryType": { + "target": "com.amazonaws.wellarchitected#WorkloadIndustryType" + }, + "Industry": { + "target": "com.amazonaws.wellarchitected#WorkloadIndustry" + }, + "Lenses": { + "target": "com.amazonaws.wellarchitected#WorkloadLenses", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

The tags to be associated with the workload.

" + } + }, + "DiscoveryConfig": { + "target": "com.amazonaws.wellarchitected#WorkloadDiscoveryConfig", + "traits": { + "smithy.api#documentation": "

Well-Architected discovery configuration settings associated to the workload.

" + } + }, + "Applications": { + "target": "com.amazonaws.wellarchitected#WorkloadApplications", + "traits": { + "smithy.api#documentation": "

List of AppRegistry application ARNs associated to the workload.

" + } + }, + "ProfileArns": { + "target": "com.amazonaws.wellarchitected#WorkloadProfileArns", + "traits": { + "smithy.api#documentation": "

The list of profile ARNs associated with the workload.

" + } + }, + "ReviewTemplateArns": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateArns", + "traits": { + "smithy.api#documentation": "

The list of review template ARNs to associate with the workload.

" + } + }, + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#WorkloadJiraConfigurationInput", + "traits": { + "smithy.api#documentation": "

Jira configuration settings when creating a workload.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for workload creation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateWorkloadOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "WorkloadArn": { + "target": "com.amazonaws.wellarchitected#WorkloadArn" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a create workload call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#CreateWorkloadShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#CreateWorkloadShareInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#CreateWorkloadShareOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Create a workload share.

The owner of a workload can share it with other Amazon Web Services accounts and users in the same Amazon Web Services Region. Shared access to a workload is not removed until the workload invitation is deleted.

If you share a workload with an organization or OU, all accounts in the organization or OU are granted access to the workload.

For more information, see Sharing a workload in the Well-Architected Tool User Guide.

", + "smithy.api#http": { + "method": "POST", + "uri": "/workloads/{WorkloadId}/shares", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#CreateWorkloadShareInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "PermissionType": { + "target": "com.amazonaws.wellarchitected#PermissionType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for Create Workload Share

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#CreateWorkloadShareOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" + } + }, + "traits": { + "smithy.api#documentation": "

Input for Create Workload Share

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#Criticality": { + "type": "enum", + "members": { + "MISSION_CRITICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MISSION_CRITICAL" + } + }, + "BUSINESS_CRITICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BUSINESS_CRITICAL" + } + }, + "NON_CRITICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NON_CRITICAL" + } + }, + "TEST_DEVELOPMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEST_DEVELOPMENT" + } + } + } + }, + "com.amazonaws.wellarchitected#CrossPillarBenefit": { + "type": "structure", + "members": { + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", + "traits": { + "smithy.api#documentation": "

The pillar that would be positively impacted.

", + "smithy.api#required": {} + } + }, + "title": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A short phrase describing the outcome.

", + "smithy.api#length": { + "min": 3, + "max": 80 + }, + "smithy.api#required": {} + } + }, + "description": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of what changes and why it matters.

", + "smithy.api#length": { + "min": 30, + "max": 300 + }, + "smithy.api#required": {} + } + }, + "impact": { + "target": "com.amazonaws.wellarchitected#ImpactCategory", + "traits": { + "smithy.api#documentation": "

The severity of the benefit.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A benefit on a different pillar from acting on the recommendation.

" + } + }, + "com.amazonaws.wellarchitected#CrossPillarBenefits": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#CrossPillarBenefit" + } + }, + "com.amazonaws.wellarchitected#DefinitionType": { + "type": "enum", + "members": { + "WORKLOAD_METADATA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WORKLOAD_METADATA" + } + }, + "APP_REGISTRY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APP_REGISTRY" + } + } + } + }, + "com.amazonaws.wellarchitected#DeleteAgentContext": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteAgentContextRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#DeleteAgentContextResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a context associated with a profile.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/api/v1/agent-profiles/{profileArn}/contexts/{id}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "DeleteAgentContext", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#DeleteAgentContextRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the context.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the context to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteAgentContextResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#DeleteAgentGoal": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteAgentGoalRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#DeleteAgentGoalResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an optimization goal from a profile.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/api/v1/agent-profiles/{profileArn}/goals/{id}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "DeleteAgentGoal", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#DeleteAgentGoalRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the goal.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the goal to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteAgentGoalResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#DeleteAgentProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteAgentProfileRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#DeleteAgentProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an optimization profile and its associated configuration. This action cannot be undone.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/api/v1/agent-profiles/{profileArn}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "DeleteAgentProfile", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#DeleteAgentProfileRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteAgentProfileResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#DeleteLens": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteLensInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete an existing lens.

Only the owner of a lens can delete it. After the lens is deleted, Amazon Web Services accounts and users that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/lenses/{LensAlias}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteLensInput": { + "type": "structure", + "members": { + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "LensStatus": { + "target": "com.amazonaws.wellarchitected#LensStatusType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The status of the lens to be deleted.

", + "smithy.api#httpQuery": "LensStatus", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteLensShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteLensShareInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a lens share.

After the lens share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/lenses/{LensAlias}/shares/{ShareId}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteLensShareInput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteProfileInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a profile.

Disclaimer

By sharing your profile with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your profile available to those other accounts. Those other accounts may continue to access and use your shared profile even if you delete the profile from your own Amazon Web Services account or terminate your Amazon Web Services account.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/profiles/{ProfileArn}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteProfileInput": { + "type": "structure", + "members": { + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", + "traits": { + "smithy.api#documentation": "

The profile ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteProfileShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteProfileShareInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a profile share.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/profiles/{ProfileArn}/shares/{ShareId}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteProfileShareInput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", + "traits": { + "smithy.api#documentation": "

The profile ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteReviewTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteReviewTemplateInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a review template.

Only the owner of a review template can delete it.

After the review template is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/reviewTemplates/{TemplateArn}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteReviewTemplateInput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteTemplateShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteTemplateShareInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a review template share.

After the review template share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/templates/shares/{TemplateArn}/{ShareId}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteTemplateShareInput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteWorkload": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteWorkloadInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete an existing workload.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/workloads/{WorkloadId}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteWorkloadInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for workload deletion.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DeleteWorkloadShare": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DeleteWorkloadShareInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Delete a workload share.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/workloads/{WorkloadId}/shares/{ShareId}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DeleteWorkloadShareInput": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#httpQuery": "ClientRequestToken", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for Delete Workload Share

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DifferenceStatus": { + "type": "enum", + "members": { + "UPDATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATED" + } + }, + "NEW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NEW" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETED" + } + } + } + }, + "com.amazonaws.wellarchitected#DisassociateLenses": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DisassociateLensesInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Disassociate a lens from a workload.

Up to 10 lenses can be disassociated from a workload in a single API operation.

The Amazon Web Services Well-Architected Framework lens (wellarchitected) cannot be removed from a workload.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/workloads/{WorkloadId}/disassociateLenses", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DisassociateLensesInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "LensAliases": { + "target": "com.amazonaws.wellarchitected#LensAliases", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Input to disassociate lens reviews.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DisassociateProfiles": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#DisassociateProfilesInput" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#ConflictException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Disassociate a profile from a workload.

", + "smithy.api#http": { + "method": "PATCH", + "uri": "/workloads/{WorkloadId}/disassociateProfiles", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#DisassociateProfilesInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ProfileArns": { + "target": "com.amazonaws.wellarchitected#ProfileArns", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The list of profile ARNs to disassociate from the workload.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#DiscoveryIntegrationStatus": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.wellarchitected#DisplayText": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.wellarchitected#Effort": { + "type": "enum", + "members": { + "LARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LARGE" + } + }, + "MEDIUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MEDIUM" + } + }, + "SMALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SMALL" + } + } + } + }, + "com.amazonaws.wellarchitected#ErrorDetails": { + "type": "structure", + "members": { + "code": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The status code identifying the type of error.

", + "smithy.api#required": {} + } + }, + "message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A human-readable description of the error.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Details about an error that occurred during recommendation generation.

" + } + }, + "com.amazonaws.wellarchitected#ExceptionMessage": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Description of the error.

" + } + }, + "com.amazonaws.wellarchitected#ExceptionResourceId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Identifier of the resource affected.

" + } + }, + "com.amazonaws.wellarchitected#ExceptionResourceType": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Type of the resource affected.

" + } + }, + "com.amazonaws.wellarchitected#ExportLens": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ExportLensInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ExportLensOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Export an existing lens.

Only the owner of a lens can export it. Lenses provided by Amazon Web Services (Amazon Web Services Official Content) cannot be exported.

Lenses are defined in JSON. For more information, see JSON format specification in the Well-Architected Tool User Guide.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your custom lenses. If your custom lens or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", + "smithy.api#http": { + "method": "GET", + "uri": "/lenses/{LensAlias}/export", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#ExportLensInput": { + "type": "structure", + "members": { + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The lens version to be exported.

", + "smithy.api#httpQuery": "LensVersion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#ExportLensOutput": { + "type": "structure", + "members": { + "LensJSON": { + "target": "com.amazonaws.wellarchitected#LensJSON", + "traits": { + "smithy.api#documentation": "

The JSON representation of a lens.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#FeedbackCategory": { + "type": "enum", + "members": { + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OTHER" + } + }, + "RECOMMENDATION_NOT_RELEVANT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RECOMMENDATION_NOT_RELEVANT" + } + }, + "RESOURCE_NOT_IMPORTANT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE_NOT_IMPORTANT" + } + }, + "RESOURCE_TYPE_NOT_IMPORTANT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE_TYPE_NOT_IMPORTANT" + } + }, + "RECOMMENDATION_INCORRECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RECOMMENDATION_INCORRECT" + } + } + } + }, + "com.amazonaws.wellarchitected#FieldErrorMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.wellarchitected#FieldErrorPath": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.wellarchitected#FieldErrors": { + "type": "map", + "key": { + "target": "com.amazonaws.wellarchitected#FieldErrorPath" + }, + "value": { + "target": "com.amazonaws.wellarchitected#FieldErrorMessage" + }, + "traits": { + "smithy.api#length": { + "max": 100 + } + } + }, + "com.amazonaws.wellarchitected#FlaggedResources": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 9999 + } + } + }, + "com.amazonaws.wellarchitected#GenerationStatus": { + "type": "enum", + "members": { + "QUEUED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QUEUED" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ERROR" + } + } + } + }, + "com.amazonaws.wellarchitected#GetAgentContext": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#GetAgentContextRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#GetAgentContextResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves detailed information about a specific context associated with a profile.

", + "smithy.api#http": { + "method": "GET", + "uri": "/api/v1/agent-profiles/{profileArn}/contexts/{id}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "GetAgentContext", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#GetAgentContextRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the context.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the context to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentContextResponse": { + "type": "structure", + "members": { + "context": { + "target": "com.amazonaws.wellarchitected#ContextSummary", + "traits": { + "smithy.api#documentation": "

The retrieved context summary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentGoal": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#GetAgentGoalRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#GetAgentGoalResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves detailed information about a specific optimization goal.

", + "smithy.api#http": { + "method": "GET", + "uri": "/api/v1/agent-profiles/{profileArn}/goals/{id}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "GetAgentGoal", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#GetAgentGoalRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the goal.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the goal to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentGoalResponse": { + "type": "structure", + "members": { + "goal": { + "target": "com.amazonaws.wellarchitected#GoalSummary", + "traits": { + "smithy.api#documentation": "

The retrieved goal summary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#GetAgentProfileRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#GetAgentProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves detailed information about an optimization profile, including its configuration and metadata.

", + "smithy.api#http": { + "method": "GET", + "uri": "/api/v1/agent-profiles/{profileArn}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "GetAgentProfile", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-security-profile" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] + } + }, + "com.amazonaws.wellarchitected#GetAgentProfileRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentProfileResponse": { + "type": "structure", + "members": { + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The system name of the profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The display name of the profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The business overview of the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars associated with the profile.

", + "smithy.api#required": {} + } + }, + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Indicates whether deletion protection is enabled.

" + } + }, + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM execution role.

", + "smithy.api#required": {} + } + }, + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The aggregation configuration.

", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile.

", + "smithy.api#required": {} + } + }, + "eligibleForScheduledGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for scheduled recommendation generation.

" + } + }, + "eligibleForArchitectureGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for manual architecture generation.

" + } + }, + "fieldErrors": { + "target": "com.amazonaws.wellarchitected#FieldErrors", + "traits": { + "smithy.api#documentation": "

A map of field paths to error messages for invalid or missing input fields.

" + } + }, + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", + "traits": { + "smithy.api#documentation": "

The tags associated with the profile.

" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was last modified.

", + "smithy.api#timestampFormat": "date-time" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentRecommendation": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendationRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendationResponse" + }, + "errors": [ { - "target": "com.amazonaws.wellarchitected#ConflictException" + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, { "target": "com.amazonaws.wellarchitected#InternalServerException" @@ -1277,7 +5367,41 @@ "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves detailed information about a specific optimization recommendation, including its impact analysis, content, and implementation guidance.

", + "smithy.api#http": { + "method": "GET", + "uri": "/api/v1/agent-recommendations/{recommendationArn}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ] + } + }, + "com.amazonaws.wellarchitected#GetAgentRecommendationGeneration": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendationGenerationRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendationGenerationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" @@ -1287,177 +5411,431 @@ } ], "traits": { - "smithy.api#documentation": "

Create a new lens version.

\n

A lens can have up to 100 versions.

\n

Use this operation to publish a new lens version after you have imported a lens. The LensAlias \n is used to identify the lens to be published. \n The owner of a lens can share the lens with other \n Amazon Web Services accounts and users in the same Amazon Web Services Region. Only the owner of a lens can delete it.\n

", + "smithy.api#documentation": "

Retrieves information about a recommendation generation process, including its status, progress, and results. Recommendation generation is asynchronous: poll this operation until status reaches a terminal value of COMPLETED (results are ready) or ERROR (see errorDetails). Intermediate values are QUEUED and IN_PROGRESS.

", "smithy.api#http": { - "method": "POST", - "uri": "/lenses/{LensAlias}/versions", - "code": 200 + "method": "GET", + "uri": "/api/v1/agent-profiles/{profileArn}/generations/{generationId}" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ] + } + }, + "com.amazonaws.wellarchitected#GetAgentRecommendationGenerationRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The ARN of the optimization profile associated with this generation.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "generationId": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the recommendation generation to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateLensVersionInput": { + "com.amazonaws.wellarchitected#GetAgentRecommendationGenerationResponse": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the recommendation generation.

", + "smithy.api#required": {} + } + }, + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile used for this generation.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the recommendation generation.

" + } + }, + "status": { + "target": "com.amazonaws.wellarchitected#GenerationStatus", + "traits": { + "smithy.api#documentation": "

The current status of the recommendation generation.

", + "smithy.api#required": {} + } + }, + "estimatedCompletionTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The estimated time for the generation to complete.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that started this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the generation was started.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the generation was last modified.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "additionalContext": { + "target": "smithy.api#Document", + "traits": { + "smithy.api#documentation": "

Additional context information provided to guide the recommendation generation process.

" + } + }, + "scope": { + "target": "com.amazonaws.wellarchitected#Scope", + "traits": { + "smithy.api#documentation": "

The scope configuration that defines which pillars and goals to focus on during generation.

" + } + }, + "startedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the recommendation generation process started.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "endedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the recommendation generation process completed.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "progress": { + "target": "com.amazonaws.wellarchitected#Progress", + "traits": { + "smithy.api#documentation": "

Current progress information including steps completed and completion percentage.

" + } + }, + "errorDetails": { + "target": "com.amazonaws.wellarchitected#ErrorDetails", + "traits": { + "smithy.api#documentation": "

Details about the error if the generation status is ERROR.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentRecommendationRequest": { + "type": "structure", + "members": { + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "remediationType": { + "target": "com.amazonaws.wellarchitected#RemediationType", + "traits": { + "smithy.api#documentation": "

Optional filter on remediation type.

", + "smithy.api#httpQuery": "remediationType" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetAgentRecommendationResponse": { + "type": "structure", + "members": { + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#RecommendationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation.

", + "smithy.api#required": {} + } + }, + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated profile.

", + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The title of the recommendation.

", + "smithy.api#length": { + "min": 3, + "max": 120 + }, + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the recommendation.

", + "smithy.api#length": { + "min": 80, + "max": 500 + }, + "smithy.api#required": {} + } + }, + "type": { + "target": "com.amazonaws.wellarchitected#RecommendationType", + "traits": { + "smithy.api#documentation": "

The type of the recommendation.

", + "smithy.api#required": {} + } + }, + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillar that the recommendation addresses.

", + "smithy.api#required": {} + } + }, + "priority": { + "target": "com.amazonaws.wellarchitected#Priority", + "traits": { + "smithy.api#documentation": "

The priority of the recommendation.

", + "smithy.api#required": {} + } + }, + "effort": { + "target": "com.amazonaws.wellarchitected#Effort", + "traits": { + "smithy.api#documentation": "

The effort required to implement the recommendation.

", + "smithy.api#required": {} + } + }, + "status": { + "target": "com.amazonaws.wellarchitected#RecommendationStatus", + "traits": { + "smithy.api#documentation": "

The current status of the recommendation.

", + "smithy.api#required": {} + } + }, + "state": { + "target": "com.amazonaws.wellarchitected#RecommendationState", + "traits": { + "smithy.api#documentation": "

The current state of the recommendation.

", + "smithy.api#required": {} + } + }, + "updateReason": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The free-text reason associated with the recommendation's most recent status update.

", + "smithy.api#length": { + "min": 1, + "max": 4096 + } + } + }, + "impact": { + "target": "com.amazonaws.wellarchitected#ImpactCategory", + "traits": { + "smithy.api#documentation": "

The severity of the recommendation's impact.

", + "smithy.api#required": {} + } + }, + "roi": { + "target": "com.amazonaws.wellarchitected#Roi", + "traits": { + "smithy.api#documentation": "

The return on investment estimate for the recommendation.

", + "smithy.api#required": {} + } + }, + "numberOfResources": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of Amazon Web Services resources this recommendation affects.

" + } + }, + "awsServices": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Web Services services that the recommendation applies to.

" } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "businessUnits": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The version of the lens being created.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The business units that own the affected resources.

" } }, - "IsMajorVersion": { - "target": "com.amazonaws.wellarchitected#IsMajorVersion", + "applications": { + "target": "com.amazonaws.wellarchitected#StringList", "traits": { - "smithy.api#documentation": "

Set to true if this new major lens version.

" + "smithy.api#documentation": "

The applications that the recommendation targets.

" } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "impactDetails": { + "target": "com.amazonaws.wellarchitected#ImpactDetails", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, + "smithy.api#documentation": "

Detailed impact information for the recommendation.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#CreateLensVersionOutput": { - "type": "structure", - "members": { - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + }, + "insights": { + "target": "com.amazonaws.wellarchitected#InsightList", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#documentation": "

A list of insights about the recommendation.

", + "smithy.api#required": {} } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "highlights": { + "target": "com.amazonaws.wellarchitected#Highlights", "traits": { - "smithy.api#documentation": "

The version of the lens.

" + "smithy.api#documentation": "

Highlights describing what was detected.

", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.wellarchitected#CreateMilestone": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#CreateMilestoneInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#CreateMilestoneOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" + "remediationSummary": { + "target": "com.amazonaws.wellarchitected#RemediationSummary", + "traits": { + "smithy.api#documentation": "

A high-level summary of the recommended remediation.

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "crossPillarBenefits": { + "target": "com.amazonaws.wellarchitected#CrossPillarBenefits", + "traits": { + "smithy.api#documentation": "

Cross-pillar benefits of acting on the recommendation.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "tradeOffs": { + "target": "com.amazonaws.wellarchitected#TradeOffs", + "traits": { + "smithy.api#documentation": "

Trade-offs of acting on the recommendation.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + "sources": { + "target": "com.amazonaws.wellarchitected#RecommendationSourceList", + "traits": { + "smithy.api#documentation": "

Sources that generated this recommendation.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "goals": { + "target": "com.amazonaws.wellarchitected#RecommendationGoals", + "traits": { + "smithy.api#documentation": "

Goals that this recommendation targets.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Create a milestone for an existing workload.

", - "smithy.api#http": { - "method": "POST", - "uri": "/workloads/{WorkloadId}/milestones", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#CreateMilestoneInput": { - "type": "structure", - "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

A set of key-value pairs associated with the recommendation, used for cost allocation and access control.

" } }, - "MilestoneName": { - "target": "com.amazonaws.wellarchitected#MilestoneName", + "createdBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The identifier of the user or system that created this recommendation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The timestamp when the recommendation was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" } - } - }, - "traits": { - "smithy.api#documentation": "

Input for milestone creation.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#CreateMilestoneOutput": { - "type": "structure", - "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this recommendation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the recommendation was last modified.

", + "smithy.api#timestampFormat": "date-time" + } + }, + "remediations": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationRemediations", + "traits": { + "smithy.api#documentation": "

A list of remediations for the recommendation.

" + } } }, "traits": { - "smithy.api#documentation": "

Output of a create milestone call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateProfile": { + "com.amazonaws.wellarchitected#GetAnswer": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateProfileInput" + "target": "com.amazonaws.wellarchitected#GetAnswerInput" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateProfileOutput" + "target": "com.amazonaws.wellarchitected#GetAnswerOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" @@ -1467,87 +5845,87 @@ } ], "traits": { - "smithy.api#documentation": "

Create a profile.

", + "smithy.api#documentation": "

Get the answer to a specific question in a workload review.

", "smithy.api#http": { - "method": "POST", - "uri": "/profiles", + "method": "GET", + "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#CreateProfileInput": { + "com.amazonaws.wellarchitected#GetAnswerInput": { "type": "structure", "members": { - "ProfileName": { - "target": "com.amazonaws.wellarchitected#ProfileName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Name of the profile.

", - "smithy.api#required": {} - } - }, - "ProfileDescription": { - "target": "com.amazonaws.wellarchitected#ProfileDescription", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The profile description.

", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ProfileQuestions": { - "target": "com.amazonaws.wellarchitected#ProfileQuestionUpdates", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The profile questions.

", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", "traits": { - "smithy.api#documentation": "

The tags assigned to the profile.

" + "smithy.api#httpQuery": "MilestoneNumber" } } }, "traits": { + "smithy.api#documentation": "

Input to get answer.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateProfileOutput": { + "com.amazonaws.wellarchitected#GetAnswerOutput": { "type": "structure", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", - "traits": { - "smithy.api#documentation": "

The profile ARN.

" - } + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "ProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

Version of the profile.

" + "smithy.api#documentation": "

The ARN for the lens.

" } + }, + "Answer": { + "target": "com.amazonaws.wellarchitected#Answer" } }, "traits": { + "smithy.api#documentation": "

Output of a get answer call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateProfileShare": { + "com.amazonaws.wellarchitected#GetConsolidatedReport": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateProfileShareInput" + "target": "com.amazonaws.wellarchitected#GetConsolidatedReportInput" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateProfileShareOutput" + "target": "com.amazonaws.wellarchitected#GetConsolidatedReportOutput" }, "errors": [ { @@ -1559,12 +5937,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -1573,38 +5945,56 @@ } ], "traits": { - "smithy.api#documentation": "

Create a profile share.

", + "smithy.api#documentation": "

Get a consolidated report of your workloads.

You can optionally choose to include workloads that have been shared with you.

", "smithy.api#http": { - "method": "POST", - "uri": "/profiles/{ProfileArn}/shares", + "method": "GET", + "uri": "/consolidatedReport", "code": 200 - } + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#CreateProfileShareInput": { + "com.amazonaws.wellarchitected#GetConsolidatedReportInput": { "type": "structure", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "Format": { + "target": "com.amazonaws.wellarchitected#ReportFormat", "traits": { - "smithy.api#documentation": "

The profile ARN.

", - "smithy.api#httpLabel": {}, + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The format of the consolidated report.

For PDF, Base64String is returned. For JSON, Metrics is returned.

", + "smithy.api#httpQuery": "Format", "smithy.api#required": {} } }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith", + "IncludeSharedResources": { + "target": "com.amazonaws.wellarchitected#IncludeSharedResources", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Set to true to have shared resources included in the report.

", + "smithy.api#httpQuery": "IncludeSharedResources" } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#httpQuery": "NextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 15 + } } } }, @@ -1612,47 +6002,41 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateProfileShareOutput": { + "com.amazonaws.wellarchitected#GetConsolidatedReportOutput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" - }, - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "Metrics": { + "target": "com.amazonaws.wellarchitected#ConsolidatedReportMetrics", "traits": { - "smithy.api#documentation": "

The profile ARN.

" + "smithy.api#documentation": "

The metrics that make up the consolidated report.

Only returned when JSON format is requested.

" } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "Base64String": { + "target": "com.amazonaws.wellarchitected#Base64String" } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateReviewTemplate": { + "com.amazonaws.wellarchitected#GetGlobalSettings": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateReviewTemplateInput" + "target": "smithy.api#Unit" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateReviewTemplateOutput" + "target": "com.amazonaws.wellarchitected#GetGlobalSettingsOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -1661,70 +6045,36 @@ } ], "traits": { - "smithy.api#documentation": "

Create a review template.

\n \n

\n Disclaimer\n

\n

Do not include or gather personal identifiable information (PII) of end users or\n other identifiable individuals in or via your review templates. If your review\n template or those shared with you and used in your account do include or collect PII\n you are responsible for: ensuring that the included PII is processed in accordance\n with applicable law, providing adequate privacy notices, and obtaining necessary\n consents for processing such data.

\n
", + "smithy.api#documentation": "

Global settings for all workloads.

", "smithy.api#http": { - "method": "POST", - "uri": "/reviewTemplates", + "method": "GET", + "uri": "/global-settings", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#CreateReviewTemplateInput": { + "com.amazonaws.wellarchitected#GetGlobalSettingsOutput": { "type": "structure", "members": { - "TemplateName": { - "target": "com.amazonaws.wellarchitected#TemplateName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Name of the review template.

", - "smithy.api#required": {} - } - }, - "Description": { - "target": "com.amazonaws.wellarchitected#TemplateDescription", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The review template description.

", - "smithy.api#required": {} - } - }, - "Lenses": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", + "OrganizationSharingStatus": { + "target": "com.amazonaws.wellarchitected#OrganizationSharingStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Lenses applied to the review template.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Amazon Web Services Organizations sharing status.

" } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" - }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "DiscoveryIntegrationStatus": { + "target": "com.amazonaws.wellarchitected#DiscoveryIntegrationStatus", "traits": { - "smithy.api#documentation": "

The tags assigned to the review template.

" + "smithy.api#documentation": "

Discovery integration status.

" } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#CreateReviewTemplateOutput": { - "type": "structure", - "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#AccountJiraConfigurationOutput", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

Jira configuration status.

" } } }, @@ -1732,30 +6082,24 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateTemplateShare": { + "com.amazonaws.wellarchitected#GetLens": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateTemplateShareInput" + "target": "com.amazonaws.wellarchitected#GetLensInput" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateTemplateShareOutput" + "target": "com.amazonaws.wellarchitected#GetLensOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -1764,38 +6108,32 @@ } ], "traits": { - "smithy.api#documentation": "

Create a review template share.

\n

The owner of a review template can share it with other Amazon Web Services accounts,\n users, an organization, and organizational units (OUs) in the same Amazon Web Services Region.

\n

Shared access to a review template is not removed until the review template share\n invitation is deleted.

\n

If you share a review template with an organization or OU, all accounts in the\n organization or OU are granted access to the review template.

\n \n

\n Disclaimer\n

\n

By sharing your review template with other Amazon Web Services accounts, you\n acknowledge that Amazon Web Services will make your review template available to\n those other accounts.

\n
", + "smithy.api#documentation": "

Get an existing lens.

", "smithy.api#http": { - "method": "POST", - "uri": "/templates/shares/{TemplateArn}", + "method": "GET", + "uri": "/lenses/{LensAlias}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#CreateTemplateShareInput": { + "com.amazonaws.wellarchitected#GetLensInput": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#documentation": "

The review template ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The lens version to be retrieved.

", + "smithy.api#httpQuery": "LensVersion" } } }, @@ -1803,47 +6141,38 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateTemplateShareOutput": { + "com.amazonaws.wellarchitected#GetLensOutput": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "Lens": { + "target": "com.amazonaws.wellarchitected#Lens", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

A lens return object.

" } - }, - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateWorkload": { + "com.amazonaws.wellarchitected#GetLensReview": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateWorkloadInput" + "target": "com.amazonaws.wellarchitected#GetLensReviewInput" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateWorkloadOutput" + "target": "com.amazonaws.wellarchitected#GetLensReviewOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -1852,161 +6181,82 @@ } ], "traits": { - "smithy.api#documentation": "

Create a new workload.

\n

The owner of a workload can share the workload with other Amazon Web Services accounts, users,\n an organization, and organizational units (OUs) \n in the same Amazon Web Services Region. Only the owner of a workload can delete it.

\n

For more information, see Defining a Workload in the\n Well-Architected Tool User Guide.

\n \n

Either AwsRegions, NonAwsRegions, or both must be specified when\n creating a workload.

\n

You also must specify ReviewOwner, even though the\n parameter is listed as not being required in the following section.\n

\n
\n

When creating a workload using a review template, you must have the following IAM permissions:

\n
    \n
  • \n

    \n wellarchitected:GetReviewTemplate\n

    \n
  • \n
  • \n

    \n wellarchitected:GetReviewTemplateAnswer\n

    \n
  • \n
  • \n

    \n wellarchitected:ListReviewTemplateAnswers\n

    \n
  • \n
  • \n

    \n wellarchitected:GetReviewTemplateLensReview\n

    \n
  • \n
", + "smithy.api#documentation": "

Get lens review.

", "smithy.api#http": { - "method": "POST", - "uri": "/workloads", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#CreateWorkloadInput": { - "type": "structure", - "members": { - "WorkloadName": { - "target": "com.amazonaws.wellarchitected#WorkloadName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "Description": { - "target": "com.amazonaws.wellarchitected#WorkloadDescription", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "Environment": { - "target": "com.amazonaws.wellarchitected#WorkloadEnvironment", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "AccountIds": { - "target": "com.amazonaws.wellarchitected#WorkloadAccountIds" - }, - "AwsRegions": { - "target": "com.amazonaws.wellarchitected#WorkloadAwsRegions" - }, - "NonAwsRegions": { - "target": "com.amazonaws.wellarchitected#WorkloadNonAwsRegions" - }, - "PillarPriorities": { - "target": "com.amazonaws.wellarchitected#WorkloadPillarPriorities" - }, - "ArchitecturalDesign": { - "target": "com.amazonaws.wellarchitected#WorkloadArchitecturalDesign" - }, - "ReviewOwner": { - "target": "com.amazonaws.wellarchitected#WorkloadReviewOwner" - }, - "IndustryType": { - "target": "com.amazonaws.wellarchitected#WorkloadIndustryType" - }, - "Industry": { - "target": "com.amazonaws.wellarchitected#WorkloadIndustry" - }, - "Lenses": { - "target": "com.amazonaws.wellarchitected#WorkloadLenses", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" - }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", - "traits": { - "smithy.api#documentation": "

The tags to be associated with the workload.

" - } - }, - "DiscoveryConfig": { - "target": "com.amazonaws.wellarchitected#WorkloadDiscoveryConfig", - "traits": { - "smithy.api#documentation": "

Well-Architected discovery configuration settings associated to the workload.

" - } - }, - "Applications": { - "target": "com.amazonaws.wellarchitected#WorkloadApplications", - "traits": { - "smithy.api#documentation": "

List of AppRegistry application ARNs associated to the workload.

" - } + "method": "GET", + "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}", + "code": 200 }, - "ProfileArns": { - "target": "com.amazonaws.wellarchitected#WorkloadProfileArns", + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#GetLensReviewInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#documentation": "

The list of profile ARNs associated with the workload.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "ReviewTemplateArns": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateArns", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#documentation": "

The list of review template ARNs to associate with the workload.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#WorkloadJiraConfigurationInput", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", "traits": { - "smithy.api#documentation": "

Jira configuration settings when creating a workload.

" + "smithy.api#httpQuery": "MilestoneNumber" } } }, "traits": { - "smithy.api#documentation": "

Input for workload creation.

", + "smithy.api#documentation": "

Input to get lens review.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateWorkloadOutput": { + "com.amazonaws.wellarchitected#GetLensReviewOutput": { "type": "structure", "members": { "WorkloadId": { "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "WorkloadArn": { - "target": "com.amazonaws.wellarchitected#WorkloadArn" + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensReview": { + "target": "com.amazonaws.wellarchitected#LensReview" } }, "traits": { - "smithy.api#documentation": "

Output of a create workload call.

", + "smithy.api#documentation": "

Output of a get lens review call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#CreateWorkloadShare": { + "com.amazonaws.wellarchitected#GetLensReviewReport": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#CreateWorkloadShareInput" + "target": "com.amazonaws.wellarchitected#GetLensReviewReportInput" }, "output": { - "target": "com.amazonaws.wellarchitected#CreateWorkloadShareOutput" + "target": "com.amazonaws.wellarchitected#GetLensReviewReportOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -2015,15 +6265,18 @@ } ], "traits": { - "smithy.api#documentation": "

Create a workload share.

\n

The owner of a workload can share it with other Amazon Web Services accounts and users in the same\n Amazon Web Services Region. Shared access to a workload is not removed until the workload invitation is\n deleted.

\n

If you share a workload with an organization or OU, all accounts in the organization or OU\n are granted access to the workload.

\n

For more information, see Sharing a workload in the\n Well-Architected Tool User Guide.

", + "smithy.api#documentation": "

Get lens review report.

", "smithy.api#http": { - "method": "POST", - "uri": "/workloads/{WorkloadId}/shares", + "method": "GET", + "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/report", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#CreateWorkloadShareInput": { + "com.amazonaws.wellarchitected#GetLensReviewReportInput": { "type": "structure", "members": { "WorkloadId": { @@ -2033,81 +6286,55 @@ "smithy.api#required": {} } }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "PermissionType": { - "target": "com.amazonaws.wellarchitected#PermissionType", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#clientOptional": {}, + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "MilestoneNumber" } } }, "traits": { - "smithy.api#documentation": "

Input for Create Workload Share

", + "smithy.api#documentation": "

Input to get lens review report.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#CreateWorkloadShareOutput": { + "com.amazonaws.wellarchitected#GetLensReviewReportOutput": { "type": "structure", "members": { "WorkloadId": { "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensReviewReport": { + "target": "com.amazonaws.wellarchitected#LensReviewReport" } }, "traits": { - "smithy.api#documentation": "

Input for Create Workload Share

", + "smithy.api#documentation": "

Output of a get lens review report call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#DefinitionType": { - "type": "enum", - "members": { - "WORKLOAD_METADATA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WORKLOAD_METADATA" - } - }, - "APP_REGISTRY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "APP_REGISTRY" - } - } - } - }, - "com.amazonaws.wellarchitected#DeleteLens": { + "com.amazonaws.wellarchitected#GetLensVersionDifference": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteLensInput" + "target": "com.amazonaws.wellarchitected#GetLensVersionDifferenceInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetLensVersionDifferenceOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2122,15 +6349,18 @@ } ], "traits": { - "smithy.api#documentation": "

Delete an existing lens.

\n

Only the owner of a lens can delete it. After the lens is deleted, Amazon Web Services accounts and users \n that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.\n

\n \n

\n Disclaimer\n

\n

By sharing your custom lenses with other Amazon Web Services accounts, \n you acknowledge that Amazon Web Services will make your custom lenses available to those \n other accounts. Those other accounts may continue to access and use your \n shared custom lenses even if you delete the custom lenses \n from your own Amazon Web Services account or terminate \n your Amazon Web Services account.

\n
", + "smithy.api#documentation": "

Get lens version differences.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/lenses/{LensAlias}", + "method": "GET", + "uri": "/lenses/{LensAlias}/versionDifference", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteLensInput": { + "com.amazonaws.wellarchitected#GetLensVersionDifferenceInput": { "type": "structure", "members": { "LensAlias": { @@ -2140,22 +6370,18 @@ "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "BaseLensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The base version of the lens.

", + "smithy.api#httpQuery": "BaseLensVersion" } }, - "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatusType", + "TargetLensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The status of the lens to be deleted.

", - "smithy.api#httpQuery": "LensStatus", - "smithy.api#required": {} + "smithy.api#documentation": "

The lens version to target a difference for.

", + "smithy.api#httpQuery": "TargetLensVersion" } } }, @@ -2163,21 +6389,56 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DeleteLensShare": { + "com.amazonaws.wellarchitected#GetLensVersionDifferenceOutput": { + "type": "structure", + "members": { + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

The ARN for the lens.

" + } + }, + "BaseLensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The base version of the lens.

" + } + }, + "TargetLensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The target lens version for the lens.

" + } + }, + "LatestLensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The latest version of the lens.

" + } + }, + "VersionDifferences": { + "target": "com.amazonaws.wellarchitected#VersionDifferences" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetMilestone": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteLensShareInput" + "target": "com.amazonaws.wellarchitected#GetMilestoneInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetMilestoneOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2192,60 +6453,67 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a lens share.

\n

After the lens share is deleted, Amazon Web Services accounts, users, organizations,\n and organizational units (OUs) \n that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

\n \n

\n Disclaimer\n

\n

By sharing your custom lenses with other Amazon Web Services accounts, \n you acknowledge that Amazon Web Services will make your custom lenses available to those \n other accounts. Those other accounts may continue to access and use your \n shared custom lenses even if you delete the custom lenses \n from your own Amazon Web Services account or terminate \n your Amazon Web Services account.

\n
", + "smithy.api#documentation": "

Get a milestone for an existing workload.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/lenses/{LensAlias}/shares/{ShareId}", + "method": "GET", + "uri": "/workloads/{WorkloadId}/milestones/{MilestoneNumber}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteLensShareInput": { + "com.amazonaws.wellarchitected#GetMilestoneInput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } - }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } } }, "traits": { + "smithy.api#documentation": "

Input to get a milestone.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DeleteProfile": { + "com.amazonaws.wellarchitected#GetMilestoneOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "Milestone": { + "target": "com.amazonaws.wellarchitected#Milestone" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a get milestone call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetProfile": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteProfileInput" + "target": "com.amazonaws.wellarchitected#GetProfileInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetProfileOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2260,15 +6528,18 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a profile.

\n \n

\n Disclaimer\n

\n

By sharing your profile with other Amazon Web Services accounts, \n you acknowledge that Amazon Web Services will make your profile available to those \n other accounts. Those other accounts may continue to access and use your \n shared profile even if you delete the profile \n from your own Amazon Web Services account or terminate \n your Amazon Web Services account.

\n
", + "smithy.api#documentation": "

Get profile information.

", "smithy.api#http": { - "method": "DELETE", + "method": "GET", "uri": "/profiles/{ProfileArn}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteProfileInput": { + "com.amazonaws.wellarchitected#GetProfileInput": { "type": "structure", "members": { "ProfileArn": { @@ -2279,13 +6550,11 @@ "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "ProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The profile version.

", + "smithy.api#httpQuery": "ProfileVersion" } } }, @@ -2293,21 +6562,32 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DeleteProfileShare": { + "com.amazonaws.wellarchitected#GetProfileOutput": { + "type": "structure", + "members": { + "Profile": { + "target": "com.amazonaws.wellarchitected#Profile", + "traits": { + "smithy.api#documentation": "

The profile.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetProfileTemplate": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteProfileShareInput" + "target": "com.amazonaws.wellarchitected#GetProfileTemplateInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetProfileTemplateOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2322,61 +6602,50 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a profile share.

", + "smithy.api#documentation": "

Get profile template.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/profiles/{ProfileArn}/shares/{ShareId}", + "method": "GET", + "uri": "/profileTemplate", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteProfileShareInput": { + "com.amazonaws.wellarchitected#GetProfileTemplateInput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetProfileTemplateOutput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId", - "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", - "traits": { - "smithy.api#documentation": "

The profile ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "ProfileTemplate": { + "target": "com.amazonaws.wellarchitected#ProfileTemplate", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The profile template.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#DeleteReviewTemplate": { + "com.amazonaws.wellarchitected#GetReviewTemplate": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteReviewTemplateInput" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2391,54 +6660,29 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a review template.

\n

Only the owner of a review template can delete it.

\n

After the review template is deleted, Amazon Web Services accounts, users,\n organizations, and organizational units (OUs) that you shared the review template with\n will no longer be able to apply it to new workloads.

", + "smithy.api#documentation": "

Get review template.

", "smithy.api#http": { - "method": "DELETE", + "method": "GET", "uri": "/reviewTemplates/{TemplateArn}", "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#DeleteReviewTemplateInput": { - "type": "structure", - "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", - "traits": { - "smithy.api#documentation": "

The review template ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteTemplateShare": { + "com.amazonaws.wellarchitected#GetReviewTemplateAnswer": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteTemplateShareInput" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateAnswerInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateAnswerOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2453,38 +6697,39 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a review template share.

\n

After the review template share is deleted, Amazon Web Services accounts, users,\n organizations, and organizational units (OUs) that you shared the review template with\n will no longer be able to apply it to new workloads.

", + "smithy.api#documentation": "

Get review template answer.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/templates/shares/{TemplateArn}/{ShareId}", + "method": "GET", + "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteTemplateShareInput": { + "com.amazonaws.wellarchitected#GetReviewTemplateAnswerInput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { + "smithy.api#documentation": "

The review template ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#documentation": "

The review template ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, + "smithy.api#httpLabel": {}, "smithy.api#required": {} } } @@ -2493,21 +6738,57 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DeleteWorkload": { + "com.amazonaws.wellarchitected#GetReviewTemplateAnswerOutput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

" + } + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "Answer": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswer", + "traits": { + "smithy.api#documentation": "

An answer of the question.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetReviewTemplateInput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetReviewTemplateLensReview": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteWorkloadInput" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2522,54 +6803,86 @@ } ], "traits": { - "smithy.api#documentation": "

Delete an existing workload.

", + "smithy.api#documentation": "

Get a lens review associated with a review template.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/workloads/{WorkloadId}", + "method": "GET", + "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteWorkloadInput": { + "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { + "smithy.api#documentation": "

The review template ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, + "smithy.api#httpLabel": {}, "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Input for workload deletion.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DeleteWorkloadShare": { + "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewOutput": { + "type": "structure", + "members": { + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

" + } + }, + "LensReview": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateLensReview", + "traits": { + "smithy.api#documentation": "

A lens review of a question.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetReviewTemplateOutput": { + "type": "structure", + "members": { + "ReviewTemplate": { + "target": "com.amazonaws.wellarchitected#ReviewTemplate", + "traits": { + "smithy.api#documentation": "

The review template.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GetWorkload": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DeleteWorkloadShareInput" + "target": "com.amazonaws.wellarchitected#GetWorkloadInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#GetWorkloadOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, @@ -2584,76 +6897,234 @@ } ], "traits": { - "smithy.api#documentation": "

Delete a workload share.

", + "smithy.api#documentation": "

Get an existing workload.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/workloads/{WorkloadId}/shares/{ShareId}", + "method": "GET", + "uri": "/workloads/{WorkloadId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DeleteWorkloadShareInput": { + "com.amazonaws.wellarchitected#GetWorkloadInput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } + } + }, + "traits": { + "smithy.api#documentation": "

Input to get a workload.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#GetWorkloadOutput": { + "type": "structure", + "members": { + "Workload": { + "target": "com.amazonaws.wellarchitected#Workload" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a get workload call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#GoalIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#UUID" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 }, - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "smithy.api#uniqueItems": {} + } + }, + "com.amazonaws.wellarchitected#GoalSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#GoalSummary" + } + }, + "com.amazonaws.wellarchitected#GoalSummary": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.wellarchitected#UUID", "traits": { - "smithy.api#httpLabel": {}, + "smithy.api#documentation": "

The unique identifier of the goal.

", "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#httpQuery": "ClientRequestToken", - "smithy.api#idempotencyToken": {}, + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated profile.

", "smithy.api#required": {} } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars associated with this goal.

", + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The title of the goal.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the goal.

", + "smithy.api#length": { + "min": 1, + "max": 4000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this goal.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the goal was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this goal.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the goal was last modified.

", + "smithy.api#timestampFormat": "date-time" + } } }, "traits": { - "smithy.api#documentation": "

Input for Delete Workload Share

", - "smithy.api#input": {} + "smithy.api#documentation": "

Summary of an optimization goal associated with a profile.

" } }, - "com.amazonaws.wellarchitected#DifferenceStatus": { + "com.amazonaws.wellarchitected#HelpfulResourceUrl": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The helpful resource URL.

For Amazon Web Services official lenses, this is the helpful resource URL for a question or choice.

For custom lenses, this is the helpful resource URL for a question and is only provided if HelpfulResourceDisplayText was specified for the question.

", + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, + "com.amazonaws.wellarchitected#Highlight": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 250 + } + } + }, + "com.amazonaws.wellarchitected#Highlights": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#Highlight" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, + "com.amazonaws.wellarchitected#ImpactCategory": { "type": "enum", "members": { - "UPDATED": { + "HIGH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "UPDATED" + "smithy.api#enumValue": "HIGH" } }, - "NEW": { + "MEDIUM": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "NEW" + "smithy.api#enumValue": "MEDIUM" } }, - "DELETED": { + "LOW": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "DELETED" + "smithy.api#enumValue": "LOW" } } } }, - "com.amazonaws.wellarchitected#DisassociateLenses": { + "com.amazonaws.wellarchitected#ImpactDetail": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 100 + } + } + }, + "com.amazonaws.wellarchitected#ImpactDetails": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ImpactDetail" + }, + "traits": { + "smithy.api#length": { + "min": 2, + "max": 3 + } + } + }, + "com.amazonaws.wellarchitected#ImportLens": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#DisassociateLensesInput" + "target": "com.amazonaws.wellarchitected#ImportLensInput" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.wellarchitected#ImportLensOutput" }, "errors": [ { @@ -2668,6 +7139,9 @@ { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -2676,777 +7150,815 @@ } ], "traits": { - "smithy.api#documentation": "

Disassociate a lens from a workload.

\n

Up to 10 lenses can be disassociated from a workload in a single API operation.

\n \n

The Amazon Web Services Well-Architected Framework lens (wellarchitected) cannot be\n removed from a workload.

\n
", + "smithy.api#documentation": "

Import a new custom lens or update an existing custom lens.

To update an existing custom lens, specify its ARN as the LensAlias. If no ARN is specified, a new custom lens is created.

The new or updated lens will have a status of DRAFT. The lens cannot be applied to workloads or shared with other Amazon Web Services accounts until it's published with CreateLensVersion.

Lenses are defined in JSON. For more information, see JSON format specification in the Well-Architected Tool User Guide.

A custom lens cannot exceed 500 KB in size.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your custom lenses. If your custom lens or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", "smithy.api#http": { - "method": "PATCH", - "uri": "/workloads/{WorkloadId}/disassociateLenses", + "method": "PUT", + "uri": "/importLens", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#DisassociateLensesInput": { + "com.amazonaws.wellarchitected#ImportLensInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "JSONString": { + "target": "com.amazonaws.wellarchitected#LensJSON", "traits": { - "smithy.api#httpLabel": {}, + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The JSON representation of a lens.

", "smithy.api#required": {} } }, - "LensAliases": { - "target": "com.amazonaws.wellarchitected#LensAliases", + "ClientRequestToken": { + "target": "com.amazonaws.wellarchitected#ClientRequestToken", "traits": { "smithy.api#clientOptional": {}, + "smithy.api#idempotencyToken": {}, "smithy.api#required": {} } + }, + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

Tags to associate to a lens.

" + } } }, "traits": { - "smithy.api#documentation": "

Input to disassociate lens reviews.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#DisassociateProfiles": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#DisassociateProfilesInput" - }, - "output": { - "target": "smithy.api#Unit" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Disassociate a profile from a workload.

", - "smithy.api#http": { - "method": "PATCH", - "uri": "/workloads/{WorkloadId}/disassociateProfiles", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#DisassociateProfilesInput": { + "com.amazonaws.wellarchitected#ImportLensOutput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN for the lens that was created or updated.

" } }, - "ProfileArns": { - "target": "com.amazonaws.wellarchitected#ProfileArns", + "Status": { + "target": "com.amazonaws.wellarchitected#ImportLensStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The list of profile ARNs to disassociate from the workload.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The status of the imported lens.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#DiscoveryIntegrationStatus": { + "com.amazonaws.wellarchitected#ImportLensStatus": { "type": "enum", "members": { - "ENABLED": { + "IN_PROGRESS": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ENABLED" + "smithy.api#enumValue": "IN_PROGRESS" } }, - "DISABLED": { + "COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETE" + } + }, + "ERROR": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#enumValue": "ERROR" } } } }, - "com.amazonaws.wellarchitected#DisplayText": { + "com.amazonaws.wellarchitected#ImprovementPlanUrl": { "type": "string", "traits": { + "smithy.api#documentation": "

The improvement plan URL for a question in an Amazon Web Services official lenses.

This value is only available if the question has been answered.

", "smithy.api#length": { "min": 1, - "max": 64 + "max": 2048 } } }, - "com.amazonaws.wellarchitected#ExceptionMessage": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Description of the error.

" - } - }, - "com.amazonaws.wellarchitected#ExceptionResourceId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Identifier of the resource affected.

" - } - }, - "com.amazonaws.wellarchitected#ExceptionResourceType": { - "type": "string", + "com.amazonaws.wellarchitected#ImprovementSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ImprovementSummary" + }, "traits": { - "smithy.api#documentation": "

Type of the resource affected.

" + "smithy.api#documentation": "

List of improvement summaries of lens review in a workload.

" } }, - "com.amazonaws.wellarchitected#ExportLens": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ExportLensInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ExportLensOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#ImprovementSummary": { + "type": "structure", + "members": { + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "Risk": { + "target": "com.amazonaws.wellarchitected#Risk" }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Export an existing lens.

\n

Only the owner of a lens can export it. Lenses provided by Amazon Web Services (Amazon Web Services Official Content) \n cannot be exported.

\n

Lenses are defined in JSON. For more information, see JSON format specification \n in the Well-Architected Tool User Guide.

\n \n

\n Disclaimer\n

\n

Do not include or gather personal identifiable information (PII) of end users or \n other identifiable individuals in or via your custom lenses. If your custom \n lens or those shared with you and used in your account do include or collect \n PII you are responsible for: ensuring that the included PII is processed in accordance \n with applicable law, providing adequate privacy notices, and obtaining necessary \n consents for processing such data.

\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/lenses/{LensAlias}/export", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#ExportLensInput": { - "type": "structure", - "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "ImprovementPlanUrl": { + "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + }, + "ImprovementPlans": { + "target": "com.amazonaws.wellarchitected#ChoiceImprovementPlans", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The improvement plan details.

This value is only applicable to custom lenses.

" } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#JiraConfiguration", "traits": { - "smithy.api#documentation": "

The lens version to be exported.

", - "smithy.api#httpQuery": "LensVersion" + "smithy.api#documentation": "

Configuration of the Jira integration.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

An improvement summary of a lens review in a workload.

" } }, - "com.amazonaws.wellarchitected#ExportLensOutput": { + "com.amazonaws.wellarchitected#IncludeSharedResources": { + "type": "boolean" + }, + "com.amazonaws.wellarchitected#Insight": { "type": "structure", "members": { - "LensJSON": { - "target": "com.amazonaws.wellarchitected#LensJSON", + "usagePattern": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The JSON representation of a lens.

" + "smithy.api#documentation": "

A description of the usage pattern.

", + "smithy.api#length": { + "min": 100, + "max": 2000 + }, + "smithy.api#required": {} + } + }, + "signalsDetected": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A description of the signals detected.

", + "smithy.api#length": { + "min": 30, + "max": 1500 + } } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

An insight describing a usage pattern and the signals detected.

" } }, - "com.amazonaws.wellarchitected#FlaggedResources": { - "type": "integer", + "com.amazonaws.wellarchitected#InsightList": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#Insight" + }, "traits": { - "smithy.api#range": { + "smithy.api#length": { "min": 1, - "max": 9999 + "max": 5 } } }, - "com.amazonaws.wellarchitected#GetAnswer": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetAnswerInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetAnswerOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Get the answer to a specific question in a workload review.

", - "smithy.api#http": { - "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}", - "code": 200 + "com.amazonaws.wellarchitected#IntegratingService": { + "type": "enum", + "members": { + "JIRA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JIRA" + } } } }, - "com.amazonaws.wellarchitected#GetAnswerInput": { - "type": "structure", + "com.amazonaws.wellarchitected#IntegrationStatus": { + "type": "enum", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "CONFIGURED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "CONFIGURED" } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "NOT_CONFIGURED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "NOT_CONFIGURED" } - }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId", + } + } + }, + "com.amazonaws.wellarchitected#IntegrationStatusInput": { + "type": "enum", + "members": { + "NOT_CONFIGURED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, + "smithy.api#enumValue": "NOT_CONFIGURED" + } + } + } + }, + "com.amazonaws.wellarchitected#InternalServerException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.wellarchitected#ExceptionMessage", + "traits": { + "smithy.api#clientOptional": {}, "smithy.api#required": {} } + } + }, + "traits": { + "smithy.api#documentation": "

There is a problem with the Well-Architected Tool API service.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.wellarchitected#IsApplicable": { + "type": "boolean", + "traits": { + "smithy.api#documentation": "

Defines whether this question is applicable to a lens review.

" + } + }, + "com.amazonaws.wellarchitected#IsMajorVersion": { + "type": "boolean" + }, + "com.amazonaws.wellarchitected#IsReviewOwnerUpdateAcknowledged": { + "type": "boolean" + }, + "com.amazonaws.wellarchitected#IssueManagementType": { + "type": "enum", + "members": { + "AUTO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUTO" + } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "MANUAL": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#enumValue": "MANUAL" } } + } + }, + "com.amazonaws.wellarchitected#ItemId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, + "com.amazonaws.wellarchitected#ItemIds": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ItemId" }, "traits": { - "smithy.api#documentation": "

Input to get answer.

", - "smithy.api#input": {} + "smithy.api#length": { + "min": 1 + } } }, - "com.amazonaws.wellarchitected#GetAnswerOutput": { + "com.amazonaws.wellarchitected#JiraConfiguration": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "JiraIssueUrl": { + "target": "com.amazonaws.wellarchitected#JiraIssueUrl", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#documentation": "

The URL of the associated Jira issue.

" } }, - "Answer": { - "target": "com.amazonaws.wellarchitected#Answer" + "LastSyncedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the Jira configuration was last synced.

" + } } }, "traits": { - "smithy.api#documentation": "

Output of a get answer call.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Configuration of the Jira integration.

" } }, - "com.amazonaws.wellarchitected#GetConsolidatedReport": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetConsolidatedReportInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetConsolidatedReportOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "com.amazonaws.wellarchitected#JiraIssueUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 } - ], + } + }, + "com.amazonaws.wellarchitected#JiraProjectKey": { + "type": "string", "traits": { - "smithy.api#documentation": "

Get a consolidated report of your workloads.

\n

You can optionally choose to include workloads that have been shared with you.

", - "smithy.api#http": { - "method": "GET", - "uri": "/consolidatedReport", - "code": 200 + "smithy.api#length": { + "min": 1, + "max": 100 }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "smithy.api#pattern": "^[A-Z][A-Z0-9_]*$" + } + }, + "com.amazonaws.wellarchitected#JiraSelectedQuestionConfiguration": { + "type": "structure", + "members": { + "SelectedPillars": { + "target": "com.amazonaws.wellarchitected#SelectedPillars", + "traits": { + "smithy.api#documentation": "

Selected pillars in the workload.

" + } } + }, + "traits": { + "smithy.api#documentation": "

Selected questions in the workload.

" } }, - "com.amazonaws.wellarchitected#GetConsolidatedReportInput": { + "com.amazonaws.wellarchitected#Lens": { "type": "structure", "members": { - "Format": { - "target": "com.amazonaws.wellarchitected#ReportFormat", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The format of the consolidated report.

\n

For PDF, Base64String is returned. For JSON, \n Metrics is returned.

", - "smithy.api#httpQuery": "Format", - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN of a lens.

" } }, - "IncludeSharedResources": { - "target": "com.amazonaws.wellarchitected#IncludeSharedResources", + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#documentation": "

Set to true to have shared resources included in the report.

", - "smithy.api#httpQuery": "IncludeSharedResources" + "smithy.api#documentation": "

The version of a lens.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "Name": { + "target": "com.amazonaws.wellarchitected#LensName" + }, + "Description": { + "target": "com.amazonaws.wellarchitected#LensDescription" + }, + "Owner": { + "target": "com.amazonaws.wellarchitected#LensOwner", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the lens.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#GetConsolidatedReportMaxResults", + "ShareInvitationId": { + "target": "com.amazonaws.wellarchitected#ShareInvitationId", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The ID assigned to the share invitation.

" + } + }, + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

The tags assigned to the lens.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A lens return object.

" } }, - "com.amazonaws.wellarchitected#GetConsolidatedReportMaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#LensAlias": { + "type": "string", "traits": { - "smithy.api#range": { + "smithy.api#documentation": "

The alias of the lens.

For Amazon Web Services official lenses, this is either the lens alias, such as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. Note that some operations (such as ExportLens and CreateLensShare) are not permitted on Amazon Web Services official lenses.

For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef.

Each lens is identified by its LensSummary$LensAlias.

", + "smithy.api#length": { "min": 1, - "max": 15 + "max": 128 } } }, - "com.amazonaws.wellarchitected#GetConsolidatedReportOutput": { - "type": "structure", - "members": { - "Metrics": { - "target": "com.amazonaws.wellarchitected#ConsolidatedReportMetrics", - "traits": { - "smithy.api#documentation": "

The metrics that make up the consolidated report.

\n

Only returned when JSON format is requested.

" - } - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - }, - "Base64String": { - "target": "com.amazonaws.wellarchitected#Base64String" - } + "com.amazonaws.wellarchitected#LensAliases": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensAlias" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

List of lens aliases to associate or disassociate with a workload. Up to 10 lenses can be specified.

Identify a lens using its LensSummary$LensAlias.

", + "smithy.api#length": { + "min": 1 + } } }, - "com.amazonaws.wellarchitected#GetGlobalSettings": { - "type": "operation", - "input": { - "target": "smithy.api#Unit" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetGlobalSettingsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "com.amazonaws.wellarchitected#LensArn": { + "type": "string" + }, + "com.amazonaws.wellarchitected#LensDescription": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The description of the lens.

", + "smithy.api#length": { + "min": 1, + "max": 1024 } - ], + } + }, + "com.amazonaws.wellarchitected#LensJSON": { + "type": "string", "traits": { - "smithy.api#documentation": "

Global settings for all workloads.

", - "smithy.api#http": { - "method": "GET", - "uri": "/global-settings", - "code": 200 + "smithy.api#length": { + "min": 2, + "max": 500000 } } }, - "com.amazonaws.wellarchitected#GetGlobalSettingsOutput": { + "com.amazonaws.wellarchitected#LensMetric": { "type": "structure", "members": { - "OrganizationSharingStatus": { - "target": "com.amazonaws.wellarchitected#OrganizationSharingStatus", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

Amazon Web Services Organizations sharing status.

" + "smithy.api#documentation": "

The lens ARN.

" } }, - "DiscoveryIntegrationStatus": { - "target": "com.amazonaws.wellarchitected#DiscoveryIntegrationStatus", + "Pillars": { + "target": "com.amazonaws.wellarchitected#PillarMetrics", "traits": { - "smithy.api#documentation": "

Discovery integration status.

" + "smithy.api#documentation": "

The metrics for the pillars in a lens.

" } }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#AccountJiraConfigurationOutput", - "traits": { - "smithy.api#documentation": "

Jira configuration status.

" - } + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

A metric for a particular lens in a workload.

" } }, - "com.amazonaws.wellarchitected#GetLens": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetLensInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetLensOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "com.amazonaws.wellarchitected#LensMetrics": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensMetric" + } + }, + "com.amazonaws.wellarchitected#LensName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The full name of the lens.

", + "smithy.api#length": { + "min": 1, + "max": 128 } - ], + } + }, + "com.amazonaws.wellarchitected#LensNamePrefix": { + "type": "string", "traits": { - "smithy.api#documentation": "

Get an existing lens.

", - "smithy.api#http": { - "method": "GET", - "uri": "/lenses/{LensAlias}", - "code": 200 + "smithy.api#length": { + "max": 100 } } }, - "com.amazonaws.wellarchitected#GetLensInput": { + "com.amazonaws.wellarchitected#LensOwner": { + "type": "string" + }, + "com.amazonaws.wellarchitected#LensReview": { "type": "structure", "members": { "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN for the lens.

" } }, "LensVersion": { "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#documentation": "

The lens version to be retrieved.

", - "smithy.api#httpQuery": "LensVersion" + "smithy.api#documentation": "

The version of the lens.

" + } + }, + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName" + }, + "LensStatus": { + "target": "com.amazonaws.wellarchitected#LensStatus", + "traits": { + "smithy.api#documentation": "

The status of the lens.

" + } + }, + "PillarReviewSummaries": { + "target": "com.amazonaws.wellarchitected#PillarReviewSummaries" + }, + "JiraConfiguration": { + "target": "com.amazonaws.wellarchitected#JiraSelectedQuestionConfiguration", + "traits": { + "smithy.api#documentation": "

Jira configuration status of the Lens review.

" + } + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the lens review was last updated.

" + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "Profiles": { + "target": "com.amazonaws.wellarchitected#WorkloadProfiles", + "traits": { + "smithy.api#documentation": "

The profiles associated with the workload.

" } + }, + "PrioritizedRiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A lens review of a question.

" } }, - "com.amazonaws.wellarchitected#GetLensOutput": { + "com.amazonaws.wellarchitected#LensReviewReport": { "type": "structure", "members": { - "Lens": { - "target": "com.amazonaws.wellarchitected#Lens", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

A lens return object.

" + "smithy.api#documentation": "

The ARN for the lens.

" } + }, + "Base64String": { + "target": "com.amazonaws.wellarchitected#Base64String" } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

A report of a lens review.

" } }, - "com.amazonaws.wellarchitected#GetLensReview": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetLensReviewInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetLensReviewOutput" + "com.amazonaws.wellarchitected#LensReviewSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensReviewSummary" }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], "traits": { - "smithy.api#documentation": "

Get lens review.

", - "smithy.api#http": { - "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}", - "code": 200 - } + "smithy.api#documentation": "

List of lens summaries of lens reviews of a workload.

" } }, - "com.amazonaws.wellarchitected#GetLensReviewInput": { + "com.amazonaws.wellarchitected#LensReviewSummary": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN for the lens.

" } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The version of the lens.

" } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName" + }, + "LensStatus": { + "target": "com.amazonaws.wellarchitected#LensStatus", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#documentation": "

The status of the lens.

" + } + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the lens review was last updated.

" + } + }, + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" + }, + "Profiles": { + "target": "com.amazonaws.wellarchitected#WorkloadProfiles", + "traits": { + "smithy.api#documentation": "

The profiles associated with the workload.

" } + }, + "PrioritizedRiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" } }, "traits": { - "smithy.api#documentation": "

Input to get lens review.

", - "smithy.api#input": {} + "smithy.api#documentation": "

A lens review summary of a workload.

" } }, - "com.amazonaws.wellarchitected#GetLensReviewOutput": { + "com.amazonaws.wellarchitected#LensShareSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensShareSummary" + } + }, + "com.amazonaws.wellarchitected#LensShareSummary": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith" }, - "LensReview": { - "target": "com.amazonaws.wellarchitected#LensReview" + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus" + }, + "StatusMessage": { + "target": "com.amazonaws.wellarchitected#StatusMessage", + "traits": { + "smithy.api#documentation": "

Optional message to compliment the Status field.

" + } } }, "traits": { - "smithy.api#documentation": "

Output of a get lens review call.

", - "smithy.api#output": {} + "smithy.api#documentation": "

A lens share summary return object.

" } }, - "com.amazonaws.wellarchitected#GetLensReviewReport": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetLensReviewReportInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetLensReviewReportOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#LensStatus": { + "type": "enum", + "members": { + "CURRENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CURRENT" + } }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "NOT_CURRENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_CURRENT" + } }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "DEPRECATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEPRECATED" + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETED" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

Get lens review report.

", - "smithy.api#http": { - "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/report", - "code": 200 + "UNSHARED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNSHARED" + } } } }, - "com.amazonaws.wellarchitected#GetLensReviewReportInput": { - "type": "structure", + "com.amazonaws.wellarchitected#LensStatusType": { + "type": "enum", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "ALL": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "ALL" } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "DRAFT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "DRAFT" } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "PUBLISHED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#enumValue": "PUBLISHED" } } + } + }, + "com.amazonaws.wellarchitected#LensSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensSummary" }, "traits": { - "smithy.api#documentation": "

Input to get lens review report.

", - "smithy.api#input": {} + "smithy.api#documentation": "

List of lens summaries of available lenses.

" } }, - "com.amazonaws.wellarchitected#GetLensReviewReportOutput": { + "com.amazonaws.wellarchitected#LensSummary": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

The ARN of the lens.

" + } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" }, - "LensReviewReport": { - "target": "com.amazonaws.wellarchitected#LensReviewReport" - } - }, - "traits": { - "smithy.api#documentation": "

Output of a get lens review report call.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.wellarchitected#GetLensVersionDifference": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#GetLensVersionDifferenceInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#GetLensVersionDifferenceOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "LensType": { + "target": "com.amazonaws.wellarchitected#LensType", + "traits": { + "smithy.api#documentation": "

The type of the lens.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "Description": { + "target": "com.amazonaws.wellarchitected#LensDescription" }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "CreatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the lens was created.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the lens was last updated.

" + } + }, + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The version of the lens.

" + } + }, + "Owner": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" + }, + "LensStatus": { + "target": "com.amazonaws.wellarchitected#LensStatus", + "traits": { + "smithy.api#documentation": "

The status of the lens.

" + } } - ], + }, "traits": { - "smithy.api#documentation": "

Get lens version differences.

", - "smithy.api#http": { - "method": "GET", - "uri": "/lenses/{LensAlias}/versionDifference", - "code": 200 - } + "smithy.api#documentation": "

A lens summary of a lens.

" } }, - "com.amazonaws.wellarchitected#GetLensVersionDifferenceInput": { - "type": "structure", + "com.amazonaws.wellarchitected#LensType": { + "type": "enum", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "AWS_OFFICIAL": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#enumValue": "AWS_OFFICIAL" } }, - "BaseLensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "CUSTOM_SHARED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The base version of the lens.

", - "smithy.api#httpQuery": "BaseLensVersion" + "smithy.api#enumValue": "CUSTOM_SHARED" } }, - "TargetLensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "CUSTOM_SELF": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The lens version to target a difference for.

", - "smithy.api#httpQuery": "TargetLensVersion" + "smithy.api#enumValue": "CUSTOM_SELF" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetLensVersionDifferenceOutput": { + "com.amazonaws.wellarchitected#LensUpgradeSummary": { "type": "structure", "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "WorkloadName": { + "target": "com.amazonaws.wellarchitected#WorkloadName" + }, "LensAlias": { "target": "com.amazonaws.wellarchitected#LensAlias" }, @@ -3456,39 +7968,56 @@ "smithy.api#documentation": "

The ARN for the lens.

" } }, - "BaseLensVersion": { + "CurrentLensVersion": { "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#documentation": "

The base version of the lens.

" + "smithy.api#documentation": "

The current version of the lens.

" } }, - "TargetLensVersion": { + "LatestLensVersion": { "target": "com.amazonaws.wellarchitected#LensVersion", "traits": { - "smithy.api#documentation": "

The target lens version for the lens.

" + "smithy.api#documentation": "

The latest version of the lens.

" } }, - "LatestLensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "ResourceArn": { + "target": "com.amazonaws.wellarchitected#ResourceArn", "traits": { - "smithy.api#documentation": "

The latest version of the lens.

" + "smithy.api#documentation": "

ResourceArn of the lens being upgraded

" } }, - "VersionDifferences": { - "target": "com.amazonaws.wellarchitected#VersionDifferences" + "ResourceName": { + "target": "com.amazonaws.wellarchitected#WorkloadName" } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Lens upgrade summary return object.

" } }, - "com.amazonaws.wellarchitected#GetMilestone": { + "com.amazonaws.wellarchitected#LensVersion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 32 + } + } + }, + "com.amazonaws.wellarchitected#LensesAppliedCount": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.wellarchitected#ListAgentContexts": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetMilestoneInput" + "target": "com.amazonaws.wellarchitected#ListAgentContextsRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetMilestoneOutput" + "target": "com.amazonaws.wellarchitected#ListAgentContextsResponse" }, "errors": [ { @@ -3497,9 +8026,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -3508,59 +8034,104 @@ } ], "traits": { - "smithy.api#documentation": "

Get a milestone for an existing workload.

", + "smithy.api#documentation": "

Lists contexts associated with a profile.

", "smithy.api#http": { "method": "GET", - "uri": "/workloads/{WorkloadId}/milestones/{MilestoneNumber}", - "code": 200 - } + "uri": "/api/v1/agent-profiles/{profileArn}/contexts" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "ListAgentContexts", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#GetMilestoneInput": { + "com.amazonaws.wellarchitected#ListAgentContextsRequest": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile to list contexts for.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#default": 100, + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1 + } } } }, "traits": { - "smithy.api#documentation": "

Input to get a milestone.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetMilestoneOutput": { + "com.amazonaws.wellarchitected#ListAgentContextsResponse": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "items": { + "target": "com.amazonaws.wellarchitected#ContextSummaries", + "traits": { + "smithy.api#documentation": "

A list of context summaries associated with the profile.

", + "smithy.api#required": {} + } }, - "Milestone": { - "target": "com.amazonaws.wellarchitected#Milestone" + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#length": { + "min": 1 + } + } } }, "traits": { - "smithy.api#documentation": "

Output of a get milestone call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#GetProfile": { + "com.amazonaws.wellarchitected#ListAgentGoals": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetProfileInput" + "target": "com.amazonaws.wellarchitected#ListAgentGoalsRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetProfileOutput" + "target": "com.amazonaws.wellarchitected#ListAgentGoalsResponse" }, "errors": [ { @@ -3569,9 +8140,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -3580,30 +8148,69 @@ } ], "traits": { - "smithy.api#documentation": "

Get profile information.

", + "smithy.api#documentation": "

Lists optimization goals associated with a specified profile. Goals define specific targets and objectives for the optimization process.

", "smithy.api#http": { "method": "GET", - "uri": "/profiles/{ProfileArn}", - "code": 200 - } + "uri": "/api/v1/agent-profiles/{profileArn}/goals" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "ListAgentGoals", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#GetProfileInput": { + "com.amazonaws.wellarchitected#ListAgentGoalsRequest": { "type": "structure", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#documentation": "

The profile ARN.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile to list goals for.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

The profile version.

", - "smithy.api#httpQuery": "ProfileVersion" + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of goals to return in a single response.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token returned from a previous call to continue retrieving results.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3611,13 +8218,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetProfileOutput": { + "com.amazonaws.wellarchitected#ListAgentGoalsResponse": { "type": "structure", "members": { - "Profile": { - "target": "com.amazonaws.wellarchitected#Profile", + "items": { + "target": "com.amazonaws.wellarchitected#GoalSummaries", "traits": { - "smithy.api#documentation": "

The profile.

" + "smithy.api#documentation": "

A list of goal summaries associated with the profile.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token to retrieve the next set of results, if available.

", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3625,13 +8242,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#GetProfileTemplate": { + "com.amazonaws.wellarchitected#ListAgentProfiles": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetProfileTemplateInput" + "target": "com.amazonaws.wellarchitected#ListAgentProfilesRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetProfileTemplateOutput" + "target": "com.amazonaws.wellarchitected#ListAgentProfilesResponse" }, "errors": [ { @@ -3640,9 +8257,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -3651,28 +8265,83 @@ } ], "traits": { - "smithy.api#documentation": "

Get profile template.

", + "smithy.api#documentation": "

Lists optimization profiles in your account. Profiles define the scope and configuration for generating optimization recommendations.

", "smithy.api#http": { "method": "GET", - "uri": "/profileTemplate", - "code": 200 - } + "uri": "/api/v1/agent-profiles" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "ListAgentProfiles", + "params": {}, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#GetProfileTemplateInput": { + "com.amazonaws.wellarchitected#ListAgentProfilesRequest": { "type": "structure", - "members": {}, + "members": { + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of profiles to return in a single call. Default is 100.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token returned from a previous call to continue retrieving results.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1 + } + } + } + }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetProfileTemplateOutput": { + "com.amazonaws.wellarchitected#ListAgentProfilesResponse": { "type": "structure", "members": { - "ProfileTemplate": { - "target": "com.amazonaws.wellarchitected#ProfileTemplate", + "items": { + "target": "com.amazonaws.wellarchitected#AgentProfileSummaries", "traits": { - "smithy.api#documentation": "

The profile template.

" + "smithy.api#documentation": "

A list of profile summaries.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token to retrieve the next set of results, if available.

", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3680,13 +8349,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#GetReviewTemplate": { + "com.amazonaws.wellarchitected#ListAgentRecommendationGenerations": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateInput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationGenerationsRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateOutput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationGenerationsResponse" }, "errors": [ { @@ -3706,21 +8375,99 @@ } ], "traits": { - "smithy.api#documentation": "

Get review template.

", + "smithy.api#documentation": "

Lists recommendation generation processes for a specified profile.

", "smithy.api#http": { "method": "GET", - "uri": "/reviewTemplates/{TemplateArn}", - "code": 200 + "uri": "/api/v1/agent-profiles/{profileArn}/generations" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ] + } + }, + "com.amazonaws.wellarchitected#ListAgentRecommendationGenerationsRequest": { + "type": "structure", + "members": { + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile to list generation processes for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "recommendationType": { + "target": "com.amazonaws.wellarchitected#RecommendationType", + "traits": { + "smithy.api#documentation": "

Optional filter by recommendation type.

", + "smithy.api#httpQuery": "RecommendationType" + } + }, + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of generation processes to return in a single response.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token returned from a previous call to continue retrieving results.

", + "smithy.api#httpQuery": "NextToken", + "smithy.api#length": { + "min": 1 + } + } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetReviewTemplateAnswer": { + "com.amazonaws.wellarchitected#ListAgentRecommendationGenerationsResponse": { + "type": "structure", + "members": { + "items": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationGenerationSummaries", + "traits": { + "smithy.api#documentation": "

A list of recommendation generation summaries.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token to retrieve the next set of results, if available.

", + "smithy.api#length": { + "min": 1 + } + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#ListAgentRecommendationItems": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateAnswerInput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationItemsRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateAnswerOutput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationItemsResponse" }, "errors": [ { @@ -3740,37 +8487,61 @@ } ], "traits": { - "smithy.api#documentation": "

Get review template answer.

", + "smithy.api#documentation": "

Lists recommendation items for a specific recommendation. Recommendation items provide detailed information about individual optimization opportunities.

", "smithy.api#http": { "method": "GET", - "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", - "code": 200 - } + "uri": "/api/v1/agent-recommendations/{recommendationArn}/items" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ] } }, - "com.amazonaws.wellarchitected#GetReviewTemplateAnswerInput": { + "com.amazonaws.wellarchitected#ListAgentRecommendationItemsRequest": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationArn", "traits": { - "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation to list items for.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "type": { + "target": "com.amazonaws.wellarchitected#RecommendationItemType", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Optional filter to return only recommendation items of the specified type.

", + "smithy.api#httpQuery": "type" } }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId", + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of recommendation items to return in a single response.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token returned from a previous call to continue retrieving results.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3778,22 +8549,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetReviewTemplateAnswerOutput": { + "com.amazonaws.wellarchitected#ListAgentRecommendationItemsResponse": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "items": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationItemSummaries", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

A list of recommendation items with their detailed metadata and configuration information.

", + "smithy.api#required": {} } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "Answer": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswer", + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

An answer of the question.

" + "smithy.api#documentation": "

A pagination token to retrieve the next set of results, if available.

", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3801,29 +8573,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#GetReviewTemplateInput": { - "type": "structure", - "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", - "traits": { - "smithy.api#documentation": "

The review template ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#GetReviewTemplateLensReview": { + "com.amazonaws.wellarchitected#ListAgentRecommendations": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewInput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationsRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewOutput" + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationsResponse" }, "errors": [ { @@ -3843,64 +8599,92 @@ } ], "traits": { - "smithy.api#documentation": "

Get a lens review associated with a review template.

", + "smithy.api#documentation": "

Lists active optimization recommendations for a specified profile with optional filtering by state.

", "smithy.api#http": { "method": "GET", - "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", - "code": 200 - } + "uri": "/api/v1/agent-profiles/{profileArn}/recommendations" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {}, + "smithy.api#tags": [ + "COIN" + ] } }, - "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewInput": { + "com.amazonaws.wellarchitected#ListAgentRecommendationsRequest": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#documentation": "

The review template ARN.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile to list recommendations for.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "maxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#default": 100, + "smithy.api#documentation": "

The maximum number of recommendations to return in a single response.

", + "smithy.api#httpQuery": "maxResults", + "smithy.api#range": { + "min": 1, + "max": 1000 + } } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#GetReviewTemplateLensReviewOutput": { - "type": "structure", - "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

A pagination token returned from a previous call to continue retrieving results.

", + "smithy.api#httpQuery": "nextToken", + "smithy.api#length": { + "min": 1 + } } }, - "LensReview": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateLensReview", + "state": { + "target": "com.amazonaws.wellarchitected#RecommendationState", "traits": { - "smithy.api#documentation": "

A lens review of a question.

" + "smithy.api#documentation": "

Optional filter to return only recommendations with the specified state (OPEN or CLOSED).

", + "smithy.api#httpQuery": "state" + } + }, + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", + "traits": { + "smithy.api#documentation": "

Optional filter to return only recommendations for the specified pillar.

", + "smithy.api#httpQuery": "pillar" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetReviewTemplateOutput": { + "com.amazonaws.wellarchitected#ListAgentRecommendationsResponse": { "type": "structure", "members": { - "ReviewTemplate": { - "target": "com.amazonaws.wellarchitected#ReviewTemplate", + "items": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationSummaries", "traits": { - "smithy.api#documentation": "

The review template.

" + "smithy.api#documentation": "

A list of recommendation summaries.

", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token to retrieve the next set of results, if available.

", + "smithy.api#length": { + "min": 1 + } } } }, @@ -3908,13 +8692,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#GetWorkload": { + "com.amazonaws.wellarchitected#ListAnswers": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#GetWorkloadInput" + "target": "com.amazonaws.wellarchitected#ListAnswersInput" }, "output": { - "target": "com.amazonaws.wellarchitected#GetWorkloadOutput" + "target": "com.amazonaws.wellarchitected#ListAnswersOutput" }, "errors": [ { @@ -3934,15 +8718,23 @@ } ], "traits": { - "smithy.api#documentation": "

Get an existing workload.

", + "smithy.api#documentation": "

List of answers for a particular workload and lens.

", "smithy.api#http": { "method": "GET", - "uri": "/workloads/{WorkloadId}", + "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers", "code": 200 - } + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#GetWorkloadInput": { + "com.amazonaws.wellarchitected#ListAnswersInput": { "type": "structure", "members": { "WorkloadId": { @@ -3951,59 +8743,104 @@ "smithy.api#httpLabel": {}, "smithy.api#required": {} } + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId", + "traits": { + "smithy.api#httpQuery": "PillarId" + } + }, + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "traits": { + "smithy.api#httpQuery": "MilestoneNumber" + } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#httpQuery": "NextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "QuestionPriority": { + "target": "com.amazonaws.wellarchitected#QuestionPriority", + "traits": { + "smithy.api#documentation": "

The priority of the question.

", + "smithy.api#httpQuery": "QuestionPriority" + } } }, "traits": { - "smithy.api#documentation": "

Input to get a workload.

", + "smithy.api#documentation": "

Input to list answers.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#GetWorkloadOutput": { + "com.amazonaws.wellarchitected#ListAnswersOutput": { "type": "structure", "members": { - "Workload": { - "target": "com.amazonaws.wellarchitected#Workload" + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

The ARN for the lens.

" + } + }, + "AnswerSummaries": { + "target": "com.amazonaws.wellarchitected#AnswerSummaries" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

Output of a get workload call.

", + "smithy.api#documentation": "

Output of a list answers call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#HelpfulResourceUrl": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The helpful resource URL.

\n

For Amazon Web Services official lenses, this is the helpful resource URL for a question or choice.

\n

For custom lenses, this is the helpful resource URL for a question and is only provided\n if HelpfulResourceDisplayText was specified for the question.

", - "smithy.api#length": { - "min": 1, - "max": 2048 - } - } - }, - "com.amazonaws.wellarchitected#ImportLens": { + "com.amazonaws.wellarchitected#ListCheckDetails": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ImportLensInput" + "target": "com.amazonaws.wellarchitected#ListCheckDetailsInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ImportLensOutput" + "target": "com.amazonaws.wellarchitected#ListCheckDetailsOutput" }, "errors": [ { "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - { - "target": "com.amazonaws.wellarchitected#ConflictException" - }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - { - "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -4012,40 +8849,71 @@ } ], "traits": { - "smithy.api#documentation": "

Import a new custom lens or update an existing custom lens.

\n

To update an existing custom lens, specify its ARN as the LensAlias. If\n no ARN is specified, a new custom lens is created.

\n

The new or updated lens will have a status of DRAFT. The lens cannot be\n applied to workloads or shared with other Amazon Web Services accounts until it's\n published with CreateLensVersion.

\n

Lenses are defined in JSON. For more information, see JSON format specification \n in the Well-Architected Tool User Guide.

\n

A custom lens cannot exceed 500 KB in size.

\n \n

\n Disclaimer\n

\n

Do not include or gather personal identifiable information (PII) of end users or \n other identifiable individuals in or via your custom lenses. If your custom \n lens or those shared with you and used in your account do include or collect \n PII you are responsible for: ensuring that the included PII is processed in accordance \n with applicable law, providing adequate privacy notices, and obtaining necessary \n consents for processing such data.

\n
", + "smithy.api#documentation": "

List of Trusted Advisor check details by account related to the workload.

", "smithy.api#http": { - "method": "PUT", - "uri": "/importLens", + "method": "POST", + "uri": "/workloads/{WorkloadId}/checks", "code": 200 - } + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ImportLensInput": { + "com.amazonaws.wellarchitected#ListCheckDetailsInput": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", + "traits": { + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } }, - "JSONString": { - "target": "com.amazonaws.wellarchitected#LensJSON", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The JSON representation of a lens.

", + "smithy.api#documentation": "

Well-Architected Lens ARN.

", "smithy.api#required": {} } }, - "ClientRequestToken": { - "target": "com.amazonaws.wellarchitected#ClientRequestToken", + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#idempotencyToken": {}, "smithy.api#required": {} } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId", "traits": { - "smithy.api#documentation": "

Tags to associate to a lens.

" + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} } } }, @@ -4053,755 +8921,840 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ImportLensOutput": { + "com.amazonaws.wellarchitected#ListCheckDetailsOutput": { "type": "structure", "members": { - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "CheckDetails": { + "target": "com.amazonaws.wellarchitected#CheckDetails", "traits": { - "smithy.api#documentation": "

The ARN for the lens that was created or updated.

" + "smithy.api#documentation": "

The details about the Trusted Advisor checks related to the Well-Architected best practice.

" } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ImportLensStatus", - "traits": { - "smithy.api#documentation": "

The status of the imported lens.

" - } + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ImportLensStatus": { - "type": "enum", - "members": { - "IN_PROGRESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IN_PROGRESS" - } - }, - "COMPLETE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLETE" - } - }, - "ERROR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ERROR" - } - } - } - }, - "com.amazonaws.wellarchitected#ImprovementPlanUrl": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The improvement plan URL for a question in an Amazon Web Services official lenses.

\n

This value is only available if the question has been answered.

\n

This value does not apply to custom lenses.

", - "smithy.api#length": { - "min": 1, - "max": 2048 - } - } - }, - "com.amazonaws.wellarchitected#ImprovementSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ImprovementSummary" + "com.amazonaws.wellarchitected#ListCheckSummaries": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListCheckSummariesInput" }, - "traits": { - "smithy.api#documentation": "

List of improvement summaries of lens review in a workload.

" - } - }, - "com.amazonaws.wellarchitected#ImprovementSummary": { - "type": "structure", - "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" + "output": { + "target": "com.amazonaws.wellarchitected#ListCheckSummariesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "Risk": { - "target": "com.amazonaws.wellarchitected#Risk" + { + "target": "com.amazonaws.wellarchitected#InternalServerException" }, - "ImprovementPlanUrl": { - "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - "ImprovementPlans": { - "target": "com.amazonaws.wellarchitected#ChoiceImprovementPlans", - "traits": { - "smithy.api#documentation": "

The improvement plan details.

" - } + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#JiraConfiguration", - "traits": { - "smithy.api#documentation": "

Configuration of the Jira integration.

" - } + { + "target": "com.amazonaws.wellarchitected#ValidationException" } - }, + ], "traits": { - "smithy.api#documentation": "

An improvement summary of a lens review in a workload.

" - } - }, - "com.amazonaws.wellarchitected#IncludeSharedResources": { - "type": "boolean" - }, - "com.amazonaws.wellarchitected#IntegratingService": { - "type": "enum", - "members": { - "JIRA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "JIRA" - } - } + "smithy.api#documentation": "

List of Trusted Advisor checks summarized for all accounts related to the workload.

", + "smithy.api#http": { + "method": "POST", + "uri": "/workloads/{WorkloadId}/checkSummaries", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#IntegrationStatus": { - "type": "enum", + "com.amazonaws.wellarchitected#ListCheckSummariesInput": { + "type": "structure", "members": { - "CONFIGURED": { - "target": "smithy.api#Unit", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#enumValue": "CONFIGURED" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "NOT_CONFIGURED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NOT_CONFIGURED" - } - } - } - }, - "com.amazonaws.wellarchitected#IntegrationStatusInput": { - "type": "enum", - "members": { - "NOT_CONFIGURED": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#enumValue": "NOT_CONFIGURED" + "smithy.api#range": { + "min": 1, + "max": 50 + } } - } - } - }, - "com.amazonaws.wellarchitected#InternalServerException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.wellarchitected#ExceptionMessage", + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Well-Architected Lens ARN.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

There is a problem with the Well-Architected Tool API service.

", - "smithy.api#error": "server", - "smithy.api#httpError": 500 - } - }, - "com.amazonaws.wellarchitected#IsApplicable": { - "type": "boolean", - "traits": { - "smithy.api#documentation": "

Defines whether this question is applicable to a lens review.

" - } - }, - "com.amazonaws.wellarchitected#IsMajorVersion": { - "type": "boolean" - }, - "com.amazonaws.wellarchitected#IsReviewOwnerUpdateAcknowledged": { - "type": "boolean" - }, - "com.amazonaws.wellarchitected#IssueManagementType": { - "type": "enum", - "members": { - "AUTO": { - "target": "smithy.api#Unit", + }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId", "traits": { - "smithy.api#enumValue": "AUTO" + "smithy.api#clientOptional": {}, + "smithy.api#required": {} } }, - "MANUAL": { - "target": "smithy.api#Unit", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId", "traits": { - "smithy.api#enumValue": "MANUAL" + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#JiraConfiguration": { + "com.amazonaws.wellarchitected#ListCheckSummariesOutput": { "type": "structure", "members": { - "JiraIssueUrl": { - "target": "com.amazonaws.wellarchitected#JiraIssueUrl", + "CheckSummaries": { + "target": "com.amazonaws.wellarchitected#CheckSummaries", "traits": { - "smithy.api#documentation": "

The URL of the associated Jira issue.

" + "smithy.api#documentation": "

List of Trusted Advisor summaries related to the Well-Architected best practice.

" } }, - "LastSyncedTime": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

Configuration of the Jira integration.

" + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#JiraIssueUrl": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 + "com.amazonaws.wellarchitected#ListLensReviewImprovements": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListLensReviewImprovementsInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListLensReviewImprovementsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } - } - }, - "com.amazonaws.wellarchitected#JiraProjectKey": { - "type": "string", + ], "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 + "smithy.api#documentation": "

List the improvements of a particular lens review.

", + "smithy.api#http": { + "method": "GET", + "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/improvements", + "code": 200 }, - "smithy.api#pattern": "^[A-Z][A-Z0-9_]*$" + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#JiraSelectedQuestionConfiguration": { + "com.amazonaws.wellarchitected#ListLensReviewImprovementsInput": { "type": "structure", "members": { - "SelectedPillars": { - "target": "com.amazonaws.wellarchitected#SelectedPillars", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#documentation": "

Selected pillars in the workload.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Selected questions in the workload.

" - } - }, - "com.amazonaws.wellarchitected#Lens": { - "type": "structure", - "members": { - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#documentation": "

The ARN of a lens.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId", "traits": { - "smithy.api#documentation": "

The version of a lens.

" + "smithy.api#httpQuery": "PillarId" } }, - "Name": { - "target": "com.amazonaws.wellarchitected#LensName" - }, - "Description": { - "target": "com.amazonaws.wellarchitected#LensDescription" + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "traits": { + "smithy.api#httpQuery": "MilestoneNumber" + } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#LensOwner", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the lens.

" + "smithy.api#httpQuery": "NextToken" } }, - "ShareInvitationId": { - "target": "com.amazonaws.wellarchitected#ShareInvitationId", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

The ID assigned to the share invitation.

" + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 100 + } } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "QuestionPriority": { + "target": "com.amazonaws.wellarchitected#QuestionPriority", "traits": { - "smithy.api#documentation": "

The tags assigned to the lens.

" + "smithy.api#documentation": "

The priority of the question.

", + "smithy.api#httpQuery": "QuestionPriority" } } }, "traits": { - "smithy.api#documentation": "

A lens return object.

" + "smithy.api#documentation": "

Input to list lens review improvements.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensAlias": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The alias of the lens.

\n

For Amazon Web Services official lenses, this is either the lens alias, such as\n serverless, or the lens ARN, such as\n arn:aws:wellarchitected:us-east-1::lens/serverless. Note that some\n operations (such as ExportLens and CreateLensShare) are not permitted on Amazon Web Services official lenses.

\n

For custom lenses, this is the lens ARN, such as\n arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef.

\n

Each lens is identified by its LensSummary$LensAlias.

", - "smithy.api#length": { - "min": 1, - "max": 128 + "com.amazonaws.wellarchitected#ListLensReviewImprovementsOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", + "traits": { + "smithy.api#documentation": "

The ARN for the lens.

" + } + }, + "ImprovementSummaries": { + "target": "com.amazonaws.wellarchitected#ImprovementSummaries" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } - } - }, - "com.amazonaws.wellarchitected#LensAliases": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensAlias" }, "traits": { - "smithy.api#documentation": "

List of lens aliases to associate or disassociate with a workload. Up to 10 lenses can be specified.

\n

Identify a lens using its LensSummary$LensAlias.

", - "smithy.api#length": { - "min": 1 - } + "smithy.api#documentation": "

Output of a list lens review improvements call.

", + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#LensArn": { - "type": "string" - }, - "com.amazonaws.wellarchitected#LensDescription": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The description of the lens.

", - "smithy.api#length": { - "min": 1, - "max": 1024 + "com.amazonaws.wellarchitected#ListLensReviews": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListLensReviewsInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListLensReviewsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } - } - }, - "com.amazonaws.wellarchitected#LensJSON": { - "type": "string", + ], "traits": { - "smithy.api#length": { - "min": 2, - "max": 500000 - } + "smithy.api#documentation": "

List lens reviews for a particular workload.

", + "smithy.api#http": { + "method": "GET", + "uri": "/workloads/{WorkloadId}/lensReviews", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#LensMetric": { + "com.amazonaws.wellarchitected#ListLensReviewsInput": { "type": "structure", "members": { - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#documentation": "

The lens ARN.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "Pillars": { - "target": "com.amazonaws.wellarchitected#PillarMetrics", + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber", "traits": { - "smithy.api#documentation": "

The metrics for the pillars in a lens.

" + "smithy.api#httpQuery": "MilestoneNumber" } }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#httpQuery": "NextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } + } } }, "traits": { - "smithy.api#documentation": "

A metric for a particular lens in a workload.

" - } - }, - "com.amazonaws.wellarchitected#LensMetrics": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensMetric" + "smithy.api#documentation": "

Input to list lens reviews.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensName": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The full name of the lens.

", - "smithy.api#length": { - "min": 1, - "max": 128 + "com.amazonaws.wellarchitected#ListLensReviewsOutput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "LensReviewSummaries": { + "target": "com.amazonaws.wellarchitected#LensReviewSummaries" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } + }, + "traits": { + "smithy.api#documentation": "

Output of a list lens reviews call.

", + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#LensNamePrefix": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 + "com.amazonaws.wellarchitected#ListLensShares": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListLensSharesInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListLensSharesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

List the lens shares associated with the lens.

", + "smithy.api#http": { + "method": "GET", + "uri": "/lenses/{LensAlias}/shares", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#LensOwner": { - "type": "string" - }, - "com.amazonaws.wellarchitected#LensReview": { + "com.amazonaws.wellarchitected#ListLensSharesInput": { "type": "structure", "members": { "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "SharedWithPrefix": { + "target": "com.amazonaws.wellarchitected#SharedWithPrefix", "traits": { - "smithy.api#documentation": "

The version of the lens.

" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the lens is shared.

", + "smithy.api#httpQuery": "SharedWithPrefix" } }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName" - }, - "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatus", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

The status of the lens.

" + "smithy.api#httpQuery": "NextToken" } }, - "PillarReviewSummaries": { - "target": "com.amazonaws.wellarchitected#PillarReviewSummaries" - }, - "JiraConfiguration": { - "target": "com.amazonaws.wellarchitected#JiraSelectedQuestionConfiguration", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

Jira configuration status of the Lens review.

" + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" - }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - }, - "Profiles": { - "target": "com.amazonaws.wellarchitected#WorkloadProfiles", + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus", "traits": { - "smithy.api#documentation": "

The profiles associated with the workload.

" + "smithy.api#httpQuery": "Status" } - }, - "PrioritizedRiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" } }, "traits": { - "smithy.api#documentation": "

A lens review of a question.

" + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensReviewReport": { + "com.amazonaws.wellarchitected#ListLensSharesOutput": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "LensShareSummaries": { + "target": "com.amazonaws.wellarchitected#LensShareSummaries", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#documentation": "

A list of lens share summaries.

" } }, - "Base64String": { - "target": "com.amazonaws.wellarchitected#Base64String" + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

A report of a lens review.

" + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#LensReviewSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensReviewSummary" + "com.amazonaws.wellarchitected#ListLenses": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListLensesInput" }, + "output": { + "target": "com.amazonaws.wellarchitected#ListLensesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], "traits": { - "smithy.api#documentation": "

List of lens summaries of lens reviews of a workload.

" + "smithy.api#documentation": "

List the available lenses.

", + "smithy.api#http": { + "method": "GET", + "uri": "/lenses", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#LensReviewSummary": { + "com.amazonaws.wellarchitected#ListLensesInput": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#httpQuery": "NextToken" } }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

The version of the lens.

" + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName" + "LensType": { + "target": "com.amazonaws.wellarchitected#LensType", + "traits": { + "smithy.api#documentation": "

The type of lenses to be returned.

", + "smithy.api#httpQuery": "LensType" + } }, "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatus", + "target": "com.amazonaws.wellarchitected#LensStatusType", "traits": { - "smithy.api#documentation": "

The status of the lens.

" + "smithy.api#documentation": "

The status of lenses to be returned.

", + "smithy.api#httpQuery": "LensStatus" } }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" - }, - "Profiles": { - "target": "com.amazonaws.wellarchitected#WorkloadProfiles", + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName", "traits": { - "smithy.api#documentation": "

The profiles associated with the workload.

" + "smithy.api#httpQuery": "LensName" } - }, - "PrioritizedRiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" } }, "traits": { - "smithy.api#documentation": "

A lens review summary of a workload.

" - } - }, - "com.amazonaws.wellarchitected#LensShareSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensShareSummary" + "smithy.api#documentation": "

Input to list lenses.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensShareSummary": { + "com.amazonaws.wellarchitected#ListLensesOutput": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" - }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith" - }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus" + "LensSummaries": { + "target": "com.amazonaws.wellarchitected#LensSummaries" }, - "StatusMessage": { - "target": "com.amazonaws.wellarchitected#StatusMessage", - "traits": { - "smithy.api#documentation": "

Optional message to compliment the Status field.

" - } + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

A lens share summary return object.

" + "smithy.api#documentation": "

Output of a list lenses call.

", + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#LensStatus": { - "type": "enum", - "members": { - "CURRENT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CURRENT" - } + "com.amazonaws.wellarchitected#ListMilestones": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListMilestonesInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListMilestonesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "NOT_CURRENT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NOT_CURRENT" - } + { + "target": "com.amazonaws.wellarchitected#InternalServerException" }, - "DEPRECATED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEPRECATED" - } + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" }, - "DELETED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DELETED" - } + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" }, - "UNSHARED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "UNSHARED" - } + { + "target": "com.amazonaws.wellarchitected#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

List all milestones for an existing workload.

", + "smithy.api#http": { + "method": "POST", + "uri": "/workloads/{WorkloadId}/milestonesSummaries", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#LensStatusType": { - "type": "enum", + "com.amazonaws.wellarchitected#ListMilestonesInput": { + "type": "structure", "members": { - "ALL": { - "target": "smithy.api#Unit", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#enumValue": "ALL" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "DRAFT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DRAFT" - } + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" }, - "PUBLISHED": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#enumValue": "PUBLISHED" + "smithy.api#range": { + "min": 1, + "max": 50 + } } } - } - }, - "com.amazonaws.wellarchitected#LensSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensSummary" }, "traits": { - "smithy.api#documentation": "

List of lens summaries of available lenses.

" + "smithy.api#documentation": "

Input to list all milestones for a workload.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensSummary": { + "com.amazonaws.wellarchitected#ListMilestonesOutput": { "type": "structure", "members": { - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#documentation": "

The ARN of the lens.

" - } + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" + "MilestoneSummaries": { + "target": "com.amazonaws.wellarchitected#MilestoneSummaries" }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName" + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a list milestones call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#ListNotifications": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListNotificationsInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListNotificationsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "LensType": { - "target": "com.amazonaws.wellarchitected#LensType", - "traits": { - "smithy.api#documentation": "

The type of the lens.

" - } + { + "target": "com.amazonaws.wellarchitected#InternalServerException" }, - "Description": { - "target": "com.amazonaws.wellarchitected#LensDescription" + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" }, - "CreatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

List lens notifications.

", + "smithy.api#http": { + "method": "POST", + "uri": "/notifications", + "code": 200 }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#ListNotificationsInput": { + "type": "structure", + "members": { + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

The version of the lens.

" + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" - }, - "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatus", + "ResourceArn": { + "target": "com.amazonaws.wellarchitected#ResourceArn", + "traits": { + "smithy.api#documentation": "

The ARN for the related resource for the notification.

Only one of WorkloadID or ResourceARN should be specified.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#ListNotificationsOutput": { + "type": "structure", + "members": { + "NotificationSummaries": { + "target": "com.amazonaws.wellarchitected#NotificationSummaries", "traits": { - "smithy.api#documentation": "

The status of the lens.

" + "smithy.api#documentation": "

List of lens notification summaries in a workload.

" } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

A lens summary of a lens.

" + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#LensType": { - "type": "enum", - "members": { - "AWS_OFFICIAL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AWS_OFFICIAL" - } + "com.amazonaws.wellarchitected#ListProfileNotifications": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListProfileNotificationsInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListProfileNotificationsOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "CUSTOM_SHARED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CUSTOM_SHARED" - } + { + "target": "com.amazonaws.wellarchitected#InternalServerException" }, - "CUSTOM_SELF": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CUSTOM_SELF" - } + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

List profile notifications.

", + "smithy.api#http": { + "method": "GET", + "uri": "/profileNotifications", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#LensUpgradeSummary": { + "com.amazonaws.wellarchitected#ListProfileNotificationsInput": { "type": "structure", "members": { "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "WorkloadName": { - "target": "com.amazonaws.wellarchitected#WorkloadName" - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" - } - }, - "CurrentLensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { - "smithy.api#documentation": "

The current version of the lens.

" + "smithy.api#httpQuery": "WorkloadId" } }, - "LatestLensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#documentation": "

The latest version of the lens.

" + "smithy.api#httpQuery": "NextToken" } }, - "ResourceArn": { - "target": "com.amazonaws.wellarchitected#ResourceArn", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#documentation": "

\n ResourceArn of the lens being upgraded

" + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } - }, - "ResourceName": { - "target": "com.amazonaws.wellarchitected#WorkloadName" } }, "traits": { - "smithy.api#documentation": "

Lens upgrade summary return object.

" + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#LensVersion": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 32 + "com.amazonaws.wellarchitected#ListProfileNotificationsOutput": { + "type": "structure", + "members": { + "NotificationSummaries": { + "target": "com.amazonaws.wellarchitected#ProfileNotificationSummaries", + "traits": { + "smithy.api#documentation": "

Notification summaries.

" + } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } - } - }, - "com.amazonaws.wellarchitected#LensesAppliedCount": { - "type": "integer", + }, "traits": { - "smithy.api#range": { - "min": 0 - } + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListAnswers": { + "com.amazonaws.wellarchitected#ListProfileShares": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListAnswersInput" + "target": "com.amazonaws.wellarchitected#ListProfileSharesInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListAnswersOutput" + "target": "com.amazonaws.wellarchitected#ListProfileSharesOutput" }, "errors": [ { @@ -4821,46 +9774,38 @@ } ], "traits": { - "smithy.api#documentation": "

List of answers for a particular workload and lens.

", + "smithy.api#documentation": "

List profile shares.

", "smithy.api#http": { "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers", + "uri": "/profiles/{ProfileArn}/shares", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListAnswersInput": { + "com.amazonaws.wellarchitected#ListProfileSharesInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", - "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { + "smithy.api#documentation": "

The profile ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId", - "traits": { - "smithy.api#httpQuery": "PillarId" - } - }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "SharedWithPrefix": { + "target": "com.amazonaws.wellarchitected#SharedWithPrefix", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "smithy.api#httpQuery": "SharedWithPrefix" } }, "NextToken": { @@ -4870,71 +9815,145 @@ } }, "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListAnswersMaxResults", + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, - "QuestionPriority": { - "target": "com.amazonaws.wellarchitected#QuestionPriority", + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus", "traits": { - "smithy.api#documentation": "

The priority of the question.

", - "smithy.api#httpQuery": "QuestionPriority" + "smithy.api#httpQuery": "Status" } } }, "traits": { - "smithy.api#documentation": "

Input to list answers.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListAnswersMaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#ListProfileSharesOutput": { + "type": "structure", + "members": { + "ProfileShareSummaries": { + "target": "com.amazonaws.wellarchitected#ProfileShareSummaries", + "traits": { + "smithy.api#documentation": "

Profile share summaries.

" + } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + } + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#ListProfiles": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListProfilesInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListProfilesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

List profiles.

", + "smithy.api#http": { + "method": "GET", + "uri": "/profileSummaries", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListAnswersOutput": { + "com.amazonaws.wellarchitected#ListProfilesInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "ProfileNamePrefix": { + "target": "com.amazonaws.wellarchitected#ProfileNamePrefix", + "traits": { + "smithy.api#documentation": "

An optional string added to the beginning of each profile name returned in the results.

", + "smithy.api#httpQuery": "ProfileNamePrefix" + } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" + "ProfileOwnerType": { + "target": "com.amazonaws.wellarchitected#ProfileOwnerType", + "traits": { + "smithy.api#documentation": "

Profile owner type.

", + "smithy.api#httpQuery": "ProfileOwnerType" + } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", + "traits": { + "smithy.api#httpQuery": "NextToken" + } }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#ListProfilesOutput": { + "type": "structure", + "members": { + "ProfileSummaries": { + "target": "com.amazonaws.wellarchitected#ProfileSummaries", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#documentation": "

Profile summaries.

" } }, - "AnswerSummaries": { - "target": "com.amazonaws.wellarchitected#AnswerSummaries" - }, "NextToken": { "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

Output of a list answers call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListCheckDetails": { + "com.amazonaws.wellarchitected#ListReviewTemplateAnswers": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListCheckDetailsInput" + "target": "com.amazonaws.wellarchitected#ListReviewTemplateAnswersInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListCheckDetailsOutput" + "target": "com.amazonaws.wellarchitected#ListReviewTemplateAnswersOutput" }, "errors": [ { @@ -4954,62 +9973,61 @@ } ], "traits": { - "smithy.api#documentation": "

List of Trusted Advisor check details by account related to the workload.

", + "smithy.api#documentation": "

List the answers of a review template.

", "smithy.api#http": { - "method": "POST", - "uri": "/workloads/{WorkloadId}/checks", + "method": "GET", + "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListCheckDetailsInput": { + "com.amazonaws.wellarchitected#ListReviewTemplateAnswersInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { + "smithy.api#documentation": "

The ARN of the review template.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Well-Architected Lens ARN.

", + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "PillarId": { "target": "com.amazonaws.wellarchitected#PillarId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "PillarId" } }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId", + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "NextToken" } }, - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } } }, @@ -5017,13 +10035,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListCheckDetailsOutput": { + "com.amazonaws.wellarchitected#ListReviewTemplateAnswersOutput": { "type": "structure", "members": { - "CheckDetails": { - "target": "com.amazonaws.wellarchitected#CheckDetails", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { - "smithy.api#documentation": "

The details about the Trusted Advisor checks related to the Well-Architected best practice.

" + "smithy.api#documentation": "

The ARN of the review template.

" + } + }, + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "AnswerSummaries": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummaries", + "traits": { + "smithy.api#documentation": "

List of answer summaries of a lens review in a review template.

" } }, "NextToken": { @@ -5034,13 +10061,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListCheckSummaries": { + "com.amazonaws.wellarchitected#ListReviewTemplates": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListCheckSummariesInput" + "target": "com.amazonaws.wellarchitected#ListReviewTemplatesInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListCheckSummariesOutput" + "target": "com.amazonaws.wellarchitected#ListReviewTemplatesOutput" }, "errors": [ { @@ -5049,9 +10076,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -5060,62 +10084,39 @@ } ], "traits": { - "smithy.api#documentation": "

List of Trusted Advisor checks summarized for all accounts related to the workload.

", + "smithy.api#documentation": "

List review templates.

", "smithy.api#http": { - "method": "POST", - "uri": "/workloads/{WorkloadId}/checkSummaries", + "method": "GET", + "uri": "/reviewTemplates", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListCheckSummariesInput": { + "com.amazonaws.wellarchitected#ListReviewTemplatesInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", - "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Well-Architected Lens ARN.

", - "smithy.api#required": {} - } - }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId", + "target": "com.amazonaws.wellarchitected#NextToken", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "NextToken" } }, - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId", + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } } }, @@ -5123,13 +10124,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListCheckSummariesOutput": { + "com.amazonaws.wellarchitected#ListReviewTemplatesOutput": { "type": "structure", "members": { - "CheckSummaries": { - "target": "com.amazonaws.wellarchitected#CheckSummaries", + "ReviewTemplates": { + "target": "com.amazonaws.wellarchitected#ReviewTemplates", "traits": { - "smithy.api#documentation": "

List of Trusted Advisor summaries related to the Well-Architected best practice.

" + "smithy.api#documentation": "

List of review templates.

" } }, "NextToken": { @@ -5140,13 +10141,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListLensReviewImprovements": { + "com.amazonaws.wellarchitected#ListShareInvitations": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListLensReviewImprovementsInput" + "target": "com.amazonaws.wellarchitected#ListShareInvitationsInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListLensReviewImprovementsOutput" + "target": "com.amazonaws.wellarchitected#ListShareInvitationsOutput" }, "errors": [ { @@ -5155,9 +10156,6 @@ { "target": "com.amazonaws.wellarchitected#InternalServerException" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, { "target": "com.amazonaws.wellarchitected#ThrottlingException" }, @@ -5166,46 +10164,43 @@ } ], "traits": { - "smithy.api#documentation": "

List the improvements of a particular lens review.

", + "smithy.api#documentation": "

List the share invitations.

WorkloadNamePrefix, LensNamePrefix, ProfileNamePrefix, and TemplateNamePrefix are mutually exclusive. Use the parameter that matches your ShareResourceType.

", "smithy.api#http": { "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/improvements", + "uri": "/shareInvitations", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListLensReviewImprovementsInput": { + "com.amazonaws.wellarchitected#ListShareInvitationsInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", - "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "WorkloadNamePrefix": { + "target": "com.amazonaws.wellarchitected#WorkloadNamePrefix", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#httpQuery": "WorkloadNamePrefix" } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId", + "LensNamePrefix": { + "target": "com.amazonaws.wellarchitected#LensNamePrefix", "traits": { - "smithy.api#httpQuery": "PillarId" + "smithy.api#documentation": "

An optional string added to the beginning of each lens name returned in the results.

", + "smithy.api#httpQuery": "LensNamePrefix" } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "ShareResourceType": { + "target": "com.amazonaws.wellarchitected#ShareResourceType", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#documentation": "

The type of share invitations to be returned.

", + "smithy.api#httpQuery": "ShareResourceType" } }, "NextToken": { @@ -5215,71 +10210,118 @@ } }, "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListLensReviewImprovementsMaxResults", + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, - "QuestionPriority": { - "target": "com.amazonaws.wellarchitected#QuestionPriority", + "ProfileNamePrefix": { + "target": "com.amazonaws.wellarchitected#ProfileNamePrefix", + "traits": { + "smithy.api#documentation": "

An optional string added to the beginning of each profile name returned in the results.

", + "smithy.api#httpQuery": "ProfileNamePrefix" + } + }, + "TemplateNamePrefix": { + "target": "com.amazonaws.wellarchitected#TemplateNamePrefix", + "traits": { + "smithy.api#documentation": "

An optional string added to the beginning of each review template name returned in the results.

", + "smithy.api#httpQuery": "TemplateNamePrefix" + } + } + }, + "traits": { + "smithy.api#documentation": "

Input for List Share Invitations

", + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#ListShareInvitationsOutput": { + "type": "structure", + "members": { + "ShareInvitationSummaries": { + "target": "com.amazonaws.wellarchitected#ShareInvitationSummaries", + "traits": { + "smithy.api#documentation": "

List of share invitation summaries in a workload.

" + } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + } + }, + "traits": { + "smithy.api#documentation": "

Input for List Share Invitations

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#ListTagsForResourceInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#ListTagsForResourceOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

List the tags for a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "smithy.api#http": { + "method": "GET", + "uri": "/tags/{WorkloadArn}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#ListTagsForResourceInput": { + "type": "structure", + "members": { + "WorkloadArn": { + "target": "com.amazonaws.wellarchitected#WorkloadArn", "traits": { - "smithy.api#documentation": "

The priority of the question.

", - "smithy.api#httpQuery": "QuestionPriority" + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Input to list lens review improvements.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListLensReviewImprovementsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 100 - } - } - }, - "com.amazonaws.wellarchitected#ListLensReviewImprovementsOutput": { + "com.amazonaws.wellarchitected#ListTagsForResourceOutput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" + "smithy.api#documentation": "

The tags for the resource.

" } - }, - "ImprovementSummaries": { - "target": "com.amazonaws.wellarchitected#ImprovementSummaries" - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

Output of a list lens review improvements call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListLensReviews": { + "com.amazonaws.wellarchitected#ListTemplateShares": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListLensReviewsInput" + "target": "com.amazonaws.wellarchitected#ListTemplateSharesInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListLensReviewsOutput" + "target": "com.amazonaws.wellarchitected#ListTemplateSharesOutput" }, "errors": [ { @@ -5299,33 +10341,38 @@ } ], "traits": { - "smithy.api#documentation": "

List lens reviews for a particular workload.

", + "smithy.api#documentation": "

List review template shares.

", "smithy.api#http": { "method": "GET", - "uri": "/workloads/{WorkloadId}/lensReviews", + "uri": "/templates/shares/{TemplateArn}", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListLensReviewsInput": { + "com.amazonaws.wellarchitected#ListTemplateSharesInput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { + "smithy.api#documentation": "

The review template ARN.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber", + "SharedWithPrefix": { + "target": "com.amazonaws.wellarchitected#SharedWithPrefix", "traits": { - "smithy.api#httpQuery": "MilestoneNumber" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "smithy.api#httpQuery": "SharedWithPrefix" } }, "NextToken": { @@ -5337,43 +10384,55 @@ "MaxResults": { "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus", + "traits": { + "smithy.api#httpQuery": "Status" } } }, "traits": { - "smithy.api#documentation": "

Input to list lens reviews.

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListLensReviewsOutput": { + "com.amazonaws.wellarchitected#ListTemplateSharesOutput": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", + "traits": { + "smithy.api#documentation": "

The review template ARN.

" + } }, - "LensReviewSummaries": { - "target": "com.amazonaws.wellarchitected#LensReviewSummaries" + "TemplateShareSummaries": { + "target": "com.amazonaws.wellarchitected#TemplateShareSummaries", + "traits": { + "smithy.api#documentation": "

A review template share summary return object.

" + } }, "NextToken": { "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

Output of a list lens reviews call.

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListLensShares": { + "com.amazonaws.wellarchitected#ListWorkloadShares": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListLensSharesInput" + "target": "com.amazonaws.wellarchitected#ListWorkloadSharesInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListLensSharesOutput" + "target": "com.amazonaws.wellarchitected#ListWorkloadSharesOutput" }, "errors": [ { @@ -5393,24 +10452,27 @@ } ], "traits": { - "smithy.api#documentation": "

List the lens shares associated with the lens.

", + "smithy.api#documentation": "

List the workload shares associated with the workload.

", "smithy.api#http": { "method": "GET", - "uri": "/lenses/{LensAlias}/shares", + "uri": "/workloads/{WorkloadId}/shares", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ListLensSharesInput": { + "com.amazonaws.wellarchitected#ListWorkloadSharesInput": { "type": "structure", "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} @@ -5419,7 +10481,7 @@ "SharedWithPrefix": { "target": "com.amazonaws.wellarchitected#SharedWithPrefix", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the lens is shared.

", + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload is shared.

", "smithy.api#httpQuery": "SharedWithPrefix" } }, @@ -5430,10 +10492,14 @@ } }, "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListWorkloadSharesMaxResults", + "target": "com.amazonaws.wellarchitected#MaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#httpQuery": "MaxResults", + "smithy.api#range": { + "min": 1, + "max": 50 + } } }, "Status": { @@ -5444,33 +10510,35 @@ } }, "traits": { + "smithy.api#documentation": "

Input for List Workload Share

", "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListLensSharesOutput": { + "com.amazonaws.wellarchitected#ListWorkloadSharesOutput": { "type": "structure", "members": { - "LensShareSummaries": { - "target": "com.amazonaws.wellarchitected#LensShareSummaries", - "traits": { - "smithy.api#documentation": "

A list of lens share summaries.

" - } + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "WorkloadShareSummaries": { + "target": "com.amazonaws.wellarchitected#WorkloadShareSummaries" }, "NextToken": { "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { + "smithy.api#documentation": "

Input for List Workload Share

", "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListLenses": { + "com.amazonaws.wellarchitected#ListWorkloads": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListLensesInput" + "target": "com.amazonaws.wellarchitected#ListWorkloadsInput" }, "output": { - "target": "com.amazonaws.wellarchitected#ListLensesOutput" + "target": "com.amazonaws.wellarchitected#ListWorkloadsOutput" }, "errors": [ { @@ -5487,997 +10555,993 @@ } ], "traits": { - "smithy.api#documentation": "

List the available lenses.

", + "smithy.api#documentation": "

Paginated list of workloads.

", "smithy.api#http": { - "method": "GET", - "uri": "/lenses", + "method": "POST", + "uri": "/workloadsSummaries", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" + }, + "smithy.api#tags": [ + "WA" + ] + } + }, + "com.amazonaws.wellarchitected#ListWorkloadsInput": { + "type": "structure", + "members": { + "WorkloadNamePrefix": { + "target": "com.amazonaws.wellarchitected#WorkloadNamePrefix" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + }, + "MaxResults": { + "target": "com.amazonaws.wellarchitected#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return for this request.

", + "smithy.api#range": { + "min": 1, + "max": 50 + } + } } + }, + "traits": { + "smithy.api#documentation": "

Input to list all workloads.

", + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ListLensesInput": { + "com.amazonaws.wellarchitected#ListWorkloadsOutput": { + "type": "structure", + "members": { + "WorkloadSummaries": { + "target": "com.amazonaws.wellarchitected#WorkloadSummaries" + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" + } + }, + "traits": { + "smithy.api#documentation": "

Output of a list workloads call.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return for this request.

" + } + }, + "com.amazonaws.wellarchitected#MaxSelectedProfileChoices": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.wellarchitected#MetricType": { + "type": "enum", + "members": { + "WORKLOAD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WORKLOAD" + } + } + } + }, + "com.amazonaws.wellarchitected#Milestone": { + "type": "structure", + "members": { + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" + }, + "MilestoneName": { + "target": "com.amazonaws.wellarchitected#MilestoneName" + }, + "RecordedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the milestone was recorded.

" + } + }, + "Workload": { + "target": "com.amazonaws.wellarchitected#Workload" + } + }, + "traits": { + "smithy.api#documentation": "

A milestone return object.

" + } + }, + "com.amazonaws.wellarchitected#MilestoneName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The name of the milestone in a workload.

Milestone names must be unique within a workload.

", + "smithy.api#length": { + "min": 3, + "max": 100 + } + } + }, + "com.amazonaws.wellarchitected#MilestoneNumber": { + "type": "integer", + "traits": { + "smithy.api#documentation": "

The milestone number.

A workload can have a maximum of 100 milestones.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.wellarchitected#MilestoneSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#MilestoneSummary" + }, + "traits": { + "smithy.api#documentation": "

A list of milestone summaries.

" + } + }, + "com.amazonaws.wellarchitected#MilestoneSummary": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", - "traits": { - "smithy.api#httpQuery": "NextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults", - "traits": { - "smithy.api#httpQuery": "MaxResults" - } + "MilestoneNumber": { + "target": "com.amazonaws.wellarchitected#MilestoneNumber" }, - "LensType": { - "target": "com.amazonaws.wellarchitected#LensType", - "traits": { - "smithy.api#documentation": "

The type of lenses to be returned.

", - "smithy.api#httpQuery": "LensType" - } + "MilestoneName": { + "target": "com.amazonaws.wellarchitected#MilestoneName" }, - "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatusType", + "RecordedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The status of lenses to be returned.

", - "smithy.api#httpQuery": "LensStatus" + "smithy.api#documentation": "

The date and time when the milestone was recorded.

" } }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName", - "traits": { - "smithy.api#httpQuery": "LensName" - } + "WorkloadSummary": { + "target": "com.amazonaws.wellarchitected#WorkloadSummary" } }, "traits": { - "smithy.api#documentation": "

Input to list lenses.

", - "smithy.api#input": {} + "smithy.api#documentation": "

A milestone summary return object.

" } }, - "com.amazonaws.wellarchitected#ListLensesOutput": { - "type": "structure", - "members": { - "LensSummaries": { - "target": "com.amazonaws.wellarchitected#LensSummaries" - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "com.amazonaws.wellarchitected#MinSelectedProfileChoices": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0 } - }, + } + }, + "com.amazonaws.wellarchitected#NextToken": { + "type": "string", "traits": { - "smithy.api#documentation": "

Output of a list lenses call.

", - "smithy.api#output": {} + "smithy.api#documentation": "

The token to use to retrieve the next set of results.

", + "smithy.api#pattern": "^[A-Za-z0-9+\\/=_-]+$" } }, - "com.amazonaws.wellarchitected#ListMilestones": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListMilestonesInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListMilestonesOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], + "com.amazonaws.wellarchitected#Notes": { + "type": "string", "traits": { - "smithy.api#documentation": "

List all milestones for an existing workload.

", - "smithy.api#http": { - "method": "POST", - "uri": "/workloads/{WorkloadId}/milestonesSummaries", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "smithy.api#documentation": "

The notes associated with the workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

", + "smithy.api#length": { + "max": 2084 } } }, - "com.amazonaws.wellarchitected#ListMilestonesInput": { + "com.amazonaws.wellarchitected#NotificationSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#NotificationSummary" + } + }, + "com.amazonaws.wellarchitected#NotificationSummary": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "Type": { + "target": "com.amazonaws.wellarchitected#NotificationType", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The type of notification.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults" + "LensUpgradeSummary": { + "target": "com.amazonaws.wellarchitected#LensUpgradeSummary", + "traits": { + "smithy.api#documentation": "

Summary of lens upgrade.

" + } } }, "traits": { - "smithy.api#documentation": "

Input to list all milestones for a workload.

", - "smithy.api#input": {} + "smithy.api#documentation": "

A notification summary return object.

" } }, - "com.amazonaws.wellarchitected#ListMilestonesOutput": { - "type": "structure", + "com.amazonaws.wellarchitected#NotificationType": { + "type": "enum", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "LENS_VERSION_UPGRADED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LENS_VERSION_UPGRADED" + } }, - "MilestoneSummaries": { - "target": "com.amazonaws.wellarchitected#MilestoneSummaries" + "LENS_VERSION_DEPRECATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LENS_VERSION_DEPRECATED" + } + } + } + }, + "com.amazonaws.wellarchitected#OrganizationSharingStatus": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.wellarchitected#PermissionType": { + "type": "enum", + "members": { + "READONLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READONLY" + } + }, + "CONTRIBUTOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONTRIBUTOR" + } } }, "traits": { - "smithy.api#documentation": "

Output of a list milestones call.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Permission granted on a share request.

" } }, - "com.amazonaws.wellarchitected#ListNotifications": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListNotificationsInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListNotificationsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#Pillar": { + "type": "enum", + "members": { + "COST_OPTIMIZATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COST_OPTIMIZATION" + } }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "SECURITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SECURITY" + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "RESILIENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESILIENCE" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

List lens notifications.

", - "smithy.api#http": { - "method": "POST", - "uri": "/notifications", - "code": 200 + "PERFORMANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PERFORMANCE" + } }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "OPERATIONAL_EXCELLENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OPERATIONAL_EXCELLENCE" + } } } }, - "com.amazonaws.wellarchitected#ListNotificationsInput": { + "com.amazonaws.wellarchitected#PillarDifference": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "PillarName": { + "target": "com.amazonaws.wellarchitected#PillarName" }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListNotificationsMaxResults", + "DifferenceStatus": { + "target": "com.amazonaws.wellarchitected#DifferenceStatus", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

" + "smithy.api#documentation": "

Indicates the type of change to the pillar.

" } }, - "ResourceArn": { - "target": "com.amazonaws.wellarchitected#ResourceArn", + "QuestionDifferences": { + "target": "com.amazonaws.wellarchitected#QuestionDifferences", "traits": { - "smithy.api#documentation": "

The ARN for the related resource for the notification.

\n \n

Only one of WorkloadID or ResourceARN should be specified.

\n
" + "smithy.api#documentation": "

List of question differences.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A pillar difference return object.

" } }, - "com.amazonaws.wellarchitected#ListNotificationsMaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#PillarDifferences": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#PillarDifference" + } + }, + "com.amazonaws.wellarchitected#PillarId": { + "type": "string", "traits": { - "smithy.api#range": { + "smithy.api#documentation": "

The ID used to identify a pillar, for example, security.

A pillar is identified by its PillarReviewSummary$PillarId.

", + "smithy.api#length": { "min": 1, - "max": 50 + "max": 64 } } }, - "com.amazonaws.wellarchitected#ListNotificationsOutput": { + "com.amazonaws.wellarchitected#PillarItem": { "type": "structure", "members": { - "NotificationSummaries": { - "target": "com.amazonaws.wellarchitected#NotificationSummaries", + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", "traits": { - "smithy.api#documentation": "

List of lens notification summaries in a workload.

" + "smithy.api#documentation": "

The pillar this item configuration applies to.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "ids": { + "target": "com.amazonaws.wellarchitected#ItemIds", + "traits": { + "smithy.api#documentation": "

A list of item IDs to process for this pillar, such as best practice IDs, Amazon Web Services service names, or resource ARNs.

", + "smithy.api#required": {} + } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Item configuration for a specific Well-Architected Tool Framework pillar.

" } }, - "com.amazonaws.wellarchitected#ListProfileNotifications": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListProfileNotificationsInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListProfileNotificationsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

List profile notifications.

", - "smithy.api#http": { - "method": "GET", - "uri": "/profileNotifications", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } + "com.amazonaws.wellarchitected#PillarItems": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#PillarItem" } }, - "com.amazonaws.wellarchitected#ListProfileNotificationsInput": { + "com.amazonaws.wellarchitected#PillarMetric": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", - "traits": { - "smithy.api#httpQuery": "WorkloadId" - } + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", - "traits": { - "smithy.api#httpQuery": "NextToken" - } + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults", + "Questions": { + "target": "com.amazonaws.wellarchitected#QuestionMetrics", "traits": { - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The questions that have been identified as risks in the pillar.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A metric for a particular pillar in a lens.

" } }, - "com.amazonaws.wellarchitected#ListProfileNotificationsOutput": { - "type": "structure", - "members": { - "NotificationSummaries": { - "target": "com.amazonaws.wellarchitected#ProfileNotificationSummaries", - "traits": { - "smithy.api#documentation": "

Notification summaries.

" - } - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "com.amazonaws.wellarchitected#PillarMetrics": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#PillarMetric" + } + }, + "com.amazonaws.wellarchitected#PillarName": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The name of the pillar.

", + "smithy.api#length": { + "min": 1, + "max": 128 } + } + }, + "com.amazonaws.wellarchitected#PillarNotes": { + "type": "map", + "key": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, + "value": { + "target": "com.amazonaws.wellarchitected#Notes" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

List of pillar notes of a lens review in a workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

" } }, - "com.amazonaws.wellarchitected#ListProfileShares": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListProfileSharesInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListProfileSharesOutput" + "com.amazonaws.wellarchitected#PillarReviewSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#PillarReviewSummary" }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "traits": { + "smithy.api#documentation": "

List of pillar review summaries of lens review in a workload.

" + } + }, + "com.amazonaws.wellarchitected#PillarReviewSummary": { + "type": "structure", + "members": { + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "PillarName": { + "target": "com.amazonaws.wellarchitected#PillarName" }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "RiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "PrioritizedRiskCounts": { + "target": "com.amazonaws.wellarchitected#RiskCounts" } - ], + }, "traits": { - "smithy.api#documentation": "

List profile shares.

", - "smithy.api#http": { - "method": "GET", - "uri": "/profiles/{ProfileArn}/shares", - "code": 200 + "smithy.api#documentation": "

A pillar review summary of a lens review.

" + } + }, + "com.amazonaws.wellarchitected#Pillars": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#Pillar" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } + "smithy.api#uniqueItems": {} } }, - "com.amazonaws.wellarchitected#ListProfileSharesInput": { - "type": "structure", + "com.amazonaws.wellarchitected#Priority": { + "type": "enum", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", - "traits": { - "smithy.api#documentation": "

The profile ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "SharedWithPrefix": { - "target": "com.amazonaws.wellarchitected#SharedWithPrefix", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", - "smithy.api#httpQuery": "SharedWithPrefix" - } - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "HIGH": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#enumValue": "HIGH" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListProfileSharesMaxResults", + "MEDIUM": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#enumValue": "MEDIUM" } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus", + "LOW": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpQuery": "Status" + "smithy.api#enumValue": "LOW" } } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#ListProfileSharesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } } }, - "com.amazonaws.wellarchitected#ListProfileSharesOutput": { + "com.amazonaws.wellarchitected#Profile": { "type": "structure", "members": { - "ProfileShareSummaries": { - "target": "com.amazonaws.wellarchitected#ProfileShareSummaries", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { - "smithy.api#documentation": "

Profile share summaries.

" + "smithy.api#documentation": "

The profile ARN.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.wellarchitected#ListProfiles": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListProfilesInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListProfilesOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "ProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", + "traits": { + "smithy.api#documentation": "

The profile version.

" + } }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "ProfileName": { + "target": "com.amazonaws.wellarchitected#ProfileName", + "traits": { + "smithy.api#documentation": "

The profile name.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "ProfileDescription": { + "target": "com.amazonaws.wellarchitected#ProfileDescription", + "traits": { + "smithy.api#documentation": "

The profile description.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

List profiles.

", - "smithy.api#http": { - "method": "GET", - "uri": "/profileSummaries", - "code": 200 + "ProfileQuestions": { + "target": "com.amazonaws.wellarchitected#ProfileQuestions", + "traits": { + "smithy.api#documentation": "

Profile questions.

" + } }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.wellarchitected#ListProfilesInput": { - "type": "structure", - "members": { - "ProfileNamePrefix": { - "target": "com.amazonaws.wellarchitected#ProfileNamePrefix", + "Owner": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" + }, + "CreatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

An optional string added to the beginning of each profile name returned in the\n results.

", - "smithy.api#httpQuery": "ProfileNamePrefix" + "smithy.api#documentation": "

The date and time when the profile was created.

" } }, - "ProfileOwnerType": { - "target": "com.amazonaws.wellarchitected#ProfileOwnerType", + "UpdatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

Profile owner type.

", - "smithy.api#httpQuery": "ProfileOwnerType" + "smithy.api#documentation": "

The date and time when the profile was last updated.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "ShareInvitationId": { + "target": "com.amazonaws.wellarchitected#ShareInvitationId", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The ID assigned to the share invitation.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults", + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", "traits": { - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The tags assigned to the profile.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A profile.

" } }, - "com.amazonaws.wellarchitected#ListProfilesOutput": { + "com.amazonaws.wellarchitected#ProfileArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2084 + }, + "smithy.api#pattern": "^arn:aws[-a-z]*:wellarchitected:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:profile/[a-z0-9]+$" + } + }, + "com.amazonaws.wellarchitected#ProfileArns": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileArn" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.wellarchitected#ProfileChoice": { "type": "structure", "members": { - "ProfileSummaries": { - "target": "com.amazonaws.wellarchitected#ProfileSummaries", - "traits": { - "smithy.api#documentation": "

Profile summaries.

" - } + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "ChoiceTitle": { + "target": "com.amazonaws.wellarchitected#ChoiceTitle" + }, + "ChoiceDescription": { + "target": "com.amazonaws.wellarchitected#ChoiceDescription" } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The profile choice.

" } }, - "com.amazonaws.wellarchitected#ListReviewTemplateAnswers": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListReviewTemplateAnswersInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListReviewTemplateAnswersOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "com.amazonaws.wellarchitected#ProfileDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 100 } - ], + } + }, + "com.amazonaws.wellarchitected#ProfileName": { + "type": "string", "traits": { - "smithy.api#documentation": "

List the answers of a review template.

", - "smithy.api#http": { - "method": "GET", - "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "smithy.api#length": { + "min": 3, + "max": 100 } } }, - "com.amazonaws.wellarchitected#ListReviewTemplateAnswersInput": { + "com.amazonaws.wellarchitected#ProfileNamePrefix": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 100 + } + } + }, + "com.amazonaws.wellarchitected#ProfileNotificationSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileNotificationSummary" + } + }, + "com.amazonaws.wellarchitected#ProfileNotificationSummary": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "CurrentProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", "traits": { - "smithy.api#documentation": "

The ARN of the review template.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The current profile version.

" } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias", + "LatestProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The latest profile version.

" } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId", + "Type": { + "target": "com.amazonaws.wellarchitected#ProfileNotificationType", "traits": { - "smithy.api#httpQuery": "PillarId" + "smithy.api#documentation": "

Type of notification.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The profile ARN.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListReviewTemplateAnswersMaxResults", + "ProfileName": { + "target": "com.amazonaws.wellarchitected#ProfileName", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The profile name.

" } + }, + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "WorkloadName": { + "target": "com.amazonaws.wellarchitected#WorkloadName" } }, "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#ListReviewTemplateAnswersMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } + "smithy.api#documentation": "

The profile notification summary.

" } }, - "com.amazonaws.wellarchitected#ListReviewTemplateAnswersOutput": { - "type": "structure", + "com.amazonaws.wellarchitected#ProfileNotificationType": { + "type": "enum", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "PROFILE_ANSWERS_UPDATED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ARN of the review template.

" + "smithy.api#enumValue": "PROFILE_ANSWERS_UPDATED" } }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "AnswerSummaries": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummaries", + "PROFILE_DELETED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

List of answer summaries of a lens review in a review template.

" + "smithy.api#enumValue": "PROFILE_DELETED" } - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#ListReviewTemplates": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListReviewTemplatesInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListReviewTemplatesOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], - "traits": { - "smithy.api#documentation": "

List review templates.

", - "smithy.api#http": { - "method": "GET", - "uri": "/reviewTemplates", - "code": 200 + "com.amazonaws.wellarchitected#ProfileOwnerType": { + "type": "enum", + "members": { + "SELF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SELF" + } }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "SHARED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHARED" + } } } }, - "com.amazonaws.wellarchitected#ListReviewTemplatesInput": { + "com.amazonaws.wellarchitected#ProfileQuestion": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" + }, + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" + }, + "QuestionDescription": { + "target": "com.amazonaws.wellarchitected#QuestionDescription" + }, + "QuestionChoices": { + "target": "com.amazonaws.wellarchitected#ProfileQuestionChoices", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The question choices.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#MaxResults", + "SelectedChoiceIds": { + "target": "com.amazonaws.wellarchitected#SelectedChoiceIds", + "traits": { + "smithy.api#documentation": "

The selected choices.

" + } + }, + "MinSelectedChoices": { + "target": "com.amazonaws.wellarchitected#MinSelectedProfileChoices", "traits": { - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The minimum number of selected choices.

" + } + }, + "MaxSelectedChoices": { + "target": "com.amazonaws.wellarchitected#MaxSelectedProfileChoices", + "traits": { + "smithy.api#documentation": "

The maximum number of selected choices.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A profile question.

" } }, - "com.amazonaws.wellarchitected#ListReviewTemplatesOutput": { + "com.amazonaws.wellarchitected#ProfileQuestionChoices": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileChoice" + } + }, + "com.amazonaws.wellarchitected#ProfileQuestionUpdate": { "type": "structure", "members": { - "ReviewTemplates": { - "target": "com.amazonaws.wellarchitected#ReviewTemplates", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" + }, + "SelectedChoiceIds": { + "target": "com.amazonaws.wellarchitected#SelectedProfileChoiceIds", "traits": { - "smithy.api#documentation": "

List of review templates.

" + "smithy.api#documentation": "

The selected choices.

" } - }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

An update to a profile question.

" } }, - "com.amazonaws.wellarchitected#ListShareInvitations": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListShareInvitationsInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListShareInvitationsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" + "com.amazonaws.wellarchitected#ProfileQuestionUpdates": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileQuestionUpdate" + } + }, + "com.amazonaws.wellarchitected#ProfileQuestions": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileQuestion" + } + }, + "com.amazonaws.wellarchitected#ProfileShareSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileShareSummary" + } + }, + "com.amazonaws.wellarchitected#ProfileShareSummary": { + "type": "structure", + "members": { + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith" }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus" }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "StatusMessage": { + "target": "com.amazonaws.wellarchitected#StatusMessage", + "traits": { + "smithy.api#documentation": "

Profile share invitation status message.

" + } } - ], + }, "traits": { - "smithy.api#documentation": "

List the share invitations.

\n

\n WorkloadNamePrefix, LensNamePrefix,\n ProfileNamePrefix, and TemplateNamePrefix are mutually\n exclusive. Use the parameter that matches your ShareResourceType.

", - "smithy.api#http": { - "method": "GET", - "uri": "/shareInvitations", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Summary of a profile share.

" } }, - "com.amazonaws.wellarchitected#ListShareInvitationsInput": { + "com.amazonaws.wellarchitected#ProfileSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileSummary" + } + }, + "com.amazonaws.wellarchitected#ProfileSummary": { "type": "structure", "members": { - "WorkloadNamePrefix": { - "target": "com.amazonaws.wellarchitected#WorkloadNamePrefix", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { - "smithy.api#httpQuery": "WorkloadNamePrefix" + "smithy.api#documentation": "

The profile ARN.

" } }, - "LensNamePrefix": { - "target": "com.amazonaws.wellarchitected#LensNamePrefix", + "ProfileVersion": { + "target": "com.amazonaws.wellarchitected#ProfileVersion", "traits": { - "smithy.api#documentation": "

An optional string added to the beginning of each lens name returned in the results.

", - "smithy.api#httpQuery": "LensNamePrefix" + "smithy.api#documentation": "

The profile version.

" } }, - "ShareResourceType": { - "target": "com.amazonaws.wellarchitected#ShareResourceType", + "ProfileName": { + "target": "com.amazonaws.wellarchitected#ProfileName", "traits": { - "smithy.api#documentation": "

The type of share invitations to be returned.

", - "smithy.api#httpQuery": "ShareResourceType" + "smithy.api#documentation": "

The profile name.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "ProfileDescription": { + "target": "com.amazonaws.wellarchitected#ProfileDescription", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The profile description.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListShareInvitationsMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" - } + "Owner": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" }, - "ProfileNamePrefix": { - "target": "com.amazonaws.wellarchitected#ProfileNamePrefix", + "CreatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

An optional string added to the beginning of each profile name returned in the\n results.

", - "smithy.api#httpQuery": "ProfileNamePrefix" + "smithy.api#documentation": "

The date and time when the profile was created.

" } }, - "TemplateNamePrefix": { - "target": "com.amazonaws.wellarchitected#TemplateNamePrefix", + "UpdatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

An optional string added to the beginning of each review template name returned in the\n results.

", - "smithy.api#httpQuery": "TemplateNamePrefix" + "smithy.api#documentation": "

The date and time when the profile was last updated.

" } } }, "traits": { - "smithy.api#documentation": "

Input for List Share Invitations

", - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#ListShareInvitationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } + "smithy.api#documentation": "

Summary of a profile.

" } }, - "com.amazonaws.wellarchitected#ListShareInvitationsOutput": { + "com.amazonaws.wellarchitected#ProfileTemplate": { "type": "structure", "members": { - "ShareInvitationSummaries": { - "target": "com.amazonaws.wellarchitected#ShareInvitationSummaries", + "TemplateName": { + "target": "com.amazonaws.wellarchitected#ProfileName", "traits": { - "smithy.api#documentation": "

List of share invitation summaries in a workload.

" + "smithy.api#documentation": "

The name of the profile template.

" } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" - } - }, - "traits": { - "smithy.api#documentation": "

Input for List Share Invitations

", - "smithy.api#output": {} - } - }, - "com.amazonaws.wellarchitected#ListTagsForResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListTagsForResourceInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListTagsForResourceOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#InternalServerException" + "TemplateQuestions": { + "target": "com.amazonaws.wellarchitected#TemplateQuestions", + "traits": { + "smithy.api#documentation": "

Profile template questions.

" + } }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" - } - ], - "traits": { - "smithy.api#documentation": "

List the tags for a resource.

\n \n

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/tags/{WorkloadArn}", - "code": 200 - } - } - }, - "com.amazonaws.wellarchitected#ListTagsForResourceInput": { - "type": "structure", - "members": { - "WorkloadArn": { - "target": "com.amazonaws.wellarchitected#WorkloadArn", + "CreatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The date and time when the profile template was created.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.wellarchitected#ListTagsForResourceOutput": { - "type": "structure", - "members": { - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The tags for the resource.

" + "smithy.api#documentation": "

The date and time when the profile template was last updated.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The profile template.

" } }, - "com.amazonaws.wellarchitected#ListTemplateShares": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListTemplateSharesInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListTemplateSharesOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + "com.amazonaws.wellarchitected#ProfileTemplateChoice": { + "type": "structure", + "members": { + "ChoiceId": { + "target": "com.amazonaws.wellarchitected#ChoiceId" }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" + "ChoiceTitle": { + "target": "com.amazonaws.wellarchitected#ChoiceTitle" }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" + "ChoiceDescription": { + "target": "com.amazonaws.wellarchitected#ChoiceDescription" } - ], + }, "traits": { - "smithy.api#documentation": "

List review template shares.

", - "smithy.api#http": { - "method": "GET", - "uri": "/templates/shares/{TemplateArn}", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

A profile template choice.

" } }, - "com.amazonaws.wellarchitected#ListTemplateSharesInput": { + "com.amazonaws.wellarchitected#ProfileTemplateQuestion": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", - "traits": { - "smithy.api#documentation": "

The review template ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - "SharedWithPrefix": { - "target": "com.amazonaws.wellarchitected#SharedWithPrefix", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit\n (OU) ID with which the profile is shared.

", - "smithy.api#httpQuery": "SharedWithPrefix" - } + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "QuestionDescription": { + "target": "com.amazonaws.wellarchitected#QuestionDescription" + }, + "QuestionChoices": { + "target": "com.amazonaws.wellarchitected#ProfileTemplateQuestionChoices", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

The question choices.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListTemplateSharesMaxResults", + "MinSelectedChoices": { + "target": "com.amazonaws.wellarchitected#MinSelectedProfileChoices", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

The minimum number of choices selected.

" } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus", + "MaxSelectedChoices": { + "target": "com.amazonaws.wellarchitected#MaxSelectedProfileChoices", "traits": { - "smithy.api#httpQuery": "Status" + "smithy.api#documentation": "

The maximum number of choices selected.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A profile template question.

" } }, - "com.amazonaws.wellarchitected#ListTemplateSharesMaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#ProfileTemplateQuestionChoices": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ProfileTemplateChoice" + } + }, + "com.amazonaws.wellarchitected#ProfileVersion": { + "type": "string", "traits": { - "smithy.api#range": { + "smithy.api#length": { "min": 1, - "max": 50 - } + "max": 32 + }, + "smithy.api#pattern": "^[A-Za-z0-9-]+$" } }, - "com.amazonaws.wellarchitected#ListTemplateSharesOutput": { + "com.amazonaws.wellarchitected#Progress": { "type": "structure", "members": { - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "stepsCompleted": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

The number of generation steps that have been completed.

", + "smithy.api#required": {} } }, - "TemplateShareSummaries": { - "target": "com.amazonaws.wellarchitected#TemplateShareSummaries", + "totalSteps": { + "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

A review template share summary return object.

" + "smithy.api#documentation": "

The total number of steps in the generation process.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "completionPercentage": { + "target": "smithy.api#Double", + "traits": { + "smithy.api#documentation": "

The completion percentage of the generation process (0-100).

", + "smithy.api#required": {} + } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Progress information for a recommendation generation process.

" } }, - "com.amazonaws.wellarchitected#ListWorkloadShares": { + "com.amazonaws.wellarchitected#PutAgentRecommendationFeedback": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#ListWorkloadSharesInput" + "target": "com.amazonaws.wellarchitected#PutAgentRecommendationFeedbackRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#ListWorkloadSharesOutput" + "target": "com.amazonaws.wellarchitected#PutAgentRecommendationFeedbackResponse" }, "errors": [ { @@ -6497,948 +11561,1037 @@ } ], "traits": { - "smithy.api#documentation": "

List the workload shares associated with the workload.

", + "smithy.api#documentation": "

Submits user feedback on a recommendation to help improve future optimization suggestions and track implementation outcomes.

", "smithy.api#http": { - "method": "GET", - "uri": "/workloads/{WorkloadId}/shares", - "code": 200 + "method": "PUT", + "uri": "/api/v1/agent-recommendations/{recommendationArn}/feedback" }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - } + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ] } }, - "com.amazonaws.wellarchitected#ListWorkloadSharesInput": { + "com.amazonaws.wellarchitected#PutAgentRecommendationFeedbackRequest": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId", + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationArn", "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation to provide feedback for.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "SharedWithPrefix": { - "target": "com.amazonaws.wellarchitected#SharedWithPrefix", + "type": { + "target": "com.amazonaws.wellarchitected#RecommendationFeedbackType", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload is shared.

", - "smithy.api#httpQuery": "SharedWithPrefix" + "smithy.api#documentation": "

The type of feedback being provided.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken", + "feedbackCategory": { + "target": "com.amazonaws.wellarchitected#FeedbackCategory", "traits": { - "smithy.api#httpQuery": "NextToken" + "smithy.api#documentation": "

Optional category classifying the nature of the feedback.

" } }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListWorkloadSharesMaxResults", + "comments": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#httpQuery": "MaxResults" + "smithy.api#documentation": "

Optional comments providing additional context about the feedback.

", + "smithy.api#length": { + "min": 1, + "max": 4096 + }, + "smithy.api#pattern": "^[\\P{C}]+$" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.wellarchitected#PutAgentRecommendationFeedbackResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#Question": { + "type": "enum", + "members": { + "UNANSWERED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNANSWERED" } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus", + "ANSWERED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#httpQuery": "Status" + "smithy.api#enumValue": "ANSWERED" } } + } + }, + "com.amazonaws.wellarchitected#QuestionCounts": { + "type": "map", + "key": { + "target": "com.amazonaws.wellarchitected#Question" }, - "traits": { - "smithy.api#documentation": "

Input for List Workload Share

", - "smithy.api#input": {} + "value": { + "target": "com.amazonaws.wellarchitected#Count" } }, - "com.amazonaws.wellarchitected#ListWorkloadSharesMaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#QuestionDescription": { + "type": "string", "traits": { - "smithy.api#range": { + "smithy.api#documentation": "

The description of the question.

", + "smithy.api#length": { "min": 1, - "max": 50 + "max": 1024 } } }, - "com.amazonaws.wellarchitected#ListWorkloadSharesOutput": { + "com.amazonaws.wellarchitected#QuestionDifference": { "type": "structure", "members": { - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - "WorkloadShareSummaries": { - "target": "com.amazonaws.wellarchitected#WorkloadShareSummaries" + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "DifferenceStatus": { + "target": "com.amazonaws.wellarchitected#DifferenceStatus", + "traits": { + "smithy.api#documentation": "

Indicates the type of change to the question.

" + } } }, "traits": { - "smithy.api#documentation": "

Input for List Workload Share

", - "smithy.api#output": {} + "smithy.api#documentation": "

A question difference return object.

" } }, - "com.amazonaws.wellarchitected#ListWorkloads": { - "type": "operation", - "input": { - "target": "com.amazonaws.wellarchitected#ListWorkloadsInput" - }, - "output": { - "target": "com.amazonaws.wellarchitected#ListWorkloadsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.wellarchitected#AccessDeniedException" - }, - { - "target": "com.amazonaws.wellarchitected#InternalServerException" - }, - { - "target": "com.amazonaws.wellarchitected#ThrottlingException" - }, - { - "target": "com.amazonaws.wellarchitected#ValidationException" - } - ], + "com.amazonaws.wellarchitected#QuestionDifferences": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#QuestionDifference" + } + }, + "com.amazonaws.wellarchitected#QuestionId": { + "type": "string", "traits": { - "smithy.api#documentation": "

Paginated list of workloads.

", - "smithy.api#http": { - "method": "POST", - "uri": "/workloadsSummaries", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" + "smithy.api#documentation": "

The ID of the question.

", + "smithy.api#length": { + "min": 1, + "max": 128 } } }, - "com.amazonaws.wellarchitected#ListWorkloadsInput": { + "com.amazonaws.wellarchitected#QuestionMetric": { "type": "structure", "members": { - "WorkloadNamePrefix": { - "target": "com.amazonaws.wellarchitected#WorkloadNamePrefix" + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "Risk": { + "target": "com.amazonaws.wellarchitected#Risk" }, - "MaxResults": { - "target": "com.amazonaws.wellarchitected#ListWorkloadsMaxResults", + "BestPractices": { + "target": "com.amazonaws.wellarchitected#BestPractices", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

" + "smithy.api#documentation": "

The best practices, or choices, that have been identified as contributing to risk in a question.

" } } }, "traits": { - "smithy.api#documentation": "

Input to list all workloads.

", - "smithy.api#input": {} + "smithy.api#documentation": "

A metric for a particular question in the pillar.

" } }, - "com.amazonaws.wellarchitected#ListWorkloadsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } + "com.amazonaws.wellarchitected#QuestionMetrics": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#QuestionMetric" } }, - "com.amazonaws.wellarchitected#ListWorkloadsOutput": { - "type": "structure", + "com.amazonaws.wellarchitected#QuestionPriority": { + "type": "enum", "members": { - "WorkloadSummaries": { - "target": "com.amazonaws.wellarchitected#WorkloadSummaries" + "PRIORITIZED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRIORITIZED" + } }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } } - }, - "traits": { - "smithy.api#documentation": "

Output of a list workloads call.

", - "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#MaxResults": { - "type": "integer", + "com.amazonaws.wellarchitected#QuestionTitle": { + "type": "string", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for this request.

", - "smithy.api#range": { + "smithy.api#documentation": "

The title of the question.

", + "smithy.api#length": { "min": 1, - "max": 50 - } - } - }, - "com.amazonaws.wellarchitected#MaxSelectedProfileChoices": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0 + "max": 512 } } }, - "com.amazonaws.wellarchitected#MetricType": { + "com.amazonaws.wellarchitected#QuestionType": { "type": "enum", "members": { - "WORKLOAD": { + "PRIORITIZED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "WORKLOAD" + "smithy.api#enumValue": "PRIORITIZED" + } + }, + "NON_PRIORITIZED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NON_PRIORITIZED" } } } }, - "com.amazonaws.wellarchitected#Milestone": { - "type": "structure", - "members": { - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" - }, - "MilestoneName": { - "target": "com.amazonaws.wellarchitected#MilestoneName" - }, - "RecordedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "Workload": { - "target": "com.amazonaws.wellarchitected#Workload" - } - }, + "com.amazonaws.wellarchitected#QuotaCode": { + "type": "string", "traits": { - "smithy.api#documentation": "

A milestone return object.

" + "smithy.api#documentation": "

Service Quotas requirement to identify originating quota.

" } }, - "com.amazonaws.wellarchitected#MilestoneName": { + "com.amazonaws.wellarchitected#RecommendationArn": { "type": "string", "traits": { - "smithy.api#documentation": "

The name of the milestone in a workload.

\n

Milestone names must be unique within a workload.

", "smithy.api#length": { - "min": 3, - "max": 100 - } + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\\d{12}:agent-recommendation/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" } }, - "com.amazonaws.wellarchitected#MilestoneNumber": { - "type": "integer", - "traits": { - "smithy.api#documentation": "

The milestone number.

\n

A workload can have a maximum of 100 milestones.

", - "smithy.api#range": { - "min": 1, - "max": 100 + "com.amazonaws.wellarchitected#RecommendationFeedbackType": { + "type": "enum", + "members": { + "USEFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "USEFUL" + } + }, + "NOT_USEFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_USEFUL" + } } } }, - "com.amazonaws.wellarchitected#MilestoneSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#MilestoneSummary" - }, - "traits": { - "smithy.api#documentation": "

A list of milestone summaries.

" - } - }, - "com.amazonaws.wellarchitected#MilestoneSummary": { + "com.amazonaws.wellarchitected#RecommendationGoal": { "type": "structure", "members": { - "MilestoneNumber": { - "target": "com.amazonaws.wellarchitected#MilestoneNumber" - }, - "MilestoneName": { - "target": "com.amazonaws.wellarchitected#MilestoneName" - }, - "RecordedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "WorkloadSummary": { - "target": "com.amazonaws.wellarchitected#WorkloadSummary" + "title": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The title of the goal associated with the recommendation.

", + "smithy.api#required": {} + } } }, "traits": { - "smithy.api#documentation": "

A milestone summary return object.

" - } - }, - "com.amazonaws.wellarchitected#MinSelectedProfileChoices": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.wellarchitected#NextToken": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next set of results.

" - } - }, - "com.amazonaws.wellarchitected#Notes": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The notes associated with the workload.

\n

For a review template, these are the notes that will be associated with the workload when the template is applied.

", - "smithy.api#length": { - "min": 0, - "max": 2084 - } + "smithy.api#documentation": "

Contains information about a goal associated with a recommendation.

" } }, - "com.amazonaws.wellarchitected#NotificationSummaries": { + "com.amazonaws.wellarchitected#RecommendationGoals": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#NotificationSummary" + "target": "com.amazonaws.wellarchitected#RecommendationGoal" } }, - "com.amazonaws.wellarchitected#NotificationSummary": { - "type": "structure", + "com.amazonaws.wellarchitected#RecommendationItemType": { + "type": "enum", "members": { - "Type": { - "target": "com.amazonaws.wellarchitected#NotificationType", + "AWS_RESOURCE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of notification.

" + "smithy.api#enumValue": "AWS_RESOURCE" } }, - "LensUpgradeSummary": { - "target": "com.amazonaws.wellarchitected#LensUpgradeSummary", + "RECOMMENDATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Summary of lens upgrade.

" + "smithy.api#enumValue": "RECOMMENDATION" } } - }, - "traits": { - "smithy.api#documentation": "

A notification summary return object.

" } }, - "com.amazonaws.wellarchitected#NotificationType": { + "com.amazonaws.wellarchitected#RecommendationSource": { "type": "enum", "members": { - "LENS_VERSION_UPGRADED": { + "TRUSTED_ADVISOR": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "LENS_VERSION_UPGRADED" + "smithy.api#enumValue": "TRUSTED_ADVISOR" } }, - "LENS_VERSION_DEPRECATED": { + "COST_EXPLORER": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "LENS_VERSION_DEPRECATED" + "smithy.api#enumValue": "COST_EXPLORER" } - } - } - }, - "com.amazonaws.wellarchitected#OrganizationSharingStatus": { - "type": "enum", - "members": { - "ENABLED": { + }, + "CLOUDWATCH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ENABLED" + "smithy.api#enumValue": "CLOUDWATCH" } }, - "DISABLED": { + "WELL_ARCHITECTED_TOOL": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#enumValue": "WELL_ARCHITECTED_TOOL" + } + }, + "WELL_ARCHITECTED_AGENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WELL_ARCHITECTED_AGENT" + } + }, + "CUSTOMER_IAC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOMER_IAC" } } } }, - "com.amazonaws.wellarchitected#PermissionType": { + "com.amazonaws.wellarchitected#RecommendationSourceList": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#RecommendationSource" + } + }, + "com.amazonaws.wellarchitected#RecommendationState": { "type": "enum", "members": { - "READONLY": { + "OPEN": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "READONLY" + "smithy.api#enumValue": "OPEN" } }, - "CONTRIBUTOR": { + "CLOSED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "CONTRIBUTOR" + "smithy.api#enumValue": "CLOSED" } } - }, - "traits": { - "smithy.api#documentation": "

Permission granted on a share request.

" } }, - "com.amazonaws.wellarchitected#PillarDifference": { - "type": "structure", + "com.amazonaws.wellarchitected#RecommendationStatus": { + "type": "enum", "members": { - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "PillarName": { - "target": "com.amazonaws.wellarchitected#PillarName" - }, - "DifferenceStatus": { - "target": "com.amazonaws.wellarchitected#DifferenceStatus", + "ACTIVE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates the type of change to the pillar.

" + "smithy.api#enumValue": "ACTIVE" } }, - "QuestionDifferences": { - "target": "com.amazonaws.wellarchitected#QuestionDifferences", + "SUPPRESSED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

List of question differences.

" + "smithy.api#enumValue": "SUPPRESSED" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" } - } - }, - "traits": { - "smithy.api#documentation": "

A pillar difference return object.

" - } - }, - "com.amazonaws.wellarchitected#PillarDifferences": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#PillarDifference" - } - }, - "com.amazonaws.wellarchitected#PillarId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The ID used to identify a pillar, for example, security.

\n

A pillar is identified by its PillarReviewSummary$PillarId.

", - "smithy.api#length": { - "min": 1, - "max": 64 } } }, - "com.amazonaws.wellarchitected#PillarMetric": { - "type": "structure", + "com.amazonaws.wellarchitected#RecommendationType": { + "type": "enum", "members": { - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" + "RESOURCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE" + } }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" + "ARCHITECTURE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHITECTURE" + } }, - "Questions": { - "target": "com.amazonaws.wellarchitected#QuestionMetrics", + "APPLICATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The questions that have been identified as risks in the pillar.

" + "smithy.api#enumValue": "APPLICATION" } } - }, - "traits": { - "smithy.api#documentation": "

A metric for a particular pillar in a lens.

" } }, - "com.amazonaws.wellarchitected#PillarMetrics": { + "com.amazonaws.wellarchitected#RecommendationTypes": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#PillarMetric" + "target": "com.amazonaws.wellarchitected#RecommendationType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + }, + "smithy.api#uniqueItems": {} } }, - "com.amazonaws.wellarchitected#PillarName": { + "com.amazonaws.wellarchitected#RecommendedFixStep": { "type": "string", "traits": { - "smithy.api#documentation": "

The name of the pillar.

", "smithy.api#length": { - "min": 1, - "max": 128 + "min": 20, + "max": 200 } } }, - "com.amazonaws.wellarchitected#PillarNotes": { - "type": "map", - "key": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "value": { - "target": "com.amazonaws.wellarchitected#Notes" + "com.amazonaws.wellarchitected#RecommendedFixSteps": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#RecommendedFixStep" }, "traits": { - "smithy.api#documentation": "

List of pillar notes of a lens review in a workload.

\n

For a review template, these are the notes that will be associated with the workload when the template is applied.

" + "smithy.api#length": { + "min": 1, + "max": 5 + } } }, - "com.amazonaws.wellarchitected#PillarReviewSummaries": { + "com.amazonaws.wellarchitected#Region": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 64 + }, + "smithy.api#pattern": "^[a-z]{2}-[a-z]+-\\d{1}$" + } + }, + "com.amazonaws.wellarchitected#Regions": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#PillarReviewSummary" + "target": "com.amazonaws.wellarchitected#Region" }, "traits": { - "smithy.api#documentation": "

List of pillar review summaries of lens review in a workload.

" + "smithy.api#length": { + "min": 0, + "max": 25 + }, + "smithy.api#uniqueItems": {} } }, - "com.amazonaws.wellarchitected#PillarReviewSummary": { + "com.amazonaws.wellarchitected#RemediationStep": { "type": "structure", "members": { - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "PillarName": { - "target": "com.amazonaws.wellarchitected#PillarName" - }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" - }, - "RiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

An optional short label for the step.

", + "smithy.api#length": { + "min": 3, + "max": 80 + } + } }, - "PrioritizedRiskCounts": { - "target": "com.amazonaws.wellarchitected#RiskCounts" + "content": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The content describing the step, which can include code examples and verification checklists.

", + "smithy.api#length": { + "min": 80, + "max": 8000 + }, + "smithy.api#required": {} + } } }, "traits": { - "smithy.api#documentation": "

A pillar review summary of a lens review.

" + "smithy.api#documentation": "

One step within a remediation procedure.

" } }, - "com.amazonaws.wellarchitected#Profile": { + "com.amazonaws.wellarchitected#RemediationSteps": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#RemediationStep" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.wellarchitected#RemediationSummary": { "type": "structure", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "recommendation": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The profile ARN.

" + "smithy.api#documentation": "

A short imperative statement of the recommended action.

", + "smithy.api#length": { + "min": 80, + "max": 240 + }, + "smithy.api#required": {} } }, - "ProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "steps": { + "target": "com.amazonaws.wellarchitected#RecommendedFixSteps", "traits": { - "smithy.api#documentation": "

The profile version.

" + "smithy.api#documentation": "

High-level steps to implement the fix.

", + "smithy.api#required": {} } - }, - "ProfileName": { - "target": "com.amazonaws.wellarchitected#ProfileName", + } + }, + "traits": { + "smithy.api#documentation": "

A high-level remediation summary returned in the detail response.

" + } + }, + "com.amazonaws.wellarchitected#RemediationType": { + "type": "enum", + "members": { + "AUTO_REMEDIATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The profile name.

" + "smithy.api#enumValue": "AUTO_REMEDIATION" } }, - "ProfileDescription": { - "target": "com.amazonaws.wellarchitected#ProfileDescription", + "CONSOLE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The profile description.

" + "smithy.api#enumValue": "CONSOLE" } }, - "ProfileQuestions": { - "target": "com.amazonaws.wellarchitected#ProfileQuestions", + "CLI": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Profile questions.

" + "smithy.api#enumValue": "CLI" } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" - }, - "CreatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "SDK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SDK" + } }, - "ShareInvitationId": { - "target": "com.amazonaws.wellarchitected#ShareInvitationId", + "IAC": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID assigned to the share invitation.

" + "smithy.api#enumValue": "IAC" } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "MCP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The tags assigned to the profile.

" + "smithy.api#enumValue": "MCP" } } - }, - "traits": { - "smithy.api#documentation": "

A profile.

" } }, - "com.amazonaws.wellarchitected#ProfileArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 2084 + "com.amazonaws.wellarchitected#ReportFormat": { + "type": "enum", + "members": { + "PDF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PDF" + } }, - "smithy.api#pattern": "^arn:aws[-a-z]*:wellarchitected:[a-z]{2}(-gov)?-[a-z]+-\\d:\\d{12}:profile/[a-z0-9]+$" + "JSON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JSON" + } + } } }, - "com.amazonaws.wellarchitected#ProfileArns": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ProfileArn" - }, + "com.amazonaws.wellarchitected#ResourceArn": { + "type": "string", "traits": { "smithy.api#length": { - "min": 1 - } + "min": 50, + "max": 250 + }, + "smithy.api#pattern": "^arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}$" } }, - "com.amazonaws.wellarchitected#ProfileChoice": { + "com.amazonaws.wellarchitected#ResourceLink": { "type": "structure", "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" - }, - "ChoiceTitle": { - "target": "com.amazonaws.wellarchitected#ChoiceTitle" + "url": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The URL of the external reference.

", + "smithy.api#length": { + "min": 10, + "max": 500 + }, + "smithy.api#required": {} + } }, - "ChoiceDescription": { - "target": "com.amazonaws.wellarchitected#ChoiceDescription" + "title": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

An optional human-readable title for the link.

", + "smithy.api#length": { + "min": 3, + "max": 100 + } + } } }, "traits": { - "smithy.api#documentation": "

The profile choice.

" + "smithy.api#documentation": "

An external reference associated with remediation steps.

" } }, - "com.amazonaws.wellarchitected#ProfileDescription": { - "type": "string", + "com.amazonaws.wellarchitected#ResourceLinks": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ResourceLink" + }, "traits": { "smithy.api#length": { - "min": 3, - "max": 100 + "min": 0, + "max": 10 } } }, - "com.amazonaws.wellarchitected#ProfileName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 100 + "com.amazonaws.wellarchitected#ResourceNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.wellarchitected#ExceptionMessage", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ResourceId": { + "target": "com.amazonaws.wellarchitected#ExceptionResourceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } + }, + "ResourceType": { + "target": "com.amazonaws.wellarchitected#ExceptionResourceType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#required": {} + } } - } - }, - "com.amazonaws.wellarchitected#ProfileNamePrefix": { - "type": "string", + }, "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.wellarchitected#ProfileNotificationSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ProfileNotificationSummary" + "smithy.api#documentation": "

The requested resource was not found.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 } }, - "com.amazonaws.wellarchitected#ProfileNotificationSummary": { + "com.amazonaws.wellarchitected#ReviewTemplate": { "type": "structure", "members": { - "CurrentProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "Description": { + "target": "com.amazonaws.wellarchitected#TemplateDescription", + "traits": { + "smithy.api#documentation": "

The review template description.

" + } + }, + "Lenses": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", "traits": { - "smithy.api#documentation": "

The current profile version.

" + "smithy.api#documentation": "

The lenses applied to the review template.

" } }, - "LatestProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "QuestionCounts": { + "target": "com.amazonaws.wellarchitected#QuestionCounts", "traits": { - "smithy.api#documentation": "

The latest profile version.

" + "smithy.api#documentation": "

A count of how many total questions are answered and unanswered in the review template.

" } }, - "Type": { - "target": "com.amazonaws.wellarchitected#ProfileNotificationType", + "Owner": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

Type of notification.

" + "smithy.api#documentation": "

The date and time when the review template was last updated.

" } }, - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { - "smithy.api#documentation": "

The profile ARN.

" + "smithy.api#documentation": "

The review template ARN.

" } }, - "ProfileName": { - "target": "com.amazonaws.wellarchitected#ProfileName", + "TemplateName": { + "target": "com.amazonaws.wellarchitected#TemplateName", "traits": { - "smithy.api#documentation": "

The profile name.

" + "smithy.api#documentation": "

The name of the review template.

" } }, - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", + "traits": { + "smithy.api#documentation": "

The tags assigned to the review template.

" + } }, - "WorkloadName": { - "target": "com.amazonaws.wellarchitected#WorkloadName" + "UpdateStatus": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus", + "traits": { + "smithy.api#documentation": "

The latest status of a review template.

" + } + }, + "ShareInvitationId": { + "target": "com.amazonaws.wellarchitected#ShareInvitationId", + "traits": { + "smithy.api#documentation": "

The ID assigned to the template share invitation.

" + } } }, "traits": { - "smithy.api#documentation": "

The profile notification summary.

" + "smithy.api#documentation": "

A review template.

" } }, - "com.amazonaws.wellarchitected#ProfileNotificationType": { - "type": "enum", + "com.amazonaws.wellarchitected#ReviewTemplateAnswer": { + "type": "structure", "members": { - "PROFILE_ANSWERS_UPDATED": { - "target": "smithy.api#Unit", + "QuestionId": { + "target": "com.amazonaws.wellarchitected#QuestionId" + }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, + "QuestionTitle": { + "target": "com.amazonaws.wellarchitected#QuestionTitle" + }, + "QuestionDescription": { + "target": "com.amazonaws.wellarchitected#QuestionDescription" + }, + "ImprovementPlanUrl": { + "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + }, + "HelpfulResourceUrl": { + "target": "com.amazonaws.wellarchitected#HelpfulResourceUrl" + }, + "HelpfulResourceDisplayText": { + "target": "com.amazonaws.wellarchitected#DisplayText", "traits": { - "smithy.api#enumValue": "PROFILE_ANSWERS_UPDATED" + "smithy.api#documentation": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

" } }, - "PROFILE_DELETED": { - "target": "smithy.api#Unit", + "Choices": { + "target": "com.amazonaws.wellarchitected#Choices" + }, + "SelectedChoices": { + "target": "com.amazonaws.wellarchitected#SelectedChoices" + }, + "ChoiceAnswers": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswers", "traits": { - "smithy.api#enumValue": "PROFILE_DELETED" + "smithy.api#documentation": "

A list of selected choices to a question in your review template.

" + } + }, + "IsApplicable": { + "target": "com.amazonaws.wellarchitected#IsApplicable" + }, + "AnswerStatus": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus", + "traits": { + "smithy.api#documentation": "

The status of whether or not this question has been answered.

" + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "Reason": { + "target": "com.amazonaws.wellarchitected#AnswerReason", + "traits": { + "smithy.api#documentation": "

The reason why the question is not applicable to your review template.

" } } + }, + "traits": { + "smithy.api#documentation": "

An answer of the question.

" } }, - "com.amazonaws.wellarchitected#ProfileOwnerType": { + "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus": { "type": "enum", "members": { - "SELF": { + "UNANSWERED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SELF" + "smithy.api#enumValue": "UNANSWERED" } }, - "SHARED": { + "ANSWERED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SHARED" + "smithy.api#enumValue": "ANSWERED" } } } }, - "com.amazonaws.wellarchitected#ProfileQuestion": { + "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummary" + } + }, + "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummary": { "type": "structure", "members": { "QuestionId": { "target": "com.amazonaws.wellarchitected#QuestionId" }, + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" + }, "QuestionTitle": { "target": "com.amazonaws.wellarchitected#QuestionTitle" }, - "QuestionDescription": { - "target": "com.amazonaws.wellarchitected#QuestionDescription" + "Choices": { + "target": "com.amazonaws.wellarchitected#Choices" }, - "QuestionChoices": { - "target": "com.amazonaws.wellarchitected#ProfileQuestionChoices", + "SelectedChoices": { + "target": "com.amazonaws.wellarchitected#SelectedChoices" + }, + "ChoiceAnswerSummaries": { + "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummaries", "traits": { - "smithy.api#documentation": "

The question choices.

" + "smithy.api#documentation": "

A list of selected choices to a question in the review template.

" } }, - "SelectedChoiceIds": { - "target": "com.amazonaws.wellarchitected#SelectedChoiceIds", + "IsApplicable": { + "target": "com.amazonaws.wellarchitected#IsApplicable" + }, + "AnswerStatus": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus", "traits": { - "smithy.api#documentation": "

The selected choices.

" + "smithy.api#documentation": "

The status of whether or not this question has been answered.

" } }, - "MinSelectedChoices": { - "target": "com.amazonaws.wellarchitected#MinSelectedProfileChoices", + "Reason": { + "target": "com.amazonaws.wellarchitected#AnswerReason", "traits": { - "smithy.api#documentation": "

The minimum number of selected choices.

" + "smithy.api#documentation": "

The reason why a choice is not-applicable to a question in the review template.

" } }, - "MaxSelectedChoices": { - "target": "com.amazonaws.wellarchitected#MaxSelectedProfileChoices", + "QuestionType": { + "target": "com.amazonaws.wellarchitected#QuestionType", "traits": { - "smithy.api#documentation": "

The maximum number of selected choices.

" + "smithy.api#documentation": "

The type of question.

" } } }, "traits": { - "smithy.api#documentation": "

A profile question.

" + "smithy.api#documentation": "

The summary of review template answers.

" } }, - "com.amazonaws.wellarchitected#ProfileQuestionChoices": { + "com.amazonaws.wellarchitected#ReviewTemplateArns": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ProfileChoice" + "target": "com.amazonaws.wellarchitected#TemplateArn" + }, + "traits": { + "smithy.api#length": { + "max": 1 + } } }, - "com.amazonaws.wellarchitected#ProfileQuestionUpdate": { + "com.amazonaws.wellarchitected#ReviewTemplateLensAliases": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#LensAlias" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.wellarchitected#ReviewTemplateLensReview": { "type": "structure", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" }, - "SelectedChoiceIds": { - "target": "com.amazonaws.wellarchitected#SelectedProfileChoiceIds", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

The selected choices.

" + "smithy.api#documentation": "

The lens ARN.

" + } + }, + "LensVersion": { + "target": "com.amazonaws.wellarchitected#LensVersion", + "traits": { + "smithy.api#documentation": "

The version of the lens.

" + } + }, + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName" + }, + "LensStatus": { + "target": "com.amazonaws.wellarchitected#LensStatus", + "traits": { + "smithy.api#documentation": "

The status of the lens.

" + } + }, + "PillarReviewSummaries": { + "target": "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummaries", + "traits": { + "smithy.api#documentation": "

Pillar review summaries of a lens review.

" + } + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the review template lens review was last updated.

" + } + }, + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" + }, + "QuestionCounts": { + "target": "com.amazonaws.wellarchitected#QuestionCounts", + "traits": { + "smithy.api#documentation": "

A count of how many questions are answered and unanswered in the lens review.

" } + }, + "NextToken": { + "target": "com.amazonaws.wellarchitected#NextToken" } }, "traits": { - "smithy.api#documentation": "

An update to a profile question.

" - } - }, - "com.amazonaws.wellarchitected#ProfileQuestionUpdates": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ProfileQuestionUpdate" + "smithy.api#documentation": "

The lens review of a review template.

" } }, - "com.amazonaws.wellarchitected#ProfileQuestions": { + "com.amazonaws.wellarchitected#ReviewTemplateLenses": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ProfileQuestion" + "target": "com.amazonaws.wellarchitected#LensAlias" } }, - "com.amazonaws.wellarchitected#ProfileShareSummaries": { + "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummaries": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ProfileShareSummary" + "target": "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummary" } }, - "com.amazonaws.wellarchitected#ProfileShareSummary": { + "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummary": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith" + "PillarName": { + "target": "com.amazonaws.wellarchitected#PillarName" }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus" + "Notes": { + "target": "com.amazonaws.wellarchitected#Notes" }, - "StatusMessage": { - "target": "com.amazonaws.wellarchitected#StatusMessage", + "QuestionCounts": { + "target": "com.amazonaws.wellarchitected#QuestionCounts", "traits": { - "smithy.api#documentation": "

Profile share invitation status message.

" + "smithy.api#documentation": "

A count of how many questions are answered and unanswered in the requested pillar of the lens review.

" } } }, "traits": { - "smithy.api#documentation": "

Summary of a profile share.

" - } - }, - "com.amazonaws.wellarchitected#ProfileSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ProfileSummary" + "smithy.api#documentation": "

Summary of a review template.

" } }, - "com.amazonaws.wellarchitected#ProfileSummary": { + "com.amazonaws.wellarchitected#ReviewTemplateSummary": { "type": "structure", "members": { - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", + "Description": { + "target": "com.amazonaws.wellarchitected#TemplateDescription", "traits": { - "smithy.api#documentation": "

The profile ARN.

" + "smithy.api#documentation": "

Description of the review template.

" } }, - "ProfileVersion": { - "target": "com.amazonaws.wellarchitected#ProfileVersion", + "Lenses": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", "traits": { - "smithy.api#documentation": "

The profile version.

" + "smithy.api#documentation": "

Lenses associated with the review template.

" } }, - "ProfileName": { - "target": "com.amazonaws.wellarchitected#ProfileName", + "Owner": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" + }, + "UpdatedAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

The profile name.

" + "smithy.api#documentation": "

The date and time when the review template was last updated.

" } }, - "ProfileDescription": { - "target": "com.amazonaws.wellarchitected#ProfileDescription", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { - "smithy.api#documentation": "

The profile description.

" + "smithy.api#documentation": "

The review template ARN.

" } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" - }, - "CreatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - } - }, - "traits": { - "smithy.api#documentation": "

Summary of a profile.

" - } - }, - "com.amazonaws.wellarchitected#ProfileTemplate": { - "type": "structure", - "members": { "TemplateName": { - "target": "com.amazonaws.wellarchitected#ProfileName", + "target": "com.amazonaws.wellarchitected#TemplateName", "traits": { - "smithy.api#documentation": "

The name of the profile template.

" + "smithy.api#documentation": "

The name of the review template.

" } }, - "TemplateQuestions": { - "target": "com.amazonaws.wellarchitected#TemplateQuestions", + "UpdateStatus": { + "target": "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus", "traits": { - "smithy.api#documentation": "

Profile template questions.

" + "smithy.api#documentation": "

The latest status of a review template.

" } - }, - "CreatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - } - }, - "traits": { - "smithy.api#documentation": "

The profile template.

" - } - }, - "com.amazonaws.wellarchitected#ProfileTemplateChoice": { - "type": "structure", - "members": { - "ChoiceId": { - "target": "com.amazonaws.wellarchitected#ChoiceId" - }, - "ChoiceTitle": { - "target": "com.amazonaws.wellarchitected#ChoiceTitle" - }, - "ChoiceDescription": { - "target": "com.amazonaws.wellarchitected#ChoiceDescription" } }, "traits": { - "smithy.api#documentation": "

A profile template choice.

" + "smithy.api#documentation": "

Summary of a review template.

" } }, - "com.amazonaws.wellarchitected#ProfileTemplateQuestion": { - "type": "structure", + "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus": { + "type": "enum", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" - }, - "QuestionDescription": { - "target": "com.amazonaws.wellarchitected#QuestionDescription" - }, - "QuestionChoices": { - "target": "com.amazonaws.wellarchitected#ProfileTemplateQuestionChoices", - "traits": { - "smithy.api#documentation": "

The question choices.

" - } - }, - "MinSelectedChoices": { - "target": "com.amazonaws.wellarchitected#MinSelectedProfileChoices", + "CURRENT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The minimum number of choices selected.

" + "smithy.api#enumValue": "CURRENT" } }, - "MaxSelectedChoices": { - "target": "com.amazonaws.wellarchitected#MaxSelectedProfileChoices", + "LENS_NOT_CURRENT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of choices selected.

" + "smithy.api#enumValue": "LENS_NOT_CURRENT" } } - }, - "traits": { - "smithy.api#documentation": "

A profile template question.

" } }, - "com.amazonaws.wellarchitected#ProfileTemplateQuestionChoices": { + "com.amazonaws.wellarchitected#ReviewTemplates": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ProfileTemplateChoice" - } - }, - "com.amazonaws.wellarchitected#ProfileVersion": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 32 - }, - "smithy.api#pattern": "^[A-Za-z0-9-]+$" + "target": "com.amazonaws.wellarchitected#ReviewTemplateSummary" } }, - "com.amazonaws.wellarchitected#Question": { + "com.amazonaws.wellarchitected#Risk": { "type": "enum", "members": { "UNANSWERED": { @@ -7447,173 +12600,201 @@ "smithy.api#enumValue": "UNANSWERED" } }, - "ANSWERED": { + "HIGH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ANSWERED" + "smithy.api#enumValue": "HIGH" + } + }, + "MEDIUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MEDIUM" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + }, + "NOT_APPLICABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_APPLICABLE" } } + }, + "traits": { + "smithy.api#documentation": "

The risk for a given workload, lens review, pillar, or question.

" } }, - "com.amazonaws.wellarchitected#QuestionCounts": { + "com.amazonaws.wellarchitected#RiskCounts": { "type": "map", "key": { - "target": "com.amazonaws.wellarchitected#Question" + "target": "com.amazonaws.wellarchitected#Risk" }, "value": { "target": "com.amazonaws.wellarchitected#Count" - } - }, - "com.amazonaws.wellarchitected#QuestionDescription": { - "type": "string", + }, "traits": { - "smithy.api#documentation": "

The description of the question.

", - "smithy.api#length": { - "min": 1, - "max": 1024 - } + "smithy.api#documentation": "

A map from risk names to the count of how many questions have that rating.

" } }, - "com.amazonaws.wellarchitected#QuestionDifference": { - "type": "structure", + "com.amazonaws.wellarchitected#RiskRating": { + "type": "enum", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" - }, - "DifferenceStatus": { - "target": "com.amazonaws.wellarchitected#DifferenceStatus", + "LOW": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates the type of change to the question.

" + "smithy.api#enumValue": "LOW" } - } - }, - "traits": { - "smithy.api#documentation": "

A question difference return object.

" - } - }, - "com.amazonaws.wellarchitected#QuestionDifferences": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#QuestionDifference" - } - }, - "com.amazonaws.wellarchitected#QuestionId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The ID of the question.

", - "smithy.api#length": { - "min": 1, - "max": 128 - } - } - }, - "com.amazonaws.wellarchitected#QuestionMetric": { - "type": "structure", - "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" }, - "Risk": { - "target": "com.amazonaws.wellarchitected#Risk" - }, - "BestPractices": { - "target": "com.amazonaws.wellarchitected#BestPractices", + "MEDIUM": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The best practices, or choices, that have been identified as contributing to risk in a question.

" + "smithy.api#enumValue": "MEDIUM" } - } - }, - "traits": { - "smithy.api#documentation": "

A metric for a particular question in the pillar.

" - } - }, - "com.amazonaws.wellarchitected#QuestionMetrics": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#QuestionMetric" + }, + "HIGH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HIGH" + } + } } }, - "com.amazonaws.wellarchitected#QuestionPriority": { - "type": "enum", + "com.amazonaws.wellarchitected#Roi": { + "type": "structure", "members": { - "PRIORITIZED": { - "target": "smithy.api#Unit", + "estimate": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "PRIORITIZED" + "smithy.api#documentation": "

A short statistic or key metric. Optional when there is no quantifiable figure.

", + "smithy.api#length": { + "min": 2, + "max": 40 + } } }, - "NONE": { - "target": "smithy.api#Unit", + "detail": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "NONE" + "smithy.api#documentation": "

A sentence providing context for the estimate.

", + "smithy.api#length": { + "min": 30, + "max": 300 + }, + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#documentation": "

A return-on-investment estimate with context.

" } }, - "com.amazonaws.wellarchitected#QuestionTitle": { + "com.amazonaws.wellarchitected#RoleArn": { "type": "string", "traits": { - "smithy.api#documentation": "

The title of the question.

", "smithy.api#length": { - "min": 1, - "max": 512 - } + "max": 2048 + }, + "smithy.api#pattern": "^arn:([a-z\\-]+):iam::\\d{12}:role/(service-role/)?[a-zA-Z0-9+=,.@\\-_]+$" } }, - "com.amazonaws.wellarchitected#QuestionType": { - "type": "enum", + "com.amazonaws.wellarchitected#Scope": { + "type": "structure", "members": { - "PRIORITIZED": { - "target": "smithy.api#Unit", + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", "traits": { - "smithy.api#enumValue": "PRIORITIZED" + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars to include in the generation scope.

", + "smithy.api#required": {} } }, - "NON_PRIORITIZED": { - "target": "smithy.api#Unit", + "goalIds": { + "target": "com.amazonaws.wellarchitected#GoalIdList", "traits": { - "smithy.api#enumValue": "NON_PRIORITIZED" + "smithy.api#documentation": "

Specific goal IDs to focus on during recommendation generation.

" + } + }, + "items": { + "target": "com.amazonaws.wellarchitected#PillarItems", + "traits": { + "smithy.api#documentation": "

Optional per-pillar item filtering configuration.

" } } + }, + "traits": { + "smithy.api#documentation": "

Defines the scope for recommendation generation, specifying which pillars and goals to focus on.

" } }, - "com.amazonaws.wellarchitected#QuotaCode": { - "type": "string", + "com.amazonaws.wellarchitected#SelectedChoiceIds": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + } + }, + "com.amazonaws.wellarchitected#SelectedChoices": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + }, "traits": { - "smithy.api#documentation": "

Service Quotas requirement to identify originating quota.

" + "smithy.api#documentation": "

List of selected choice IDs in a question answer.

The values entered replace the previously selected choices.

" } }, - "com.amazonaws.wellarchitected#ReportFormat": { - "type": "enum", + "com.amazonaws.wellarchitected#SelectedPillar": { + "type": "structure", "members": { - "PDF": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PDF" - } + "PillarId": { + "target": "com.amazonaws.wellarchitected#PillarId" }, - "JSON": { - "target": "smithy.api#Unit", + "SelectedQuestionIds": { + "target": "com.amazonaws.wellarchitected#SelectedQuestionIds", "traits": { - "smithy.api#enumValue": "JSON" + "smithy.api#documentation": "

Selected question IDs in the selected pillar.

" } } + }, + "traits": { + "smithy.api#documentation": "

The selected pillar.

" } }, - "com.amazonaws.wellarchitected#ResourceArn": { + "com.amazonaws.wellarchitected#SelectedPillars": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#SelectedPillar" + } + }, + "com.amazonaws.wellarchitected#SelectedProfileChoiceIds": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ChoiceId" + } + }, + "com.amazonaws.wellarchitected#SelectedQuestionId": { + "type": "string" + }, + "com.amazonaws.wellarchitected#SelectedQuestionIds": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#SelectedQuestionId" + } + }, + "com.amazonaws.wellarchitected#SensitiveString": { "type": "string", "traits": { - "smithy.api#length": { - "min": 50, - "max": 250 - }, - "smithy.api#pattern": "^arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}$" + "smithy.api#sensitive": {} } }, - "com.amazonaws.wellarchitected#ResourceNotFoundException": { + "com.amazonaws.wellarchitected#ServiceCode": { + "type": "string", + "traits": { + "smithy.api#documentation": "

Service Quotas requirement to identify originating service.

" + } + }, + "com.amazonaws.wellarchitected#ServiceQuotaExceededException": { "type": "structure", "members": { "Message": { @@ -7624,14 +12805,20 @@ } }, "ResourceId": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceId", + "target": "com.amazonaws.wellarchitected#ExceptionResourceId" + }, + "ResourceType": { + "target": "com.amazonaws.wellarchitected#ExceptionResourceType" + }, + "QuotaCode": { + "target": "com.amazonaws.wellarchitected#QuotaCode", "traits": { "smithy.api#clientOptional": {}, "smithy.api#required": {} } }, - "ResourceType": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceType", + "ServiceCode": { + "target": "com.amazonaws.wellarchitected#ServiceCode", "traits": { "smithy.api#clientOptional": {}, "smithy.api#required": {} @@ -7639,852 +12826,793 @@ } }, "traits": { - "smithy.api#documentation": "

The requested resource was not found.

", + "smithy.api#documentation": "

The user has reached their resource quota.

", "smithy.api#error": "client", - "smithy.api#httpError": 404 + "smithy.api#httpError": 402 } }, - "com.amazonaws.wellarchitected#ReviewTemplate": { + "com.amazonaws.wellarchitected#ShareId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The ID associated with the share.

", + "smithy.api#pattern": "^[0-9a-f]{32}$" + } + }, + "com.amazonaws.wellarchitected#ShareInvitation": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.wellarchitected#TemplateDescription", - "traits": { - "smithy.api#documentation": "

The review template description.

" - } - }, - "Lenses": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", + "ShareInvitationId": { + "target": "com.amazonaws.wellarchitected#ShareInvitationId", "traits": { - "smithy.api#documentation": "

The lenses applied to the review template.

" + "smithy.api#documentation": "

The ID assigned to the share invitation.

" } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" - }, - "QuestionCounts": { - "target": "com.amazonaws.wellarchitected#QuestionCounts", + "ShareResourceType": { + "target": "com.amazonaws.wellarchitected#ShareResourceType", "traits": { - "smithy.api#documentation": "

A count of how many total questions are answered and unanswered in the review template.

" + "smithy.api#documentation": "

The resource type of the share invitation.

" } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "LensAlias": { + "target": "com.amazonaws.wellarchitected#LensAlias" }, - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

The ARN for the lens.

" } }, - "TemplateName": { - "target": "com.amazonaws.wellarchitected#TemplateName", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { - "smithy.api#documentation": "

The name of the review template.

" + "smithy.api#documentation": "

The profile ARN.

" } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { - "smithy.api#documentation": "

The tags assigned to the review template.

" + "smithy.api#documentation": "

The review template ARN.

" } - }, - "UpdateStatus": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus", + } + }, + "traits": { + "smithy.api#documentation": "

The share invitation.

" + } + }, + "com.amazonaws.wellarchitected#ShareInvitationAction": { + "type": "enum", + "members": { + "ACCEPT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The latest status of a review template.

" + "smithy.api#enumValue": "ACCEPT" } }, - "ShareInvitationId": { - "target": "com.amazonaws.wellarchitected#ShareInvitationId", + "REJECT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID assigned to the template share invitation.

" + "smithy.api#enumValue": "REJECT" } } }, "traits": { - "smithy.api#documentation": "

A review template.

" + "smithy.api#documentation": "

Share invitation action taken by contributor.

" } }, - "com.amazonaws.wellarchitected#ReviewTemplateAnswer": { + "com.amazonaws.wellarchitected#ShareInvitationId": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-f]{32}$" + } + }, + "com.amazonaws.wellarchitected#ShareInvitationSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#ShareInvitationSummary" + } + }, + "com.amazonaws.wellarchitected#ShareInvitationSummary": { "type": "structure", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" + "ShareInvitationId": { + "target": "com.amazonaws.wellarchitected#ShareInvitationId", + "traits": { + "smithy.api#documentation": "

The ID assigned to the share invitation.

" + } }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" + "SharedBy": { + "target": "com.amazonaws.wellarchitected#AwsAccountId" }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" + "SharedWith": { + "target": "com.amazonaws.wellarchitected#SharedWith" }, - "QuestionDescription": { - "target": "com.amazonaws.wellarchitected#QuestionDescription" + "PermissionType": { + "target": "com.amazonaws.wellarchitected#PermissionType" }, - "ImprovementPlanUrl": { - "target": "com.amazonaws.wellarchitected#ImprovementPlanUrl" + "ShareResourceType": { + "target": "com.amazonaws.wellarchitected#ShareResourceType", + "traits": { + "smithy.api#documentation": "

The resource type of the share invitation.

" + } }, - "HelpfulResourceUrl": { - "target": "com.amazonaws.wellarchitected#HelpfulResourceUrl" + "WorkloadName": { + "target": "com.amazonaws.wellarchitected#WorkloadName" + }, + "WorkloadId": { + "target": "com.amazonaws.wellarchitected#WorkloadId" + }, + "LensName": { + "target": "com.amazonaws.wellarchitected#LensName" }, - "HelpfulResourceDisplayText": { - "target": "com.amazonaws.wellarchitected#DisplayText", + "LensArn": { + "target": "com.amazonaws.wellarchitected#LensArn", "traits": { - "smithy.api#documentation": "

The helpful resource text to be displayed for a custom lens.

\n \n

This field does not apply to Amazon Web Services official lenses.

\n
" + "smithy.api#documentation": "

The ARN for the lens.

" } }, - "Choices": { - "target": "com.amazonaws.wellarchitected#Choices" - }, - "SelectedChoices": { - "target": "com.amazonaws.wellarchitected#SelectedChoices" - }, - "ChoiceAnswers": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswers", + "ProfileName": { + "target": "com.amazonaws.wellarchitected#ProfileName", "traits": { - "smithy.api#documentation": "

A list of selected choices to a question in your review template.

" + "smithy.api#documentation": "

The profile name.

" } }, - "IsApplicable": { - "target": "com.amazonaws.wellarchitected#IsApplicable" - }, - "AnswerStatus": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus", + "ProfileArn": { + "target": "com.amazonaws.wellarchitected#ProfileArn", "traits": { - "smithy.api#documentation": "

The status of whether or not this question has been answered.

" + "smithy.api#documentation": "

The profile ARN.

" } }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" + "TemplateName": { + "target": "com.amazonaws.wellarchitected#TemplateName", + "traits": { + "smithy.api#documentation": "

The name of the review template.

" + } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#AnswerReason", + "TemplateArn": { + "target": "com.amazonaws.wellarchitected#TemplateArn", "traits": { - "smithy.api#documentation": "

The reason why the question is not applicable to your review template.

" + "smithy.api#documentation": "

The review template ARN.

" } } }, "traits": { - "smithy.api#documentation": "

An answer of the question.

" + "smithy.api#documentation": "

A share invitation summary return object.

" } }, - "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus": { + "com.amazonaws.wellarchitected#ShareResourceType": { "type": "enum", "members": { - "UNANSWERED": { + "WORKLOAD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "UNANSWERED" + "smithy.api#enumValue": "WORKLOAD" } }, - "ANSWERED": { + "LENS": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ANSWERED" + "smithy.api#enumValue": "LENS" + } + }, + "PROFILE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROFILE" + } + }, + "TEMPLATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEMPLATE" } } } }, - "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummary" - } - }, - "com.amazonaws.wellarchitected#ReviewTemplateAnswerSummary": { - "type": "structure", + "com.amazonaws.wellarchitected#ShareStatus": { + "type": "enum", "members": { - "QuestionId": { - "target": "com.amazonaws.wellarchitected#QuestionId" - }, - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "QuestionTitle": { - "target": "com.amazonaws.wellarchitected#QuestionTitle" + "ACCEPTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCEPTED" + } }, - "Choices": { - "target": "com.amazonaws.wellarchitected#Choices" + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } }, - "SelectedChoices": { - "target": "com.amazonaws.wellarchitected#SelectedChoices" + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } }, - "ChoiceAnswerSummaries": { - "target": "com.amazonaws.wellarchitected#ChoiceAnswerSummaries", + "REVOKED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A list of selected choices to a question in the review template.

" + "smithy.api#enumValue": "REVOKED" } }, - "IsApplicable": { - "target": "com.amazonaws.wellarchitected#IsApplicable" + "EXPIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXPIRED" + } }, - "AnswerStatus": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateAnswerStatus", + "ASSOCIATING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The status of whether or not this question has been answered.

" + "smithy.api#enumValue": "ASSOCIATING" } }, - "Reason": { - "target": "com.amazonaws.wellarchitected#AnswerReason", + "ASSOCIATED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The reason why a choice is not-applicable to a question in the review template.

" + "smithy.api#enumValue": "ASSOCIATED" } }, - "QuestionType": { - "target": "com.amazonaws.wellarchitected#QuestionType", + "FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of question.

" + "smithy.api#enumValue": "FAILED" } } }, "traits": { - "smithy.api#documentation": "

The summary of review template answers.

" + "smithy.api#documentation": "

The status of the share request.

" } }, - "com.amazonaws.wellarchitected#ReviewTemplateArns": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#TemplateArn" - }, + "com.amazonaws.wellarchitected#SharedWith": { + "type": "string", "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload, lens, profile, or review template is shared.

", "smithy.api#length": { - "min": 0, - "max": 1 + "min": 12, + "max": 2048 } } }, - "com.amazonaws.wellarchitected#ReviewTemplateLensAliases": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, + "com.amazonaws.wellarchitected#SharedWithPrefix": { + "type": "string", "traits": { "smithy.api#length": { - "min": 1, - "max": 10 + "max": 100 } } }, - "com.amazonaws.wellarchitected#ReviewTemplateLensReview": { - "type": "structure", - "members": { - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#documentation": "

The lens ARN.

" - } - }, - "LensVersion": { - "target": "com.amazonaws.wellarchitected#LensVersion", - "traits": { - "smithy.api#documentation": "

The version of the lens.

" - } - }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName" - }, - "LensStatus": { - "target": "com.amazonaws.wellarchitected#LensStatus", - "traits": { - "smithy.api#documentation": "

The status of the lens.

" - } + "com.amazonaws.wellarchitected#StartAgentRecommendationGeneration": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#StartAgentRecommendationGenerationRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#StartAgentRecommendationGenerationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "PillarReviewSummaries": { - "target": "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummaries", - "traits": { - "smithy.api#documentation": "

Pillar review summaries of a lens review.

" - } + { + "target": "com.amazonaws.wellarchitected#ConflictException" }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + { + "target": "com.amazonaws.wellarchitected#InternalServerException" }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" + { + "target": "com.amazonaws.wellarchitected#ServiceQuotaExceededException" }, - "QuestionCounts": { - "target": "com.amazonaws.wellarchitected#QuestionCounts", - "traits": { - "smithy.api#documentation": "

A count of how many questions are answered and unanswered in the lens review.

" - } + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" }, - "NextToken": { - "target": "com.amazonaws.wellarchitected#NextToken" + { + "target": "com.amazonaws.wellarchitected#ValidationException" } - }, + ], "traits": { - "smithy.api#documentation": "

The lens review of a review template.

" - } - }, - "com.amazonaws.wellarchitected#ReviewTemplateLenses": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#LensAlias" - } - }, - "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummary" - } - }, - "com.amazonaws.wellarchitected#ReviewTemplatePillarReviewSummary": { - "type": "structure", - "members": { - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" - }, - "PillarName": { - "target": "com.amazonaws.wellarchitected#PillarName" - }, - "Notes": { - "target": "com.amazonaws.wellarchitected#Notes" + "smithy.api#documentation": "

Initiates a new recommendation generation process for the specified optimization profile. This asynchronous operation analyzes your Amazon Web Services resources and generates optimization recommendations based on the configured pillars and scope. Use GetAgentRecommendationGeneration to check status.

", + "smithy.api#http": { + "method": "POST", + "uri": "/api/v1/agent-profiles/{profileArn}/generations" }, - "QuestionCounts": { - "target": "com.amazonaws.wellarchitected#QuestionCounts", - "traits": { - "smithy.api#documentation": "

A count of how many questions are answered and unanswered in the requested pillar of the lens review.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Summary of a review template.

" + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ] } }, - "com.amazonaws.wellarchitected#ReviewTemplateSummary": { + "com.amazonaws.wellarchitected#StartAgentRecommendationGenerationRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.wellarchitected#TemplateDescription", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#documentation": "

Description of the review template.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the optimization profile to use for generating recommendations.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "Lenses": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateLenses", + "types": { + "target": "com.amazonaws.wellarchitected#RecommendationTypes", "traits": { - "smithy.api#documentation": "

Lenses associated with the review template.

" + "smithy.api#documentation": "

The types of recommendations to generate.

", + "smithy.api#required": {} } }, - "Owner": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" - }, - "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" - }, - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "name": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

An optional name for this generation process to help identify it in lists and logs.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[A-Za-z0-9_-]+$" } }, - "TemplateName": { - "target": "com.amazonaws.wellarchitected#TemplateName", + "additionalContext": { + "target": "smithy.api#Document", "traits": { - "smithy.api#documentation": "

The name of the review template.

" + "smithy.api#documentation": "

Optional additional context to guide the recommendation generation, such as specific business requirements or constraints.

" } }, - "UpdateStatus": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus", + "scope": { + "target": "com.amazonaws.wellarchitected#Scope", "traits": { - "smithy.api#documentation": "

The latest status of a review template.

" + "smithy.api#documentation": "

Scope configuration to focus the generation on specific pillars or goals.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Summary of a review template.

" + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ReviewTemplateUpdateStatus": { - "type": "enum", + "com.amazonaws.wellarchitected#StartAgentRecommendationGenerationResponse": { + "type": "structure", "members": { - "CURRENT": { - "target": "smithy.api#Unit", + "id": { + "target": "com.amazonaws.wellarchitected#UUID", "traits": { - "smithy.api#enumValue": "CURRENT" + "smithy.api#documentation": "

The unique identifier of the recommendation generation.

", + "smithy.api#required": {} } }, - "LENS_NOT_CURRENT": { - "target": "smithy.api#Unit", + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", "traits": { - "smithy.api#enumValue": "LENS_NOT_CURRENT" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile used for this generation.

", + "smithy.api#required": {} } - } - } - }, - "com.amazonaws.wellarchitected#ReviewTemplates": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ReviewTemplateSummary" - } - }, - "com.amazonaws.wellarchitected#Risk": { - "type": "enum", - "members": { - "UNANSWERED": { - "target": "smithy.api#Unit", + }, + "name": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "UNANSWERED" + "smithy.api#documentation": "

The name of the recommendation generation.

" } }, - "HIGH": { - "target": "smithy.api#Unit", + "status": { + "target": "com.amazonaws.wellarchitected#GenerationStatus", "traits": { - "smithy.api#enumValue": "HIGH" + "smithy.api#documentation": "

The current status of the recommendation generation.

", + "smithy.api#required": {} } }, - "MEDIUM": { - "target": "smithy.api#Unit", + "estimatedCompletionTime": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "MEDIUM" + "smithy.api#documentation": "

The estimated time for the generation to complete.

", + "smithy.api#timestampFormat": "date-time" } }, - "NONE": { - "target": "smithy.api#Unit", + "createdBy": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "NONE" + "smithy.api#documentation": "

The identifier of the user or system that started this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} } }, - "NOT_APPLICABLE": { - "target": "smithy.api#Unit", + "createdAt": { + "target": "smithy.api#Timestamp", "traits": { - "smithy.api#enumValue": "NOT_APPLICABLE" + "smithy.api#documentation": "

The timestamp when the generation was started.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this generation.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the generation was last modified.

", + "smithy.api#timestampFormat": "date-time" } } }, "traits": { - "smithy.api#documentation": "

The risk for a given workload, lens review, pillar, or question.

" + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#RiskCounts": { - "type": "map", - "key": { - "target": "com.amazonaws.wellarchitected#Risk" - }, - "value": { - "target": "com.amazonaws.wellarchitected#Count" - }, + "com.amazonaws.wellarchitected#StatusMessage": { + "type": "string", "traits": { - "smithy.api#documentation": "

A map from risk names to the count of how many questions have that rating.

" + "smithy.api#length": { + "min": 1, + "max": 512 + } } }, - "com.amazonaws.wellarchitected#SelectedChoiceIds": { + "com.amazonaws.wellarchitected#StringList": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "target": "smithy.api#String" } }, - "com.amazonaws.wellarchitected#SelectedChoices": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ChoiceId" - }, + "com.amazonaws.wellarchitected#Subdomain": { + "type": "string", "traits": { - "smithy.api#documentation": "

List of selected choice IDs in a question answer.

\n

The values entered replace the previously selected choices.

" + "smithy.api#length": { + "min": 1, + "max": 100 + } } }, - "com.amazonaws.wellarchitected#SelectedPillar": { + "com.amazonaws.wellarchitected#Tag": { "type": "structure", "members": { - "PillarId": { - "target": "com.amazonaws.wellarchitected#PillarId" + "key": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The key of the tag.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]+$", + "smithy.api#required": {} + } }, - "SelectedQuestionIds": { - "target": "com.amazonaws.wellarchitected#SelectedQuestionIds", + "value": { + "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Selected question IDs in the selected pillar.

" + "smithy.api#documentation": "

The value of the tag.

", + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]+$", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The selected pillar.

" + "smithy.api#documentation": "

A key-value pair associated with a resource for cost allocation and access control.

" } }, - "com.amazonaws.wellarchitected#SelectedPillars": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#SelectedPillar" + "com.amazonaws.wellarchitected#TagKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^(?!aws:)[\\p{L}\\p{N}\\p{Z}_.:/=+@-]+$" } }, - "com.amazonaws.wellarchitected#SelectedProfileChoiceIds": { + "com.amazonaws.wellarchitected#TagKeyList": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ChoiceId" + "target": "com.amazonaws.wellarchitected#TagKey" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } } }, - "com.amazonaws.wellarchitected#SelectedQuestionId": { - "type": "string" - }, - "com.amazonaws.wellarchitected#SelectedQuestionIds": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#SelectedQuestionId" + "com.amazonaws.wellarchitected#TagMap": { + "type": "map", + "key": { + "target": "com.amazonaws.wellarchitected#TagKey" + }, + "value": { + "target": "com.amazonaws.wellarchitected#TagValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } } }, - "com.amazonaws.wellarchitected#ServiceCode": { - "type": "string", + "com.amazonaws.wellarchitected#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#TagResourceInput" + }, + "output": { + "target": "com.amazonaws.wellarchitected#TagResourceOutput" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + } + ], "traits": { - "smithy.api#documentation": "

Service Quotas requirement to identify originating service.

" + "smithy.api#documentation": "

Adds one or more tags to the specified resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "smithy.api#http": { + "method": "POST", + "uri": "/tags/{WorkloadArn}", + "code": 200 + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#ServiceQuotaExceededException": { + "com.amazonaws.wellarchitected#TagResourceInput": { "type": "structure", "members": { - "Message": { - "target": "com.amazonaws.wellarchitected#ExceptionMessage", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#required": {} - } - }, - "ResourceId": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceId" - }, - "ResourceType": { - "target": "com.amazonaws.wellarchitected#ExceptionResourceType" - }, - "QuotaCode": { - "target": "com.amazonaws.wellarchitected#QuotaCode", + "WorkloadArn": { + "target": "com.amazonaws.wellarchitected#WorkloadArn", "traits": { - "smithy.api#clientOptional": {}, + "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "ServiceCode": { - "target": "com.amazonaws.wellarchitected#ServiceCode", + "Tags": { + "target": "com.amazonaws.wellarchitected#TagMap", "traits": { "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The tags for the resource.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The user has reached their resource quota.

", - "smithy.api#error": "client", - "smithy.api#httpError": 402 - } - }, - "com.amazonaws.wellarchitected#ShareId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The ID associated with the share.

", - "smithy.api#pattern": "^[0-9a-f]{32}$" + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ShareInvitation": { + "com.amazonaws.wellarchitected#TagResourceOutput": { "type": "structure", - "members": { - "ShareInvitationId": { - "target": "com.amazonaws.wellarchitected#ShareInvitationId", - "traits": { - "smithy.api#documentation": "

The ID assigned to the share invitation.

" - } - }, - "ShareResourceType": { - "target": "com.amazonaws.wellarchitected#ShareResourceType", - "traits": { - "smithy.api#documentation": "

The resource type of the share invitation.

" - } - }, - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "LensAlias": { - "target": "com.amazonaws.wellarchitected#LensAlias" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" - } - }, - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", - "traits": { - "smithy.api#documentation": "

The profile ARN.

" - } - }, - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", - "traits": { - "smithy.api#documentation": "

The review template ARN.

" - } + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.wellarchitected#TagValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 256 } - }, + } + }, + "com.amazonaws.wellarchitected#Tags": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#Tag" + } + }, + "com.amazonaws.wellarchitected#TemplateArn": { + "type": "string", "traits": { - "smithy.api#documentation": "

The share invitation.

" + "smithy.api#length": { + "min": 50, + "max": 250 + }, + "smithy.api#pattern": "^arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}$" } }, - "com.amazonaws.wellarchitected#ShareInvitationAction": { - "type": "enum", - "members": { - "ACCEPT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ACCEPT" - } + "com.amazonaws.wellarchitected#TemplateDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 250 }, - "REJECT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REJECT" - } - } - }, + "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + } + }, + "com.amazonaws.wellarchitected#TemplateName": { + "type": "string", "traits": { - "smithy.api#documentation": "

Share invitation action taken by contributor.

" + "smithy.api#length": { + "min": 3, + "max": 100 + }, + "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" } }, - "com.amazonaws.wellarchitected#ShareInvitationId": { + "com.amazonaws.wellarchitected#TemplateNamePrefix": { "type": "string", "traits": { - "smithy.api#pattern": "^[0-9a-f]{32}$" + "smithy.api#length": { + "max": 100 + }, + "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" } }, - "com.amazonaws.wellarchitected#ShareInvitationSummaries": { + "com.amazonaws.wellarchitected#TemplateQuestions": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#ShareInvitationSummary" + "target": "com.amazonaws.wellarchitected#ProfileTemplateQuestion" } }, - "com.amazonaws.wellarchitected#ShareInvitationSummary": { + "com.amazonaws.wellarchitected#TemplateShareSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.wellarchitected#TemplateShareSummary" + } + }, + "com.amazonaws.wellarchitected#TemplateShareSummary": { "type": "structure", "members": { - "ShareInvitationId": { - "target": "com.amazonaws.wellarchitected#ShareInvitationId", - "traits": { - "smithy.api#documentation": "

The ID assigned to the share invitation.

" - } - }, - "SharedBy": { - "target": "com.amazonaws.wellarchitected#AwsAccountId" + "ShareId": { + "target": "com.amazonaws.wellarchitected#ShareId" }, "SharedWith": { "target": "com.amazonaws.wellarchitected#SharedWith" }, - "PermissionType": { - "target": "com.amazonaws.wellarchitected#PermissionType" - }, - "ShareResourceType": { - "target": "com.amazonaws.wellarchitected#ShareResourceType", - "traits": { - "smithy.api#documentation": "

The resource type of the share invitation.

" - } - }, - "WorkloadName": { - "target": "com.amazonaws.wellarchitected#WorkloadName" - }, - "WorkloadId": { - "target": "com.amazonaws.wellarchitected#WorkloadId" - }, - "LensName": { - "target": "com.amazonaws.wellarchitected#LensName" - }, - "LensArn": { - "target": "com.amazonaws.wellarchitected#LensArn", - "traits": { - "smithy.api#documentation": "

The ARN for the lens.

" - } - }, - "ProfileName": { - "target": "com.amazonaws.wellarchitected#ProfileName", - "traits": { - "smithy.api#documentation": "

The profile name.

" - } - }, - "ProfileArn": { - "target": "com.amazonaws.wellarchitected#ProfileArn", - "traits": { - "smithy.api#documentation": "

The profile ARN.

" - } - }, - "TemplateName": { - "target": "com.amazonaws.wellarchitected#TemplateName", - "traits": { - "smithy.api#documentation": "

The name of the review template.

" - } + "Status": { + "target": "com.amazonaws.wellarchitected#ShareStatus" }, - "TemplateArn": { - "target": "com.amazonaws.wellarchitected#TemplateArn", + "StatusMessage": { + "target": "com.amazonaws.wellarchitected#StatusMessage", "traits": { - "smithy.api#documentation": "

The review template ARN.

" + "smithy.api#documentation": "

Review template share invitation status message.

" } } }, "traits": { - "smithy.api#documentation": "

A share invitation summary return object.

" + "smithy.api#documentation": "

Summary of a review template share.

" } }, - "com.amazonaws.wellarchitected#ShareResourceType": { - "type": "enum", + "com.amazonaws.wellarchitected#ThrottlingException": { + "type": "structure", "members": { - "WORKLOAD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WORKLOAD" - } - }, - "LENS": { - "target": "smithy.api#Unit", + "Message": { + "target": "com.amazonaws.wellarchitected#ExceptionMessage", "traits": { - "smithy.api#enumValue": "LENS" + "smithy.api#clientOptional": {}, + "smithy.api#required": {} } }, - "PROFILE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PROFILE" - } + "QuotaCode": { + "target": "com.amazonaws.wellarchitected#QuotaCode" }, - "TEMPLATE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "TEMPLATE" - } + "ServiceCode": { + "target": "com.amazonaws.wellarchitected#ServiceCode" } + }, + "traits": { + "smithy.api#documentation": "

Request was denied due to request throttling.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 } }, - "com.amazonaws.wellarchitected#ShareStatus": { - "type": "enum", + "com.amazonaws.wellarchitected#TradeOff": { + "type": "structure", "members": { - "ACCEPTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ACCEPTED" - } - }, - "REJECTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REJECTED" - } - }, - "PENDING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PENDING" - } - }, - "REVOKED": { - "target": "smithy.api#Unit", + "pillar": { + "target": "com.amazonaws.wellarchitected#Pillar", "traits": { - "smithy.api#enumValue": "REVOKED" + "smithy.api#documentation": "

The pillar that could be negatively impacted.

", + "smithy.api#required": {} } }, - "EXPIRED": { - "target": "smithy.api#Unit", + "title": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "EXPIRED" + "smithy.api#documentation": "

A short phrase describing what is lost or degraded.

", + "smithy.api#length": { + "min": 3, + "max": 80 + }, + "smithy.api#required": {} } }, - "ASSOCIATING": { - "target": "smithy.api#Unit", + "description": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "ASSOCIATING" + "smithy.api#documentation": "

A description of the specific risk and the condition that triggers it.

", + "smithy.api#length": { + "min": 30, + "max": 450 + }, + "smithy.api#required": {} } }, - "ASSOCIATED": { - "target": "smithy.api#Unit", + "risk": { + "target": "com.amazonaws.wellarchitected#RiskRating", "traits": { - "smithy.api#enumValue": "ASSOCIATED" + "smithy.api#documentation": "

The risk rating for the trade-off.

", + "smithy.api#required": {} } }, - "FAILED": { - "target": "smithy.api#Unit", + "mitigation": { + "target": "smithy.api#String", "traits": { - "smithy.api#enumValue": "FAILED" + "smithy.api#documentation": "

A specific action to mitigate the trade-off and when to take it.

", + "smithy.api#length": { + "min": 30, + "max": 450 + }, + "smithy.api#required": {} + } + }, + "riskExplanation": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

An optional explanation providing additional context for the risk rating.

", + "smithy.api#length": { + "min": 1, + "max": 160 + } } } - }, - "traits": { - "smithy.api#documentation": "

The status of the share request.

" - } - }, - "com.amazonaws.wellarchitected#SharedWith": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which \n the workload, lens, profile, or review template is shared.

", - "smithy.api#length": { - "min": 12, - "max": 2048 - } - } - }, - "com.amazonaws.wellarchitected#SharedWithPrefix": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.wellarchitected#StatusMessage": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 512 - } - } - }, - "com.amazonaws.wellarchitected#Subdomain": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 - } - } - }, - "com.amazonaws.wellarchitected#TagKey": { - "type": "string", + }, "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - } + "smithy.api#documentation": "

A negative trade-off from acting on the recommendation.

" } }, - "com.amazonaws.wellarchitected#TagKeyList": { + "com.amazonaws.wellarchitected#TradeOffs": { "type": "list", "member": { - "target": "com.amazonaws.wellarchitected#TagKey" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 50 + "target": "com.amazonaws.wellarchitected#TradeOff" + } + }, + "com.amazonaws.wellarchitected#TrustedAdvisorIntegrationStatus": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } } } }, - "com.amazonaws.wellarchitected#TagMap": { - "type": "map", - "key": { - "target": "com.amazonaws.wellarchitected#TagKey" - }, - "value": { - "target": "com.amazonaws.wellarchitected#TagValue" - }, + "com.amazonaws.wellarchitected#UUID": { + "type": "string", "traits": { - "smithy.api#length": { - "min": 1, - "max": 50 - } + "smithy.api#pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" } }, - "com.amazonaws.wellarchitected#TagResource": { + "com.amazonaws.wellarchitected#UntagResource": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#TagResourceInput" + "target": "com.amazonaws.wellarchitected#UntagResourceInput" }, "output": { - "target": "com.amazonaws.wellarchitected#TagResourceOutput" + "target": "com.amazonaws.wellarchitected#UntagResourceOutput" }, "errors": [ { @@ -8495,15 +13623,18 @@ } ], "traits": { - "smithy.api#documentation": "

Adds one or more tags to the specified resource.

\n \n

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

\n
", + "smithy.api#documentation": "

Deletes specified tags from a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

To specify multiple tags, use separate tagKeys parameters, for example:

DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2

", "smithy.api#http": { - "method": "POST", + "method": "DELETE", "uri": "/tags/{WorkloadArn}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, - "com.amazonaws.wellarchitected#TagResourceInput": { + "com.amazonaws.wellarchitected#UntagResourceInput": { "type": "structure", "members": { "WorkloadArn": { @@ -8513,11 +13644,12 @@ "smithy.api#required": {} } }, - "Tags": { - "target": "com.amazonaws.wellarchitected#TagMap", + "TagKeys": { + "target": "com.amazonaws.wellarchitected#TagKeyList", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The tags for the resource.

", + "smithy.api#documentation": "

A list of tag keys. Existing tags of the resource whose keys are members of this list are removed from the resource.

", + "smithy.api#httpQuery": "tagKeys", "smithy.api#required": {} } } @@ -8526,193 +13658,618 @@ "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#TagResourceOutput": { + "com.amazonaws.wellarchitected#UntagResourceOutput": { "type": "structure", "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#TagValue": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 256 + "com.amazonaws.wellarchitected#UpdateAgentContext": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#UpdateAgentContextRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#UpdateAgentContextResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } + ], + "traits": { + "smithy.api#documentation": "

Updates an existing context associated with a profile.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/api/v1/agent-profiles/{profileArn}/contexts/{id}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "UpdateAgentContext", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#TemplateArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 50, - "max": 250 + "com.amazonaws.wellarchitected#UpdateAgentContextRequest": { + "type": "structure", + "members": { + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } }, - "smithy.api#pattern": "^arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}$" + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the context.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the context to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The updated title of the context.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "content": { + "target": "com.amazonaws.wellarchitected#ContextContent", + "traits": { + "smithy.api#documentation": "

The updated typed content of the context. The structure contains application-specific fields such as account IDs, Regions, services, and resource types.

" + } + } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#TemplateDescription": { - "type": "string", + "com.amazonaws.wellarchitected#UpdateAgentContextResponse": { + "type": "structure", + "members": { + "context": { + "target": "com.amazonaws.wellarchitected#ContextSummary", + "traits": { + "smithy.api#documentation": "

The updated context summary.

", + "smithy.api#required": {} + } + } + }, "traits": { - "smithy.api#length": { - "min": 3, - "max": 250 - }, - "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#TemplateName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 100 + "com.amazonaws.wellarchitected#UpdateAgentGoal": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#UpdateAgentGoalRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#UpdateAgentGoalResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" }, - "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the pillars and title of an existing goal associated with a profile.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/api/v1/agent-profiles/{profileArn}/goals/{id}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "UpdateAgentGoal", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile", + "id": "f6b5df15-3409-483f-b796-45d0e590222c" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#TemplateNamePrefix": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 + "com.amazonaws.wellarchitected#UpdateAgentGoalRequest": { + "type": "structure", + "members": { + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } }, - "smithy.api#pattern": "^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile containing the goal to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "id": { + "target": "com.amazonaws.wellarchitected#UUID", + "traits": { + "smithy.api#documentation": "

The unique identifier of the goal to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The updated pillars for the goal. Pillars define the optimization focus areas such as cost, performance, resilience, and operational excellence.

" + } + }, + "title": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The updated title for the goal. Maximum length of 1000 characters.

", + "smithy.api#length": { + "min": 1, + "max": 1000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + }, + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A description of the goal.

", + "smithy.api#length": { + "min": 1, + "max": 4000 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } + } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#TemplateQuestions": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#ProfileTemplateQuestion" + "com.amazonaws.wellarchitected#UpdateAgentGoalResponse": { + "type": "structure", + "members": { + "goal": { + "target": "com.amazonaws.wellarchitected#GoalSummary", + "traits": { + "smithy.api#documentation": "

The updated goal summary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#TemplateShareSummaries": { - "type": "list", - "member": { - "target": "com.amazonaws.wellarchitected#TemplateShareSummary" + "com.amazonaws.wellarchitected#UpdateAgentProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.wellarchitected#UpdateAgentProfileRequest" + }, + "output": { + "target": "com.amazonaws.wellarchitected#UpdateAgentProfileResponse" + }, + "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, + { + "target": "com.amazonaws.wellarchitected#InternalServerException" + }, + { + "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates an existing optimization profile's configuration, including its pillars, execution role, and aggregation settings.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/api/v1/agent-profiles/{profileArn}" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ], + "smithy.test#smokeTests": [ + { + "id": "UpdateAgentProfile", + "params": { + "profileArn": "arn:aws:wellarchitected:us-west-2:123456789012:agent-profile/test-profile" + }, + "expect": { + "failure": {} + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "vendorParams": { + "region": "us-west-2" + } + } + ] } }, - "com.amazonaws.wellarchitected#TemplateShareSummary": { + "com.amazonaws.wellarchitected#UpdateAgentProfileRequest": { "type": "structure", "members": { - "ShareId": { - "target": "com.amazonaws.wellarchitected#ShareId" + "clientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\x21-\\x7E]+$" + } }, - "SharedWith": { - "target": "com.amazonaws.wellarchitected#SharedWith" + "profileArn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the profile to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } }, - "Status": { - "target": "com.amazonaws.wellarchitected#ShareStatus" + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The updated display name of the profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } }, - "StatusMessage": { - "target": "com.amazonaws.wellarchitected#StatusMessage", + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#documentation": "

Review template share invitation status message.

" + "smithy.api#documentation": "

The updated description of the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", + "traits": { + "smithy.api#documentation": "

The updated ARN of the IAM execution role.

" + } + }, + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The updated aggregation configuration.

" + } + }, + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The updated business overview for the profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The updated Well-Architected Tool Framework pillars for the profile.

" + } + }, + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether deletion protection is enabled for the profile.

" } } }, "traits": { - "smithy.api#documentation": "

Summary of a review template share.

" + "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#ThrottlingException": { + "com.amazonaws.wellarchitected#UpdateAgentProfileResponse": { "type": "structure", "members": { - "Message": { - "target": "com.amazonaws.wellarchitected#ExceptionMessage", + "name": { + "target": "smithy.api#String", "traits": { - "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The system name of the updated profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$", "smithy.api#required": {} } }, - "QuotaCode": { - "target": "com.amazonaws.wellarchitected#QuotaCode" + "displayName": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

The display name of the updated profile.

", + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])+$" + } }, - "ServiceCode": { - "target": "com.amazonaws.wellarchitected#ServiceCode" - } - }, - "traits": { - "smithy.api#documentation": "

Request was denied due to request throttling.

", - "smithy.api#error": "client", - "smithy.api#httpError": 429 - } - }, - "com.amazonaws.wellarchitected#Timestamp": { - "type": "timestamp", - "traits": { - "smithy.api#documentation": "

The date and time recorded.

" - } - }, - "com.amazonaws.wellarchitected#TrustedAdvisorIntegrationStatus": { - "type": "enum", - "members": { - "ENABLED": { - "target": "smithy.api#Unit", + "description": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#enumValue": "ENABLED" + "smithy.api#documentation": "

A description of the updated profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" } }, - "DISABLED": { - "target": "smithy.api#Unit", + "businessOverview": { + "target": "com.amazonaws.wellarchitected#SensitiveString", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#documentation": "

The business overview of the updated profile.

", + "smithy.api#length": { + "max": 512 + }, + "smithy.api#pattern": "^(?:(?!\\$\\{[a-zA-Z]+:)[\\P{C}])*$" + } + }, + "pillars": { + "target": "com.amazonaws.wellarchitected#Pillars", + "traits": { + "smithy.api#documentation": "

The Well-Architected Tool Framework pillars associated with the updated profile.

", + "smithy.api#required": {} + } + }, + "deletionProtection": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#default": true, + "smithy.api#documentation": "

Indicates whether deletion protection is enabled.

" + } + }, + "executionRoleArn": { + "target": "com.amazonaws.wellarchitected#RoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM execution role.

", + "smithy.api#required": {} + } + }, + "aggregationConfiguration": { + "target": "com.amazonaws.wellarchitected#AggregationConfigurations", + "traits": { + "smithy.api#documentation": "

The aggregation configuration.

", + "smithy.api#required": {} + } + }, + "arn": { + "target": "com.amazonaws.wellarchitected#AgentProfileArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the updated profile.

", + "smithy.api#required": {} + } + }, + "eligibleForScheduledGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for scheduled recommendation generation.

" + } + }, + "eligibleForArchitectureGeneration": { + "target": "smithy.api#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the profile is valid for manual architecture generation.

" + } + }, + "fieldErrors": { + "target": "com.amazonaws.wellarchitected#FieldErrors", + "traits": { + "smithy.api#documentation": "

A map of field paths to error messages for invalid or missing input fields.

" + } + }, + "tags": { + "target": "com.amazonaws.wellarchitected#Tags", + "traits": { + "smithy.api#documentation": "

The tags associated with the updated profile.

" + } + }, + "createdBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that created this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#required": {} + } + }, + "createdAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was created.

", + "smithy.api#required": {}, + "smithy.api#timestampFormat": "date-time" + } + }, + "lastModifiedBy": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The identifier of the user or system that last modified this profile.

", + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "lastModifiedAt": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the profile was last modified.

", + "smithy.api#timestampFormat": "date-time" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.wellarchitected#UntagResource": { + "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatus": { "type": "operation", "input": { - "target": "com.amazonaws.wellarchitected#UntagResourceInput" + "target": "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatusRequest" }, "output": { - "target": "com.amazonaws.wellarchitected#UntagResourceOutput" + "target": "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatusResponse" }, "errors": [ + { + "target": "com.amazonaws.wellarchitected#AccessDeniedException" + }, { "target": "com.amazonaws.wellarchitected#InternalServerException" }, { "target": "com.amazonaws.wellarchitected#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.wellarchitected#ThrottlingException" + }, + { + "target": "com.amazonaws.wellarchitected#ValidationException" } ], "traits": { - "smithy.api#documentation": "

Deletes specified tags from a resource.

\n \n

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

\n
\n

To specify multiple tags, use separate tagKeys parameters, for example:

\n

\n DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2\n

", + "smithy.api#documentation": "

Updates the status of a recommendation to track its progress through the implementation lifecycle.

", "smithy.api#http": { - "method": "DELETE", - "uri": "/tags/{WorkloadArn}", - "code": 200 - } + "method": "PATCH", + "uri": "/api/v1/agent-recommendations/{recommendationArn}/status" + }, + "smithy.api#idempotent": {}, + "smithy.api#tags": [ + "COIN" + ] } }, - "com.amazonaws.wellarchitected#UntagResourceInput": { + "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatusRequest": { "type": "structure", "members": { - "WorkloadArn": { - "target": "com.amazonaws.wellarchitected#WorkloadArn", + "recommendationArn": { + "target": "com.amazonaws.wellarchitected#AgentRecommendationArn", "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the recommendation to update.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "TagKeys": { - "target": "com.amazonaws.wellarchitected#TagKeyList", + "status": { + "target": "com.amazonaws.wellarchitected#RecommendationStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A list of tag keys. Existing tags of the resource \n whose keys are members of this list are removed from the resource.

", - "smithy.api#httpQuery": "tagKeys", + "smithy.api#documentation": "

The new status to assign to the recommendation.

", "smithy.api#required": {} } + }, + "updateReason": { + "target": "com.amazonaws.wellarchitected#SensitiveString", + "traits": { + "smithy.api#documentation": "

A free-text reason explaining this status update.

", + "smithy.api#length": { + "min": 1, + "max": 4096 + } + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.wellarchitected#UntagResourceOutput": { + "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatusResponse": { "type": "structure", "members": {}, "traits": { @@ -8753,7 +14310,10 @@ "method": "PATCH", "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateAnswerInput": { @@ -8786,7 +14346,7 @@ "ChoiceUpdates": { "target": "com.amazonaws.wellarchitected#ChoiceUpdates", "traits": { - "smithy.api#documentation": "

A list of choices to update on a question in your workload. The String key \n corresponds to the choice ID to be updated.

" + "smithy.api#documentation": "

A list of choices to update on a question in your workload. The String key corresponds to the choice ID to be updated.

" } }, "Notes": { @@ -8862,7 +14422,10 @@ "method": "PATCH", "uri": "/global-settings", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateGlobalSettingsInput": { @@ -8925,7 +14488,10 @@ "method": "POST", "uri": "/workloads/{WorkloadId}/updateIntegration", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateIntegrationInput": { @@ -8993,7 +14559,10 @@ "method": "PATCH", "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateLensReviewInput": { @@ -9080,7 +14649,10 @@ "method": "PATCH", "uri": "/profiles/{ProfileArn}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateProfileInput": { @@ -9159,7 +14731,10 @@ "method": "PATCH", "uri": "/reviewTemplates/{TemplateArn}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateReviewTemplateAnswer": { @@ -9196,7 +14771,10 @@ "method": "PATCH", "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateReviewTemplateAnswerInput": { @@ -9350,7 +14928,10 @@ "method": "PATCH", "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateReviewTemplateLensReviewInput": { @@ -9445,12 +15026,15 @@ } ], "traits": { - "smithy.api#documentation": "

Update a workload or custom lens share invitation.

\n \n

This API operation can be called independently of any resource. Previous documentation implied that a workload ARN must be specified.

\n
", + "smithy.api#documentation": "

Update a workload or custom lens share invitation.

This API operation can be called independently of any resource. Previous documentation implied that a workload ARN must be specified.

", "smithy.api#http": { "method": "PATCH", "uri": "/shareInvitations/{ShareInvitationId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateShareInvitationInput": { @@ -9525,7 +15109,10 @@ "method": "PATCH", "uri": "/workloads/{WorkloadId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateWorkloadInput": { @@ -9568,7 +15155,7 @@ "IsReviewOwnerUpdateAcknowledged": { "target": "com.amazonaws.wellarchitected#IsReviewOwnerUpdateAcknowledged", "traits": { - "smithy.api#documentation": "

Flag indicating whether the workload owner has acknowledged that the Review\n owner field is required.

\n

If a Review owner is not added to the workload within\n 60 days of acknowledgement, access to the workload is restricted until an owner is\n added.

" + "smithy.api#documentation": "

Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

" } }, "IndustryType": { @@ -9653,7 +15240,10 @@ "method": "PATCH", "uri": "/workloads/{WorkloadId}/shares/{ShareId}", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpdateWorkloadShareInput": { @@ -9738,7 +15328,10 @@ "method": "PUT", "uri": "/workloads/{WorkloadId}/lensReviews/{LensAlias}/upgrade", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpgradeLensReviewInput": { @@ -9810,7 +15403,10 @@ "method": "PUT", "uri": "/workloads/{WorkloadId}/profiles/{ProfileArn}/upgrade", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpgradeProfileVersionInput": { @@ -9879,7 +15475,10 @@ "method": "PUT", "uri": "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/upgrade", "code": 200 - } + }, + "smithy.api#tags": [ + "WA" + ] } }, "com.amazonaws.wellarchitected#UpgradeReviewTemplateLensReviewInput": { @@ -10030,6 +15629,15 @@ { "target": "com.amazonaws.wellarchitected#AssociateProfiles" }, + { + "target": "com.amazonaws.wellarchitected#CreateAgentContext" + }, + { + "target": "com.amazonaws.wellarchitected#CreateAgentGoal" + }, + { + "target": "com.amazonaws.wellarchitected#CreateAgentProfile" + }, { "target": "com.amazonaws.wellarchitected#CreateLensShare" }, @@ -10057,6 +15665,15 @@ { "target": "com.amazonaws.wellarchitected#CreateWorkloadShare" }, + { + "target": "com.amazonaws.wellarchitected#DeleteAgentContext" + }, + { + "target": "com.amazonaws.wellarchitected#DeleteAgentGoal" + }, + { + "target": "com.amazonaws.wellarchitected#DeleteAgentProfile" + }, { "target": "com.amazonaws.wellarchitected#DeleteLens" }, @@ -10090,6 +15707,21 @@ { "target": "com.amazonaws.wellarchitected#ExportLens" }, + { + "target": "com.amazonaws.wellarchitected#GetAgentContext" + }, + { + "target": "com.amazonaws.wellarchitected#GetAgentGoal" + }, + { + "target": "com.amazonaws.wellarchitected#GetAgentProfile" + }, + { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendation" + }, + { + "target": "com.amazonaws.wellarchitected#GetAgentRecommendationGeneration" + }, { "target": "com.amazonaws.wellarchitected#GetAnswer" }, @@ -10135,6 +15767,24 @@ { "target": "com.amazonaws.wellarchitected#ImportLens" }, + { + "target": "com.amazonaws.wellarchitected#ListAgentContexts" + }, + { + "target": "com.amazonaws.wellarchitected#ListAgentGoals" + }, + { + "target": "com.amazonaws.wellarchitected#ListAgentProfiles" + }, + { + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationGenerations" + }, + { + "target": "com.amazonaws.wellarchitected#ListAgentRecommendationItems" + }, + { + "target": "com.amazonaws.wellarchitected#ListAgentRecommendations" + }, { "target": "com.amazonaws.wellarchitected#ListAnswers" }, @@ -10192,12 +15842,30 @@ { "target": "com.amazonaws.wellarchitected#ListWorkloadShares" }, + { + "target": "com.amazonaws.wellarchitected#PutAgentRecommendationFeedback" + }, + { + "target": "com.amazonaws.wellarchitected#StartAgentRecommendationGeneration" + }, { "target": "com.amazonaws.wellarchitected#TagResource" }, { "target": "com.amazonaws.wellarchitected#UntagResource" }, + { + "target": "com.amazonaws.wellarchitected#UpdateAgentContext" + }, + { + "target": "com.amazonaws.wellarchitected#UpdateAgentGoal" + }, + { + "target": "com.amazonaws.wellarchitected#UpdateAgentProfile" + }, + { + "target": "com.amazonaws.wellarchitected#UpdateAgentRecommendationStatus" + }, { "target": "com.amazonaws.wellarchitected#UpdateAnswer" }, @@ -10253,7 +15921,7 @@ "name": "wellarchitected" }, "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Well-Architected Tool\n

This is the Well-Architected Tool API Reference. The WA Tool API provides programmatic access to the \n Well-Architected Tool in the \n Amazon Web Services Management Console. For information \n about the Well-Architected Tool, see the \n Well-Architected Tool User Guide.

", + "smithy.api#documentation": "Amazon Web Services Well-Architected

Amazon Web Services Well-Architected helps you evaluate your architectures against Amazon Web Services best practices across operational excellence, security, reliability, performance efficiency, cost optimization, and sustainability. The service includes the Amazon Web Services Well-Architected Agent for AI-powered recommendations tailored to your specific environment, and the Well-Architected Tool for conducting reviews and tracking improvements.

This is the Amazon Web Services Well-Architected API Reference. Through this API, you can programmatically access personalized recommendations and automation scripts from the Amazon Web Services Well-Architected Agent, and create and manage workloads, conduct lens reviews, track milestones, manage custom lenses, share workloads across accounts, and manage profiles with the Well-Architected Tool.

For more information about the service, see the Amazon Web Services Well-Architected User Guide.

", "smithy.api#title": "AWS Well-Architected Tool", "smithy.rules#endpointBdd": { "version": "1.1", @@ -11269,7 +16937,10 @@ "target": "com.amazonaws.wellarchitected#WorkloadEnvironment" }, "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the workload was last updated.

" + } }, "AccountIds": { "target": "com.amazonaws.wellarchitected#WorkloadAccountIds" @@ -11287,12 +16958,15 @@ "target": "com.amazonaws.wellarchitected#WorkloadReviewOwner" }, "ReviewRestrictionDate": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The review restriction date for the workload.

" + } }, "IsReviewOwnerUpdateAcknowledged": { "target": "com.amazonaws.wellarchitected#IsReviewOwnerUpdateAcknowledged", "traits": { - "smithy.api#documentation": "

Flag indicating whether the workload owner has acknowledged that the Review\n owner field is required.

\n

If a Review owner is not added to the workload within\n 60 days of acknowledgement, access to the workload is restricted until an owner is\n added.

" + "smithy.api#documentation": "

Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

" } }, "IndustryType": { @@ -11371,7 +17045,6 @@ "traits": { "smithy.api#documentation": "

The list of Amazon Web Services account IDs associated with the workload.

", "smithy.api#length": { - "min": 0, "max": 100 } } @@ -11383,7 +17056,6 @@ }, "traits": { "smithy.api#length": { - "min": 0, "max": 1 } } @@ -11393,7 +17065,6 @@ "traits": { "smithy.api#documentation": "

The URL of the architectural design for the workload.

", "smithy.api#length": { - "min": 0, "max": 2048 }, "smithy.api#pattern": "^(|(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*)$" @@ -11411,9 +17082,8 @@ "target": "com.amazonaws.wellarchitected#AwsRegion" }, "traits": { - "smithy.api#documentation": "

The list of Amazon Web Services Regions associated with the workload, for example,\n us-east-2, or ca-central-1.

", + "smithy.api#documentation": "

The list of Amazon Web Services Regions associated with the workload, for example, us-east-2, or ca-central-1.

", "smithy.api#length": { - "min": 0, "max": 50 } } @@ -11440,7 +17110,7 @@ "WorkloadResourceDefinition": { "target": "com.amazonaws.wellarchitected#WorkloadResourceDefinition", "traits": { - "smithy.api#documentation": "

The mode to use for identifying resources associated with the workload.

\n

You can specify WORKLOAD_METADATA, APP_REGISTRY, or both.

" + "smithy.api#documentation": "

The mode to use for identifying resources associated with the workload.

You can specify WORKLOAD_METADATA, APP_REGISTRY, or both.

" } } }, @@ -11522,7 +17192,6 @@ "traits": { "smithy.api#documentation": "

The industry for the workload.

", "smithy.api#length": { - "min": 0, "max": 100 } } @@ -11530,9 +17199,8 @@ "com.amazonaws.wellarchitected#WorkloadIndustryType": { "type": "string", "traits": { - "smithy.api#documentation": "

The industry type for the workload.

\n

If specified, must be one of the following:

\n
    \n
  • \n

    \n Agriculture\n

    \n
  • \n
  • \n

    \n Automobile\n

    \n
  • \n
  • \n

    \n Defense\n

    \n
  • \n
  • \n

    \n Design and Engineering\n

    \n
  • \n
  • \n

    \n Digital Advertising\n

    \n
  • \n
  • \n

    \n Education\n

    \n
  • \n
  • \n

    \n Environmental Protection\n

    \n
  • \n
  • \n

    \n Financial Services\n

    \n
  • \n
  • \n

    \n Gaming\n

    \n
  • \n
  • \n

    \n General Public Services\n

    \n
  • \n
  • \n

    \n Healthcare\n

    \n
  • \n
  • \n

    \n Hospitality\n

    \n
  • \n
  • \n

    \n InfoTech\n

    \n
  • \n
  • \n

    \n Justice and Public Safety\n

    \n
  • \n
  • \n

    \n Life Sciences\n

    \n
  • \n
  • \n

    \n Manufacturing\n

    \n
  • \n
  • \n

    \n Media & Entertainment\n

    \n
  • \n
  • \n

    \n Mining & Resources\n

    \n
  • \n
  • \n

    \n Oil & Gas\n

    \n
  • \n
  • \n

    \n Power & Utilities\n

    \n
  • \n
  • \n

    \n Professional Services\n

    \n
  • \n
  • \n

    \n Real Estate & Construction\n

    \n
  • \n
  • \n

    \n Retail & Wholesale\n

    \n
  • \n
  • \n

    \n Social Protection\n

    \n
  • \n
  • \n

    \n Telecommunications\n

    \n
  • \n
  • \n

    \n Travel, Transportation & Logistics\n

    \n
  • \n
  • \n

    \n Other\n

    \n
  • \n
", + "smithy.api#documentation": "

The industry type for the workload.

If specified, must be one of the following:

  • Agriculture

  • Automobile

  • Defense

  • Design and Engineering

  • Digital Advertising

  • Education

  • Environmental Protection

  • Financial Services

  • Gaming

  • General Public Services

  • Healthcare

  • Hospitality

  • InfoTech

  • Justice and Public Safety

  • Life Sciences

  • Manufacturing

  • Media & Entertainment

  • Mining & Resources

  • Oil & Gas

  • Power & Utilities

  • Professional Services

  • Real Estate & Construction

  • Retail & Wholesale

  • Social Protection

  • Telecommunications

  • Travel, Transportation & Logistics

  • Other

", "smithy.api#length": { - "min": 0, "max": 100 } } @@ -11624,13 +17292,13 @@ "target": "com.amazonaws.wellarchitected#LensAlias" }, "traits": { - "smithy.api#documentation": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

\n

If a review template that specifies lenses is applied to the workload, those lenses are applied\n to the workload in addition to these lenses.

" + "smithy.api#documentation": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

If a review template that specifies lenses is applied to the workload, those lenses are applied to the workload in addition to these lenses.

" } }, "com.amazonaws.wellarchitected#WorkloadName": { "type": "string", "traits": { - "smithy.api#documentation": "

The name of the workload.

\n

The name must be unique within an account within an Amazon Web Services Region. Spaces and capitalization\n are ignored when checking for uniqueness.

", + "smithy.api#documentation": "

The name of the workload.

The name must be unique within an account within an Amazon Web Services Region. Spaces and capitalization are ignored when checking for uniqueness.

", "smithy.api#length": { "min": 3, "max": 100 @@ -11640,9 +17308,8 @@ "com.amazonaws.wellarchitected#WorkloadNamePrefix": { "type": "string", "traits": { - "smithy.api#documentation": "

An optional string added to the beginning of each workload name returned in the\n results.

", + "smithy.api#documentation": "

An optional string added to the beginning of each workload name returned in the results.

", "smithy.api#length": { - "min": 0, "max": 100 } } @@ -11664,7 +17331,6 @@ "traits": { "smithy.api#documentation": "

The list of non-Amazon Web Services Regions associated with the workload.

", "smithy.api#length": { - "min": 0, "max": 5 } } @@ -11675,7 +17341,7 @@ "target": "com.amazonaws.wellarchitected#PillarId" }, "traits": { - "smithy.api#documentation": "

The priorities of the pillars, which are used to order items in the improvement plan.\n Each pillar is represented by its PillarReviewSummary$PillarId.

" + "smithy.api#documentation": "

The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

" } }, "com.amazonaws.wellarchitected#WorkloadProfile": { @@ -11705,7 +17371,6 @@ }, "traits": { "smithy.api#length": { - "min": 0, "max": 1 } } @@ -11717,7 +17382,6 @@ }, "traits": { "smithy.api#length": { - "min": 0, "max": 1 } } @@ -11731,7 +17395,7 @@ "com.amazonaws.wellarchitected#WorkloadReviewOwner": { "type": "string", "traits": { - "smithy.api#documentation": "

The review owner of the workload. The name, email address, or identifier for the\n primary group or individual that owns the workload review process.

", + "smithy.api#documentation": "

The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

", "smithy.api#length": { "min": 3, "max": 255 @@ -11827,7 +17491,10 @@ "target": "com.amazonaws.wellarchitected#AwsAccountId" }, "UpdatedAt": { - "target": "com.amazonaws.wellarchitected#Timestamp" + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time when the workload was last updated.

" + } }, "Lenses": { "target": "com.amazonaws.wellarchitected#WorkloadLenses" @@ -11853,4 +17520,4 @@ } } } -} +} \ No newline at end of file From 2e3e2149e9c6af5d44c59507df4c8031af1e3ac0 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Wed, 12 Aug 2026 18:12:24 +0000 Subject: [PATCH 21/22] chore: release 1.8.29 --- CHANGELOG.md | 13 +++++++++++++ gradle.properties | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d415d15551..fa0d9958c24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## [1.8.29] - 08/12/2026 + +### Features +* (**dsql**) Improved validation of Kinesis stream ARN format to ensure only valid ARN characters are accepted +* (**iam**) Introduced role manager, an IAM capability that automatically sets up the IAM roles your AWS services need. When you set up a supported service in the console, role manager creates a role for you or reuses an existing one from an AWS-managed template. +* (**mediaconnect**) AWS MediaConnect now supports tuning the internal recovery latency between Router Inputs and Outputs to prioritize stream quality versus end-to-end latency. +* (**odb**) Adds support for Oracle Exadata on Exascale Infrastructure (ExaDB-XS) resources including storage vaults and VM clusters. +* (**quicksight**) Added APIs for DLP with Microsoft Purview (manage configs with label enforcement across Spaces, Chat, Knowledge Bases), Approval Workflows (CRUD for policies on asset sharing for Agents, Knowledge Bases, Spaces), and Limits Management (limit profiles for index storage and agent hours per user). +* (**wellarchitected**) This change releases the Well-Architected Agent, a generative AI service that analyzes a customer's AWS environment and delivers personalized, prioritized recommendations across cost, security, performance, and resilience. + +### Documentation +* (**glue**) Documentation updates for materialized views APIs. + ## [1.8.28] - 08/11/2026 ### Features diff --git a/gradle.properties b/gradle.properties index f51ccf35bf8..ac90057f034 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.29-SNAPSHOT +sdkVersion=1.8.29 # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true From 49d46957d358375270cd9d05460f2aab15d47b06 Mon Sep 17 00:00:00 2001 From: aws-sdk-kotlin-ci Date: Wed, 12 Aug 2026 18:12:26 +0000 Subject: [PATCH 22/22] chore: bump snapshot version to 1.8.30-SNAPSHOT --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index ac90057f034..a8e315c1dde 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,7 @@ org.gradle.jvmargs=-Xmx10g -XX:MaxMetaspaceSize=2G org.gradle.parallel=true # sdk -sdkVersion=1.8.29 +sdkVersion=1.8.30-SNAPSHOT # atomicfu kotlinx.atomicfu.enableJvmIrTransformation=true