From 98a7f46d22fc9f5091492fa7d4c21123d38b1770 Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Wed, 19 Jul 2023 18:30:23 +0000 Subject: [PATCH] Release v1.44.303 (2023-07-19) === ### Service Client Updates * `service/cloudformation`: Updates service API and documentation * SDK and documentation updates for GetTemplateSummary API (unrecognized resources) * `service/ec2`: Updates service documentation * Amazon EC2 documentation updates. * `service/grafana`: Updates service API, documentation, and paginators * `service/medical-imaging`: Adds new service * `service/ram`: Updates service API and documentation * `service/ssm-sap`: Updates service API and documentation * `service/wafv2`: Updates service API and documentation --- CHANGELOG.md | 14 + aws/version.go | 2 +- .../apis/cloudformation/2010-05-15/api-2.json | 19 +- .../cloudformation/2010-05-15/docs-2.json | 21 +- models/apis/ec2/2016-11-15/docs-2.json | 314 +- models/apis/grafana/2020-08-18/api-2.json | 62 +- models/apis/grafana/2020-08-18/docs-2.json | 41 +- .../apis/grafana/2020-08-18/paginators-1.json | 6 + .../medical-imaging/2023-07-19/api-2.json | 1521 ++++ .../medical-imaging/2023-07-19/docs-2.json | 798 +++ .../2023-07-19/endpoint-rule-set-1.json | 350 + .../2023-07-19/endpoint-tests-1.json | 295 + .../2023-07-19/examples-1.json | 5 + .../2023-07-19/paginators-1.json | 28 + .../medical-imaging/2023-07-19/smoke.json | 6 + .../medical-imaging/2023-07-19/waiters-2.json | 5 + models/apis/ram/2018-01-04/api-2.json | 14 +- models/apis/ram/2018-01-04/docs-2.json | 11 +- models/apis/ssm-sap/2018-05-10/api-2.json | 162 +- models/apis/ssm-sap/2018-05-10/docs-2.json | 85 +- .../2018-05-10/endpoint-rule-set-1.json | 380 +- .../ssm-sap/2018-05-10/endpoint-tests-1.json | 92 +- models/apis/wafv2/2019-07-29/api-2.json | 10 +- models/apis/wafv2/2019-07-29/docs-2.json | 15 +- service/cloudformation/api.go | 86 + service/ec2/api.go | 733 +- service/managedgrafana/api.go | 325 +- .../managedgrafanaiface/interface.go | 7 + service/medicalimaging/api.go | 6376 +++++++++++++++++ service/medicalimaging/doc.go | 111 + service/medicalimaging/errors.go | 62 + .../medicalimagingiface/interface.go | 148 + service/medicalimaging/service.go | 106 + service/ram/api.go | 36 +- service/ssmsap/api.go | 636 +- service/ssmsap/ssmsapiface/interface.go | 4 + service/wafv2/api.go | 102 +- 37 files changed, 12148 insertions(+), 840 deletions(-) create mode 100644 models/apis/medical-imaging/2023-07-19/api-2.json create mode 100644 models/apis/medical-imaging/2023-07-19/docs-2.json create mode 100644 models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json create mode 100644 models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json create mode 100644 models/apis/medical-imaging/2023-07-19/examples-1.json create mode 100644 models/apis/medical-imaging/2023-07-19/paginators-1.json create mode 100644 models/apis/medical-imaging/2023-07-19/smoke.json create mode 100644 models/apis/medical-imaging/2023-07-19/waiters-2.json create mode 100644 service/medicalimaging/api.go create mode 100644 service/medicalimaging/doc.go create mode 100644 service/medicalimaging/errors.go create mode 100644 service/medicalimaging/medicalimagingiface/interface.go create mode 100644 service/medicalimaging/service.go diff --git a/CHANGELOG.md b/CHANGELOG.md index c0e18886f17..b46536cfc7c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Release v1.44.303 (2023-07-19) +=== + +### Service Client Updates +* `service/cloudformation`: Updates service API and documentation + * SDK and documentation updates for GetTemplateSummary API (unrecognized resources) +* `service/ec2`: Updates service documentation + * Amazon EC2 documentation updates. +* `service/grafana`: Updates service API, documentation, and paginators +* `service/medical-imaging`: Adds new service +* `service/ram`: Updates service API and documentation +* `service/ssm-sap`: Updates service API and documentation +* `service/wafv2`: Updates service API and documentation + Release v1.44.302 (2023-07-18) === diff --git a/aws/version.go b/aws/version.go index 096df39840b..2654f65574d 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.302" +const SDKVersion = "1.44.303" diff --git a/models/apis/cloudformation/2010-05-15/api-2.json b/models/apis/cloudformation/2010-05-15/api-2.json index 96f3ed4533a..a6c5b5951f3 100644 --- a/models/apis/cloudformation/2010-05-15/api-2.json +++ b/models/apis/cloudformation/2010-05-15/api-2.json @@ -2173,7 +2173,8 @@ "TemplateURL":{"shape":"TemplateURL"}, "StackName":{"shape":"StackNameOrId"}, "StackSetName":{"shape":"StackSetNameOrId"}, - "CallAs":{"shape":"CallAs"} + "CallAs":{"shape":"CallAs"}, + "TemplateSummaryConfig":{"shape":"TemplateSummaryConfig"} } }, "GetTemplateSummaryOutput":{ @@ -2187,7 +2188,8 @@ "Version":{"shape":"Version"}, "Metadata":{"shape":"Metadata"}, "DeclaredTransforms":{"shape":"TransformsList"}, - "ResourceIdentifierSummaries":{"shape":"ResourceIdentifierSummaries"} + "ResourceIdentifierSummaries":{"shape":"ResourceIdentifierSummaries"}, + "Warnings":{"shape":"Warnings"} } }, "HandlerErrorCode":{ @@ -4099,6 +4101,12 @@ "Processed" ] }, + "TemplateSummaryConfig":{ + "type":"structure", + "members":{ + "TreatUnrecognizedResourceTypesAsWarnings":{"shape":"TreatUnrecognizedResourceTypesAsWarnings"} + } + }, "TemplateURL":{ "type":"string", "max":1024, @@ -4158,6 +4166,7 @@ "type":"list", "member":{"shape":"TransformName"} }, + "TreatUnrecognizedResourceTypesAsWarnings":{"type":"boolean"}, "Type":{"type":"string"}, "TypeArn":{ "type":"string", @@ -4465,6 +4474,12 @@ "PUBLIC", "PRIVATE" ] + }, + "Warnings":{ + "type":"structure", + "members":{ + "UnrecognizedResourceTypes":{"shape":"ResourceTypes"} + } } } } diff --git a/models/apis/cloudformation/2010-05-15/docs-2.json b/models/apis/cloudformation/2010-05-15/docs-2.json index 0b46a1b8e0c..504ae6f01a1 100644 --- a/models/apis/cloudformation/2010-05-15/docs-2.json +++ b/models/apis/cloudformation/2010-05-15/docs-2.json @@ -2122,7 +2122,8 @@ "CreateChangeSetInput$ResourceTypes": "

The template resource types that you have permissions to work with if you execute this change set, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource type that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for condition keys in IAM policies for CloudFormation. For more information, see Controlling access with Identity and Access Management in the CloudFormation User Guide.

", "CreateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this create stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance. Use the following syntax to describe template resource types: AWS::* (for all Amazon Web Services resources), Custom::* (for all custom resources), Custom::logical_ID (for a specific custom resource), AWS::service_name::* (for all resources of a particular Amazon Web Services service), and AWS::service_name::resource_logical_ID (for a specific Amazon Web Services resource).

If the list of resource types doesn't include a resource that you're creating, the stack creation fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

", "GetTemplateSummaryOutput$ResourceTypes": "

A list of all the template resource types that are defined in the template, such as AWS::EC2::Instance, AWS::Dynamo::Table, and Custom::MyCustomInstance.

", - "UpdateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

" + "UpdateStackInput$ResourceTypes": "

The template resource types that you have permissions to work with for this update stack action, such as AWS::EC2::Instance, AWS::EC2::*, or Custom::MyCustomInstance.

If the list of resource types doesn't include a resource that you're updating, the stack update fails. By default, CloudFormation grants permissions to all resource types. Identity and Access Management (IAM) uses this parameter for CloudFormation-specific condition keys in IAM policies. For more information, see Controlling Access with Identity and Access Management.

", + "Warnings$UnrecognizedResourceTypes": "

A list of all of the unrecognized resource types. This is only returned if the TemplateSummaryConfig parameter has the TreatUnrecognizedResourceTypesAsWarning configuration set to True.

" } }, "ResourcesToImport": { @@ -2911,6 +2912,12 @@ "StageList$member": null } }, + "TemplateSummaryConfig": { + "base": "

Options for the GetTemplateSummary API action.

", + "refs": { + "GetTemplateSummaryInput$TemplateSummaryConfig": "

Specifies options for the GetTemplateSummary API action.

" + } + }, "TemplateURL": { "base": null, "refs": { @@ -3010,6 +3017,12 @@ "ValidateTemplateOutput$DeclaredTransforms": "

A list of the transforms that are declared in the template.

" } }, + "TreatUnrecognizedResourceTypesAsWarnings": { + "base": null, + "refs": { + "TemplateSummaryConfig$TreatUnrecognizedResourceTypesAsWarnings": "

If set to True, any unrecognized resource types generate warnings and not an error. Any unrecognized resource types are returned in the Warnings output parameter.

" + } + }, "Type": { "base": null, "refs": { @@ -3293,6 +3306,12 @@ "DescribeTypeOutput$Visibility": "

The scope at which the extension is visible and usable in CloudFormation operations.

Valid values include:

", "ListTypesInput$Visibility": "

The scope at which the extensions are visible and usable in CloudFormation operations.

Valid values include:

The default is PRIVATE.

" } + }, + "Warnings": { + "base": "

Contains any warnings returned by the GetTemplateSummary API action.

", + "refs": { + "GetTemplateSummaryOutput$Warnings": "

An object containing any warnings returned.

" + } } } } diff --git a/models/apis/ec2/2016-11-15/docs-2.json b/models/apis/ec2/2016-11-15/docs-2.json index 092cc8e4d04..12ec3d31801 100755 --- a/models/apis/ec2/2016-11-15/docs-2.json +++ b/models/apis/ec2/2016-11-15/docs-2.json @@ -16,31 +16,31 @@ "ApplySecurityGroupsToClientVpnTargetNetwork": "

Applies a security group to the association between the target network and the Client VPN endpoint. This action replaces the existing security groups with the specified security groups.

", "AssignIpv6Addresses": "

Assigns one or more IPv6 addresses to the specified network interface. You can specify one or more specific IPv6 addresses, or you can specify the number of IPv6 addresses to be automatically assigned from within the subnet's IPv6 CIDR block range. You can assign as many IPv6 addresses to a network interface as you can assign private IPv4 addresses, and the limit varies per instance type. For information, see IP Addresses Per Network Interface Per Instance Type in the Amazon Elastic Compute Cloud User Guide.

You must specify either the IPv6 addresses or the IPv6 address count in the request.

You can optionally use Prefix Delegation on the network interface. You must specify either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix Delegation count. For information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

", "AssignPrivateIpAddresses": "

Assigns one or more secondary private IP addresses to the specified network interface.

You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

When you move a secondary private IP address to another network interface, any Elastic IP address that is associated with the IP address is also moved.

Remapping an IP address is an asynchronous operation. When you move an IP address from one network interface to another, check network/interfaces/macs/mac/local-ipv4s in the instance metadata to confirm that the remapping is complete.

You must specify either the IP addresses or the IP address count in the request.

You can optionally use Prefix Delegation on the network interface. You must specify either the IPv4 Prefix Delegation prefixes, or the IPv4 Prefix Delegation count. For information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

", - "AssignPrivateNatGatewayAddress": "

Assigns one or more private IPv4 addresses to a private NAT gateway. For more information, see Work with NAT gateways in the Amazon Virtual Private Cloud User Guide.

", + "AssignPrivateNatGatewayAddress": "

Assigns one or more private IPv4 addresses to a private NAT gateway. For more information, see Work with NAT gateways in the Amazon VPC User Guide.

", "AssociateAddress": "

Associates an Elastic IP address, or carrier IP address (for instances that are in subnets in Wavelength Zones) with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account.

If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance. If you associate an Elastic IP address with an instance that has an existing Elastic IP address, the existing address is disassociated from the instance, but remains allocated to your account.

[Subnets in Wavelength Zones] You can associate an IP address from the telecommunication carrier to the instance or network interface.

You cannot associate an Elastic IP address with an interface in a different network border group.

This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, and you may be charged for each time the Elastic IP address is remapped to the same instance. For more information, see the Elastic IP Addresses section of Amazon EC2 Pricing.

", "AssociateClientVpnTargetNetwork": "

Associates a target network with a Client VPN endpoint. A target network is a subnet in a VPC. You can associate multiple subnets from the same VPC with a Client VPN endpoint. You can associate only one subnet in each Availability Zone. We recommend that you associate at least two subnets to provide Availability Zone redundancy.

If you specified a VPC when you created the Client VPN endpoint or if you have previous subnet associations, the specified subnet must be in the same VPC. To specify a subnet that's in a different VPC, you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) and change the VPC that's associated with it.

", - "AssociateDhcpOptions": "

Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

For more information, see DHCP options sets in the Amazon Virtual Private Cloud User Guide.

", + "AssociateDhcpOptions": "

Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

For more information, see DHCP options sets in the Amazon VPC User Guide.

", "AssociateEnclaveCertificateIamRole": "

Associates an Identity and Access Management (IAM) role with an Certificate Manager (ACM) certificate. This enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. For more information, see Certificate Manager for Nitro Enclaves in the Amazon Web Services Nitro Enclaves User Guide.

When the IAM role is associated with the ACM certificate, the certificate, certificate chain, and encrypted private key are placed in an Amazon S3 location that only the associated IAM role can access. The private key of the certificate is encrypted with an Amazon Web Services managed key that has an attached attestation-based key policy.

To enable the IAM role to access the Amazon S3 object, you must grant it permission to call s3:GetObject on the Amazon S3 bucket returned by the command. To enable the IAM role to access the KMS key, you must grant it permission to call kms:Decrypt on the KMS key returned by the command. For more information, see Grant the role permission to access the certificate and encryption key in the Amazon Web Services Nitro Enclaves User Guide.

", "AssociateIamInstanceProfile": "

Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.

", "AssociateInstanceEventWindow": "

Associates one or more targets with an event window. Only one type of target (instance IDs, Dedicated Host IDs, or tags) can be specified with an event window.

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", "AssociateIpamResourceDiscovery": "

Associates an IPAM resource discovery with an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", - "AssociateNatGatewayAddress": "

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, see Work with NAT gateways in the Amazon Virtual Private Cloud User Guide.

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. For more information, see Elastic IP address quotas in the Amazon Virtual Private Cloud User Guide.

", - "AssociateRouteTable": "

Associates a subnet in your VPC or an internet gateway or virtual private gateway attached to your VPC with a route table in your VPC. This association causes traffic from the subnet or gateway to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table later. A route table can be associated with multiple subnets.

For more information, see Route tables in the Amazon Virtual Private Cloud User Guide.

", + "AssociateNatGatewayAddress": "

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, see Work with NAT gateways in the Amazon VPC User Guide.

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. For more information, see Elastic IP address quotas in the Amazon VPC User Guide.

", + "AssociateRouteTable": "

Associates a subnet in your VPC or an internet gateway or virtual private gateway attached to your VPC with a route table in your VPC. This association causes traffic from the subnet or gateway to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table later. A route table can be associated with multiple subnets.

For more information, see Route tables in the Amazon VPC User Guide.

", "AssociateSubnetCidrBlock": "

Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length of /64.

", "AssociateTransitGatewayMulticastDomain": "

Associates the specified subnets and transit gateway attachments with the specified transit gateway multicast domain.

The transit gateway attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments to see the state of the attachment.

", "AssociateTransitGatewayPolicyTable": "

Associates the specified transit gateway attachment with a transit gateway policy table.

", "AssociateTransitGatewayRouteTable": "

Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.

", "AssociateTrunkInterface": "

This API action is currently in limited preview only. If you are interested in using this feature, contact your account manager.

Associates a branch network interface with a trunk network interface.

Before you create the association, run the create-network-interface command and set --interface-type to trunk. You must also create a network interface for each branch network interface that you want to associate with the trunk network interface.

", - "AssociateVpcCidrBlock": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). The IPv6 CIDR block size is fixed at /56.

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block.

For more information about associating CIDR blocks with your VPC and applicable restrictions, see VPC and subnet sizing in the Amazon Virtual Private Cloud User Guide.

", - "AttachClassicLinkVpc": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

Linking your instance to a VPC is sometimes referred to as attaching your instance.

", - "AttachInternetGateway": "

Attaches an internet gateway or a virtual private gateway to a VPC, enabling connectivity between the internet and the VPC. For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.

", + "AssociateVpcCidrBlock": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). The IPv6 CIDR block size is fixed at /56.

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block.

For more information about associating CIDR blocks with your VPC and applicable restrictions, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

", + "AttachClassicLinkVpc": "

This action is deprecated.

Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it.

After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again.

Linking your instance to a VPC is sometimes referred to as attaching your instance.

", + "AttachInternetGateway": "

Attaches an internet gateway or a virtual private gateway to a VPC, enabling connectivity between the internet and the VPC. For more information, see Internet gateways in the Amazon VPC User Guide.

", "AttachNetworkInterface": "

Attaches a network interface to an instance.

", "AttachVerifiedAccessTrustProvider": "

Attaches the specified Amazon Web Services Verified Access trust provider to the specified Amazon Web Services Verified Access instance.

", "AttachVolume": "

Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

After you attach an EBS volume, you must make it available. For more information, see Make an EBS volume available for use.

If a volume has an Amazon Web Services Marketplace product code:

For more information, see Attach an Amazon EBS volume to an instance in the Amazon Elastic Compute Cloud User Guide.

", "AttachVpnGateway": "

Attaches a virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

", "AuthorizeClientVpnIngress": "

Adds an ingress authorization rule to a Client VPN endpoint. Ingress authorization rules act as firewall rules that grant access to networks. You must configure ingress authorization rules to enable clients to access resources in Amazon Web Services or on-premises networks.

", - "AuthorizeSecurityGroupEgress": "

[VPC only] Adds the specified outbound (egress) rules to a security group for use with a VPC.

An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances that are associated with the specified source security groups. When specifying an outbound rule for your security group in a VPC, the IpPermissions must include a destination for the traffic.

You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

For information about VPC security group quotas, see Amazon VPC quotas.

", - "AuthorizeSecurityGroupIngress": "

Adds the specified inbound (ingress) rules to a security group.

An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address range, or from the instances that are associated with the specified destination security groups. When specifying an inbound rule for your security group in a VPC, the IpPermissions must include a source for the traffic.

You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean all types or all codes.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

For more information about VPC security group quotas, see Amazon VPC quotas.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "AuthorizeSecurityGroupEgress": "

Adds the specified outbound (egress) rules to a security group for use with a VPC.

An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances that are associated with the specified source security groups. When specifying an outbound rule for your security group in a VPC, the IpPermissions must include a destination for the traffic.

You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.

Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.

For information about VPC security group quotas, see Amazon VPC quotas.

", + "AuthorizeSecurityGroupIngress": "

Adds the specified inbound (ingress) rules to a security group.

An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address range, or from the instances that are associated with the specified destination security groups. When specifying an inbound rule for your security group in a VPC, the IpPermissions must include a source for the traffic.

You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean all types or all codes.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

For more information about VPC security group quotas, see Amazon VPC quotas.

", "BundleInstance": "

Bundles an Amazon instance store-backed Windows instance.

During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

", "CancelBundleTask": "

Cancels a bundling operation for an instance store-backed Windows instance.

", "CancelCapacityReservation": "

Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to cancelled.

Instances running in the reserved capacity continue running until you stop them. Stopped instances that target the Capacity Reservation can no longer launch. Modify these instances to either target a different Capacity Reservation, launch On-Demand Instance capacity, or run in any open Capacity Reservation that has matching attributes and sufficient capacity.

", @@ -64,18 +64,18 @@ "CreateCoipCidr": "

Creates a range of customer-owned IP addresses.

", "CreateCoipPool": "

Creates a pool of customer-owned IP (CoIP) addresses.

", "CreateCustomerGateway": "

Provides information to Amazon Web Services about your customer gateway device. The customer gateway device is the appliance at your end of the VPN connection. You must provide the IP address of the customer gateway device’s external interface. The IP address must be static and can be behind a device performing network address translation (NAT).

For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN. For more information, see Customer gateway options for your Site-to-Site VPN connection in the Amazon Web Services Site-to-Site VPN User Guide.

To create more than one customer gateway with the same VPN type, IP address, and BGP ASN, specify a unique device name for each customer gateway. An identical request returns information about the existing customer gateway; it doesn't create a new customer gateway.

", - "CreateDefaultSubnet": "

Creates a default subnet with a size /20 IPv4 CIDR block in the specified Availability Zone in your default VPC. You can have only one default subnet per Availability Zone. For more information, see Creating a default subnet in the Amazon Virtual Private Cloud User Guide.

", - "CreateDefaultVpc": "

Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet in each Availability Zone. For more information about the components of a default VPC, see Default VPC and default subnets in the Amazon Virtual Private Cloud User Guide. You cannot specify the components of the default VPC yourself.

If you deleted your previous default VPC, you can create a default VPC. You cannot have more than one default VPC per Region.

If your account supports EC2-Classic, you cannot use this action to create a default VPC in a Region that supports EC2-Classic. If you want a default VPC in a Region that supports EC2-Classic, see \"I really want a default VPC for my existing EC2 account. Is that possible?\" in the Default VPCs FAQ.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", - "CreateDhcpOptions": "

Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information, see DHCP options sets in the Amazon Virtual Private Cloud User Guide.

", + "CreateDefaultSubnet": "

Creates a default subnet with a size /20 IPv4 CIDR block in the specified Availability Zone in your default VPC. You can have only one default subnet per Availability Zone. For more information, see Create a default subnet in the Amazon VPC User Guide.

", + "CreateDefaultVpc": "

Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet in each Availability Zone. For more information about the components of a default VPC, see Default VPCs in the Amazon VPC User Guide. You cannot specify the components of the default VPC yourself.

If you deleted your previous default VPC, you can create a default VPC. You cannot have more than one default VPC per Region.

", + "CreateDhcpOptions": "

Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132.

Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information, see DHCP options sets in the Amazon VPC User Guide.

", "CreateEgressOnlyInternetGateway": "

[IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.

", "CreateFleet": "

Creates an EC2 Fleet that contains the configuration information for On-Demand Instances and Spot Instances. Instances are launched immediately if there is available capacity.

A single EC2 Fleet can include multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet.

For more information, see EC2 Fleet in the Amazon EC2 User Guide.

", "CreateFlowLogs": "

Creates one or more flow logs to capture information about IP traffic for a specific network interface, subnet, or VPC.

Flow log data for a monitored network interface is recorded as flow log records, which are log events consisting of fields that describe the traffic flow. For more information, see Flow log records in the Amazon Virtual Private Cloud User Guide.

When publishing to CloudWatch Logs, flow log records are published to a log group, and each network interface has a unique log stream in the log group. When publishing to Amazon S3, flow log records for all of the monitored network interfaces are published to a single log file object that is stored in the specified bucket.

For more information, see VPC Flow Logs in the Amazon Virtual Private Cloud User Guide.

", "CreateFpgaImage": "

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP).

The create operation is asynchronous. To verify that the AFI is ready for use, check the output logs.

An AFI contains the FPGA bitstream that is ready to download to an FPGA. You can securely deploy an AFI on multiple FPGA-accelerated instances. For more information, see the Amazon Web Services FPGA Hardware Development Kit.

", - "CreateImage": "

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

By default, when Amazon EC2 creates the new AMI, it reboots the instance so that it can take snapshots of the attached volumes while data is at rest, in order to ensure a consistent state. You can set the NoReboot parameter to true in the API request, or use the --no-reboot option in the CLI to prevent Amazon EC2 from shutting down and rebooting the instance.

If you choose to bypass the shutdown and reboot process by setting the NoReboot parameter to true in the API request, or by using the --no-reboot option in the CLI, we can't guarantee the file system integrity of the created image.

If you customized your instance with instance store volumes or Amazon EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

For more information, see Create an Amazon EBS-backed Linux AMI in the Amazon Elastic Compute Cloud User Guide.

", - "CreateInstanceConnectEndpoint": "

Creates an EC2 Instance Connect Endpoint.

An EC2 Instance Connect Endpoint allows you to connect to a resource, without requiring the resource to have a public IPv4 address. For more information, see Connect to your resources without requiring a public IPv4 address using EC2 Instance Connect Endpoint in the Amazon EC2 User Guide.

", + "CreateImage": "

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

If you customized your instance with instance store volumes or Amazon EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes.

For more information, see Create an Amazon EBS-backed Linux AMI in the Amazon Elastic Compute Cloud User Guide.

", + "CreateInstanceConnectEndpoint": "

Creates an EC2 Instance Connect Endpoint.

An EC2 Instance Connect Endpoint allows you to connect to an instance, without requiring the instance to have a public IPv4 address. For more information, see Connect to your instances without requiring a public IPv4 address using EC2 Instance Connect Endpoint in the Amazon EC2 User Guide.

", "CreateInstanceEventWindow": "

Creates an event window in which scheduled events for the associated Amazon EC2 instances can run.

You can define either a set of time ranges or a cron expression when creating the event window, but not both. All event window times are in UTC.

You can create up to 200 event windows per Amazon Web Services Region.

When you create the event window, targets (instance IDs, Dedicated Host IDs, or tags) are not yet associated with it. To ensure that the event window can be used, you must associate one or more targets with it by using the AssociateInstanceEventWindow API.

Event windows are applicable only for scheduled events that stop, reboot, or terminate instances.

Event windows are not applicable for:

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", - "CreateInstanceExportTask": "

Exports a running or stopped instance to an Amazon S3 bucket.

For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an instance as a VM Using VM Import/Export in the VM Import/Export User Guide.

", - "CreateInternetGateway": "

Creates an internet gateway for use with a VPC. After creating the internet gateway, you attach it to a VPC using AttachInternetGateway.

For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.

", + "CreateInstanceExportTask": "

Exports a running or stopped instance to an Amazon S3 bucket.

For information about the prerequisites for your Amazon S3 bucket, supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an instance as a VM Using VM Import/Export in the VM Import/Export User Guide.

", + "CreateInternetGateway": "

Creates an internet gateway for use with a VPC. After creating the internet gateway, you attach it to a VPC using AttachInternetGateway.

For more information, see Internet gateways in the Amazon VPC User Guide.

", "CreateIpam": "

Create an IPAM. Amazon VPC IP Address Manager (IPAM) is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization.

For more information, see Create an IPAM in the Amazon VPC IPAM User Guide.

", "CreateIpamPool": "

Create an IP address pool for Amazon VPC IP Address Manager (IPAM). In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

For more information, see Create a top-level pool in the Amazon VPC IPAM User Guide.

", "CreateIpamResourceDiscovery": "

Creates an IPAM resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", @@ -88,9 +88,9 @@ "CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation": "

Creates a local gateway route table virtual interface group association.

", "CreateLocalGatewayRouteTableVpcAssociation": "

Associates the specified VPC with the specified local gateway route table.

", "CreateManagedPrefixList": "

Creates a managed prefix list. You can specify one or more entries for the prefix list. Each entry consists of a CIDR block and an optional description.

", - "CreateNatGateway": "

Creates a NAT gateway in the specified subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. You can create either a public NAT gateway or a private NAT gateway.

With a public NAT gateway, internet-bound traffic from a private subnet can be routed to the NAT gateway, so that instances in a private subnet can connect to the internet.

With a private NAT gateway, private communication is routed across VPCs and on-premises networks through a transit gateway or virtual private gateway. Common use cases include running large workloads behind a small pool of allowlisted IPv4 addresses, preserving private IPv4 addresses, and communicating between overlapping networks.

For more information, see NAT gateways in the Amazon Virtual Private Cloud User Guide.

", - "CreateNetworkAcl": "

Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

", - "CreateNetworkAclEntry": "

Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

", + "CreateNatGateway": "

Creates a NAT gateway in the specified subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. You can create either a public NAT gateway or a private NAT gateway.

With a public NAT gateway, internet-bound traffic from a private subnet can be routed to the NAT gateway, so that instances in a private subnet can connect to the internet.

With a private NAT gateway, private communication is routed across VPCs and on-premises networks through a transit gateway or virtual private gateway. Common use cases include running large workloads behind a small pool of allowlisted IPv4 addresses, preserving private IPv4 addresses, and communicating between overlapping networks.

For more information, see NAT gateways in the Amazon VPC User Guide.

", + "CreateNetworkAcl": "

Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

For more information, see Network ACLs in the Amazon VPC User Guide.

", + "CreateNetworkAclEntry": "

Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.

We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

For more information about network ACLs, see Network ACLs in the Amazon VPC User Guide.

", "CreateNetworkInsightsAccessScope": "

Creates a Network Access Scope.

Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams to verify that their networks on Amazon Web Services conform to their network security and governance objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.

", "CreateNetworkInsightsPath": "

Creates a path to analyze for reachability.

Reachability Analyzer enables you to analyze and debug network reachability between two resources in your virtual private cloud (VPC). For more information, see the Reachability Analyzer Guide.

", "CreateNetworkInterface": "

Creates a network interface in the specified subnet.

The number of IP addresses you can assign to a network interface varies by instance type. For more information, see IP Addresses Per ENI Per Instance Type in the Amazon Virtual Private Cloud User Guide.

For more information about network interfaces, see Elastic network interfaces in the Amazon Elastic Compute Cloud User Guide.

", @@ -100,14 +100,14 @@ "CreateReplaceRootVolumeTask": "

Replaces the EBS-backed root volume for a running instance with a new volume that is restored to the original root volume's launch state, that is restored to a specific snapshot taken from the original root volume, or that is restored from an AMI that has the same key characteristics as that of the instance.

For more information, see Replace a root volume in the Amazon Elastic Compute Cloud User Guide.

", "CreateReservedInstancesListing": "

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Standard Reserved Instance listing at a time. To get a list of your Standard Reserved Instances, you can use the DescribeReservedInstances operation.

Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible Reserved Instances cannot be sold.

The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Standard Reserved Instances, and specify the upfront price to receive for them. Your Standard Reserved Instance listings then become available for purchase. To view the details of your Standard Reserved Instance listing, you can use the DescribeReservedInstancesListings operation.

For more information, see Reserved Instance Marketplace in the Amazon EC2 User Guide.

", "CreateRestoreImageTask": "

Starts a task that restores an AMI from an Amazon S3 object that was previously created by using CreateStoreImageTask.

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the Amazon EC2 User Guide.

For more information, see Store and restore an AMI using Amazon S3 in the Amazon EC2 User Guide.

", - "CreateRoute": "

Creates a route in a route table within a VPC.

You must specify either a destination CIDR block or a prefix list ID. You must also specify exactly one of the resources from the parameter list.

When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3, and the route table includes the following two IPv4 routes:

Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

For more information about route tables, see Route tables in the Amazon Virtual Private Cloud User Guide.

", - "CreateRouteTable": "

Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

For more information, see Route tables in the Amazon Virtual Private Cloud User Guide.

", - "CreateSecurityGroup": "

Creates a security group.

A security group acts as a virtual firewall for your instance to control inbound and outbound traffic. For more information, see Amazon EC2 security groups in the Amazon Elastic Compute Cloud User Guide and Security groups for your VPC in the Amazon Virtual Private Cloud User Guide.

When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name.

You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

For more information about VPC security group limits, see Amazon VPC Limits.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "CreateRoute": "

Creates a route in a route table within a VPC.

You must specify either a destination CIDR block or a prefix list ID. You must also specify exactly one of the resources from the parameter list.

When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3, and the route table includes the following two IPv4 routes:

Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

For more information about route tables, see Route tables in the Amazon VPC User Guide.

", + "CreateRouteTable": "

Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

For more information, see Route tables in the Amazon VPC User Guide.

", + "CreateSecurityGroup": "

Creates a security group.

A security group acts as a virtual firewall for your instance to control inbound and outbound traffic. For more information, see Amazon EC2 security groups in the Amazon Elastic Compute Cloud User Guide and Security groups for your VPC in the Amazon Virtual Private Cloud User Guide.

When you create a security group, you specify a friendly name of your choice. You can't have two security groups for the same VPC with the same name.

You have a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other.

You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.

For more information about VPC security group limits, see Amazon VPC Limits.

", "CreateSnapshot": "

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

You can create snapshots of volumes in a Region and volumes on an Outpost. If you create a snapshot of a volume in a Region, the snapshot must be stored in the same Region as the volume. If you create a snapshot of a volume on an Outpost, the snapshot can be stored on the same Outpost as the volume, or in the Region for that Outpost.

When a snapshot is created, any Amazon Web Services Marketplace product codes that are associated with the source volume are propagated to the snapshot.

You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your Amazon EBS volume at the time the snapshot command is issued; this might exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

When you create a snapshot for an EBS volume that serves as a root device, we recommend that you stop the instance before taking the snapshot.

Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected.

You can tag your snapshots during creation. For more information, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.

For more information, see Amazon Elastic Block Store and Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

", "CreateSnapshots": "

Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3. Volumes are chosen by specifying an instance. Any attached volumes will produce one snapshot each that is crash-consistent across the instance.

You can include all of the volumes currently attached to the instance, or you can exclude the root volume or specific data (non-root) volumes from the multi-volume snapshot set.

You can create multi-volume snapshots of instances in a Region and instances on an Outpost. If you create snapshots from an instance in a Region, the snapshots must be stored in the same Region as the instance. If you create snapshots from an instance on an Outpost, the snapshots can be stored on the same Outpost as the instance, or in the Region for that Outpost.

", "CreateSpotDatafeedSubscription": "

Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per Amazon Web Services account. For more information, see Spot Instance data feed in the Amazon EC2 User Guide for Linux Instances.

", "CreateStoreImageTask": "

Stores an AMI as a single object in an Amazon S3 bucket.

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the Amazon EC2 User Guide.

For more information, see Store and restore an AMI using Amazon S3 in the Amazon EC2 User Guide.

", - "CreateSubnet": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC. After you create a subnet, you can't change its CIDR block.

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for your use.

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR block with a subnet when you create it. The allowed block size for an IPv6 subnet is a /64 netmask.

If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

When you stop an instance in a subnet, it retains its private IPv4 address. It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

For more information, see Subnets in the Amazon Virtual Private Cloud User Guide.

", + "CreateSubnet": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC. After you create a subnet, you can't change its CIDR block.

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for your use.

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR block with a subnet when you create it. The allowed block size for an IPv6 subnet is a /64 netmask.

If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.

When you stop an instance in a subnet, it retains its private IPv4 address. It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.

For more information, see Subnets in the Amazon VPC User Guide.

", "CreateSubnetCidrReservation": "

Creates a subnet CIDR reservation. For information about subnet CIDR reservations, see Subnet CIDR reservations in the Amazon Virtual Private Cloud User Guide.

", "CreateTags": "

Adds or overwrites only the specified tags for the specified Amazon EC2 resource or resources. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported resource-level permissions for Amazon EC2 API actions in the Amazon Elastic Compute Cloud User Guide.

", "CreateTrafficMirrorFilter": "

Creates a Traffic Mirror filter.

A Traffic Mirror filter is a set of rules that defines the traffic to mirror.

By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic Mirror rules to the filter. The rules you add define what traffic gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.

", @@ -130,8 +130,8 @@ "CreateVerifiedAccessInstance": "

An Amazon Web Services Verified Access instance is a regional entity that evaluates application requests and grants access only when your security requirements are met.

", "CreateVerifiedAccessTrustProvider": "

A trust provider is a third-party entity that creates, maintains, and manages identity information for users and devices. When an application request is made, the identity information sent by the trust provider is evaluated by Verified Access before allowing or denying the application request.

", "CreateVolume": "

Creates an EBS volume that can be attached to an instance in the same Availability Zone.

You can create a new empty volume or restore a volume from an EBS snapshot. Any Amazon Web Services Marketplace product codes from the snapshot are propagated to the volume.

You can create encrypted volumes. Encrypted volumes must be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

You can tag your volumes during creation. For more information, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.

For more information, see Create an Amazon EBS volume in the Amazon Elastic Compute Cloud User Guide.

", - "CreateVpc": "

Creates a VPC with the specified CIDR blocks. For more information, see VPC CIDR blocks in the Amazon Virtual Private Cloud User Guide.

You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).

By default, each instance that you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP option sets in the Amazon Virtual Private Cloud User Guide.

You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.

", - "CreateVpcEndpoint": "

Creates a VPC endpoint for a specified service. An endpoint enables you to create a private connection between your VPC and the service. The service may be provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink Guide.

", + "CreateVpc": "

Creates a VPC with the specified CIDR blocks. For more information, see IP addressing for your VPCs and subnets in the Amazon VPC User Guide.

You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).

By default, each instance that you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP option sets in the Amazon VPC User Guide.

You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon EC2 User Guide.

", + "CreateVpcEndpoint": "

Creates a VPC endpoint. A VPC endpoint provides a private connection between the specified VPC and the specified endpoint service. You can use an endpoint service provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink User Guide.

", "CreateVpcEndpointConnectionNotification": "

Creates a connection notification for a specified VPC endpoint or VPC endpoint service. A connection notification notifies you of specific endpoint events. You must create an SNS topic to receive notifications. For more information, see Create a Topic in the Amazon Simple Notification Service Developer Guide.

You can create a connection notification for interface endpoints only.

", "CreateVpcEndpointServiceConfiguration": "

Creates a VPC endpoint service to which service consumers (Amazon Web Services accounts, users, and IAM roles) can connect.

Before you create an endpoint service, you must create one of the following for your service:

If you set the private DNS name, you must prove that you own the private DNS domain name.

For more information, see the Amazon Web Services PrivateLink Guide.

", "CreateVpcPeeringConnection": "

Requests a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which to create the connection. The accepter VPC can belong to another Amazon Web Services account and can be in a different Region to the requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR blocks.

Limitations and rules apply to a VPC peering connection. For more information, see the limitations section in the VPC Peering Guide.

The owner of the accepter VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected.

If you create a VPC peering connection request between VPCs with overlapping CIDR blocks, the VPC peering connection has a status of failed.

", @@ -178,7 +178,7 @@ "DeleteQueuedReservedInstances": "

Deletes the queued purchases for the specified Reserved Instances.

", "DeleteRoute": "

Deletes the specified route from the specified route table.

", "DeleteRouteTable": "

Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

", - "DeleteSecurityGroup": "

Deletes a security group.

If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "DeleteSecurityGroup": "

Deletes a security group.

If you attempt to delete a security group that is associated with an instance or network interface or is referenced by another security group, the operation fails with DependencyViolation.

", "DeleteSnapshot": "

Deletes the specified snapshot.

When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume.

You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot.

For more information, see Delete an Amazon EBS snapshot in the Amazon Elastic Compute Cloud User Guide.

", "DeleteSpotDatafeedSubscription": "

Deletes the data feed for Spot Instances.

", "DeleteSubnet": "

Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

", @@ -231,7 +231,7 @@ "DescribeCapacityReservationFleets": "

Describes one or more Capacity Reservation Fleets.

", "DescribeCapacityReservations": "

Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the Amazon Web Services Region that you're currently using.

", "DescribeCarrierGateways": "

Describes one or more of your carrier gateways.

", - "DescribeClassicLinkInstances": "

Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink. You cannot use this request to return information about other instances.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "DescribeClassicLinkInstances": "

This action is deprecated.

Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink. You cannot use this request to return information about other instances.

", "DescribeClientVpnAuthorizationRules": "

Describes the authorization rules for a specified Client VPN endpoint.

", "DescribeClientVpnConnections": "

Describes active client connections and connections that have been terminated within the last 60 minutes for the specified Client VPN endpoint.

", "DescribeClientVpnEndpoints": "

Describes one or more Client VPN endpoints in the account.

", @@ -240,7 +240,7 @@ "DescribeCoipPools": "

Describes the specified customer-owned address pools or all of your customer-owned address pools.

", "DescribeConversionTasks": "

Describes the specified conversion tasks or all your conversion tasks. For more information, see the VM Import/Export User Guide.

For information about the import manifest referenced by this API action, see VM Import Manifest.

", "DescribeCustomerGateways": "

Describes one or more of your VPN customer gateways.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

", - "DescribeDhcpOptions": "

Describes one or more of your DHCP options sets.

For more information, see DHCP options sets in the Amazon Virtual Private Cloud User Guide.

", + "DescribeDhcpOptions": "

Describes one or more of your DHCP options sets.

For more information, see DHCP options sets in the Amazon VPC User Guide.

", "DescribeEgressOnlyInternetGateways": "

Describes one or more of your egress-only internet gateways.

", "DescribeElasticGpus": "

Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.

", "DescribeExportImageTasks": "

Describes the specified export image tasks or all of your export image tasks.

", @@ -291,7 +291,7 @@ "DescribeManagedPrefixLists": "

Describes your managed prefix lists and any Amazon Web Services-managed prefix lists.

To view the entries for your prefix list, use GetManagedPrefixListEntries.

", "DescribeMovingAddresses": "

This action is deprecated.

Describes your Elastic IP addresses that are being moved from or being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.

", "DescribeNatGateways": "

Describes one or more of your NAT gateways.

", - "DescribeNetworkAcls": "

Describes one or more of your network ACLs.

For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

", + "DescribeNetworkAcls": "

Describes one or more of your network ACLs.

For more information, see Network ACLs in the Amazon VPC User Guide.

", "DescribeNetworkInsightsAccessScopeAnalyses": "

Describes the specified Network Access Scope analyses.

", "DescribeNetworkInsightsAccessScopes": "

Describes the specified Network Access Scopes.

", "DescribeNetworkInsightsAnalyses": "

Describes one or more of your network insights analyses.

", @@ -309,12 +309,12 @@ "DescribeReservedInstancesListings": "

Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

For more information, see Reserved Instance Marketplace in the Amazon EC2 User Guide.

", "DescribeReservedInstancesModifications": "

Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

For more information, see Modifying Reserved Instances in the Amazon EC2 User Guide.

", "DescribeReservedInstancesOfferings": "

Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances.

For more information, see Reserved Instance Marketplace in the Amazon EC2 User Guide.

", - "DescribeRouteTables": "

Describes one or more of your route tables.

Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

For more information, see Route tables in the Amazon Virtual Private Cloud User Guide.

", + "DescribeRouteTables": "

Describes one or more of your route tables.

Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

For more information, see Route tables in the Amazon VPC User Guide.

", "DescribeScheduledInstanceAvailability": "

Finds available schedules that meet the specified criteria.

You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.

", "DescribeScheduledInstances": "

Describes the specified Scheduled Instances or all your Scheduled Instances.

", - "DescribeSecurityGroupReferences": "

[VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

", + "DescribeSecurityGroupReferences": "

Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

", "DescribeSecurityGroupRules": "

Describes one or more of your security group rules.

", - "DescribeSecurityGroups": "

Describes the specified security groups or all of your security groups.

A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 security groups in the Amazon Elastic Compute Cloud User Guide and Security groups for your VPC in the Amazon Virtual Private Cloud User Guide.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "DescribeSecurityGroups": "

Describes the specified security groups or all of your security groups.

", "DescribeSnapshotAttribute": "

Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon Elastic Compute Cloud User Guide.

", "DescribeSnapshotTierStatus": "

Describes the storage tier status of one or more Amazon EBS snapshots.

", "DescribeSnapshots": "

Describes the specified EBS snapshots available to you or all of the EBS snapshots available to you.

The snapshots available to you include public snapshots, private snapshots that you own, and private snapshots owned by other Amazon Web Services accounts for which you have explicit create volume permissions.

The create volume permissions fall into the following categories:

The list of snapshots returned can be filtered by specifying snapshot IDs, snapshot owners, or Amazon Web Services accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the Amazon Web Services account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify Amazon Web Services account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

If you are describing a long list of snapshots, we recommend that you paginate the output to make the list more manageable. For more information, see Pagination.

To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores.

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon Elastic Compute Cloud User Guide.

", @@ -324,9 +324,9 @@ "DescribeSpotFleetRequests": "

Describes your Spot Fleet requests.

Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.

", "DescribeSpotInstanceRequests": "

Describes the specified Spot Instance requests.

You can use DescribeSpotInstanceRequests to find a running Spot Instance by examining the response. If the status of the Spot Instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot.

We recommend that you set MaxResults to a value between 5 and 1000 to limit the number of items returned. This paginates the output, which makes the list more manageable and returns the items faster. If the list of items exceeds your MaxResults value, then that number of items is returned along with a NextToken value that can be passed to a subsequent DescribeSpotInstanceRequests request to retrieve the remaining items.

Spot Instance requests are deleted four hours after they are canceled and their instances are terminated.

", "DescribeSpotPriceHistory": "

Describes the Spot price history. For more information, see Spot Instance pricing history in the Amazon EC2 User Guide for Linux Instances.

When you specify a start and end time, the operation returns the prices of the instance types within that time range. It also returns the last price change before the start time, which is the effective price as of the start time.

", - "DescribeStaleSecurityGroups": "

[VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, or if they reference a security group in a peer VPC for which the VPC peering connection has been deleted.

", + "DescribeStaleSecurityGroups": "

Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, or if they reference a security group in a peer VPC for which the VPC peering connection has been deleted.

", "DescribeStoreImageTasks": "

Describes the progress of the AMI store tasks. You can describe the store tasks for specified AMIs. If you don't specify the AMIs, you get a paginated list of store tasks from the last 31 days.

For each AMI task, the response indicates if the task is InProgress, Completed, or Failed. For tasks InProgress, the response shows the estimated progress as a percentage.

Tasks are listed in reverse chronological order. Currently, only tasks from the past 31 days can be viewed.

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the Amazon EC2 User Guide.

For more information, see Store and restore an AMI using Amazon S3 in the Amazon EC2 User Guide.

", - "DescribeSubnets": "

Describes one or more of your subnets.

For more information, see Your VPC and subnets in the Amazon Virtual Private Cloud User Guide.

", + "DescribeSubnets": "

Describes one or more of your subnets.

For more information, see Subnets in the Amazon VPC User Guide.

", "DescribeTags": "

Describes the specified tags for your EC2 resources.

For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.

", "DescribeTrafficMirrorFilters": "

Describes one or more Traffic Mirror filters.

", "DescribeTrafficMirrorSessions": "

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

", @@ -352,8 +352,8 @@ "DescribeVolumes": "

Describes the specified EBS volumes or all of your EBS volumes.

If you are describing a long list of volumes, we recommend that you paginate the output to make the list more manageable. For more information, see Pagination.

For more information about EBS volumes, see Amazon EBS volumes in the Amazon Elastic Compute Cloud User Guide.

", "DescribeVolumesModifications": "

Describes the most recent volume modification request for the specified EBS volumes.

If a volume has never been modified, some information in the output will be null. If a volume has been modified more than once, the output includes only the most recent modification request.

You can also use CloudWatch Events to check the status of a modification to an EBS volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. For more information, see Monitor the progress of volume modifications in the Amazon Elastic Compute Cloud User Guide.

", "DescribeVpcAttribute": "

Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

", - "DescribeVpcClassicLink": "

Describes the ClassicLink status of one or more VPCs.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", - "DescribeVpcClassicLinkDnsSupport": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

", + "DescribeVpcClassicLink": "

This action is deprecated.

Describes the ClassicLink status of the specified VPCs.

", + "DescribeVpcClassicLinkDnsSupport": "

This action is deprecated.

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance.

", "DescribeVpcEndpointConnectionNotifications": "

Describes the connection notifications for VPC endpoints and VPC endpoint services.

", "DescribeVpcEndpointConnections": "

Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance.

", "DescribeVpcEndpointServiceConfigurations": "

Describes the VPC endpoint service configurations in your account (your services).

", @@ -364,7 +364,7 @@ "DescribeVpcs": "

Describes one or more of your VPCs.

", "DescribeVpnConnections": "

Describes one or more of your VPN connections.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

", "DescribeVpnGateways": "

Describes one or more of your virtual private gateways.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

", - "DetachClassicLinkVpc": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

", + "DetachClassicLinkVpc": "

This action is deprecated.

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.

", "DetachInternetGateway": "

Detaches an internet gateway from a VPC, disabling connectivity between the internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses or public IPv4 addresses.

", "DetachNetworkInterface": "

Detaches a network interface from an instance.

", "DetachVerifiedAccessTrustProvider": "

Detaches the specified Amazon Web Services Verified Access trust provider from the specified Amazon Web Services Verified Access instance.

", @@ -380,16 +380,16 @@ "DisableSerialConsoleAccess": "

Disables access to the EC2 serial console of all instances for your account. By default, access to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console in the Amazon EC2 User Guide.

", "DisableTransitGatewayRouteTablePropagation": "

Disables the specified resource attachment from propagating routes to the specified propagation route table.

", "DisableVgwRoutePropagation": "

Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.

", - "DisableVpcClassicLink": "

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", - "DisableVpcClassicLinkDnsSupport": "

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

You must specify a VPC ID in the request.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "DisableVpcClassicLink": "

This action is deprecated.

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.

", + "DisableVpcClassicLinkDnsSupport": "

This action is deprecated.

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked.

You must specify a VPC ID in the request.

", "DisassociateAddress": "

Disassociates an Elastic IP address from the instance or network interface it's associated with.

This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

", "DisassociateClientVpnTargetNetwork": "

Disassociates a target network from the specified Client VPN endpoint. When you disassociate the last target network from a Client VPN, the following happens:

", "DisassociateEnclaveCertificateIamRole": "

Disassociates an IAM role from an Certificate Manager (ACM) certificate. Disassociating an IAM role from an ACM certificate removes the Amazon S3 object that contains the certificate, certificate chain, and encrypted private key from the Amazon S3 bucket. It also revokes the IAM role's permission to use the KMS key used to encrypt the private key. This effectively revokes the role's permission to use the certificate.

", "DisassociateIamInstanceProfile": "

Disassociates an IAM instance profile from a running or stopped instance.

Use DescribeIamInstanceProfileAssociations to get the association ID.

", "DisassociateInstanceEventWindow": "

Disassociates one or more targets from an event window.

For more information, see Define event windows for scheduled events in the Amazon EC2 User Guide.

", "DisassociateIpamResourceDiscovery": "

Disassociates a resource discovery from an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", - "DisassociateNatGatewayAddress": "

Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. You cannot disassociate your primary EIP. For more information, see Edit secondary IP address associations in the Amazon Virtual Private Cloud User Guide.

While disassociating is in progress, you cannot associate/disassociate additional EIPs while the connections are being drained. You are, however, allowed to delete the NAT gateway.

An EIP will only be released at the end of MaxDrainDurationSeconds. The EIPs stay associated and support the existing connections but do not support any new connections (new connections are distributed across the remaining associated EIPs). As the existing connections drain out, the EIPs (and the corresponding private IPs mapped to them) get released.

", - "DisassociateRouteTable": "

Disassociates a subnet or gateway from a route table.

After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route tables in the Amazon Virtual Private Cloud User Guide.

", + "DisassociateNatGatewayAddress": "

Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. You cannot disassociate your primary EIP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

While disassociating is in progress, you cannot associate/disassociate additional EIPs while the connections are being drained. You are, however, allowed to delete the NAT gateway.

An EIP is released only at the end of MaxDrainDurationSeconds. It stays associated and supports the existing connections but does not support any new connections (new connections are distributed across the remaining associated EIPs). As the existing connections drain out, the EIPs (and the corresponding private IP addresses mapped to them) are released.

", + "DisassociateRouteTable": "

Disassociates a subnet or gateway from a route table.

After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route tables in the Amazon VPC User Guide.

", "DisassociateSubnetCidrBlock": "

Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.

", "DisassociateTransitGatewayMulticastDomain": "

Disassociates the specified subnets from the transit gateway multicast domain.

", "DisassociateTransitGatewayPolicyTable": "

Removes the association between an an attachment and a policy table.

", @@ -408,8 +408,8 @@ "EnableTransitGatewayRouteTablePropagation": "

Enables the specified attachment to propagate routes to the specified propagation route table.

", "EnableVgwRoutePropagation": "

Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.

", "EnableVolumeIO": "

Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

", - "EnableVpcClassicLink": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

", - "EnableVpcClassicLinkDnsSupport": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

You must specify a VPC ID in the request.

", + "EnableVpcClassicLink": "

This action is deprecated.

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges.

", + "EnableVpcClassicLinkDnsSupport": "

This action is deprecated.

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance.

You must specify a VPC ID in the request.

", "ExportClientVpnClientCertificateRevocationList": "

Downloads the client certificate revocation list for the specified Client VPN endpoint.

", "ExportClientVpnClientConfiguration": "

Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The Client VPN endpoint configuration file includes the Client VPN endpoint and certificate information clients need to establish a connection with the Client VPN endpoint.

", "ExportImage": "

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM directly from an Amazon Machine Image (AMI) in the VM Import/Export User Guide.

", @@ -424,7 +424,7 @@ "GetDefaultCreditSpecification": "

Describes the default credit option for CPU usage of a burstable performance instance family.

For more information, see Burstable performance instances in the Amazon EC2 User Guide.

", "GetEbsDefaultKmsKeyId": "

Describes the default KMS key for EBS encryption by default for your account in this Region. You can change the default KMS key for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId.

For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

", "GetEbsEncryptionByDefault": "

Describes whether EBS encryption by default is enabled for your account in the current Region.

For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

", - "GetFlowLogsIntegrationTemplate": "

Generates a CloudFormation template that streamlines and automates the integration of VPC flow logs with Amazon Athena. This make it easier for you to query and gain insights from VPC flow logs data. Based on the information that you provide, we configure resources in the template to do the following:

", + "GetFlowLogsIntegrationTemplate": "

Generates a CloudFormation template that streamlines and automates the integration of VPC flow logs with Amazon Athena. This make it easier for you to query and gain insights from VPC flow logs data. Based on the information that you provide, we configure resources in the template to do the following:

GetFlowLogsIntegrationTemplate does not support integration between Amazon Web Services Transit Gateway Flow Logs and Amazon Athena.

", "GetGroupsForCapacityReservation": "

Lists the resource groups to which a Capacity Reservation has been added.

", "GetHostReservationPurchasePreview": "

Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation.

This is a preview of the PurchaseHostReservation action and does not result in the offering being purchased.

", "GetInstanceTypesFromInstanceRequirements": "

Returns a list of instance types with the specified instance attributes. You can use the response to preview the instance types without launching instances. Note that the response does not consider capacity.

When you specify multiple parameters, you get instance types that satisfy all of the specified parameters. If you specify multiple values for a parameter, you get instance types that satisfy any of the specified values.

For more information, see Preview instance types with specified attributes, Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide, and Creating an Auto Scaling group using attribute-based instance type selection in the Amazon EC2 Auto Scaling User Guide.

", @@ -459,7 +459,7 @@ "GetVpnTunnelReplacementStatus": "

Get details of available tunnel endpoint maintenance.

", "ImportClientVpnClientCertificateRevocationList": "

Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate revocation list overwrites the existing client certificate revocation list.

Uploading a client certificate revocation list resets existing client connections.

", "ImportImage": "

To import your virtual machines (VMs) with a console-based experience, you can use the Import virtual machine images to Amazon Web Services template in the Migration Hub Orchestrator console. For more information, see the Migration Hub Orchestrator User Guide .

Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI).

Amazon Web Services VM Import/Export strongly recommends specifying a value for either the --license-type or --usage-operation parameter when you create a new VM Import task. This ensures your operating system is licensed appropriately and your billing is optimized.

For more information, see Importing a VM as an image using VM Import/Export in the VM Import/Export User Guide.

", - "ImportInstance": "

Creates an import instance task using metadata from the specified disk image.

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage instead.

This API action is not supported by the Command Line Interface (CLI). For information about using the Amazon EC2 CLI, which is deprecated, see Importing a VM to Amazon EC2 in the Amazon EC2 CLI Reference PDF file.

For information about the import manifest referenced by this API action, see VM Import Manifest.

", + "ImportInstance": "

We recommend that you use the ImportImage API. For more information, see Importing a VM as an image using VM Import/Export in the VM Import/Export User Guide.

Creates an import instance task using metadata from the specified disk image.

This API action is not supported by the Command Line Interface (CLI). For information about using the Amazon EC2 CLI, which is deprecated, see Importing a VM to Amazon EC2 in the Amazon EC2 CLI Reference PDF file.

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage instead.

For information about the import manifest referenced by this API action, see VM Import Manifest.

", "ImportKeyPair": "

Imports the public key from an RSA or ED25519 key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which Amazon Web Services creates the key pair and gives the keys to you (Amazon Web Services keeps a copy of the public key). With ImportKeyPair, you create the key pair and give Amazon Web Services just the public key. The private key is never transferred between you and Amazon Web Services.

For more information about key pairs, see Amazon EC2 key pairs in the Amazon Elastic Compute Cloud User Guide.

", "ImportSnapshot": "

Imports a disk into an EBS snapshot.

For more information, see Importing a disk as a snapshot using VM Import/Export in the VM Import/Export User Guide.

", "ImportVolume": "

Creates an import volume task using metadata from the specified disk image.

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage instead. To import a disk to a snapshot, use ImportSnapshot instead.

This API action is not supported by the Command Line Interface (CLI). For information about using the Amazon EC2 CLI, which is deprecated, see Importing Disks to Amazon EBS in the Amazon EC2 CLI Reference PDF file.

For information about the import manifest referenced by this API action, see VM Import Manifest.

", @@ -523,8 +523,8 @@ "ModifyVpcEndpointServiceConfiguration": "

Modifies the attributes of your VPC endpoint service configuration. You can change the Network Load Balancers or Gateway Load Balancers for your service, and you can specify whether acceptance is required for requests to connect to your endpoint service through an interface VPC endpoint.

If you set or modify the private DNS name, you must prove that you own the private DNS domain name.

", "ModifyVpcEndpointServicePayerResponsibility": "

Modifies the payer responsibility for your VPC endpoint service.

", "ModifyVpcEndpointServicePermissions": "

Modifies the permissions for your VPC endpoint service. You can add or remove permissions for service consumers (Amazon Web Services accounts, users, and IAM roles) to connect to your endpoint service.

If you grant permissions to all principals, the service is public. Any users who know the name of a public service can send a request to attach an endpoint. If the service does not require manual approval, attachments are automatically approved.

", - "ModifyVpcPeeringConnectionOptions": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following:

If the peered VPCs are in the same Amazon Web Services account, you can enable DNS resolution for queries from the local VPC. This ensures that queries from the local VPC resolve to private IP addresses in the peer VPC. This option is not available if the peered VPCs are in different Amazon Web Services accounts or different Regions. For peered VPCs in different Amazon Web Services accounts, each Amazon Web Services account owner must initiate a separate request to modify the peering connection options. For inter-region peering connections, you must use the Region for the requester VPC to modify the requester VPC peering options and the Region for the accepter VPC to modify the accepter VPC peering options. To verify which VPCs are the accepter and the requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

", - "ModifyVpcTenancy": "

Modifies the instance tenancy attribute of the specified VPC. You can change the instance tenancy attribute of a VPC to default only. You cannot change the instance tenancy attribute to dedicated.

After you modify the tenancy of the VPC, any new instances that you launch into the VPC have a tenancy of default, unless you specify otherwise during launch. The tenancy of any existing instances in the VPC is not affected.

For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.

", + "ModifyVpcPeeringConnectionOptions": "

Modifies the VPC peering connection options on one side of a VPC peering connection.

If the peered VPCs are in the same Amazon Web Services account, you can enable DNS resolution for queries from the local VPC. This ensures that queries from the local VPC resolve to private IP addresses in the peer VPC. This option is not available if the peered VPCs are in different Amazon Web Services accounts or different Regions. For peered VPCs in different Amazon Web Services accounts, each Amazon Web Services account owner must initiate a separate request to modify the peering connection options. For inter-region peering connections, you must use the Region for the requester VPC to modify the requester VPC peering options and the Region for the accepter VPC to modify the accepter VPC peering options. To verify which VPCs are the accepter and the requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

", + "ModifyVpcTenancy": "

Modifies the instance tenancy attribute of the specified VPC. You can change the instance tenancy attribute of a VPC to default only. You cannot change the instance tenancy attribute to dedicated.

After you modify the tenancy of the VPC, any new instances that you launch into the VPC have a tenancy of default, unless you specify otherwise during launch. The tenancy of any existing instances in the VPC is not affected.

For more information, see Dedicated Instances in the Amazon EC2 User Guide.

", "ModifyVpnConnection": "

Modifies the customer gateway or the target gateway of an Amazon Web Services Site-to-Site VPN connection. To modify the target gateway, the following migration options are available:

Before you perform the migration to the new gateway, you must configure the new gateway. Use CreateVpnGateway to create a virtual private gateway, or CreateTransitGateway to create a transit gateway.

This step is required when you migrate from a virtual private gateway with static routes to a transit gateway.

You must delete the static routes before you migrate to the new gateway.

Keep a copy of the static route before you delete it. You will need to add back these routes to the transit gateway after the VPN connection migration is complete.

After you migrate to the new gateway, you might need to modify your VPC route table. Use CreateRoute and DeleteRoute to make the changes described in Update VPC route tables in the Amazon Web Services Site-to-Site VPN User Guide.

When the new gateway is a transit gateway, modify the transit gateway route table to allow traffic between the VPC and the Amazon Web Services Site-to-Site VPN connection. Use CreateTransitGatewayRoute to add the routes.

If you deleted VPN static routes, you must add the static routes to the transit gateway route table.

After you perform this operation, the VPN endpoint's IP addresses on the Amazon Web Services side and the tunnel options remain intact. Your Amazon Web Services Site-to-Site VPN connection will be temporarily unavailable for a brief period while we provision the new endpoints.

", "ModifyVpnConnectionOptions": "

Modifies the connection options for your Site-to-Site VPN connection.

When you modify the VPN connection options, the VPN endpoint IP addresses on the Amazon Web Services side do not change, and the tunnel options do not change. Your VPN connection will be temporarily unavailable for a brief period while the VPN connection is updated.

", "ModifyVpnTunnelCertificate": "

Modifies the VPN tunnel endpoint certificate.

", @@ -550,12 +550,12 @@ "RejectVpcPeeringConnection": "

Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.

", "ReleaseAddress": "

Releases the specified Elastic IP address.

[Default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress.

[Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

After releasing an Elastic IP address, it is released to the IP address pool. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another Amazon Web Services account.

After you release an Elastic IP address, you might be able to recover it. For more information, see AllocateAddress.

", "ReleaseHosts": "

When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated Hosts that have been released can no longer be specified in another request, for example, to modify the host. You must stop or terminate all instances on a host before it can be released.

When Dedicated Hosts are released, it may take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated Hosts. Wait a few minutes and then try again.

Released hosts still appear in a DescribeHosts response.

", - "ReleaseIpamPoolAllocation": "

Release an allocation within an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide.

All EC2 API actions follow an eventual consistency model.

", + "ReleaseIpamPoolAllocation": "

Release an allocation within an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide.

All EC2 API actions follow an eventual consistency model.

", "ReplaceIamInstanceProfileAssociation": "

Replaces an IAM instance profile for the specified running instance. You can use this action to change the IAM instance profile that's associated with an instance without having to disassociate the existing IAM instance profile first.

Use DescribeIamInstanceProfileAssociations to get the association ID.

", - "ReplaceNetworkAclAssociation": "

Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

This is an idempotent operation.

", - "ReplaceNetworkAclEntry": "

Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.

", - "ReplaceRoute": "

Replaces an existing route within a route table in a VPC.

You must specify either a destination CIDR block or a prefix list ID. You must also specify exactly one of the resources from the parameter list, or reset the local route to its default target.

For more information, see Route tables in the Amazon Virtual Private Cloud User Guide.

", - "ReplaceRouteTableAssociation": "

Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation completes, the subnet or gateway uses the routes in the new route table. For more information about route tables, see Route tables in the Amazon Virtual Private Cloud User Guide.

You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.

", + "ReplaceNetworkAclAssociation": "

Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information, see Network ACLs in the Amazon VPC User Guide.

This is an idempotent operation.

", + "ReplaceNetworkAclEntry": "

Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon VPC User Guide.

", + "ReplaceRoute": "

Replaces an existing route within a route table in a VPC.

You must specify either a destination CIDR block or a prefix list ID. You must also specify exactly one of the resources from the parameter list, or reset the local route to its default target.

For more information, see Route tables in the Amazon VPC User Guide.

", + "ReplaceRouteTableAssociation": "

Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation completes, the subnet or gateway uses the routes in the new route table. For more information about route tables, see Route tables in the Amazon VPC User Guide.

You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.

", "ReplaceTransitGatewayRoute": "

Replaces the specified route in the specified transit gateway route table.

", "ReplaceVpnTunnel": "

Trigger replacement of specified VPN tunnel.

", "ReportInstanceStatus": "

Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks.

Use of this action does not change the value returned by DescribeInstanceStatus.

", @@ -574,8 +574,8 @@ "RestoreSnapshotFromRecycleBin": "

Restores a snapshot from the Recycle Bin. For more information, see Restore snapshots from the Recycle Bin in the Amazon Elastic Compute Cloud User Guide.

", "RestoreSnapshotTier": "

Restores an archived Amazon EBS snapshot for use temporarily or permanently, or modifies the restore period or restore type for a snapshot that was previously temporarily restored.

For more information see Restore an archived snapshot and modify the restore period or restore type for a temporarily restored snapshot in the Amazon Elastic Compute Cloud User Guide.

", "RevokeClientVpnIngress": "

Removes an ingress authorization rule from a Client VPN endpoint.

", - "RevokeSecurityGroupEgress": "

[VPC only] Removes the specified outbound (egress) rules from a security group for EC2-VPC. This action does not apply to security groups for use in EC2-Classic.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

[Default VPC] If the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", - "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

[EC2-Classic, default VPC] If the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "RevokeSecurityGroupEgress": "

Removes the specified outbound (egress) rules from the specified security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", + "RevokeSecurityGroupIngress": "

Removes the specified inbound (ingress) rules from a security group.

You can specify rules using either rule IDs or security group rule properties. If you use rule properties, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, security group, or prefix list). For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not need to specify the description to revoke the rule.

For a default VPC, if the values you specify do not match the existing rule's values, no error is returned, and the output describes the security group rules that were not revoked.

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

", "RunInstances": "

Launches the specified number of instances using an AMI for which you have permissions.

You can specify a number of options, or leave the default options. The following rules apply:

You can create a launch template, which is a resource that contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify the launch template instead of specifying the launch parameters.

To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances.

An instance is ready for you to use when it's in the running state. You can check the state of your instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or both. For more information, see CreateTags and Tagging your Amazon EC2 resources.

Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key pairs.

For troubleshooting, see What to do if an instance immediately terminates, and Troubleshooting connecting to your instance.

", "RunScheduledInstances": "

Launches the specified Scheduled Instances.

Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon EC2 User Guide.

", "SearchLocalGatewayRoutes": "

Searches for routes in the specified local gateway route table.

", @@ -591,9 +591,9 @@ "TerminateInstances": "

Shuts down the specified instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds.

If you specify multiple instances and the request fails (for example, because of a single incorrect instance ID), none of the instances are terminated.

If you terminate multiple instances across multiple Availability Zones, and one or more of the specified instances are enabled for termination protection, the request fails with the following results:

For example, say you have the following instances:

If you attempt to terminate all of these instances in the same request, the request reports failure with the following results:

Terminated instances remain visible after termination (for approximately one hour).

By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running.

You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance lifecycle in the Amazon EC2 User Guide.

For more information about troubleshooting, see Troubleshooting terminating your instance in the Amazon EC2 User Guide.

", "UnassignIpv6Addresses": "

Unassigns one or more IPv6 addresses IPv4 Prefix Delegation prefixes from a network interface.

", "UnassignPrivateIpAddresses": "

Unassigns one or more secondary private IP addresses, or IPv4 Prefix Delegation prefixes from a network interface.

", - "UnassignPrivateNatGatewayAddress": "

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, see Edit secondary IP address associations in the Amazon Virtual Private Cloud User Guide.

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

A private IP address will only be released at the end of MaxDrainDurationSeconds. The private IP addresses stay associated and support the existing connections but do not support any new connections (new connections are distributed across the remaining assigned private IP address). After the existing connections drain out, the private IP addresses get released.

", + "UnassignPrivateNatGatewayAddress": "

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

A private IP address will only be released at the end of MaxDrainDurationSeconds. The private IP addresses stay associated and support the existing connections, but do not support any new connections (new connections are distributed across the remaining assigned private IP address). After the existing connections drain out, the private IP addresses are released.

", "UnmonitorInstances": "

Disables detailed monitoring for a running instance. For more information, see Monitoring your instances and volumes in the Amazon EC2 User Guide.

", - "UpdateSecurityGroupRuleDescriptionsEgress": "

[VPC only] Updates the description of an egress (outbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You can remove a description for a security group rule by omitting the description parameter in the request.

", + "UpdateSecurityGroupRuleDescriptionsEgress": "

Updates the description of an egress (outbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You can remove a description for a security group rule by omitting the description parameter in the request.

", "UpdateSecurityGroupRuleDescriptionsIngress": "

Updates the description of an ingress (inbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You can remove a description for a security group rule by omitting the description parameter in the request.

", "WithdrawByoipCidr": "

Stops advertising an address range that is provisioned as an address pool.

You can perform this operation at most once every 10 seconds, even if you specify different address ranges each time.

It can take a few minutes before traffic to the specified addresses stops routing to Amazon Web Services because of BGP propagation delays.

" }, @@ -1008,7 +1008,7 @@ "base": null, "refs": { "AssociateNatGatewayAddressRequest$AllocationIds": "

The allocation IDs of EIPs that you want to associate with your NAT gateway.

", - "CreateNatGatewayRequest$SecondaryAllocationIds": "

Secondary EIP allocation IDs. For more information about secondary addresses, see Create a NAT gateway in the Amazon Virtual Private Cloud User Guide.

", + "CreateNatGatewayRequest$SecondaryAllocationIds": "

Secondary EIP allocation IDs. For more information, see Create a NAT gateway in the Amazon VPC User Guide.

", "DescribeAddressTransfersRequest$AllocationIds": "

The allocation IDs of Elastic IP addresses.

", "DescribeAddressesRequest$AllocationIds": "

Information about the allocation IDs.

" } @@ -1085,8 +1085,8 @@ "refs": { "CpuOptions$AmdSevSnp": "

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see AMD SEV-SNP.

", "CpuOptionsRequest$AmdSevSnp": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.

", - "LaunchTemplateCpuOptions$AmdSevSnp": "

Indicates whether the instance is enabled for AMD SEV-SNP.

", - "LaunchTemplateCpuOptionsRequest$AmdSevSnp": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only.

" + "LaunchTemplateCpuOptions$AmdSevSnp": "

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see AMD SEV-SNP.

", + "LaunchTemplateCpuOptionsRequest$AmdSevSnp": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.

" } }, "AnalysisAclRule": { @@ -1744,7 +1744,7 @@ "base": null, "refs": { "CreateCapacityReservationRequest$AvailabilityZone": "

The Availability Zone in which to create the Capacity Reservation.

", - "CreateVolumeRequest$AvailabilityZone": "

The Availability Zone in which to create the volume.

" + "CreateVolumeRequest$AvailabilityZone": "

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

" } }, "AvailabilityZoneOptInStatus": { @@ -1983,7 +1983,7 @@ "CreateFlowLogsRequest$DryRun": "

Checks whether you have the required permissions for the action, 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.

", "CreateFpgaImageRequest$DryRun": "

Checks whether you have the required permissions for the action, 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.

", "CreateImageRequest$DryRun": "

Checks whether you have the required permissions for the action, 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.

", - "CreateImageRequest$NoReboot": "

By default, when Amazon EC2 creates the new AMI, it reboots the instance so that it can take snapshots of the attached volumes while data is at rest, in order to ensure a consistent state. You can set the NoReboot parameter to true in the API request, or use the --no-reboot option in the CLI to prevent Amazon EC2 from shutting down and rebooting the instance.

If you choose to bypass the shutdown and reboot process by setting the NoReboot parameter to true in the API request, or by using the --no-reboot option in the CLI, we can't guarantee the file system integrity of the created image.

Default: false (follow standard reboot process)

", + "CreateImageRequest$NoReboot": "

Indicates whether or not the instance should be automatically rebooted before creating the image. Specify one of the following values:

Default: false

", "CreateInstanceConnectEndpointRequest$DryRun": "

Checks whether you have the required permissions for the action, 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.

", "CreateInstanceConnectEndpointRequest$PreserveClientIp": "

Indicates whether your client's IP address is preserved as the source. The value is true or false.

Default: true

", "CreateInstanceEventWindowRequest$DryRun": "

Checks whether you have the required permissions for the action, 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.

", @@ -2604,11 +2604,11 @@ "OnDemandOptionsRequest$SingleInstanceType": "

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.

Supported only for fleets of type instant.

", "OnDemandOptionsRequest$SingleAvailabilityZone": "

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

Supported only for fleets of type instant.

", "PeeringConnectionOptions$AllowDnsResolutionFromRemoteVpc": "

If true, the public DNS hostnames of instances in the specified VPC resolve to private IP addresses when queried from instances in the peer VPC.

", - "PeeringConnectionOptions$AllowEgressFromLocalClassicLinkToRemoteVpc": "

If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC using ClassicLink to instances in a peer VPC.

", - "PeeringConnectionOptions$AllowEgressFromLocalVpcToRemoteClassicLink": "

If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC using ClassicLink.

", + "PeeringConnectionOptions$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Deprecated.

", + "PeeringConnectionOptions$AllowEgressFromLocalVpcToRemoteClassicLink": "

Deprecated.

", "PeeringConnectionOptionsRequest$AllowDnsResolutionFromRemoteVpc": "

If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

", - "PeeringConnectionOptionsRequest$AllowEgressFromLocalClassicLinkToRemoteVpc": "

If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC using ClassicLink to instances in a peer VPC.

", - "PeeringConnectionOptionsRequest$AllowEgressFromLocalVpcToRemoteClassicLink": "

If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC using ClassicLink.

", + "PeeringConnectionOptionsRequest$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Deprecated.

", + "PeeringConnectionOptionsRequest$AllowEgressFromLocalVpcToRemoteClassicLink": "

Deprecated.

", "PriceSchedule$Active": "

The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

", "PrivateDnsNameOptionsOnLaunch$EnableResourceNameDnsARecord": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

", "PrivateDnsNameOptionsOnLaunch$EnableResourceNameDnsAAAARecord": "

Indicates whether to respond to DNS queries for instance hostname with DNS AAAA records.

", @@ -2772,8 +2772,8 @@ "VpcEndpoint$PrivateDnsEnabled": "

(Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.

", "VpcEndpoint$RequesterManaged": "

Indicates whether the endpoint is being managed by its service.

", "VpcPeeringConnectionOptionsDescription$AllowDnsResolutionFromRemoteVpc": "

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

", - "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

", - "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalVpcToRemoteClassicLink": "

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

", + "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Deprecated.

", + "VpcPeeringConnectionOptionsDescription$AllowEgressFromLocalVpcToRemoteClassicLink": "

Deprecated.

", "VpnConnectionOptions$EnableAcceleration": "

Indicates whether acceleration is enabled for the VPN connection.

", "VpnConnectionOptions$StaticRoutesOnly": "

Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

", "VpnConnectionOptionsSpecification$EnableAcceleration": "

Indicate whether to enable acceleration for the VPN connection.

Default: false

", @@ -2870,7 +2870,7 @@ "BurstablePerformanceFlag": { "base": null, "refs": { - "InstanceTypeInfo$BurstablePerformanceSupported": "

Indicates whether the instance type is a burstable performance instance type.

" + "InstanceTypeInfo$BurstablePerformanceSupported": "

Indicates whether the instance type is a burstable performance T instance type. For more information, see Burstable performance instances.

" } }, "ByoipCidr": { @@ -3323,7 +3323,7 @@ } }, "ClassicLinkDnsSupport": { - "base": "

Describes the ClassicLink DNS support status of a VPC.

", + "base": "

Deprecated.

Describes the ClassicLink DNS support status of a VPC.

", "refs": { "ClassicLinkDnsSupportList$member": null } @@ -3335,7 +3335,7 @@ } }, "ClassicLinkInstance": { - "base": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Describes a linked EC2-Classic instance.

", + "base": "

Deprecated.

Describes a linked EC2-Classic instance.

", "refs": { "ClassicLinkInstanceList$member": null } @@ -7702,17 +7702,17 @@ "DhcpConfigurationList": { "base": null, "refs": { - "DhcpOptions$DhcpConfigurations": "

One or more DHCP options in the set.

" + "DhcpOptions$DhcpConfigurations": "

The DHCP options in the set.

" } }, "DhcpConfigurationValueList": { "base": null, "refs": { - "DhcpConfiguration$Values": "

One or more values for the DHCP option.

" + "DhcpConfiguration$Values": "

The values for the DHCP option.

" } }, "DhcpOptions": { - "base": "

Describes a set of DHCP options.

", + "base": "

The set of DHCP options.

", "refs": { "CreateDhcpOptionsResult$DhcpOptions": "

A set of DHCP options.

", "DhcpOptionsList$member": null @@ -8330,7 +8330,7 @@ "EgressOnlyInternetGatewayIdList": { "base": null, "refs": { - "DescribeEgressOnlyInternetGatewaysRequest$EgressOnlyInternetGatewayIds": "

One or more egress-only internet gateway IDs.

" + "DescribeEgressOnlyInternetGatewaysRequest$EgressOnlyInternetGatewayIds": "

The IDs of the egress-only internet gateways.

" } }, "EgressOnlyInternetGatewayList": { @@ -9019,7 +9019,7 @@ "DescribeCapacityReservationFleetsRequest$Filters": "

One or more filters.

", "DescribeCapacityReservationsRequest$Filters": "

One or more filters.

", "DescribeCarrierGatewaysRequest$Filters": "

One or more filters.

", - "DescribeClassicLinkInstancesRequest$Filters": "

One or more filters.

", + "DescribeClassicLinkInstancesRequest$Filters": "

The filters.

", "DescribeClientVpnAuthorizationRulesRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", "DescribeClientVpnConnectionsRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", "DescribeClientVpnEndpointsRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", @@ -9027,8 +9027,8 @@ "DescribeClientVpnTargetNetworksRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", "DescribeCoipPoolsRequest$Filters": "

One or more filters.

", "DescribeCustomerGatewaysRequest$Filters": "

One or more filters.

", - "DescribeDhcpOptionsRequest$Filters": "

One or more filters.

", - "DescribeEgressOnlyInternetGatewaysRequest$Filters": "

One or more filters.

", + "DescribeDhcpOptionsRequest$Filters": "

The filters.

", + "DescribeEgressOnlyInternetGatewaysRequest$Filters": "

The filters.

", "DescribeElasticGpusRequest$Filters": "

The filters.

", "DescribeExportImageTasksRequest$Filters": "

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

", "DescribeExportTasksRequest$Filters": "

the filters for the export tasks.

", @@ -9042,7 +9042,7 @@ "DescribeHostReservationsRequest$Filter": "

The filters.

", "DescribeHostsRequest$Filter": "

The filters.

", "DescribeIamInstanceProfileAssociationsRequest$Filters": "

The filters.

", - "DescribeImagesRequest$Filters": "

The filters.

", + "DescribeImagesRequest$Filters": "

The filters.

", "DescribeImportImageTasksRequest$Filters": "

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

", "DescribeImportSnapshotTasksRequest$Filters": "

The filters.

", "DescribeInstanceConnectEndpointsRequest$Filters": "

One or more filters.

", @@ -9050,9 +9050,9 @@ "DescribeInstanceEventWindowsRequest$Filters": "

One or more filters.

", "DescribeInstanceStatusRequest$Filters": "

The filters.

", "DescribeInstanceTypeOfferingsRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", - "DescribeInstanceTypesRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", + "DescribeInstanceTypesRequest$Filters": "

One or more filters. Filter names and values are case-sensitive.

", "DescribeInstancesRequest$Filters": "

The filters.

", - "DescribeInternetGatewaysRequest$Filters": "

One or more filters.

", + "DescribeInternetGatewaysRequest$Filters": "

The filters.

", "DescribeIpamPoolsRequest$Filters": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", "DescribeIpamResourceDiscoveriesRequest$Filters": "

The resource discovery filters.

", "DescribeIpamResourceDiscoveryAssociationsRequest$Filters": "

The resource discovery association filters.

", @@ -9070,8 +9070,8 @@ "DescribeLocalGatewaysRequest$Filters": "

One or more filters.

", "DescribeManagedPrefixListsRequest$Filters": "

One or more filters.

", "DescribeMovingAddressesRequest$Filters": "

One or more filters.

", - "DescribeNatGatewaysRequest$Filter": "

One or more filters.

", - "DescribeNetworkAclsRequest$Filters": "

One or more filters.

", + "DescribeNatGatewaysRequest$Filter": "

The filters.

", + "DescribeNetworkAclsRequest$Filters": "

The filters.

", "DescribeNetworkInsightsAccessScopeAnalysesRequest$Filters": "

There are no supported filters.

", "DescribeNetworkInsightsAccessScopesRequest$Filters": "

There are no supported filters.

", "DescribeNetworkInsightsAnalysesRequest$Filters": "

The filters. The following are the possible values:

", @@ -9087,7 +9087,7 @@ "DescribeReservedInstancesModificationsRequest$Filters": "

One or more filters.

", "DescribeReservedInstancesOfferingsRequest$Filters": "

One or more filters.

", "DescribeReservedInstancesRequest$Filters": "

One or more filters.

", - "DescribeRouteTablesRequest$Filters": "

One or more filters.

", + "DescribeRouteTablesRequest$Filters": "

The filters.

", "DescribeScheduledInstanceAvailabilityRequest$Filters": "

The filters.

", "DescribeScheduledInstancesRequest$Filters": "

The filters.

", "DescribeSecurityGroupRulesRequest$Filters": "

One or more filters.

", @@ -9097,7 +9097,7 @@ "DescribeSpotInstanceRequestsRequest$Filters": "

The filters.

", "DescribeSpotPriceHistoryRequest$Filters": "

The filters.

", "DescribeStoreImageTasksRequest$Filters": "

The filters.

", - "DescribeSubnetsRequest$Filters": "

One or more filters.

", + "DescribeSubnetsRequest$Filters": "

The filters.

", "DescribeTagsRequest$Filters": "

The filters.

", "DescribeTrafficMirrorFiltersRequest$Filters": "

One or more filters. The possible values are:

", "DescribeTrafficMirrorSessionsRequest$Filters": "

One or more filters. The possible values are:

", @@ -9121,15 +9121,15 @@ "DescribeVolumeStatusRequest$Filters": "

The filters.

", "DescribeVolumesModificationsRequest$Filters": "

The filters.

", "DescribeVolumesRequest$Filters": "

The filters.

", - "DescribeVpcClassicLinkRequest$Filters": "

One or more filters.

", + "DescribeVpcClassicLinkRequest$Filters": "

The filters.

", "DescribeVpcEndpointConnectionNotificationsRequest$Filters": "

The filters.

", "DescribeVpcEndpointConnectionsRequest$Filters": "

The filters.

", "DescribeVpcEndpointServiceConfigurationsRequest$Filters": "

The filters.

", "DescribeVpcEndpointServicePermissionsRequest$Filters": "

The filters.

", "DescribeVpcEndpointServicesRequest$Filters": "

The filters.

", "DescribeVpcEndpointsRequest$Filters": "

The filters.

", - "DescribeVpcPeeringConnectionsRequest$Filters": "

One or more filters.

", - "DescribeVpcsRequest$Filters": "

One or more filters.

", + "DescribeVpcPeeringConnectionsRequest$Filters": "

The filters.

", + "DescribeVpcsRequest$Filters": "

The filters.

", "DescribeVpnConnectionsRequest$Filters": "

One or more filters.

", "DescribeVpnGatewaysRequest$Filters": "

One or more filters.

", "ExportTransitGatewayRoutesRequest$Filters": "

One or more filters. The possible values are:

", @@ -10075,7 +10075,7 @@ "GroupIdStringList": { "base": null, "refs": { - "AttachClassicLinkVpcRequest$Groups": "

The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.

", + "AttachClassicLinkVpcRequest$Groups": "

The IDs of the security groups. You cannot specify security groups from a different VPC.

", "DescribeSecurityGroupsRequest$GroupIds": "

The IDs of the security groups. Required for security groups in a nondefault VPC.

Default: Describes all of your security groups.

", "LaunchTemplateInstanceNetworkInterfaceSpecification$Groups": "

The IDs of one or more security groups.

", "ModifyInstanceAttributeRequest$Groups": "

Replaces the security groups of the instance with the specified security groups. You must specify the ID of at least one security group, even if it's just the default security group for the VPC.

" @@ -10090,7 +10090,7 @@ "GroupIdentifierList": { "base": null, "refs": { - "ClassicLinkInstance$Groups": "

A list of security groups.

", + "ClassicLinkInstance$Groups": "

The security groups.

", "DescribeNetworkInterfaceAttributeResult$Groups": "

The security groups associated with the network interface.

", "Instance$SecurityGroups": "

The security groups for the instance.

", "InstanceAttribute$Groups": "

The security groups associated with the instance.

", @@ -10116,7 +10116,7 @@ "GroupNameStringList": { "base": null, "refs": { - "DescribeSecurityGroupsRequest$GroupNames": "

[EC2-Classic and default VPC only] The names of the security groups. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name.

Default: Describes all of your security groups.

", + "DescribeSecurityGroupsRequest$GroupNames": "

[Default VPC] The names of the security groups. You can specify either the security group name or the security group ID.

Default: Describes all of your security groups.

", "ModifySnapshotAttributeRequest$GroupNames": "

The group to modify for the snapshot.

" } }, @@ -10982,7 +10982,7 @@ "refs": { "AssociateAddressRequest$InstanceId": "

The ID of the instance. The instance must have exactly one attached network interface. You can specify either the instance ID or the network interface ID, but not both.

", "AssociateIamInstanceProfileRequest$InstanceId": "

The ID of the instance.

", - "AttachClassicLinkVpcRequest$InstanceId": "

The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.

", + "AttachClassicLinkVpcRequest$InstanceId": "

The ID of the EC2-Classic instance.

", "AttachNetworkInterfaceRequest$InstanceId": "

The ID of the instance.

", "AttachVolumeRequest$InstanceId": "

The ID of the instance.

", "BundleInstanceRequest$InstanceId": "

The ID of the instance to bundle.

Type: String

Default: None

Required: Yes

", @@ -11040,7 +11040,7 @@ "InstanceIdStringList": { "base": null, "refs": { - "DescribeClassicLinkInstancesRequest$InstanceIds": "

One or more instance IDs. Must be instances linked to a VPC through ClassicLink.

", + "DescribeClassicLinkInstancesRequest$InstanceIds": "

The instance IDs. Must be instances linked to a VPC through ClassicLink.

", "DescribeInstanceCreditSpecificationsRequest$InstanceIds": "

The instance IDs.

Default: Describes all your instances.

Constraints: Maximum 1000 explicitly specified instance IDs.

", "DescribeInstanceStatusRequest$InstanceIds": "

The instance IDs.

Default: Describes all your instances.

Constraints: Maximum 100 explicitly specified instance IDs.

", "DescribeInstancesRequest$InstanceIds": "

The instance IDs.

Default: Describes all your instances.

", @@ -11207,7 +11207,7 @@ "refs": { "InstanceMetadataOptionsRequest$HttpProtocolIpv6": "

Enables or disables the IPv6 endpoint for the instance metadata service.

", "InstanceMetadataOptionsResponse$HttpProtocolIpv6": "

Indicates whether the IPv6 endpoint for the instance metadata service is enabled or disabled.

", - "ModifyInstanceMetadataOptionsRequest$HttpProtocolIpv6": "

Enables or disables the IPv6 endpoint for the instance metadata service. This setting applies only if you have enabled the HTTP metadata endpoint.

" + "ModifyInstanceMetadataOptionsRequest$HttpProtocolIpv6": "

Enables or disables the IPv6 endpoint for the instance metadata service. Applies only if you enabled the HTTP metadata endpoint.

" } }, "InstanceMetadataTagsState": { @@ -11284,7 +11284,7 @@ } }, "InstanceRequirements": { - "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", + "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard or with the RunInstances API, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", "refs": { "FleetLaunchTemplateOverrides$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

", "LaunchTemplateOverrides$InstanceRequirements": "

The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

If you specify InstanceRequirements, you can't specify InstanceType.

", @@ -11293,12 +11293,12 @@ } }, "InstanceRequirementsRequest": { - "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", + "base": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

", "refs": { "FleetLaunchTemplateOverridesRequest$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

", "GetInstanceTypesFromInstanceRequirementsRequest$InstanceRequirements": "

The attributes required for the instance types.

", "InstanceRequirementsWithMetadataRequest$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

", - "RequestLaunchTemplateData$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

" + "RequestLaunchTemplateData$InstanceRequirements": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

" } }, "InstanceRequirementsWithMetadataRequest": { @@ -11444,7 +11444,7 @@ "ReservedInstancesConfiguration$InstanceType": "

The instance type for the modified Reserved Instances.

", "ReservedInstancesOffering$InstanceType": "

The instance type on which the Reserved Instance can be used.

", "ResponseLaunchTemplateData$InstanceType": "

The instance type.

", - "RunInstancesRequest$InstanceType": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

When you change your EBS-backed instance type, instance restart or replacement behavior depends on the instance type compatibility between the old and new types. An instance that's backed by an instance store volume is always replaced. For more information, see Change the instance type in the Amazon EC2 User Guide.

Default: m1.small

", + "RunInstancesRequest$InstanceType": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

", "SpotFleetLaunchSpecification$InstanceType": "

The instance type.

", "SpotPrice$InstanceType": "

The instance type.

" } @@ -11476,7 +11476,7 @@ "InstanceTypeInfoList": { "base": null, "refs": { - "DescribeInstanceTypesResult$InstanceTypes": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

When you change your EBS-backed instance type, instance restart or replacement behavior depends on the instance type compatibility between the old and new types. An instance that's backed by an instance store volume is always replaced. For more information, see Change the instance type in the Amazon EC2 User Guide.

" + "DescribeInstanceTypesResult$InstanceTypes": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

" } }, "InstanceTypeList": { @@ -11925,7 +11925,7 @@ "InternetGatewayIdList": { "base": null, "refs": { - "DescribeInternetGatewaysRequest$InternetGatewayIds": "

One or more internet gateway IDs.

Default: Describes all your internet gateways.

" + "DescribeInternetGatewaysRequest$InternetGatewayIds": "

The IDs of the internet gateways.

Default: Describes all your internet gateways.

" } }, "InternetGatewayList": { @@ -11972,7 +11972,7 @@ "refs": { "AssignPrivateNatGatewayAddressRequest$PrivateIpAddresses": "

The private IPv4 addresses you want to assign to the private NAT gateway.

", "AssociateNatGatewayAddressRequest$PrivateIpAddresses": "

The private IPv4 addresses that you want to assign to the NAT gateway.

", - "CreateNatGatewayRequest$SecondaryPrivateIpAddresses": "

Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon Virtual Private Cloud User Guide.

", + "CreateNatGatewayRequest$SecondaryPrivateIpAddresses": "

Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.

", "UnassignPrivateNatGatewayAddressRequest$PrivateIpAddresses": "

The private IPv4 addresses you want to unassign.

" } }, @@ -11992,7 +11992,7 @@ "RevokeSecurityGroupIngressRequest$IpPermissions": "

The sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.

", "RevokeSecurityGroupIngressResult$UnknownIpPermissions": "

The inbound rules that were unknown to the service. In some cases, unknownIpPermissionSet might be in a different format from the request parameter.

", "SecurityGroup$IpPermissions": "

The inbound rules associated with the security group.

", - "SecurityGroup$IpPermissionsEgress": "

[VPC only] The outbound rules associated with the security group.

", + "SecurityGroup$IpPermissionsEgress": "

The outbound rules associated with the security group.

", "UpdateSecurityGroupRuleDescriptionsEgressRequest$IpPermissions": "

The IP permissions for the security group rule. You must specify either the IP permissions or the description.

", "UpdateSecurityGroupRuleDescriptionsIngressRequest$IpPermissions": "

The IP permissions for the security group rule. You must specify either IP permissions or a description.

" } @@ -12646,7 +12646,7 @@ } }, "Ipv6Range": { - "base": "

[EC2-VPC only] Describes an IPv6 range.

", + "base": "

Describes an IPv6 range.

", "refs": { "Ipv6RangeList$member": null } @@ -12654,7 +12654,7 @@ "Ipv6RangeList": { "base": null, "refs": { - "IpPermission$Ipv6Ranges": "

[VPC only] The IPv6 ranges.

" + "IpPermission$Ipv6Ranges": "

The IPv6 ranges.

" } }, "Ipv6SupportValue": { @@ -12742,9 +12742,9 @@ "CopyImageRequest$KmsKeyId": "

The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. If you specify a KMS key, you must also set the encrypted state to true.

You can specify a KMS key using any of the following:

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid, the action can appear to complete, but eventually fails.

The specified KMS key must exist in the destination Region.

Amazon EBS does not support asymmetric KMS keys.

", "CopySnapshotRequest$KmsKeyId": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

", "CreateVolumeRequest$KmsKeyId": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

", - "ImportImageRequest$KmsKeyId": "

An identifier for the symmetric KMS key to use when creating the encrypted AMI. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the AMI is being copied to.

Amazon EBS does not support asymmetric KMS keys.

", + "ImportImageRequest$KmsKeyId": "

An identifier for the symmetric KMS key to use when creating the encrypted AMI. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the AMI is being copied to.

Amazon EBS does not support asymmetric KMS keys.

", "ImportImageResult$KmsKeyId": "

The identifier for the symmetric KMS key that was used to create the encrypted AMI.

", - "ImportSnapshotRequest$KmsKeyId": "

An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the snapshot is being copied to.

Amazon EBS does not support asymmetric KMS keys.

", + "ImportSnapshotRequest$KmsKeyId": "

An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the snapshot is being copied to.

Amazon EBS does not support asymmetric KMS keys.

", "LaunchTemplateEbsBlockDevice$KmsKeyId": "

The ARN of the Key Management Service (KMS) CMK used for encryption.

", "LaunchTemplateEbsBlockDeviceRequest$KmsKeyId": "

The ARN of the symmetric Key Management Service (KMS) CMK used for encryption.

", "ModifyEbsDefaultKmsKeyIdRequest$KmsKeyId": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

Amazon EBS does not support asymmetric KMS keys.

" @@ -14618,24 +14618,24 @@ "NatGatewayId": { "base": null, "refs": { - "AssignPrivateNatGatewayAddressRequest$NatGatewayId": "

The NAT gateway ID.

", - "AssignPrivateNatGatewayAddressResult$NatGatewayId": "

The NAT gateway ID.

", - "AssociateNatGatewayAddressRequest$NatGatewayId": "

The NAT gateway ID.

", - "AssociateNatGatewayAddressResult$NatGatewayId": "

The NAT gateway ID.

", + "AssignPrivateNatGatewayAddressRequest$NatGatewayId": "

The ID of the NAT gateway.

", + "AssignPrivateNatGatewayAddressResult$NatGatewayId": "

The ID of the NAT gateway.

", + "AssociateNatGatewayAddressRequest$NatGatewayId": "

The ID of the NAT gateway.

", + "AssociateNatGatewayAddressResult$NatGatewayId": "

The ID of the NAT gateway.

", "CreateRouteRequest$NatGatewayId": "

[IPv4 traffic only] The ID of a NAT gateway.

", "DeleteNatGatewayRequest$NatGatewayId": "

The ID of the NAT gateway.

", - "DisassociateNatGatewayAddressRequest$NatGatewayId": "

The NAT gateway ID.

", - "DisassociateNatGatewayAddressResult$NatGatewayId": "

The NAT gateway ID.

", + "DisassociateNatGatewayAddressRequest$NatGatewayId": "

The ID of the NAT gateway.

", + "DisassociateNatGatewayAddressResult$NatGatewayId": "

The ID of the NAT gateway.

", "NatGatewayIdStringList$member": null, "ReplaceRouteRequest$NatGatewayId": "

[IPv4 traffic only] The ID of a NAT gateway.

", - "UnassignPrivateNatGatewayAddressRequest$NatGatewayId": "

The NAT gateway ID.

", - "UnassignPrivateNatGatewayAddressResult$NatGatewayId": "

The NAT gateway ID.

" + "UnassignPrivateNatGatewayAddressRequest$NatGatewayId": "

The ID of the NAT gateway.

", + "UnassignPrivateNatGatewayAddressResult$NatGatewayId": "

The ID of the NAT gateway.

" } }, "NatGatewayIdStringList": { "base": null, "refs": { - "DescribeNatGatewaysRequest$NatGatewayIds": "

One or more NAT gateway IDs.

" + "DescribeNatGatewaysRequest$NatGatewayIds": "

The IDs of the NAT gateways.

" } }, "NatGatewayList": { @@ -14693,7 +14693,7 @@ "NetworkAclEntryList": { "base": null, "refs": { - "NetworkAcl$Entries": "

One or more entries (rules) in the network ACL.

" + "NetworkAcl$Entries": "

The entries (rules) in the network ACL.

" } }, "NetworkAclId": { @@ -14710,7 +14710,7 @@ "NetworkAclIdStringList": { "base": null, "refs": { - "DescribeNetworkAclsRequest$NetworkAclIds": "

One or more network ACL IDs.

Default: Describes all your network ACLs.

" + "DescribeNetworkAclsRequest$NetworkAclIds": "

The IDs of the network ACLs.

Default: Describes all your network ACLs.

" } }, "NetworkAclList": { @@ -14728,7 +14728,7 @@ "NetworkBandwidthGbpsRequest": { "base": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidth in the Amazon EC2 User Guide.

", "refs": { - "InstanceRequirementsRequest$NetworkBandwidthGbps": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

" + "InstanceRequirementsRequest$NetworkBandwidthGbps": "

The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide.

Default: No minimum or maximum limits

" } }, "NetworkCardIndex": { @@ -15410,14 +15410,14 @@ } }, "PeeringConnectionOptions": { - "base": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Describes the VPC peering connection options.

", + "base": "

Describes the VPC peering connection options.

", "refs": { "ModifyVpcPeeringConnectionOptionsResult$AccepterPeeringConnectionOptions": "

Information about the VPC peering connection options for the accepter VPC.

", "ModifyVpcPeeringConnectionOptionsResult$RequesterPeeringConnectionOptions": "

Information about the VPC peering connection options for the requester VPC.

" } }, "PeeringConnectionOptionsRequest": { - "base": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

The VPC peering connection options.

", + "base": "

The VPC peering connection options.

", "refs": { "ModifyVpcPeeringConnectionOptionsRequest$AccepterPeeringConnectionOptions": "

The VPC peering connection options for the accepter VPC.

", "ModifyVpcPeeringConnectionOptionsRequest$RequesterPeeringConnectionOptions": "

The VPC peering connection options for the requester VPC.

" @@ -15805,7 +15805,7 @@ "PrefixListIdList": { "base": null, "refs": { - "IpPermission$PrefixListIds": "

[VPC only] The prefix list IDs.

" + "IpPermission$PrefixListIds": "

The prefix list IDs.

" } }, "PrefixListIdSet": { @@ -15953,7 +15953,7 @@ "PrivateDnsNameOptionsRequest": { "base": "

Describes the options for instance hostnames.

", "refs": { - "RunInstancesRequest$PrivateDnsNameOptions": "

The options for the instance hostname. The default values are inherited from the subnet.

" + "RunInstancesRequest$PrivateDnsNameOptions": "

The options for the instance hostname. The default values are inherited from the subnet. Applies only if creating a network interface, not attaching an existing one.

" } }, "PrivateDnsNameOptionsResponse": { @@ -15972,7 +15972,7 @@ "base": null, "refs": { "AssignPrivateNatGatewayAddressRequest$PrivateIpAddressCount": "

The number of private IP addresses to assign to the NAT gateway. You can't specify this parameter when also specifying private IP addresses.

", - "CreateNatGatewayRequest$SecondaryPrivateIpAddressCount": "

[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon Virtual Private Cloud User Guide.

" + "CreateNatGatewayRequest$SecondaryPrivateIpAddressCount": "

[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.

" } }, "PrivateIpAddressSpecification": { @@ -17244,7 +17244,7 @@ "RouteTableIdStringList": { "base": null, "refs": { - "DescribeRouteTablesRequest$RouteTableIds": "

One or more route table IDs.

Default: Describes all your route tables.

" + "DescribeRouteTablesRequest$RouteTableIds": "

The IDs of the route tables.

Default: Describes all your route tables.

" } }, "RouteTableList": { @@ -17517,13 +17517,13 @@ "AuthorizeSecurityGroupEgressRequest$GroupId": "

The ID of the security group.

", "AuthorizeSecurityGroupIngressRequest$GroupId": "

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", "ClientVpnSecurityGroupIdSet$member": null, - "DeleteSecurityGroupRequest$GroupId": "

The ID of the security group. Required for a nondefault VPC.

", + "DeleteSecurityGroupRequest$GroupId": "

The ID of the security group.

", "GroupIdStringList$member": null, "GroupIds$member": null, "ModifySecurityGroupRulesRequest$GroupId": "

The ID of the security group.

", "RequestSpotLaunchSpecificationSecurityGroupIdList$member": null, "RevokeSecurityGroupEgressRequest$GroupId": "

The ID of the security group.

", - "RevokeSecurityGroupIngressRequest$GroupId": "

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", + "RevokeSecurityGroupIngressRequest$GroupId": "

The ID of the security group.

", "ScheduledInstancesSecurityGroupIdSet$member": null, "SecurityGroupIdList$member": null, "SecurityGroupIdSet$member": null, @@ -17582,13 +17582,13 @@ "SecurityGroupName": { "base": null, "refs": { - "AuthorizeSecurityGroupIngressRequest$GroupName": "

[EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", - "DeleteSecurityGroupRequest$GroupName": "

[EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, you must specify the security group ID.

", + "AuthorizeSecurityGroupIngressRequest$GroupName": "

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", + "DeleteSecurityGroupRequest$GroupName": "

[Default VPC] The name of the security group. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, you must specify the security group ID.

", "GroupNameStringList$member": null, - "RevokeSecurityGroupIngressRequest$GroupName": "

[EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", + "RevokeSecurityGroupIngressRequest$GroupName": "

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

", "SecurityGroupStringList$member": null, - "UpdateSecurityGroupRuleDescriptionsEgressRequest$GroupName": "

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.

", - "UpdateSecurityGroupRuleDescriptionsIngressRequest$GroupName": "

[EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

" + "UpdateSecurityGroupRuleDescriptionsEgressRequest$GroupName": "

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name.

", + "UpdateSecurityGroupRuleDescriptionsIngressRequest$GroupName": "

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name. For security groups in a nondefault VPC, you must specify the security group ID.

" } }, "SecurityGroupReference": { @@ -17619,7 +17619,7 @@ "base": null, "refs": { "UpdateSecurityGroupRuleDescriptionsEgressRequest$SecurityGroupRuleDescriptions": "

The description for the egress security group rules. You must specify either the description or the IP permissions.

", - "UpdateSecurityGroupRuleDescriptionsIngressRequest$SecurityGroupRuleDescriptions": "

[VPC only] The description for the ingress security group rules. You must specify either a description or IP permissions.

" + "UpdateSecurityGroupRuleDescriptionsIngressRequest$SecurityGroupRuleDescriptions": "

The description for the ingress security group rules. You must specify either a description or IP permissions.

" } }, "SecurityGroupRuleId": { @@ -18398,9 +18398,9 @@ "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupName": "

Not supported. Use a set of IP permissions to specify a destination security group.

", "AuthorizeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

Not supported. Use a set of IP permissions to specify a destination security group.

", "AuthorizeSecurityGroupIngressRequest$CidrIp": "

The IPv4 address range, in CIDR format. You can't specify this parameter when specifying a source security group. To specify an IPv6 address range, use a set of IP permissions.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

", - "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). To specify icmpv6, use a set of IP permissions.

[VPC only] Use -1 to specify all protocols. If you specify -1 or a protocol other than tcp, udp, or icmp, traffic on all ports is allowed, regardless of any ports you specify.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

", - "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

[EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. For EC2-VPC, the source security group must be in the same VPC.

", - "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

[nondefault VPC] The Amazon Web Services account ID for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

", + "AuthorizeSecurityGroupIngressRequest$IpProtocol": "

The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). To specify icmpv6, use a set of IP permissions.

Use -1 to specify all protocols. If you specify -1 or a protocol other than tcp, udp, or icmp, traffic on all ports is allowed, regardless of any ports you specify.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

", + "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupName": "

[Default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. The source security group must be in the same VPC.

", + "AuthorizeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

[Nondefault VPC] The Amazon Web Services account ID for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

", "AvailabilityZone$RegionName": "

The name of the Region.

", "AvailabilityZone$ZoneName": "

The name of the Availability Zone, Local Zone, or Wavelength Zone.

", "AvailabilityZone$ZoneId": "

The ID of the Availability Zone, Local Zone, or Wavelength Zone.

", @@ -18620,8 +18620,8 @@ "CreateRestoreImageTaskResult$ImageId": "

The AMI ID.

", "CreateRouteRequest$DestinationCidrBlock": "

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

", "CreateRouteRequest$DestinationIpv6CidrBlock": "

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

", - "CreateSecurityGroupRequest$Description": "

A description for the security group.

Constraints: Up to 255 characters in length

Constraints for EC2-Classic: ASCII characters

Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", - "CreateSecurityGroupRequest$GroupName": "

The name of the security group.

Constraints: Up to 255 characters in length. Cannot start with sg-.

Constraints for EC2-Classic: ASCII characters

Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", + "CreateSecurityGroupRequest$Description": "

A description for the security group.

Constraints: Up to 255 characters in length

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", + "CreateSecurityGroupRequest$GroupName": "

The name of the security group.

Constraints: Up to 255 characters in length. Cannot start with sg-.

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", "CreateSecurityGroupResult$GroupId": "

The ID of the security group.

", "CreateSnapshotRequest$Description": "

A description for the snapshot.

", "CreateSnapshotRequest$OutpostArn": "

The Amazon Resource Name (ARN) of the Outpost on which to create a local snapshot.

For more information, see Create local snapshots from volumes on an Outpost in the Amazon Elastic Compute Cloud User Guide.

", @@ -18633,7 +18633,7 @@ "CreateStoreImageTaskResult$ObjectKey": "

The name of the stored AMI object in the S3 bucket.

", "CreateSubnetCidrReservationRequest$Cidr": "

The IPv4 or IPV6 CIDR range to reserve.

", "CreateSubnetCidrReservationRequest$Description": "

The description to assign to the subnet CIDR reservation.

", - "CreateSubnetRequest$AvailabilityZone": "

The Availability Zone or Local Zone for the subnet.

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a. For information about the Regions that support Local Zones, see Available Regions in the Amazon Elastic Compute Cloud User Guide.

To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.

", + "CreateSubnetRequest$AvailabilityZone": "

The Availability Zone or Local Zone for the subnet.

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a. For information about the Regions that support Local Zones, see Local Zones locations.

To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.

", "CreateSubnetRequest$AvailabilityZoneId": "

The AZ ID or the Local Zone ID of the subnet.

", "CreateSubnetRequest$CidrBlock": "

The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

This parameter is not supported for an IPv6 only subnet.

", "CreateSubnetRequest$Ipv6CidrBlock": "

The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.

This parameter is required for an IPv6 only subnet.

", @@ -18685,7 +18685,7 @@ "CreateVpcEndpointConnectionNotificationRequest$ConnectionNotificationArn": "

The ARN of the SNS topic for the notifications.

", "CreateVpcEndpointConnectionNotificationRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "CreateVpcEndpointConnectionNotificationResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "CreateVpcEndpointRequest$ServiceName": "

The service name.

", + "CreateVpcEndpointRequest$ServiceName": "

The name of the endpoint service.

", "CreateVpcEndpointRequest$PolicyDocument": "

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

", "CreateVpcEndpointRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "CreateVpcEndpointResult$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", @@ -19208,7 +19208,7 @@ "ImportImageRequest$Description": "

A description string for the import image task.

", "ImportImageRequest$Hypervisor": "

The target hypervisor platform.

Valid values: xen

", "ImportImageRequest$LicenseType": "

The license type to be used for the Amazon Machine Image (AMI) after importing.

Specify AWS to replace the source-system license with an Amazon Web Services license or BYOL to retain the source-system license. Leaving this parameter undefined is the same as choosing AWS when importing a Windows Server operating system, and the same as choosing BYOL when importing a Windows client operating system (such as Windows 10) or a Linux operating system.

To use BYOL, you must have existing licenses with rights to use these licenses in a third party cloud, such as Amazon Web Services. For more information, see Prerequisites in the VM Import/Export User Guide.

", - "ImportImageRequest$Platform": "

The operating system of the virtual machine.

Valid values: Windows | Linux

", + "ImportImageRequest$Platform": "

The operating system of the virtual machine. If you import a VM that is compatible with Unified Extensible Firmware Interface (UEFI) using an EBS snapshot, you must specify a value for the platform.

Valid values: Windows | Linux

", "ImportImageRequest$RoleName": "

The name of the role to use when not using the default role, 'vmimport'.

", "ImportImageRequest$UsageOperation": "

The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.

", "ImportImageResult$Architecture": "

The architecture of the virtual machine.

", @@ -19332,7 +19332,7 @@ "InternetGateway$OwnerId": "

The ID of the Amazon Web Services account that owns the internet gateway.

", "InternetGatewayAttachment$VpcId": "

The ID of the VPC.

", "IpList$member": null, - "IpPermission$IpProtocol": "

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.

", + "IpPermission$IpProtocol": "

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.

", "IpPrefixList$member": null, "IpRange$CidrIp": "

The IPv4 CIDR range. You can either specify a CIDR range or a source security group, not both. To specify a single IPv4 address, use the /32 prefix length.

", "IpRange$Description": "

A description for the security group rule that references this IPv4 address range.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", @@ -19823,8 +19823,8 @@ "RevokeSecurityGroupEgressRequest$SourceSecurityGroupOwnerId": "

Not supported. Use a set of IP permissions to specify a destination security group.

", "RevokeSecurityGroupIngressRequest$CidrIp": "

The CIDR IP address range. You can't specify this parameter when specifying a source security group.

", "RevokeSecurityGroupIngressRequest$IpProtocol": "

The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

", - "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

[EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

", - "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

[EC2-Classic] The Amazon Web Services account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

", + "RevokeSecurityGroupIngressRequest$SourceSecurityGroupName": "

[Default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. The source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

", + "RevokeSecurityGroupIngressRequest$SourceSecurityGroupOwnerId": "

Not supported.

", "Route$DestinationCidrBlock": "

The IPv4 CIDR block used for the destination match.

", "Route$DestinationIpv6CidrBlock": "

The IPv6 CIDR block used for the destination match.

", "Route$DestinationPrefixListId": "

The prefix of the Amazon Web Service.

", @@ -19893,7 +19893,7 @@ "SecurityGroup$GroupName": "

The name of the security group.

", "SecurityGroup$OwnerId": "

The Amazon Web Services account ID of the owner of the security group.

", "SecurityGroup$GroupId": "

The ID of the security group.

", - "SecurityGroup$VpcId": "

[VPC only] The ID of the VPC for the security group.

", + "SecurityGroup$VpcId": "

The ID of the VPC for the security group.

", "SecurityGroupIdentifier$GroupId": "

The ID of the security group.

", "SecurityGroupIdentifier$GroupName": "

The name of the security group.

", "SecurityGroupReference$GroupId": "

The ID of your security group.

", @@ -20160,9 +20160,9 @@ "UserGroupStringList$member": null, "UserIdGroupPair$Description": "

A description for the security group rule that references this user ID group pair.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*

", "UserIdGroupPair$GroupId": "

The ID of the security group.

", - "UserIdGroupPair$GroupName": "

The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use the security group ID.

For a referenced security group in another VPC, this value is not returned if the referenced security group is deleted.

", + "UserIdGroupPair$GroupName": "

[Default VPC] The name of the security group. For a security group in a nondefault VPC, use the security group ID.

For a referenced security group in another VPC, this value is not returned if the referenced security group is deleted.

", "UserIdGroupPair$PeeringStatus": "

The status of a VPC peering connection, if applicable.

", - "UserIdGroupPair$UserId": "

The ID of an Amazon Web Services account.

For a referenced security group in another VPC, the account ID of the referenced security group is returned in the response. If the referenced security group is deleted, this value is not returned.

[EC2-Classic] Required when adding or removing rules that reference a security group in another Amazon Web Services account.

", + "UserIdGroupPair$UserId": "

The ID of an Amazon Web Services account.

For a referenced security group in another VPC, the account ID of the referenced security group is returned in the response. If the referenced security group is deleted, this value is not returned.

", "UserIdGroupPair$VpcId": "

The ID of the VPC for the referenced security group, if applicable.

", "UserIdGroupPair$VpcPeeringConnectionId": "

The ID of the VPC peering connection, if applicable.

", "UserIdStringList$member": null, @@ -20426,7 +20426,7 @@ "SubnetIdStringList": { "base": null, "refs": { - "DescribeSubnetsRequest$SubnetIds": "

One or more subnet IDs.

Default: Describes all your subnets.

" + "DescribeSubnetsRequest$SubnetIds": "

The IDs of the subnets.

Default: Describes all your subnets.

" } }, "SubnetIpv6CidrBlockAssociation": { @@ -22133,7 +22133,7 @@ } }, "UserIdGroupPair": { - "base": "

Describes a security group and Amazon Web Services account ID pair.

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

", + "base": "

Describes a security group and Amazon Web Services account ID pair.

", "refs": { "UserIdGroupPairList$member": null, "UserIdGroupPairSet$member": null @@ -22879,7 +22879,7 @@ } }, "VpcClassicLink": { - "base": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Describes whether a VPC is enabled for ClassicLink.

", + "base": "

Deprecated.

Describes whether a VPC is enabled for ClassicLink.

", "refs": { "VpcClassicLinkList$member": null } @@ -22887,14 +22887,14 @@ "VpcClassicLinkIdList": { "base": null, "refs": { - "DescribeVpcClassicLinkDnsSupportRequest$VpcIds": "

One or more VPC IDs.

", - "DescribeVpcClassicLinkRequest$VpcIds": "

One or more VPCs for which you want to describe the ClassicLink status.

" + "DescribeVpcClassicLinkDnsSupportRequest$VpcIds": "

The IDs of the VPCs.

", + "DescribeVpcClassicLinkRequest$VpcIds": "

The VPCs for which you want to describe the ClassicLink status.

" } }, "VpcClassicLinkList": { "base": null, "refs": { - "DescribeVpcClassicLinkResult$Vpcs": "

The ClassicLink status of one or more VPCs.

" + "DescribeVpcClassicLinkResult$Vpcs": "

The ClassicLink status of the VPCs.

" } }, "VpcEndpoint": { @@ -23007,7 +23007,7 @@ "ApplySecurityGroupsToClientVpnTargetNetworkRequest$VpcId": "

The ID of the VPC in which the associated target network is located.

", "AssociateDhcpOptionsRequest$VpcId": "

The ID of the VPC.

", "AssociateVpcCidrBlockRequest$VpcId": "

The ID of the VPC.

", - "AttachClassicLinkVpcRequest$VpcId": "

The ID of a ClassicLink-enabled VPC.

", + "AttachClassicLinkVpcRequest$VpcId": "

The ID of the ClassicLink-enabled VPC.

", "AttachInternetGatewayRequest$VpcId": "

The ID of the VPC.

", "AttachVpnGatewayRequest$VpcId": "

The ID of the VPC.

", "CarrierGateway$VpcId": "

The ID of the VPC associated with the carrier gateway.

", @@ -23018,10 +23018,10 @@ "CreateLocalGatewayRouteTableVpcAssociationRequest$VpcId": "

The ID of the VPC.

", "CreateNetworkAclRequest$VpcId": "

The ID of the VPC.

", "CreateRouteTableRequest$VpcId": "

The ID of the VPC.

", - "CreateSecurityGroupRequest$VpcId": "

[EC2-VPC] The ID of the VPC. Required for EC2-VPC.

", + "CreateSecurityGroupRequest$VpcId": "

The ID of the VPC. Required for a nondefault VPC.

", "CreateSubnetRequest$VpcId": "

The ID of the VPC.

", "CreateTransitGatewayVpcAttachmentRequest$VpcId": "

The ID of the VPC.

", - "CreateVpcEndpointRequest$VpcId": "

The ID of the VPC for the endpoint.

", + "CreateVpcEndpointRequest$VpcId": "

The ID of the VPC.

", "CreateVpcPeeringConnectionRequest$VpcId": "

The ID of the requester VPC. You must specify this parameter in the request.

", "DeleteVpcRequest$VpcId": "

The ID of the VPC.

", "DescribeStaleSecurityGroupsRequest$VpcId": "

The ID of the VPC.

", @@ -23044,7 +23044,7 @@ "VpcIdStringList": { "base": null, "refs": { - "DescribeVpcsRequest$VpcIds": "

One or more VPC IDs.

Default: Describes all your VPCs.

" + "DescribeVpcsRequest$VpcIds": "

The IDs of the VPCs.

Default: Describes all your VPCs.

" } }, "VpcIpv6CidrBlockAssociation": { @@ -23089,7 +23089,7 @@ "VpcPeeringConnectionIdList": { "base": null, "refs": { - "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

One or more VPC peering connection IDs.

Default: Describes all your VPC peering connections.

" + "DescribeVpcPeeringConnectionsRequest$VpcPeeringConnectionIds": "

The IDs of the VPC peering connections.

Default: Describes all your VPC peering connections.

" } }, "VpcPeeringConnectionIdWithResolver": { @@ -23105,7 +23105,7 @@ } }, "VpcPeeringConnectionOptionsDescription": { - "base": "

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC in the Amazon Elastic Compute Cloud User Guide.

Describes the VPC peering connection options.

", + "base": "

Describes the VPC peering connection options.

", "refs": { "VpcPeeringConnectionVpcInfo$PeeringOptions": "

Information about the VPC peering connection options for the accepter or requester VPC.

" } diff --git a/models/apis/grafana/2020-08-18/api-2.json b/models/apis/grafana/2020-08-18/api-2.json index 0b399f24978..f9aa1a73826 100644 --- a/models/apis/grafana/2020-08-18/api-2.json +++ b/models/apis/grafana/2020-08-18/api-2.json @@ -205,6 +205,23 @@ {"shape":"InternalServerException"} ] }, + "ListVersions":{ + "name":"ListVersions", + "http":{ + "method":"GET", + "requestUri":"/versions", + "responseCode":200 + }, + "input":{"shape":"ListVersionsRequest"}, + "output":{"shape":"ListVersionsResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ] + }, "ListWorkspaces":{ "name":"ListWorkspaces", "http":{ @@ -647,7 +664,8 @@ "configuration":{ "shape":"OverridableConfigurationJson", "jsonvalue":true - } + }, + "grafanaVersion":{"shape":"GrafanaVersion"} } }, "DescribeWorkspaceRequest":{ @@ -710,6 +728,10 @@ "max":255, "min":1 }, + "GrafanaVersionList":{ + "type":"list", + "member":{"shape":"GrafanaVersion"} + }, "IamRoleArn":{ "type":"string", "max":2048, @@ -823,6 +845,39 @@ "tags":{"shape":"TagMap"} } }, + "ListVersionsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListVersionsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "workspaceId":{ + "shape":"WorkspaceId", + "location":"querystring", + "locationName":"workspace-id" + } + } + }, + "ListVersionsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListVersionsResponse":{ + "type":"structure", + "members":{ + "grafanaVersions":{"shape":"GrafanaVersionList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "ListWorkspacesRequest":{ "type":"structure", "members":{ @@ -1232,6 +1287,7 @@ "shape":"OverridableConfigurationJson", "jsonvalue":true }, + "grafanaVersion":{"shape":"GrafanaVersion"}, "workspaceId":{ "shape":"WorkspaceId", "location":"uri", @@ -1424,7 +1480,9 @@ "CREATION_FAILED", "UPDATE_FAILED", "UPGRADE_FAILED", - "LICENSE_REMOVAL_FAILED" + "LICENSE_REMOVAL_FAILED", + "VERSION_UPDATING", + "VERSION_UPDATE_FAILED" ] }, "WorkspaceSummary":{ diff --git a/models/apis/grafana/2020-08-18/docs-2.json b/models/apis/grafana/2020-08-18/docs-2.json index 7b7c376ad0b..004c1d3e3b4 100644 --- a/models/apis/grafana/2020-08-18/docs-2.json +++ b/models/apis/grafana/2020-08-18/docs-2.json @@ -13,6 +13,7 @@ "DisassociateLicense": "

Removes the Grafana Enterprise license from a workspace.

", "ListPermissions": "

Lists the users and groups who have the Grafana Admin and Editor roles in this workspace. If you use this operation without specifying userId or groupId, the operation returns the roles of all users and groups. If you specify a userId or a groupId, only the roles for that user or group are returned. If you do this, you can specify only one userId or one groupId.

", "ListTagsForResource": "

The ListTagsForResource operation returns the tags that are associated with the Amazon Managed Service for Grafana resource specified by the resourceArn. Currently, the only resource that can be tagged is a workspace.

", + "ListVersions": "

Lists available versions of Grafana. These are available when calling CreateWorkspace. Optionally, include a workspace to list the versions to which it can be upgraded.

", "ListWorkspaces": "

Returns a list of Amazon Managed Grafana workspaces in the account, with some information about each workspace. For more complete information about one workspace, use DescribeWorkspace.

", "TagResource": "

The TagResource operation associates tags with an Amazon Managed Grafana resource. Currently, the only resource that can be tagged is workspaces.

If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

", "UntagResource": "

The UntagResource operation removes the association of the tag with the Amazon Managed Grafana resource.

", @@ -262,11 +263,20 @@ "GrafanaVersion": { "base": null, "refs": { - "CreateWorkspaceRequest$grafanaVersion": "

Specifies the version of Grafana to support in the new workspace.

Supported values are 8.4 and 9.4.

", + "CreateWorkspaceRequest$grafanaVersion": "

Specifies the version of Grafana to support in the new workspace.

To get a list of supported version, use the ListVersions operation.

", + "DescribeWorkspaceConfigurationResponse$grafanaVersion": "

The supported Grafana version for the workspace.

", + "GrafanaVersionList$member": null, + "UpdateWorkspaceConfigurationRequest$grafanaVersion": "

Specifies the version of Grafana to support in the new workspace.

Can only be used to upgrade (for example, from 8.4 to 9.4), not downgrade (for example, from 9.4 to 8.4).

To know what versions are available to upgrade to for a specific workspace, see the ListVersions operation.

", "WorkspaceDescription$grafanaVersion": "

The version of Grafana supported in this workspace.

", "WorkspaceSummary$grafanaVersion": "

The Grafana version that the workspace is running.

" } }, + "GrafanaVersionList": { + "base": null, + "refs": { + "ListVersionsResponse$grafanaVersions": "

The Grafana versions available to create. If a workspace ID is included in the request, the Grafana versions to which this workspace can be upgraded.

" + } + }, "IamRoleArn": { "base": null, "refs": { @@ -333,6 +343,22 @@ "refs": { } }, + "ListVersionsRequest": { + "base": null, + "refs": { + } + }, + "ListVersionsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListVersionsRequest$maxResults": "

The maximum number of results to include in the response.

" + } + }, + "ListVersionsResponse": { + "base": null, + "refs": { + } + }, "ListWorkspacesRequest": { "base": null, "refs": { @@ -356,7 +382,7 @@ } }, "NetworkAccessConfiguration": { - "base": "

The configuration settings for in-bound network access to your workspace.

When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization will still be required.

If this is not configured, or is removed, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

", + "base": "

The configuration settings for in-bound network access to your workspace.

When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization are still required.

Access is granted to a caller that is in either the IP address list or the VPC endpoint list - they do not need to be in both.

If this is not configured, or is removed, then all IP addresses and VPC endpoints are allowed. Standard Grafana authentication and authorization are still required.

While both prefixListIds and vpceIds are required, you can pass in an empty array of strings for either parameter if you do not want to allow any of that type.

If both are passed as empty arrays, no traffic is allowed to the workspace, because only explicitly allowed connections are accepted.

", "refs": { "CreateWorkspaceRequest$networkAccessControl": "

Configuration for network access to your workspace.

When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization will still be required.

If this is not configured, or is removed, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

", "UpdateWorkspaceRequest$networkAccessControl": "

The configuration settings for network access to your workspace.

When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization will still be required.

If this is not configured, or is removed, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

", @@ -413,6 +439,8 @@ "refs": { "ListPermissionsRequest$nextToken": "

The token to use when requesting the next set of results. You received this token from a previous ListPermissions operation.

", "ListPermissionsResponse$nextToken": "

The token to use in a subsequent ListPermissions operation to return the next set of results.

", + "ListVersionsRequest$nextToken": "

The token to use when requesting the next set of results. You receive this token from a previous ListVersions operation.

", + "ListVersionsResponse$nextToken": "

The token to use in a subsequent ListVersions operation to return the next set of results.

", "ListWorkspacesRequest$nextToken": "

The token for the next set of workspaces to return. (You receive this token from a previous ListWorkspaces operation.)

", "ListWorkspacesResponse$nextToken": "

The token to use when requesting the next set of workspaces.

" } @@ -446,7 +474,7 @@ "PrefixListIds": { "base": null, "refs": { - "NetworkAccessConfiguration$prefixListIds": "

An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration then no IP addresses will be allowed to access the workspace. You create a prefix list using the Amazon VPC console.

Prefix list IDs have the format pl-1a2b3c4d .

For more information about prefix lists, see Group CIDR blocks using managed prefix listsin the Amazon Virtual Private Cloud User Guide.

" + "NetworkAccessConfiguration$prefixListIds": "

An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.

Prefix list IDs have the format pl-1a2b3c4d .

For more information about prefix lists, see Group CIDR blocks using managed prefix listsin the Amazon Virtual Private Cloud User Guide.

" } }, "ResourceNotFoundException": { @@ -767,9 +795,9 @@ } }, "VpcConfiguration": { - "base": "

The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

Provided securityGroupIds and subnetIds must be part of the same VPC.

", + "base": "

The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

Provided securityGroupIds and subnetIds must be part of the same VPC.

Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).

", "refs": { - "CreateWorkspaceRequest$vpcConfiguration": "

The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

", + "CreateWorkspaceRequest$vpcConfiguration": "

The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).

", "UpdateWorkspaceRequest$vpcConfiguration": "

The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

", "WorkspaceDescription$vpcConfiguration": "

The configuration for connecting to data sources in a private VPC (Amazon Virtual Private Cloud).

" } @@ -783,7 +811,7 @@ "VpceIds": { "base": null, "refs": { - "NetworkAccessConfiguration$vpceIds": "

An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here will be allowed to access the workspace.

VPC endpoint IDs have the format vpce-1a2b3c4d .

For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.

The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints will be ignored.

" + "NetworkAccessConfiguration$vpceIds": "

An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.

VPC endpoint IDs have the format vpce-1a2b3c4d .

For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.

The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.

" } }, "WorkspaceDescription": { @@ -811,6 +839,7 @@ "DescribeWorkspaceRequest$workspaceId": "

The ID of the workspace to display information about.

", "DisassociateLicenseRequest$workspaceId": "

The ID of the workspace to remove the Grafana Enterprise license from.

", "ListPermissionsRequest$workspaceId": "

The ID of the workspace to list permissions for. This parameter is required.

", + "ListVersionsRequest$workspaceId": "

The ID of the workspace to list the available upgrade versions. If not included, lists all versions of Grafana that are supported for CreateWorkspace.

", "UpdatePermissionsRequest$workspaceId": "

The ID of the workspace to update.

", "UpdateWorkspaceAuthenticationRequest$workspaceId": "

The ID of the workspace to update the authentication for.

", "UpdateWorkspaceConfigurationRequest$workspaceId": "

The ID of the workspace to update.

", diff --git a/models/apis/grafana/2020-08-18/paginators-1.json b/models/apis/grafana/2020-08-18/paginators-1.json index 0edc0693281..f2e804d5bb8 100644 --- a/models/apis/grafana/2020-08-18/paginators-1.json +++ b/models/apis/grafana/2020-08-18/paginators-1.json @@ -6,6 +6,12 @@ "limit_key": "maxResults", "result_key": "permissions" }, + "ListVersions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "grafanaVersions" + }, "ListWorkspaces": { "input_token": "nextToken", "output_token": "nextToken", diff --git a/models/apis/medical-imaging/2023-07-19/api-2.json b/models/apis/medical-imaging/2023-07-19/api-2.json new file mode 100644 index 00000000000..78c91fd8517 --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/api-2.json @@ -0,0 +1,1521 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-07-19", + "endpointPrefix":"medical-imaging", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS Health Imaging", + "serviceId":"Medical Imaging", + "signatureVersion":"v4", + "signingName":"medical-imaging", + "uid":"medical-imaging-2023-07-19" + }, + "operations":{ + "CopyImageSet":{ + "name":"CopyImageSet", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{sourceImageSetId}/copyImageSet", + "responseCode":200 + }, + "input":{"shape":"CopyImageSetRequest"}, + "output":{"shape":"CopyImageSetResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "CreateDatastore":{ + "name":"CreateDatastore", + "http":{ + "method":"POST", + "requestUri":"/datastore", + "responseCode":200 + }, + "input":{"shape":"CreateDatastoreRequest"}, + "output":{"shape":"CreateDatastoreResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "DeleteDatastore":{ + "name":"DeleteDatastore", + "http":{ + "method":"DELETE", + "requestUri":"/datastore/{datastoreId}", + "responseCode":200 + }, + "input":{"shape":"DeleteDatastoreRequest"}, + "output":{"shape":"DeleteDatastoreResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "DeleteImageSet":{ + "name":"DeleteImageSet", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/deleteImageSet", + "responseCode":200 + }, + "input":{"shape":"DeleteImageSetRequest"}, + "output":{"shape":"DeleteImageSetResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"}, + "idempotent":true + }, + "GetDICOMImportJob":{ + "name":"GetDICOMImportJob", + "http":{ + "method":"GET", + "requestUri":"/getDICOMImportJob/datastore/{datastoreId}/job/{jobId}", + "responseCode":200 + }, + "input":{"shape":"GetDICOMImportJobRequest"}, + "output":{"shape":"GetDICOMImportJobResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetDatastore":{ + "name":"GetDatastore", + "http":{ + "method":"GET", + "requestUri":"/datastore/{datastoreId}", + "responseCode":200 + }, + "input":{"shape":"GetDatastoreRequest"}, + "output":{"shape":"GetDatastoreResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetImageFrame":{ + "name":"GetImageFrame", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/getImageFrame", + "responseCode":200 + }, + "input":{"shape":"GetImageFrameRequest"}, + "output":{"shape":"GetImageFrameResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "GetImageSet":{ + "name":"GetImageSet", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/getImageSet", + "responseCode":200 + }, + "input":{"shape":"GetImageSetRequest"}, + "output":{"shape":"GetImageSetResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "GetImageSetMetadata":{ + "name":"GetImageSetMetadata", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/getImageSetMetadata", + "responseCode":200 + }, + "input":{"shape":"GetImageSetMetadataRequest"}, + "output":{"shape":"GetImageSetMetadataResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "ListDICOMImportJobs":{ + "name":"ListDICOMImportJobs", + "http":{ + "method":"GET", + "requestUri":"/listDICOMImportJobs/datastore/{datastoreId}", + "responseCode":200 + }, + "input":{"shape":"ListDICOMImportJobsRequest"}, + "output":{"shape":"ListDICOMImportJobsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListDatastores":{ + "name":"ListDatastores", + "http":{ + "method":"GET", + "requestUri":"/datastore", + "responseCode":200 + }, + "input":{"shape":"ListDatastoresRequest"}, + "output":{"shape":"ListDatastoresResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "ListImageSetVersions":{ + "name":"ListImageSetVersions", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/listImageSetVersions", + "responseCode":200 + }, + "input":{"shape":"ListImageSetVersionsRequest"}, + "output":{"shape":"ListImageSetVersionsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "SearchImageSets":{ + "name":"SearchImageSets", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/searchImageSets", + "responseCode":200 + }, + "input":{"shape":"SearchImageSetsRequest"}, + "output":{"shape":"SearchImageSetsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + }, + "StartDICOMImportJob":{ + "name":"StartDICOMImportJob", + "http":{ + "method":"POST", + "requestUri":"/startDICOMImportJob/datastore/{datastoreId}", + "responseCode":200 + }, + "input":{"shape":"StartDICOMImportJobRequest"}, + "output":{"shape":"StartDICOMImportJobResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateImageSetMetadata":{ + "name":"UpdateImageSetMetadata", + "http":{ + "method":"POST", + "requestUri":"/datastore/{datastoreId}/imageSet/{imageSetId}/updateImageSetMetadata", + "responseCode":200 + }, + "input":{"shape":"UpdateImageSetMetadataRequest"}, + "output":{"shape":"UpdateImageSetMetadataResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "endpoint":{"hostPrefix":"runtime-"} + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "Arn":{ + "type":"string", + "pattern":"arn:aws((-us-gov)|(-iso)|(-iso-b)|(-cn))?:medical-imaging:[a-z0-9-]+:[0-9]{12}:datastore/[0-9a-z]{32}(/imageset/[0-9a-z]{32})?" + }, + "ClientToken":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[A-Za-z0-9._-]+" + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CopyDestinationImageSet":{ + "type":"structure", + "required":[ + "imageSetId", + "latestVersionId" + ], + "members":{ + "imageSetId":{"shape":"ImageSetId"}, + "latestVersionId":{"shape":"ImageSetExternalVersionId"} + } + }, + "CopyDestinationImageSetProperties":{ + "type":"structure", + "required":[ + "imageSetId", + "latestVersionId" + ], + "members":{ + "imageSetId":{"shape":"ImageSetId"}, + "latestVersionId":{"shape":"ImageSetExternalVersionId"}, + "imageSetState":{"shape":"ImageSetState"}, + "imageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "imageSetArn":{"shape":"Arn"} + } + }, + "CopyImageSetInformation":{ + "type":"structure", + "required":["sourceImageSet"], + "members":{ + "sourceImageSet":{"shape":"CopySourceImageSetInformation"}, + "destinationImageSet":{"shape":"CopyDestinationImageSet"} + } + }, + "CopyImageSetRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "sourceImageSetId", + "copyImageSetInformation" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "sourceImageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"sourceImageSetId" + }, + "copyImageSetInformation":{"shape":"CopyImageSetInformation"} + }, + "payload":"copyImageSetInformation" + }, + "CopyImageSetResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "sourceImageSetProperties", + "destinationImageSetProperties" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "sourceImageSetProperties":{"shape":"CopySourceImageSetProperties"}, + "destinationImageSetProperties":{"shape":"CopyDestinationImageSetProperties"} + } + }, + "CopySourceImageSetInformation":{ + "type":"structure", + "required":["latestVersionId"], + "members":{ + "latestVersionId":{"shape":"ImageSetExternalVersionId"} + } + }, + "CopySourceImageSetProperties":{ + "type":"structure", + "required":[ + "imageSetId", + "latestVersionId" + ], + "members":{ + "imageSetId":{"shape":"ImageSetId"}, + "latestVersionId":{"shape":"ImageSetExternalVersionId"}, + "imageSetState":{"shape":"ImageSetState"}, + "imageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "imageSetArn":{"shape":"Arn"} + } + }, + "CreateDatastoreRequest":{ + "type":"structure", + "required":["clientToken"], + "members":{ + "datastoreName":{"shape":"DatastoreName"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "tags":{"shape":"TagMap"}, + "kmsKeyArn":{"shape":"KmsKeyArn"} + } + }, + "CreateDatastoreResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "datastoreStatus" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "datastoreStatus":{"shape":"DatastoreStatus"} + } + }, + "DICOMAccessionNumber":{ + "type":"string", + "max":16, + "min":0, + "sensitive":true + }, + "DICOMAttribute":{ + "type":"blob", + "max":10000, + "min":1, + "sensitive":true + }, + "DICOMImportJobProperties":{ + "type":"structure", + "required":[ + "jobId", + "jobName", + "jobStatus", + "datastoreId", + "dataAccessRoleArn", + "inputS3Uri", + "outputS3Uri" + ], + "members":{ + "jobId":{"shape":"JobId"}, + "jobName":{"shape":"JobName"}, + "jobStatus":{"shape":"JobStatus"}, + "datastoreId":{"shape":"DatastoreId"}, + "dataAccessRoleArn":{"shape":"RoleArn"}, + "endedAt":{"shape":"Date"}, + "submittedAt":{"shape":"Date"}, + "inputS3Uri":{"shape":"S3Uri"}, + "outputS3Uri":{"shape":"S3Uri"}, + "message":{"shape":"Message"} + } + }, + "DICOMImportJobSummaries":{ + "type":"list", + "member":{"shape":"DICOMImportJobSummary"} + }, + "DICOMImportJobSummary":{ + "type":"structure", + "required":[ + "jobId", + "jobName", + "jobStatus", + "datastoreId" + ], + "members":{ + "jobId":{"shape":"JobId"}, + "jobName":{"shape":"JobName"}, + "jobStatus":{"shape":"JobStatus"}, + "datastoreId":{"shape":"DatastoreId"}, + "dataAccessRoleArn":{"shape":"RoleArn"}, + "endedAt":{"shape":"Date"}, + "submittedAt":{"shape":"Date"}, + "message":{"shape":"Message"} + } + }, + "DICOMNumberOfStudyRelatedInstances":{ + "type":"integer", + "max":10000, + "min":0 + }, + "DICOMNumberOfStudyRelatedSeries":{ + "type":"integer", + "max":10000, + "min":0 + }, + "DICOMPatientBirthDate":{ + "type":"string", + "max":18, + "min":0, + "sensitive":true + }, + "DICOMPatientId":{ + "type":"string", + "max":64, + "min":0, + "sensitive":true + }, + "DICOMPatientName":{ + "type":"string", + "max":256, + "min":0, + "sensitive":true + }, + "DICOMPatientSex":{ + "type":"string", + "max":16, + "min":0, + "sensitive":true + }, + "DICOMStudyDate":{ + "type":"string", + "max":18, + "min":0, + "sensitive":true + }, + "DICOMStudyDateAndTime":{ + "type":"structure", + "required":["DICOMStudyDate"], + "members":{ + "DICOMStudyDate":{"shape":"DICOMStudyDate"}, + "DICOMStudyTime":{"shape":"DICOMStudyTime"} + } + }, + "DICOMStudyDescription":{ + "type":"string", + "max":64, + "min":0, + "sensitive":true + }, + "DICOMStudyId":{ + "type":"string", + "max":16, + "min":0, + "sensitive":true + }, + "DICOMStudyInstanceUID":{ + "type":"string", + "max":64, + "min":0, + "pattern":"(?:[1-9][0-9]*|0)(\\.(?:[1-9][0-9]*|0))*", + "sensitive":true + }, + "DICOMStudyTime":{ + "type":"string", + "max":28, + "min":0, + "sensitive":true + }, + "DICOMTags":{ + "type":"structure", + "members":{ + "DICOMPatientId":{"shape":"DICOMPatientId"}, + "DICOMPatientName":{"shape":"DICOMPatientName"}, + "DICOMPatientBirthDate":{"shape":"DICOMPatientBirthDate"}, + "DICOMPatientSex":{"shape":"DICOMPatientSex"}, + "DICOMStudyInstanceUID":{"shape":"DICOMStudyInstanceUID"}, + "DICOMStudyId":{"shape":"DICOMStudyId"}, + "DICOMStudyDescription":{"shape":"DICOMStudyDescription"}, + "DICOMNumberOfStudyRelatedSeries":{"shape":"DICOMNumberOfStudyRelatedSeries"}, + "DICOMNumberOfStudyRelatedInstances":{"shape":"DICOMNumberOfStudyRelatedInstances"}, + "DICOMAccessionNumber":{"shape":"DICOMAccessionNumber"}, + "DICOMStudyDate":{"shape":"DICOMStudyDate"}, + "DICOMStudyTime":{"shape":"DICOMStudyTime"} + } + }, + "DICOMUpdates":{ + "type":"structure", + "members":{ + "removableAttributes":{"shape":"DICOMAttribute"}, + "updatableAttributes":{"shape":"DICOMAttribute"} + } + }, + "DatastoreId":{ + "type":"string", + "pattern":"[0-9a-z]{32}" + }, + "DatastoreName":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9._/#-]+" + }, + "DatastoreProperties":{ + "type":"structure", + "required":[ + "datastoreId", + "datastoreName", + "datastoreStatus" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "datastoreName":{"shape":"DatastoreName"}, + "datastoreStatus":{"shape":"DatastoreStatus"}, + "kmsKeyArn":{"shape":"KmsKeyArn"}, + "datastoreArn":{"shape":"Arn"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"} + } + }, + "DatastoreStatus":{ + "type":"string", + "enum":[ + "CREATING", + "CREATE_FAILED", + "ACTIVE", + "DELETING", + "DELETED" + ] + }, + "DatastoreSummaries":{ + "type":"list", + "member":{"shape":"DatastoreSummary"} + }, + "DatastoreSummary":{ + "type":"structure", + "required":[ + "datastoreId", + "datastoreName", + "datastoreStatus" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "datastoreName":{"shape":"DatastoreName"}, + "datastoreStatus":{"shape":"DatastoreStatus"}, + "datastoreArn":{"shape":"Arn"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"} + } + }, + "Date":{"type":"timestamp"}, + "DeleteDatastoreRequest":{ + "type":"structure", + "required":["datastoreId"], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + } + } + }, + "DeleteDatastoreResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "datastoreStatus" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "datastoreStatus":{"shape":"DatastoreStatus"} + } + }, + "DeleteImageSetRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + } + } + }, + "DeleteImageSetResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId", + "imageSetState", + "imageSetWorkflowStatus" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "imageSetId":{"shape":"ImageSetId"}, + "imageSetState":{"shape":"ImageSetState"}, + "imageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"} + } + }, + "GetDICOMImportJobRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "jobId" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "jobId":{ + "shape":"JobId", + "location":"uri", + "locationName":"jobId" + } + } + }, + "GetDICOMImportJobResponse":{ + "type":"structure", + "required":["jobProperties"], + "members":{ + "jobProperties":{"shape":"DICOMImportJobProperties"} + } + }, + "GetDatastoreRequest":{ + "type":"structure", + "required":["datastoreId"], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + } + } + }, + "GetDatastoreResponse":{ + "type":"structure", + "required":["datastoreProperties"], + "members":{ + "datastoreProperties":{"shape":"DatastoreProperties"} + } + }, + "GetImageFrameRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId", + "imageFrameInformation" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + }, + "imageFrameInformation":{"shape":"ImageFrameInformation"} + }, + "payload":"imageFrameInformation" + }, + "GetImageFrameResponse":{ + "type":"structure", + "required":["imageFrameBlob"], + "members":{ + "imageFrameBlob":{"shape":"PayloadBlob"}, + "contentType":{ + "shape":"String", + "location":"header", + "locationName":"Content-Type" + } + }, + "payload":"imageFrameBlob" + }, + "GetImageSetMetadataRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + }, + "versionId":{ + "shape":"ImageSetExternalVersionId", + "location":"querystring", + "locationName":"version" + } + } + }, + "GetImageSetMetadataResponse":{ + "type":"structure", + "required":["imageSetMetadataBlob"], + "members":{ + "imageSetMetadataBlob":{"shape":"ImageSetMetadataBlob"}, + "contentType":{ + "shape":"String", + "location":"header", + "locationName":"Content-Type" + }, + "contentEncoding":{ + "shape":"String", + "location":"header", + "locationName":"Content-Encoding" + } + }, + "payload":"imageSetMetadataBlob" + }, + "GetImageSetRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + }, + "versionId":{ + "shape":"ImageSetExternalVersionId", + "location":"querystring", + "locationName":"version" + } + } + }, + "GetImageSetResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId", + "versionId", + "imageSetState" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "imageSetId":{"shape":"ImageSetId"}, + "versionId":{"shape":"ImageSetExternalVersionId"}, + "imageSetState":{"shape":"ImageSetState"}, + "imageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "deletedAt":{"shape":"Date"}, + "message":{"shape":"Message"}, + "imageSetArn":{"shape":"Arn"} + } + }, + "ImageFrameId":{ + "type":"string", + "pattern":"[0-9a-z]{32}" + }, + "ImageFrameInformation":{ + "type":"structure", + "required":["imageFrameId"], + "members":{ + "imageFrameId":{"shape":"ImageFrameId"} + } + }, + "ImageSetExternalVersionId":{ + "type":"string", + "pattern":"\\d+" + }, + "ImageSetId":{ + "type":"string", + "pattern":"[0-9a-z]{32}" + }, + "ImageSetMetadataBlob":{ + "type":"blob", + "streaming":true + }, + "ImageSetProperties":{ + "type":"structure", + "required":[ + "imageSetId", + "versionId", + "imageSetState" + ], + "members":{ + "imageSetId":{"shape":"ImageSetId"}, + "versionId":{"shape":"ImageSetExternalVersionId"}, + "imageSetState":{"shape":"ImageSetState"}, + "ImageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "deletedAt":{"shape":"Date"}, + "message":{"shape":"Message"} + } + }, + "ImageSetPropertiesList":{ + "type":"list", + "member":{"shape":"ImageSetProperties"} + }, + "ImageSetState":{ + "type":"string", + "enum":[ + "ACTIVE", + "LOCKED", + "DELETED" + ] + }, + "ImageSetWorkflowStatus":{ + "type":"string", + "enum":[ + "CREATED", + "COPIED", + "COPYING", + "COPYING_WITH_READ_ONLY_ACCESS", + "COPY_FAILED", + "UPDATING", + "UPDATED", + "UPDATE_FAILED", + "DELETING", + "DELETED" + ] + }, + "ImageSetsMetadataSummaries":{ + "type":"list", + "member":{"shape":"ImageSetsMetadataSummary"} + }, + "ImageSetsMetadataSummary":{ + "type":"structure", + "required":["imageSetId"], + "members":{ + "imageSetId":{"shape":"ImageSetId"}, + "version":{"shape":"Integer"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "DICOMTags":{"shape":"DICOMTags"} + } + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true + }, + "JobId":{ + "type":"string", + "max":32, + "min":1, + "pattern":"[0-9a-z]+" + }, + "JobName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[A-Za-z0-9._/#-]+" + }, + "JobStatus":{ + "type":"string", + "enum":[ + "SUBMITTED", + "IN_PROGRESS", + "COMPLETED", + "FAILED" + ] + }, + "KmsKeyArn":{ + "type":"string", + "max":512, + "min":1, + "pattern":"arn:aws[a-zA-Z-]{0,16}:kms:[a-z]{2}(-[a-z]{1,16}){1,3}-\\d{1}:\\d{12}:((key/[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})|(alias/[a-zA-Z0-9:/_-]{1,256}))" + }, + "ListDICOMImportJobsRequest":{ + "type":"structure", + "required":["datastoreId"], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "jobStatus":{ + "shape":"JobStatus", + "location":"querystring", + "locationName":"jobStatus" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"ListDICOMImportJobsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListDICOMImportJobsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "ListDICOMImportJobsResponse":{ + "type":"structure", + "required":["jobSummaries"], + "members":{ + "jobSummaries":{"shape":"DICOMImportJobSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDatastoresRequest":{ + "type":"structure", + "members":{ + "datastoreStatus":{ + "shape":"DatastoreStatus", + "location":"querystring", + "locationName":"datastoreStatus" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"ListDatastoresRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListDatastoresRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "ListDatastoresResponse":{ + "type":"structure", + "members":{ + "datastoreSummaries":{"shape":"DatastoreSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListImageSetVersionsRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"ListImageSetVersionsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListImageSetVersionsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "ListImageSetVersionsResponse":{ + "type":"structure", + "required":["imageSetPropertiesList"], + "members":{ + "imageSetPropertiesList":{"shape":"ImageSetPropertiesList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "required":["tags"], + "members":{ + "tags":{"shape":"TagMap"} + } + }, + "Message":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"[\\w -:]+" + }, + "MetadataUpdates":{ + "type":"structure", + "members":{ + "DICOMUpdates":{"shape":"DICOMUpdates"} + }, + "union":true + }, + "NextToken":{ + "type":"string", + "max":8192, + "min":1, + "pattern":"\\p{ASCII}{0,8192}" + }, + "Operator":{ + "type":"string", + "enum":[ + "EQUAL", + "BETWEEN" + ] + }, + "PayloadBlob":{ + "type":"blob", + "streaming":true + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "RoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+" + }, + "S3Uri":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"s3://[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9](/.*)?" + }, + "SearchByAttributeValue":{ + "type":"structure", + "members":{ + "DICOMPatientId":{"shape":"DICOMPatientId"}, + "DICOMAccessionNumber":{"shape":"DICOMAccessionNumber"}, + "DICOMStudyId":{"shape":"DICOMStudyId"}, + "DICOMStudyInstanceUID":{"shape":"DICOMStudyInstanceUID"}, + "createdAt":{"shape":"Date"}, + "DICOMStudyDateAndTime":{"shape":"DICOMStudyDateAndTime"} + }, + "union":true + }, + "SearchCriteria":{ + "type":"structure", + "members":{ + "filters":{"shape":"SearchCriteriaFiltersList"} + }, + "sensitive":true + }, + "SearchCriteriaFiltersList":{ + "type":"list", + "member":{"shape":"SearchFilter"}, + "max":2, + "min":1 + }, + "SearchFilter":{ + "type":"structure", + "required":[ + "values", + "operator" + ], + "members":{ + "values":{"shape":"SearchFilterValuesList"}, + "operator":{"shape":"Operator"} + } + }, + "SearchFilterValuesList":{ + "type":"list", + "member":{"shape":"SearchByAttributeValue"}, + "max":2, + "min":1 + }, + "SearchImageSetsRequest":{ + "type":"structure", + "required":["datastoreId"], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "searchCriteria":{"shape":"SearchCriteria"}, + "maxResults":{ + "shape":"SearchImageSetsRequestMaxResultsInteger", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + }, + "payload":"searchCriteria" + }, + "SearchImageSetsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "SearchImageSetsResponse":{ + "type":"structure", + "required":["imageSetsMetadataSummaries"], + "members":{ + "imageSetsMetadataSummaries":{"shape":"ImageSetsMetadataSummaries"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "StartDICOMImportJobRequest":{ + "type":"structure", + "required":[ + "dataAccessRoleArn", + "clientToken", + "datastoreId", + "inputS3Uri", + "outputS3Uri" + ], + "members":{ + "jobName":{"shape":"JobName"}, + "dataAccessRoleArn":{"shape":"RoleArn"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "inputS3Uri":{"shape":"S3Uri"}, + "outputS3Uri":{"shape":"S3Uri"} + } + }, + "StartDICOMImportJobResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "jobId", + "jobStatus", + "submittedAt" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "jobId":{"shape":"JobId"}, + "jobStatus":{"shape":"JobStatus"}, + "submittedAt":{"shape":"Date"} + } + }, + "String":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"(?!aws:)[a-zA-Z+-=._:/]+" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{"shape":"TagMap"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"Arn", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateImageSetMetadataRequest":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId", + "latestVersionId", + "updateImageSetMetadataUpdates" + ], + "members":{ + "datastoreId":{ + "shape":"DatastoreId", + "location":"uri", + "locationName":"datastoreId" + }, + "imageSetId":{ + "shape":"ImageSetId", + "location":"uri", + "locationName":"imageSetId" + }, + "latestVersionId":{ + "shape":"ImageSetExternalVersionId", + "location":"querystring", + "locationName":"latestVersion" + }, + "updateImageSetMetadataUpdates":{"shape":"MetadataUpdates"} + }, + "payload":"updateImageSetMetadataUpdates" + }, + "UpdateImageSetMetadataResponse":{ + "type":"structure", + "required":[ + "datastoreId", + "imageSetId", + "latestVersionId", + "imageSetState" + ], + "members":{ + "datastoreId":{"shape":"DatastoreId"}, + "imageSetId":{"shape":"ImageSetId"}, + "latestVersionId":{"shape":"ImageSetExternalVersionId"}, + "imageSetState":{"shape":"ImageSetState"}, + "imageSetWorkflowStatus":{"shape":"ImageSetWorkflowStatus"}, + "createdAt":{"shape":"Date"}, + "updatedAt":{"shape":"Date"}, + "message":{"shape":"Message"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff --git a/models/apis/medical-imaging/2023-07-19/docs-2.json b/models/apis/medical-imaging/2023-07-19/docs-2.json new file mode 100644 index 00000000000..6d007234695 --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/docs-2.json @@ -0,0 +1,798 @@ +{ + "version": "2.0", + "service": "

This is the AWS HealthImaging API Reference. AWS HealthImaging is an AWS service for storing, accessing, and analyzing medical images. For an introduction to the service, see the AWS HealthImaging Developer Guide .

We recommend using one of the AWS Software Development Kits (SDKs) for your programming language, as they take care of request authentication, serialization, and connection management. For more information, see Tools to build on AWS.

For information about using AWS HealthImaging API actions in one of the language-specific AWS SDKs, refer to the See Also link at the end of each section that describes an API action or data type.

The following sections list AWS HealthImaging API actions categorized according to functionality. Links are provided to actions within this Reference, along with links back to corresponding sections in the AWS HealthImaging Developer Guide so you can view console procedures and CLI/SDK code examples.

Data store actions

Import job actions

Image set access actions

Image set modification actions

Tagging actions

", + "operations": { + "CopyImageSet": "

Copy an image set.

", + "CreateDatastore": "

Create a data store.

", + "DeleteDatastore": "

Delete a data store.

Before a data store can be deleted, you must first delete all image sets within it.

", + "DeleteImageSet": "

Delete an image set.

", + "GetDICOMImportJob": "

Get the import job properties to learn more about the job or job progress.

", + "GetDatastore": "

Get data store properties.

", + "GetImageFrame": "

Get an image frame (pixel data) for an image set.

", + "GetImageSet": "

Get image set properties.

", + "GetImageSetMetadata": "

Get metadata attributes for an image set.

", + "ListDICOMImportJobs": "

List import jobs created by this AWS account for a specific data store.

", + "ListDatastores": "

List data stores created by this AWS account.

", + "ListImageSetVersions": "

List image set versions.

", + "ListTagsForResource": "

Lists all tags associated with a medical imaging resource.

", + "SearchImageSets": "

Search image sets based on defined input attributes.

", + "StartDICOMImportJob": "

Start importing bulk data into an ACTIVE data store. The import job imports DICOM P10 files found in the S3 prefix specified by the inputS3Uri parameter. The import job stores processing results in the file specified by the outputS3Uri parameter.

", + "TagResource": "

Adds a user-specifed key and value tag to a medical imaging resource.

", + "UntagResource": "

Removes tags from a medical imaging resource.

", + "UpdateImageSetMetadata": "

Update image set metadata attributes.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

The user does not have sufficient access to perform this action.

", + "refs": { + } + }, + "Arn": { + "base": null, + "refs": { + "CopyDestinationImageSetProperties$imageSetArn": "

The Amazon Resource Name (ARN) assigned to the destination image set.

", + "CopySourceImageSetProperties$imageSetArn": "

The Amazon Resource Name (ARN) assigned to the source image set.

", + "DatastoreProperties$datastoreArn": "

The Amazon Resource Name (ARN) for the data store.

", + "DatastoreSummary$datastoreArn": "

The Amazon Resource Name (ARN) for the data store.

", + "GetImageSetResponse$imageSetArn": "

The Amazon Resource Name (ARN) assigned to the image set.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the medical imaging resource to list tags for.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the medical imaging resource that tags are being added to.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the medical imaging resource that tags are being removed from.

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "CreateDatastoreRequest$clientToken": "

A unique identifier for API idempotency.

", + "StartDICOMImportJobRequest$clientToken": "

A unique identifier for API idempotency.

" + } + }, + "ConflictException": { + "base": "

Updating or deleting a resource can cause an inconsistent state.

", + "refs": { + } + }, + "CopyDestinationImageSet": { + "base": "

Copy the destination image set.

", + "refs": { + "CopyImageSetInformation$destinationImageSet": "

The destination image set.

" + } + }, + "CopyDestinationImageSetProperties": { + "base": "

Copy the image set properties of the destination image set.

", + "refs": { + "CopyImageSetResponse$destinationImageSetProperties": "

The properties of the destination image set.

" + } + }, + "CopyImageSetInformation": { + "base": "

Copy image set information.

", + "refs": { + "CopyImageSetRequest$copyImageSetInformation": "

Copy image set information.

" + } + }, + "CopyImageSetRequest": { + "base": null, + "refs": { + } + }, + "CopyImageSetResponse": { + "base": null, + "refs": { + } + }, + "CopySourceImageSetInformation": { + "base": "

Copy source image set information.

", + "refs": { + "CopyImageSetInformation$sourceImageSet": "

The source image set.

" + } + }, + "CopySourceImageSetProperties": { + "base": "

Copy source image set properties.

", + "refs": { + "CopyImageSetResponse$sourceImageSetProperties": "

The properties of the source image set.

" + } + }, + "CreateDatastoreRequest": { + "base": null, + "refs": { + } + }, + "CreateDatastoreResponse": { + "base": null, + "refs": { + } + }, + "DICOMAccessionNumber": { + "base": null, + "refs": { + "DICOMTags$DICOMAccessionNumber": "

The accession number for the DICOM study.

", + "SearchByAttributeValue$DICOMAccessionNumber": "

The DICOM accession number for search.

" + } + }, + "DICOMAttribute": { + "base": null, + "refs": { + "DICOMUpdates$removableAttributes": "

The DICOM tags to be removed from ImageSetMetadata.

", + "DICOMUpdates$updatableAttributes": "

The DICOM tags that need to be updated in ImageSetMetadata.

" + } + }, + "DICOMImportJobProperties": { + "base": "

Properties of the import job.

", + "refs": { + "GetDICOMImportJobResponse$jobProperties": "

The properties of the import job.

" + } + }, + "DICOMImportJobSummaries": { + "base": null, + "refs": { + "ListDICOMImportJobsResponse$jobSummaries": "

A list of job summaries.

" + } + }, + "DICOMImportJobSummary": { + "base": "

Summary of import job.

", + "refs": { + "DICOMImportJobSummaries$member": null + } + }, + "DICOMNumberOfStudyRelatedInstances": { + "base": null, + "refs": { + "DICOMTags$DICOMNumberOfStudyRelatedInstances": "

The total number of instances in the DICOM study.

" + } + }, + "DICOMNumberOfStudyRelatedSeries": { + "base": null, + "refs": { + "DICOMTags$DICOMNumberOfStudyRelatedSeries": "

The total number of series in the DICOM study.

" + } + }, + "DICOMPatientBirthDate": { + "base": null, + "refs": { + "DICOMTags$DICOMPatientBirthDate": "

The patient birth date.

" + } + }, + "DICOMPatientId": { + "base": null, + "refs": { + "DICOMTags$DICOMPatientId": "

The unique identifier for a patient in a DICOM Study.

", + "SearchByAttributeValue$DICOMPatientId": "

The patient ID input for search.

" + } + }, + "DICOMPatientName": { + "base": null, + "refs": { + "DICOMTags$DICOMPatientName": "

The patient name.

" + } + }, + "DICOMPatientSex": { + "base": null, + "refs": { + "DICOMTags$DICOMPatientSex": "

The patient sex.

" + } + }, + "DICOMStudyDate": { + "base": null, + "refs": { + "DICOMStudyDateAndTime$DICOMStudyDate": "

The DICOM study date provided in yyMMdd format.

", + "DICOMTags$DICOMStudyDate": "

The study date.

" + } + }, + "DICOMStudyDateAndTime": { + "base": "

The aggregated structure to store DICOM study date and study time for search capabilities.

", + "refs": { + "SearchByAttributeValue$DICOMStudyDateAndTime": "

The aggregated structure containing DICOM study date and study time for search.

" + } + }, + "DICOMStudyDescription": { + "base": null, + "refs": { + "DICOMTags$DICOMStudyDescription": "

The description of the study.

" + } + }, + "DICOMStudyId": { + "base": null, + "refs": { + "DICOMTags$DICOMStudyId": "

The DICOM provided studyId.

", + "SearchByAttributeValue$DICOMStudyId": "

The DICOM study ID for search.

" + } + }, + "DICOMStudyInstanceUID": { + "base": null, + "refs": { + "DICOMTags$DICOMStudyInstanceUID": "

The DICOM provided identifier for studyInstanceUid.>

", + "SearchByAttributeValue$DICOMStudyInstanceUID": "

The DICOM study instance UID for search.

" + } + }, + "DICOMStudyTime": { + "base": null, + "refs": { + "DICOMStudyDateAndTime$DICOMStudyTime": "

The DICOM study time provided in HHmmss.FFFFFF format.

", + "DICOMTags$DICOMStudyTime": "

The study time.

" + } + }, + "DICOMTags": { + "base": "

The DICOM attributes returned as a part of a response. Each image set has these properties as part of a search result.

", + "refs": { + "ImageSetsMetadataSummary$DICOMTags": "

The DICOM tags associated with the image set.

" + } + }, + "DICOMUpdates": { + "base": "

The object containing removableAttributes and updatableAttributes.

", + "refs": { + "MetadataUpdates$DICOMUpdates": "

The object containing removableAttributes and updatableAttributes.

" + } + }, + "DatastoreId": { + "base": null, + "refs": { + "CopyImageSetRequest$datastoreId": "

The data store identifier.

", + "CopyImageSetResponse$datastoreId": "

The data store identifier.

", + "CreateDatastoreResponse$datastoreId": "

The data store identifier.

", + "DICOMImportJobProperties$datastoreId": "

The data store identifier.

", + "DICOMImportJobSummary$datastoreId": "

The data store identifier.

", + "DatastoreProperties$datastoreId": "

The data store identifier.

", + "DatastoreSummary$datastoreId": "

The data store identifier.

", + "DeleteDatastoreRequest$datastoreId": "

The data store identifier.

", + "DeleteDatastoreResponse$datastoreId": "

The data store identifier.

", + "DeleteImageSetRequest$datastoreId": "

The data store identifier.

", + "DeleteImageSetResponse$datastoreId": "

The data store identifier.

", + "GetDICOMImportJobRequest$datastoreId": "

The data store identifier.

", + "GetDatastoreRequest$datastoreId": "

The data store identifier.

", + "GetImageFrameRequest$datastoreId": "

The data store identifier.

", + "GetImageSetMetadataRequest$datastoreId": "

The data store identifier.

", + "GetImageSetRequest$datastoreId": "

The data store identifier.

", + "GetImageSetResponse$datastoreId": "

The data store identifier.

", + "ListDICOMImportJobsRequest$datastoreId": "

The data store identifier.

", + "ListImageSetVersionsRequest$datastoreId": "

The data store identifier.

", + "SearchImageSetsRequest$datastoreId": "

The identifier of the data store where the image sets reside.

", + "StartDICOMImportJobRequest$datastoreId": "

The data store identifier.

", + "StartDICOMImportJobResponse$datastoreId": "

The data store identifier.

", + "UpdateImageSetMetadataRequest$datastoreId": "

The data store identifier.

", + "UpdateImageSetMetadataResponse$datastoreId": "

The data store identifier.

" + } + }, + "DatastoreName": { + "base": null, + "refs": { + "CreateDatastoreRequest$datastoreName": "

The data store name.

", + "DatastoreProperties$datastoreName": "

The data store name.

", + "DatastoreSummary$datastoreName": "

The data store name.

" + } + }, + "DatastoreProperties": { + "base": "

The properties associated with the data store.

", + "refs": { + "GetDatastoreResponse$datastoreProperties": "

The data store properties.

" + } + }, + "DatastoreStatus": { + "base": null, + "refs": { + "CreateDatastoreResponse$datastoreStatus": "

The data store status.

", + "DatastoreProperties$datastoreStatus": "

The data store status.

", + "DatastoreSummary$datastoreStatus": "

The data store status.

", + "DeleteDatastoreResponse$datastoreStatus": "

The data store status.

", + "ListDatastoresRequest$datastoreStatus": "

The data store status.

" + } + }, + "DatastoreSummaries": { + "base": null, + "refs": { + "ListDatastoresResponse$datastoreSummaries": "

The list of summaries of data stores.

" + } + }, + "DatastoreSummary": { + "base": "

List of summaries of data stores.

", + "refs": { + "DatastoreSummaries$member": null + } + }, + "Date": { + "base": null, + "refs": { + "CopyDestinationImageSetProperties$createdAt": "

The timestamp when the destination image set properties were created.

", + "CopyDestinationImageSetProperties$updatedAt": "

The timestamp when the destination image set properties were last updated.

", + "CopySourceImageSetProperties$createdAt": "

The timestamp when the source image set properties were created.

", + "CopySourceImageSetProperties$updatedAt": "

The timestamp when the source image set properties were updated.

", + "DICOMImportJobProperties$endedAt": "

The timestamp for when the import job was ended.

", + "DICOMImportJobProperties$submittedAt": "

The timestamp for when the import job was submitted.

", + "DICOMImportJobSummary$endedAt": "

The timestamp when an import job ended.

", + "DICOMImportJobSummary$submittedAt": "

The timestamp when an import job was submitted.

", + "DatastoreProperties$createdAt": "

The timestamp when the data store was created.

", + "DatastoreProperties$updatedAt": "

The timestamp when the data store was last updated.

", + "DatastoreSummary$createdAt": "

The timestamp when the data store was created.

", + "DatastoreSummary$updatedAt": "

The timestamp when the data store was last updated.

", + "GetImageSetResponse$createdAt": "

The timestamp when image set properties were created.

", + "GetImageSetResponse$updatedAt": "

The timestamp when image set properties were updated.

", + "GetImageSetResponse$deletedAt": "

The timestamp when the image set properties were deleted.

", + "ImageSetProperties$createdAt": "

The timestamp when the image set properties were created.

", + "ImageSetProperties$updatedAt": "

The timestamp when the image set properties were updated.

", + "ImageSetProperties$deletedAt": "

The timestamp when the image set properties were deleted.

", + "ImageSetsMetadataSummary$createdAt": "

The time an image set is created in AWS HealthImaging. Sample creation date is provided in 1985-04-12T23:20:50.52Z format.

", + "ImageSetsMetadataSummary$updatedAt": "

The time when an image was last updated in AWS HealthImaging.

", + "SearchByAttributeValue$createdAt": "

The created at time of the image set provided for search.

", + "StartDICOMImportJobResponse$submittedAt": "

The timestamp when the import job was submitted.

", + "UpdateImageSetMetadataResponse$createdAt": "

The timestamp when image set metadata was created.

", + "UpdateImageSetMetadataResponse$updatedAt": "

The timestamp when image set metadata was updated.

" + } + }, + "DeleteDatastoreRequest": { + "base": null, + "refs": { + } + }, + "DeleteDatastoreResponse": { + "base": null, + "refs": { + } + }, + "DeleteImageSetRequest": { + "base": null, + "refs": { + } + }, + "DeleteImageSetResponse": { + "base": null, + "refs": { + } + }, + "GetDICOMImportJobRequest": { + "base": null, + "refs": { + } + }, + "GetDICOMImportJobResponse": { + "base": null, + "refs": { + } + }, + "GetDatastoreRequest": { + "base": null, + "refs": { + } + }, + "GetDatastoreResponse": { + "base": null, + "refs": { + } + }, + "GetImageFrameRequest": { + "base": null, + "refs": { + } + }, + "GetImageFrameResponse": { + "base": null, + "refs": { + } + }, + "GetImageSetMetadataRequest": { + "base": null, + "refs": { + } + }, + "GetImageSetMetadataResponse": { + "base": null, + "refs": { + } + }, + "GetImageSetRequest": { + "base": null, + "refs": { + } + }, + "GetImageSetResponse": { + "base": null, + "refs": { + } + }, + "ImageFrameId": { + "base": null, + "refs": { + "ImageFrameInformation$imageFrameId": "

The image frame (pixel data) identifier.

" + } + }, + "ImageFrameInformation": { + "base": "

Information about the image frame (pixel data) identifier.

", + "refs": { + "GetImageFrameRequest$imageFrameInformation": "

Information about the image frame (pixel data) identifier.

" + } + }, + "ImageSetExternalVersionId": { + "base": null, + "refs": { + "CopyDestinationImageSet$latestVersionId": "

The latest version identifier for the destination image set.

", + "CopyDestinationImageSetProperties$latestVersionId": "

The latest version identifier for the destination image set properties.

", + "CopySourceImageSetInformation$latestVersionId": "

The latest version identifier for the source image set.

", + "CopySourceImageSetProperties$latestVersionId": "

The latest version identifier for the copied source image set.

", + "GetImageSetMetadataRequest$versionId": "

The image set version identifier.

", + "GetImageSetRequest$versionId": "

The image set version identifier.

", + "GetImageSetResponse$versionId": "

The image set version identifier.

", + "ImageSetProperties$versionId": "

The image set version identifier.

", + "UpdateImageSetMetadataRequest$latestVersionId": "

The latest image set version identifier.

", + "UpdateImageSetMetadataResponse$latestVersionId": "

The latest image set version identifier.

" + } + }, + "ImageSetId": { + "base": null, + "refs": { + "CopyDestinationImageSet$imageSetId": "

The image set identifier for the destination image set.

", + "CopyDestinationImageSetProperties$imageSetId": "

The image set identifier of the copied image set properties.

", + "CopyImageSetRequest$sourceImageSetId": "

The source image set identifier.

", + "CopySourceImageSetProperties$imageSetId": "

The image set identifier for the copied source image set.

", + "DeleteImageSetRequest$imageSetId": "

The image set identifier.

", + "DeleteImageSetResponse$imageSetId": "

The image set identifier.

", + "GetImageFrameRequest$imageSetId": "

The image set identifier.

", + "GetImageSetMetadataRequest$imageSetId": "

The image set identifier.

", + "GetImageSetRequest$imageSetId": "

The image set identifier.

", + "GetImageSetResponse$imageSetId": "

The image set identifier.

", + "ImageSetProperties$imageSetId": "

The image set identifier.

", + "ImageSetsMetadataSummary$imageSetId": "

The image set identifier.

", + "ListImageSetVersionsRequest$imageSetId": "

The image set identifier.

", + "UpdateImageSetMetadataRequest$imageSetId": "

The image set identifier.

", + "UpdateImageSetMetadataResponse$imageSetId": "

The image set identifier.

" + } + }, + "ImageSetMetadataBlob": { + "base": null, + "refs": { + "GetImageSetMetadataResponse$imageSetMetadataBlob": "

The blob containing the aggregated metadata information for the image set.

" + } + }, + "ImageSetProperties": { + "base": "

The image set properties.

", + "refs": { + "ImageSetPropertiesList$member": null + } + }, + "ImageSetPropertiesList": { + "base": null, + "refs": { + "ListImageSetVersionsResponse$imageSetPropertiesList": "

Lists all properties associated with an image set.

" + } + }, + "ImageSetState": { + "base": null, + "refs": { + "CopyDestinationImageSetProperties$imageSetState": "

The image set state of the destination image set properties.

", + "CopySourceImageSetProperties$imageSetState": "

The image set state of the copied source image set.

", + "DeleteImageSetResponse$imageSetState": "

The image set state.

", + "GetImageSetResponse$imageSetState": "

The image set state.

", + "ImageSetProperties$imageSetState": "

The image set state.

", + "UpdateImageSetMetadataResponse$imageSetState": "

The image set state.

" + } + }, + "ImageSetWorkflowStatus": { + "base": null, + "refs": { + "CopyDestinationImageSetProperties$imageSetWorkflowStatus": "

The image set workflow status of the destination image set properties.

", + "CopySourceImageSetProperties$imageSetWorkflowStatus": "

The workflow status of the copied source image set.

", + "DeleteImageSetResponse$imageSetWorkflowStatus": "

The image set workflow status.

", + "GetImageSetResponse$imageSetWorkflowStatus": "

The image set workflow status.

", + "ImageSetProperties$ImageSetWorkflowStatus": "

The image set workflow status.

", + "UpdateImageSetMetadataResponse$imageSetWorkflowStatus": "

The image set workflow status.

" + } + }, + "ImageSetsMetadataSummaries": { + "base": null, + "refs": { + "SearchImageSetsResponse$imageSetsMetadataSummaries": "

The model containing the image set results.

" + } + }, + "ImageSetsMetadataSummary": { + "base": "

Summary of the image set metadata.

", + "refs": { + "ImageSetsMetadataSummaries$member": null + } + }, + "Integer": { + "base": null, + "refs": { + "ImageSetsMetadataSummary$version": "

The image set version.

" + } + }, + "InternalServerException": { + "base": "

An unexpected error occurred during processing of the request.

", + "refs": { + } + }, + "JobId": { + "base": null, + "refs": { + "DICOMImportJobProperties$jobId": "

The import job identifier.

", + "DICOMImportJobSummary$jobId": "

The import job identifier.

", + "GetDICOMImportJobRequest$jobId": "

The import job identifier.

", + "StartDICOMImportJobResponse$jobId": "

The import job identifier.

" + } + }, + "JobName": { + "base": null, + "refs": { + "DICOMImportJobProperties$jobName": "

The import job name.

", + "DICOMImportJobSummary$jobName": "

The import job name.

", + "StartDICOMImportJobRequest$jobName": "

The import job name.

" + } + }, + "JobStatus": { + "base": null, + "refs": { + "DICOMImportJobProperties$jobStatus": "

The filters for listing import jobs based on status.

", + "DICOMImportJobSummary$jobStatus": "

The filters for listing import jobs based on status.

", + "ListDICOMImportJobsRequest$jobStatus": "

The filters for listing import jobs based on status.

", + "StartDICOMImportJobResponse$jobStatus": "

The import job status.

" + } + }, + "KmsKeyArn": { + "base": "

ARN referencing a KMS key or KMS key alias.

", + "refs": { + "CreateDatastoreRequest$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the AWS Key Management Service (AWS KMS) key for accessing encrypted data.

", + "DatastoreProperties$kmsKeyArn": "

The Amazon Resource Name (ARN) assigned to the AWS Key Management Service (AWS KMS) key for accessing encrypted data.

" + } + }, + "ListDICOMImportJobsRequest": { + "base": null, + "refs": { + } + }, + "ListDICOMImportJobsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListDICOMImportJobsRequest$maxResults": "

The max results count. The upper bound is determined by load testing.

" + } + }, + "ListDICOMImportJobsResponse": { + "base": null, + "refs": { + } + }, + "ListDatastoresRequest": { + "base": null, + "refs": { + } + }, + "ListDatastoresRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListDatastoresRequest$maxResults": "

Valid Range: Minimum value of 1. Maximum value of 50.

" + } + }, + "ListDatastoresResponse": { + "base": null, + "refs": { + } + }, + "ListImageSetVersionsRequest": { + "base": null, + "refs": { + } + }, + "ListImageSetVersionsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListImageSetVersionsRequest$maxResults": "

The max results count.

" + } + }, + "ListImageSetVersionsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "Message": { + "base": null, + "refs": { + "DICOMImportJobProperties$message": "

The error message thrown if an import job fails.

", + "DICOMImportJobSummary$message": "

The error message thrown if an import job fails.

", + "GetImageSetResponse$message": "

The error message thrown if an image set action fails.

", + "ImageSetProperties$message": "

The error message thrown if an image set action fails.

", + "UpdateImageSetMetadataResponse$message": "

The error message thrown if an update image set metadata action fails.

" + } + }, + "MetadataUpdates": { + "base": "

Contains DICOMUpdates.

", + "refs": { + "UpdateImageSetMetadataRequest$updateImageSetMetadataUpdates": "

Update image set metadata updates.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListDICOMImportJobsRequest$nextToken": "

The pagination token used to request the list of import jobs on the next page.

", + "ListDICOMImportJobsResponse$nextToken": "

The pagination token used to retrieve the list of import jobs on the next page.

", + "ListDatastoresRequest$nextToken": "

The pagination token used to request the list of data stores on the next page.

", + "ListDatastoresResponse$nextToken": "

The pagination token used to retrieve the list of data stores on the next page.

", + "ListImageSetVersionsRequest$nextToken": "

The pagination token used to request the list of image set versions on the next page.

", + "ListImageSetVersionsResponse$nextToken": "

The pagination token used to retrieve the list of image set versions on the next page.

", + "SearchImageSetsRequest$nextToken": "

The token used for pagination of results returned in the response. Use the token returned from the previous request to continue results where the previous request ended.

", + "SearchImageSetsResponse$nextToken": "

The token for pagination results.

" + } + }, + "Operator": { + "base": null, + "refs": { + "SearchFilter$operator": "

The search filter operator for imageSetDateTime.

" + } + }, + "PayloadBlob": { + "base": null, + "refs": { + "GetImageFrameResponse$imageFrameBlob": "

The blob containing the aggregated image frame information.

" + } + }, + "ResourceNotFoundException": { + "base": "

The request references a resource which does not exist.

", + "refs": { + } + }, + "RoleArn": { + "base": null, + "refs": { + "DICOMImportJobProperties$dataAccessRoleArn": "

The Amazon Resource Name (ARN) that grants permissions to access medical imaging resources.

", + "DICOMImportJobSummary$dataAccessRoleArn": "

The Amazon Resource Name (ARN) that grants permissions to access medical imaging resources.

", + "StartDICOMImportJobRequest$dataAccessRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that grants permission to access medical imaging resources.

" + } + }, + "S3Uri": { + "base": null, + "refs": { + "DICOMImportJobProperties$inputS3Uri": "

The input prefix path for the S3 bucket that contains the DICOM P10 files to be imported.

", + "DICOMImportJobProperties$outputS3Uri": "

The output prefix of the S3 bucket to upload the results of the DICOM import job.

", + "StartDICOMImportJobRequest$inputS3Uri": "

The input prefix path for the S3 bucket that contains the DICOM files to be imported.

", + "StartDICOMImportJobRequest$outputS3Uri": "

The output prefix of the S3 bucket to upload the results of the DICOM import job.

" + } + }, + "SearchByAttributeValue": { + "base": "

The search input attribute value.

", + "refs": { + "SearchFilterValuesList$member": null + } + }, + "SearchCriteria": { + "base": "

The search criteria.

", + "refs": { + "SearchImageSetsRequest$searchCriteria": "

The search criteria that filters by applying a maximum of 1 item to SearchByAttribute.

" + } + }, + "SearchCriteriaFiltersList": { + "base": null, + "refs": { + "SearchCriteria$filters": "

The filters for the search criteria.

" + } + }, + "SearchFilter": { + "base": "

The search filter.

", + "refs": { + "SearchCriteriaFiltersList$member": null + } + }, + "SearchFilterValuesList": { + "base": null, + "refs": { + "SearchFilter$values": "

The search filter values.

" + } + }, + "SearchImageSetsRequest": { + "base": null, + "refs": { + } + }, + "SearchImageSetsRequestMaxResultsInteger": { + "base": null, + "refs": { + "SearchImageSetsRequest$maxResults": "

The maximum number of results that can be returned in a search.

" + } + }, + "SearchImageSetsResponse": { + "base": null, + "refs": { + } + }, + "ServiceQuotaExceededException": { + "base": "

The request caused a service quota to be exceeded.

", + "refs": { + } + }, + "StartDICOMImportJobRequest": { + "base": null, + "refs": { + } + }, + "StartDICOMImportJobResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "GetImageFrameResponse$contentType": "

The format in which the image frame information is returned to the customer. Default is application/octet-stream.

", + "GetImageSetMetadataResponse$contentType": "

The format in which the study metadata is returned to the customer. Default is text/plain.

", + "GetImageSetMetadataResponse$contentEncoding": "

The compression format in which image set metadata attributes are returned.

", + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "TagKey": { + "base": null, + "refs": { + "TagKeyList$member": null, + "TagMap$key": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The keys for the tags to be removed from the medical imaging resource.

" + } + }, + "TagMap": { + "base": null, + "refs": { + "CreateDatastoreRequest$tags": "

The tags provided when creating a data store.

", + "ListTagsForResourceResponse$tags": "

A list of all tags associated with a medical imaging resource.

", + "TagResourceRequest$tags": "

The user-specified key and value tag pairs added to a medical imaging resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "TagMap$value": null + } + }, + "ThrottlingException": { + "base": "

The request was denied due to throttling.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateImageSetMetadataRequest": { + "base": null, + "refs": { + } + }, + "UpdateImageSetMetadataResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "refs": { + } + } + } +} diff --git a/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json b/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json new file mode 100644 index 00000000000..25567f71c6e --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/endpoint-rule-set-1.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "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" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://medical-imaging-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://medical-imaging-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://medical-imaging.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://medical-imaging.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json b/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json new file mode 100644 index 00000000000..bbca79c2a27 --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/endpoint-tests-1.json @@ -0,0 +1,295 @@ +{ + "testCases": [ + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-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 enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-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", + "expect": { + "endpoint": { + "url": "https://medical-imaging-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", + "expect": { + "endpoint": { + "url": "https://medical-imaging.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", + "expect": { + "endpoint": { + "url": "https://medical-imaging.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging-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 enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://medical-imaging.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/medical-imaging/2023-07-19/examples-1.json b/models/apis/medical-imaging/2023-07-19/examples-1.json new file mode 100644 index 00000000000..0ea7e3b0bbe --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/medical-imaging/2023-07-19/paginators-1.json b/models/apis/medical-imaging/2023-07-19/paginators-1.json new file mode 100644 index 00000000000..807d05276fb --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/paginators-1.json @@ -0,0 +1,28 @@ +{ + "pagination": { + "ListDICOMImportJobs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "jobSummaries" + }, + "ListDatastores": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "datastoreSummaries" + }, + "ListImageSetVersions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "imageSetPropertiesList" + }, + "SearchImageSets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "imageSetsMetadataSummaries" + } + } +} diff --git a/models/apis/medical-imaging/2023-07-19/smoke.json b/models/apis/medical-imaging/2023-07-19/smoke.json new file mode 100644 index 00000000000..6c501801790 --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/smoke.json @@ -0,0 +1,6 @@ +{ + "version": 1, + "defaultRegion": "us-east-1", + "testCases": [ + ] +} diff --git a/models/apis/medical-imaging/2023-07-19/waiters-2.json b/models/apis/medical-imaging/2023-07-19/waiters-2.json new file mode 100644 index 00000000000..13f60ee66be --- /dev/null +++ b/models/apis/medical-imaging/2023-07-19/waiters-2.json @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} diff --git a/models/apis/ram/2018-01-04/api-2.json b/models/apis/ram/2018-01-04/api-2.json index 108203c7934..304c7344956 100644 --- a/models/apis/ram/2018-01-04/api-2.json +++ b/models/apis/ram/2018-01-04/api-2.json @@ -135,6 +135,7 @@ {"shape":"OperationNotPermittedException"}, {"shape":"ResourceShareLimitExceededException"}, {"shape":"TagPolicyViolationException"}, + {"shape":"TagLimitExceededException"}, {"shape":"ServerInternalException"}, {"shape":"ServiceUnavailableException"} ] @@ -688,7 +689,8 @@ "resourceShareArn":{"shape":"String"}, "resourceArns":{"shape":"ResourceArnList"}, "principals":{"shape":"PrincipalArnOrIdList"}, - "clientToken":{"shape":"String"} + "clientToken":{"shape":"String"}, + "sources":{"shape":"SourceArnOrAccountList"} } }, "AssociateResourceShareResponse":{ @@ -767,7 +769,8 @@ "tags":{"shape":"TagList"}, "allowExternalPrincipals":{"shape":"Boolean"}, "clientToken":{"shape":"String"}, - "permissionArns":{"shape":"PermissionArnList"} + "permissionArns":{"shape":"PermissionArnList"}, + "sources":{"shape":"SourceArnOrAccountList"} } }, "CreateResourceShareResponse":{ @@ -883,7 +886,8 @@ "resourceShareArn":{"shape":"String"}, "resourceArns":{"shape":"ResourceArnList"}, "principals":{"shape":"PrincipalArnOrIdList"}, - "clientToken":{"shape":"String"} + "clientToken":{"shape":"String"}, + "sources":{"shape":"SourceArnOrAccountList"} } }, "DisassociateResourceShareResponse":{ @@ -1764,6 +1768,10 @@ "clientToken":{"shape":"String"} } }, + "SourceArnOrAccountList":{ + "type":"list", + "member":{"shape":"String"} + }, "String":{"type":"string"}, "Tag":{ "type":"structure", diff --git a/models/apis/ram/2018-01-04/docs-2.json b/models/apis/ram/2018-01-04/docs-2.json index 32963186693..4600b9a7a57 100644 --- a/models/apis/ram/2018-01-04/docs-2.json +++ b/models/apis/ram/2018-01-04/docs-2.json @@ -834,6 +834,14 @@ "refs": { } }, + "SourceArnOrAccountList": { + "base": null, + "refs": { + "AssociateResourceShareRequest$sources": "

Specifies from which source accounts the service principal has access to the resources in this resource share.

", + "CreateResourceShareRequest$sources": "

Specifies from which source accounts the service principal has access to the resources in this resource share.

", + "DisassociateResourceShareRequest$sources": "

Specifies from which source accounts the service principal no longer has access to the resources in this resource share.

" + } + }, "String": { "base": null, "refs": { @@ -882,7 +890,7 @@ "GetResourcePoliciesRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", "GetResourcePoliciesResponse$nextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", "GetResourceShareAssociationsRequest$resourceArn": "

Specifies the Amazon Resource Name (ARN) of a resource whose resource shares you want to retrieve.

You cannot specify this parameter if the association type is PRINCIPAL.

", - "GetResourceShareAssociationsRequest$principal": "

Specifies the ID of the principal whose resource shares you want to retrieve. This can be an Amazon Web Services account ID, an organization ID, an organizational unit ID, or the Amazon Resource Name (ARN) of an individual IAM user or role.

You cannot specify this parameter if the association type is RESOURCE.

", + "GetResourceShareAssociationsRequest$principal": "

Specifies the ID of the principal whose resource shares you want to retrieve. This can be an Amazon Web Services account ID, an organization ID, an organizational unit ID, or the Amazon Resource Name (ARN) of an individual IAM role or user.

You cannot specify this parameter if the association type is RESOURCE.

", "GetResourceShareAssociationsRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", "GetResourceShareAssociationsResponse$nextToken": "

If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

", "GetResourceShareInvitationsRequest$nextToken": "

Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's NextToken response to request the next page of results.

", @@ -1002,6 +1010,7 @@ "SetDefaultPermissionVersionRequest$permissionArn": "

Specifies the Amazon Resource Name (ARN) of the customer managed permission whose default version you want to change.

", "SetDefaultPermissionVersionRequest$clientToken": "

Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..

If you don't provide this value, then Amazon Web Services generates a random one for you.

If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

", "SetDefaultPermissionVersionResponse$clientToken": "

The idempotency identifier associated with this request. If you want to repeat the same operation in an idempotent manner then you must include this value in the clientToken request parameter of that later call. All other parameters must also have the same values that you used in the first call.

", + "SourceArnOrAccountList$member": null, "TagLimitExceededException$message": null, "TagPolicyViolationException$message": null, "TagResourceRequest$resourceShareArn": "

Specifies the Amazon Resource Name (ARN) of the resource share that you want to add tags to. You must specify either resourceShareArn, or resourceArn, but not both.

", diff --git a/models/apis/ssm-sap/2018-05-10/api-2.json b/models/apis/ssm-sap/2018-05-10/api-2.json index d09acaa2b0f..5499faf8d58 100644 --- a/models/apis/ssm-sap/2018-05-10/api-2.json +++ b/models/apis/ssm-sap/2018-05-10/api-2.json @@ -217,6 +217,22 @@ {"shape":"InternalServerException"} ] }, + "StartApplicationRefresh":{ + "name":"StartApplicationRefresh", + "http":{ + "method":"POST", + "requestUri":"/start-application-refresh", + "responseCode":200 + }, + "input":{"shape":"StartApplicationRefreshInput"}, + "output":{"shape":"StartApplicationRefreshOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -260,6 +276,7 @@ "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"ValidationException"}, + {"shape":"ConflictException"}, {"shape":"InternalServerException"} ] } @@ -277,6 +294,7 @@ "Arn":{"shape":"SsmSapArn"}, "AppRegistryArn":{"shape":"AppRegistryArn"}, "Status":{"shape":"ApplicationStatus"}, + "DiscoveryStatus":{"shape":"ApplicationDiscoveryStatus"}, "Components":{"shape":"ComponentIdList"}, "LastUpdated":{"shape":"Timestamp"}, "StatusMessage":{"shape":"String"} @@ -301,6 +319,16 @@ "max":20, "min":1 }, + "ApplicationDiscoveryStatus":{ + "type":"string", + "enum":[ + "SUCCESS", + "REGISTRATION_FAILED", + "REFRESH_FAILED", + "REGISTERING", + "DELETING" + ] + }, "ApplicationId":{ "type":"string", "pattern":"[\\w\\d]{1,50}" @@ -339,17 +367,70 @@ "type":"string", "pattern":"arn:(.+:){2,4}.+$|^arn:(.+:){1,3}.+\\/.+" }, + "AssociatedHost":{ + "type":"structure", + "members":{ + "Hostname":{"shape":"String"}, + "Ec2InstanceId":{"shape":"String"}, + "OsVersion":{"shape":"String"} + } + }, + "BackintConfig":{ + "type":"structure", + "required":[ + "BackintMode", + "EnsureNoBackupInProcess" + ], + "members":{ + "BackintMode":{"shape":"BackintMode"}, + "EnsureNoBackupInProcess":{"shape":"Boolean"} + } + }, + "BackintMode":{ + "type":"string", + "enum":["AWSBackup"] + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ClusterStatus":{ + "type":"string", + "enum":[ + "ONLINE", + "STANDBY", + "MAINTENANCE", + "OFFLINE", + "NONE" + ] + }, "Component":{ "type":"structure", "members":{ "ComponentId":{"shape":"ComponentId"}, + "ParentComponent":{"shape":"ComponentId"}, + "ChildComponents":{"shape":"ComponentIdList"}, "ApplicationId":{"shape":"ApplicationId"}, "ComponentType":{"shape":"ComponentType"}, "Status":{"shape":"ComponentStatus"}, + "SapHostname":{"shape":"String"}, + "SapKernelVersion":{"shape":"String"}, + "HdbVersion":{"shape":"String"}, + "Resilience":{"shape":"Resilience"}, + "AssociatedHost":{"shape":"AssociatedHost"}, "Databases":{"shape":"DatabaseIdList"}, - "Hosts":{"shape":"HostList"}, - "PrimaryHost":{"shape":"String"}, - "LastUpdated":{"shape":"Timestamp"} + "Hosts":{ + "shape":"HostList", + "deprecated":true, + "deprecatedMessage":"This shape is no longer used. Please use AssociatedHost." + }, + "PrimaryHost":{ + "shape":"String", + "deprecated":true, + "deprecatedMessage":"This shape is no longer used. Please use AssociatedHost." + }, + "LastUpdated":{"shape":"Timestamp"}, + "Arn":{"shape":"SsmSapArn"} } }, "ComponentId":{ @@ -362,7 +443,15 @@ }, "ComponentStatus":{ "type":"string", - "enum":["ACTIVATED"] + "enum":[ + "ACTIVATED", + "STARTING", + "STOPPED", + "STOPPING", + "RUNNING", + "RUNNING_WITH_ERROR", + "UNDEFINED" + ] }, "ComponentSummary":{ "type":"structure", @@ -370,7 +459,8 @@ "ApplicationId":{"shape":"ApplicationId"}, "ComponentId":{"shape":"ComponentId"}, "ComponentType":{"shape":"ComponentType"}, - "Tags":{"shape":"TagMap"} + "Tags":{"shape":"TagMap"}, + "Arn":{"shape":"SsmSapArn"} } }, "ComponentSummaryList":{ @@ -379,7 +469,10 @@ }, "ComponentType":{ "type":"string", - "enum":["HANA"] + "enum":[ + "HANA", + "HANA_NODE" + ] }, "ConflictException":{ "type":"structure", @@ -432,7 +525,8 @@ "STARTING", "STOPPED", "WARNING", - "UNKNOWN" + "UNKNOWN", + "ERROR" ] }, "DatabaseSummary":{ @@ -550,7 +644,8 @@ "GetComponentOutput":{ "type":"structure", "members":{ - "Component":{"shape":"Component"} + "Component":{"shape":"Component"}, + "Tags":{"shape":"TagMap"} } }, "GetDatabaseInput":{ @@ -600,9 +695,11 @@ "type":"structure", "members":{ "HostName":{"shape":"String"}, - "HostRole":{"shape":"HostRole"}, "HostIp":{"shape":"String"}, - "InstanceId":{"shape":"String"} + "EC2InstanceId":{"shape":"String"}, + "InstanceId":{"shape":"String"}, + "HostRole":{"shape":"HostRole"}, + "OsVersion":{"shape":"String"} } }, "HostList":{ @@ -769,6 +866,16 @@ "type":"list", "member":{"shape":"Operation"} }, + "OperationMode":{ + "type":"string", + "enum":[ + "PRIMARY", + "LOGREPLAY", + "DELTA_DATASHIPPING", + "LOGREPLAY_READACCESS", + "NONE" + ] + }, "OperationProperties":{ "type":"map", "key":{"shape":"String"}, @@ -831,6 +938,25 @@ "OperationId":{"shape":"OperationId"} } }, + "ReplicationMode":{ + "type":"string", + "enum":[ + "PRIMARY", + "NONE", + "SYNC", + "SYNCMEM", + "ASYNC" + ] + }, + "Resilience":{ + "type":"structure", + "members":{ + "HsrTier":{"shape":"String"}, + "HsrReplicationMode":{"shape":"ReplicationMode"}, + "HsrOperationMode":{"shape":"OperationMode"}, + "ClusterStatus":{"shape":"ClusterStatus"} + } + }, "ResourceId":{ "type":"string", "max":64, @@ -870,6 +996,19 @@ "type":"string", "pattern":"arn:(.+:){2,4}.+$|^arn:(.+:){1,3}.+\\/.+" }, + "StartApplicationRefreshInput":{ + "type":"structure", + "required":["ApplicationId"], + "members":{ + "ApplicationId":{"shape":"ApplicationId"} + } + }, + "StartApplicationRefreshOutput":{ + "type":"structure", + "members":{ + "OperationId":{"shape":"OperationId"} + } + }, "String":{"type":"string"}, "TagKey":{ "type":"string", @@ -940,7 +1079,8 @@ "members":{ "ApplicationId":{"shape":"ApplicationId"}, "CredentialsToAddOrUpdate":{"shape":"ApplicationCredentialList"}, - "CredentialsToRemove":{"shape":"ApplicationCredentialList"} + "CredentialsToRemove":{"shape":"ApplicationCredentialList"}, + "Backint":{"shape":"BackintConfig"} } }, "UpdateApplicationSettingsOutput":{ diff --git a/models/apis/ssm-sap/2018-05-10/docs-2.json b/models/apis/ssm-sap/2018-05-10/docs-2.json index f7b70a80bfd..2d41fd718b8 100644 --- a/models/apis/ssm-sap/2018-05-10/docs-2.json +++ b/models/apis/ssm-sap/2018-05-10/docs-2.json @@ -16,6 +16,7 @@ "ListTagsForResource": "

Lists all tags on an SAP HANA application and/or database registered with AWS Systems Manager for SAP.

", "PutResourcePermission": "

Adds permissions to the target database.

", "RegisterApplication": "

Register an SAP application with AWS Systems Manager for SAP. You must meet the following requirements before registering.

The SAP application you want to register with AWS Systems Manager for SAP is running on Amazon EC2.

AWS Systems Manager Agent must be setup on an Amazon EC2 instance along with the required IAM permissions.

Amazon EC2 instance(s) must have access to the secrets created in AWS Secrets Manager to manage SAP applications and components.

", + "StartApplicationRefresh": "

Refreshes a registered application.

", "TagResource": "

Creates tag for a resource by specifying the ARN.

", "UntagResource": "

Delete the tags for a resource.

", "UpdateApplicationSettings": "

Updates the settings of an application registered with AWS Systems Manager for SAP.

" @@ -50,6 +51,12 @@ "UpdateApplicationSettingsInput$CredentialsToRemove": "

The credentials to be removed.

" } }, + "ApplicationDiscoveryStatus": { + "base": null, + "refs": { + "Application$DiscoveryStatus": "

The latest discovery result for the application.

" + } + }, "ApplicationId": { "base": null, "refs": { @@ -67,6 +74,7 @@ "ListDatabasesInput$ApplicationId": "

The ID of the application.

", "ListOperationsInput$ApplicationId": "

The ID of the application.

", "RegisterApplicationInput$ApplicationId": "

The ID of the application.

", + "StartApplicationRefreshInput$ApplicationId": "

The ID of the application.

", "UpdateApplicationSettingsInput$ApplicationId": "

The ID of the application.

" } }, @@ -107,6 +115,36 @@ "PutResourcePermissionInput$ResourceArn": "

" } }, + "AssociatedHost": { + "base": "

Describes the properties of the associated host.

", + "refs": { + "Component$AssociatedHost": "

The associated host of the component.

" + } + }, + "BackintConfig": { + "base": "

Configuration parameters for AWS Backint Agent for SAP HANA. You can backup your SAP HANA database with AWS Backup or Amazon S3.

", + "refs": { + "UpdateApplicationSettingsInput$Backint": "

Installation of AWS Backint Agent for SAP HANA.

" + } + }, + "BackintMode": { + "base": null, + "refs": { + "BackintConfig$BackintMode": "

AWS service for your database backup.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "BackintConfig$EnsureNoBackupInProcess": "

" + } + }, + "ClusterStatus": { + "base": null, + "refs": { + "Resilience$ClusterStatus": "

The cluster status of the component.

" + } + }, "Component": { "base": "

The SAP component of your application.

", "refs": { @@ -117,6 +155,7 @@ "base": null, "refs": { "Component$ComponentId": "

The ID of the component.

", + "Component$ParentComponent": "

The parent component of a highly available environment. For example, in a highly available SAP on AWS workload, the parent component consists of the entire setup, including the child components.

", "ComponentIdList$member": null, "ComponentSummary$ComponentId": "

The ID of the component.

", "Database$ComponentId": "

The ID of the component.

", @@ -129,7 +168,8 @@ "ComponentIdList": { "base": null, "refs": { - "Application$Components": "

The components of the application.

" + "Application$Components": "

The components of the application.

", + "Component$ChildComponents": "

The child components of a highly available environment. For example, in a highly available SAP on AWS workload, the child component consists of the primary and secondar instances.

" } }, "ComponentStatus": { @@ -446,7 +486,8 @@ "GetOperationInput$OperationId": "

The ID of the operation.

", "Operation$Id": "

The ID of the operation.

", "OperationIdList$member": null, - "RegisterApplicationOutput$OperationId": "

The ID of the operation.

" + "RegisterApplicationOutput$OperationId": "

The ID of the operation.

", + "StartApplicationRefreshOutput$OperationId": "

The ID of the operation.

" } }, "OperationIdList": { @@ -461,6 +502,12 @@ "ListOperationsOutput$Operations": "

List of operations performed by AWS Systems Manager for SAP.

" } }, + "OperationMode": { + "base": null, + "refs": { + "Resilience$HsrOperationMode": "

The operation mode of the component.

" + } + }, "OperationProperties": { "base": null, "refs": { @@ -507,6 +554,18 @@ "refs": { } }, + "ReplicationMode": { + "base": null, + "refs": { + "Resilience$HsrReplicationMode": "

The replication mode of the component.

" + } + }, + "Resilience": { + "base": "

Details of the SAP HANA system replication for the instance.

", + "refs": { + "Component$Resilience": "

Details of the SAP HANA system replication for the component.

" + } + }, "ResourceId": { "base": null, "refs": { @@ -547,6 +606,8 @@ "refs": { "Application$Arn": "

The Amazon Resource Name (ARN) of the application.

", "ApplicationSummary$Arn": "

The Amazon Resource Name (ARN) of the application.

", + "Component$Arn": "

The Amazon Resource Name (ARN) of the component.

", + "ComponentSummary$Arn": "

The Amazon Resource Name (ARN) of the component summary.

", "Database$Arn": "

The Amazon Resource Name (ARN) of the database.

", "DatabaseSummary$Arn": "

The Amazon Resource Name (ARN) of the database.

", "GetApplicationInput$ApplicationArn": "

The Amazon Resource Name (ARN) of the application.

", @@ -556,10 +617,26 @@ "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

" } }, + "StartApplicationRefreshInput": { + "base": null, + "refs": { + } + }, + "StartApplicationRefreshOutput": { + "base": null, + "refs": { + } + }, "String": { "base": null, "refs": { "Application$StatusMessage": "

The status message.

", + "AssociatedHost$Hostname": "

The name of the host.

", + "AssociatedHost$Ec2InstanceId": "

The ID of the Amazon EC2 instance.

", + "AssociatedHost$OsVersion": "

The version of the operating system.

", + "Component$SapHostname": "

The hostname of the component.

", + "Component$SapKernelVersion": "

The kernel version of the component.

", + "Component$HdbVersion": "

The SAP HANA version of the component.

", "Component$PrimaryHost": "

The primary host of the component.

", "ConflictException$Message": null, "Database$DatabaseName": "

The name of the database.

", @@ -568,12 +645,15 @@ "GetResourcePermissionOutput$Policy": "

", "Host$HostName": "

The name of the Dedicated Host.

", "Host$HostIp": "

The IP address of the Dedicated Host.

", + "Host$EC2InstanceId": "

The ID of Amazon EC2 instance.

", "Host$InstanceId": "

The instance ID of the instance on the Dedicated Host.

", + "Host$OsVersion": "

The version of the operating system.

", "InternalServerException$Message": null, "Operation$StatusMessage": "

The status message of the operation.

", "OperationProperties$key": null, "OperationProperties$value": null, "PutResourcePermissionOutput$Policy": "

", + "Resilience$HsrTier": "

The tier of the component.

", "ResourceNotFoundException$Message": null, "UpdateApplicationSettingsOutput$Message": "

The update message.

", "ValidationException$Message": null @@ -599,6 +679,7 @@ "ComponentSummary$Tags": "

The tags of the component.

", "DatabaseSummary$Tags": "

The tags of the database.

", "GetApplicationOutput$Tags": "

The tags of a registered application.

", + "GetComponentOutput$Tags": "

The tags of a component.

", "GetDatabaseOutput$Tags": "

The tags of a database.

", "ListTagsForResourceResponse$tags": "

", "RegisterApplicationInput$Tags": "

The tags to be attached to the SAP application.

", diff --git a/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json b/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json index c3d1a366207..d90aa896935 100644 --- a/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json +++ b/models/apis/ssm-sap/2018-05-10/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,13 +32,12 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], "type": "tree", @@ -46,14 +45,20 @@ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] } ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "type": "tree", "rules": [ { @@ -62,67 +67,42 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], @@ -131,154 +111,215 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], + ], "type": "tree", "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-sap-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, { "conditions": [], - "endpoint": { - "url": "https://ssm-sap-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], + ], "type": "tree", "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-sap-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, { "conditions": [], - "endpoint": { - "url": "https://ssm-sap-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ] - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ssm-sap.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ + }, { "conditions": [], "type": "tree", @@ -286,7 +327,7 @@ { "conditions": [], "endpoint": { - "url": "https://ssm-sap.{Region}.{PartitionResult#dualStackDnsSuffix}", + "url": "https://ssm-sap.{Region}.{PartitionResult#dnsSuffix}", "properties": {}, "headers": {} }, @@ -295,28 +336,13 @@ ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } ] }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ssm-sap.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } diff --git a/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json b/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json index a52e1be7837..232b023d42f 100644 --- a/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json +++ b/models/apis/ssm-sap/2018-05-10/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": true } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { @@ -110,9 +110,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -123,9 +123,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -134,9 +134,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { @@ -147,9 +147,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { @@ -160,9 +160,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -173,9 +173,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -186,9 +186,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { @@ -199,9 +199,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -247,9 +247,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -260,9 +260,9 @@ } }, "params": { - "UseDualStack": false, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +272,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,9 +284,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } } diff --git a/models/apis/wafv2/2019-07-29/api-2.json b/models/apis/wafv2/2019-07-29/api-2.json index 3a217135643..c8377768e5f 100755 --- a/models/apis/wafv2/2019-07-29/api-2.json +++ b/models/apis/wafv2/2019-07-29/api-2.json @@ -3190,7 +3190,8 @@ "HTTPMethod":{"shape":"RateLimitHTTPMethod"}, "ForwardedIP":{"shape":"RateLimitForwardedIP"}, "IP":{"shape":"RateLimitIP"}, - "LabelNamespace":{"shape":"RateLimitLabelNamespace"} + "LabelNamespace":{"shape":"RateLimitLabelNamespace"}, + "UriPath":{"shape":"RateLimitUriPath"} } }, "RateBasedStatementCustomKeys":{ @@ -3273,6 +3274,13 @@ "TextTransformations":{"shape":"TextTransformations"} } }, + "RateLimitUriPath":{ + "type":"structure", + "required":["TextTransformations"], + "members":{ + "TextTransformations":{"shape":"TextTransformations"} + } + }, "RedactedFields":{ "type":"list", "member":{"shape":"FieldToMatch"}, diff --git a/models/apis/wafv2/2019-07-29/docs-2.json b/models/apis/wafv2/2019-07-29/docs-2.json index dc50ddb0810..901cd339ce5 100755 --- a/models/apis/wafv2/2019-07-29/docs-2.json +++ b/models/apis/wafv2/2019-07-29/docs-2.json @@ -315,9 +315,9 @@ } }, "CookieMatchPattern": { - "base": "

The filter to use to identify the subset of cookies to inspect in a web request.

You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies.

Example JSON: \"MatchPattern\": { \"IncludedCookies\": {\"KeyToInclude1\", \"KeyToInclude2\", \"KeyToInclude3\"} }

", + "base": "

The filter to use to identify the subset of cookies to inspect in a web request.

You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies.

Example JSON: \"MatchPattern\": { \"IncludedCookies\": [ \"session-id-time\", \"session-id\" ] }

", "refs": { - "Cookies$MatchPattern": "

The filter to use to identify the subset of cookies to inspect in a web request.

You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies.

Example JSON: \"MatchPattern\": { \"IncludedCookies\": {\"KeyToInclude1\", \"KeyToInclude2\", \"KeyToInclude3\"} }

" + "Cookies$MatchPattern": "

The filter to use to identify the subset of cookies to inspect in a web request.

You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies.

Example JSON: \"MatchPattern\": { \"IncludedCookies\": [ \"session-id-time\", \"session-id\" ] }

" } }, "CookieNames": { @@ -1043,9 +1043,9 @@ } }, "HeaderMatchPattern": { - "base": "

The filter to use to identify the subset of headers to inspect in a web request.

You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders.

Example JSON: \"MatchPattern\": { \"ExcludedHeaders\": {\"KeyToExclude1\", \"KeyToExclude2\"} }

", + "base": "

The filter to use to identify the subset of headers to inspect in a web request.

You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders.

Example JSON: \"MatchPattern\": { \"ExcludedHeaders\": [ \"KeyToExclude1\", \"KeyToExclude2\" ] }

", "refs": { - "Headers$MatchPattern": "

The filter to use to identify the subset of headers to inspect in a web request.

You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders.

Example JSON: \"MatchPattern\": { \"ExcludedHeaders\": {\"KeyToExclude1\", \"KeyToExclude2\"} }

" + "Headers$MatchPattern": "

The filter to use to identify the subset of headers to inspect in a web request.

You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders.

Example JSON: \"MatchPattern\": { \"ExcludedHeaders\": [ \"KeyToExclude1\", \"KeyToExclude2\" ] }

" } }, "HeaderName": { @@ -1854,6 +1854,12 @@ "RateBasedStatementCustomKey$QueryString": "

Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.

" } }, + "RateLimitUriPath": { + "base": "

Specifies the request's URI path as an aggregate key for a rate-based rule. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.

", + "refs": { + "RateBasedStatementCustomKey$UriPath": "

Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.

" + } + }, "RedactedFields": { "base": null, "refs": { @@ -2445,6 +2451,7 @@ "RateLimitHeader$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", "RateLimitQueryArgument$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", "RateLimitQueryString$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", + "RateLimitUriPath$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", "RegexMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", "RegexPatternSetReferenceStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", "SizeConstraintStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", diff --git a/service/cloudformation/api.go b/service/cloudformation/api.go index 6cf6114bdb3..bee8d9c1fc0 100644 --- a/service/cloudformation/api.go +++ b/service/cloudformation/api.go @@ -13710,6 +13710,9 @@ type GetTemplateSummaryInput struct { // StackSetName, TemplateBody, or TemplateURL. TemplateBody *string `min:"1" type:"string"` + // Specifies options for the GetTemplateSummary API action. + TemplateSummaryConfig *TemplateSummaryConfig `type:"structure"` + // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems // Manager document. For more information about templates, see Template anatomy @@ -13782,6 +13785,12 @@ func (s *GetTemplateSummaryInput) SetTemplateBody(v string) *GetTemplateSummaryI return s } +// SetTemplateSummaryConfig sets the TemplateSummaryConfig field's value. +func (s *GetTemplateSummaryInput) SetTemplateSummaryConfig(v *TemplateSummaryConfig) *GetTemplateSummaryInput { + s.TemplateSummaryConfig = v + return s +} + // SetTemplateURL sets the TemplateURL field's value. func (s *GetTemplateSummaryInput) SetTemplateURL(v string) *GetTemplateSummaryInput { s.TemplateURL = &v @@ -13832,6 +13841,9 @@ type GetTemplateSummaryOutput struct { // The Amazon Web Services template format version, which identifies the capabilities // of the template. Version *string `type:"string"` + + // An object containing any warnings returned. + Warnings *Warnings `type:"structure"` } // String returns the string representation. @@ -13906,6 +13918,12 @@ func (s *GetTemplateSummaryOutput) SetVersion(v string) *GetTemplateSummaryOutpu return s } +// SetWarnings sets the Warnings field's value. +func (s *GetTemplateSummaryOutput) SetWarnings(v *Warnings) *GetTemplateSummaryOutput { + s.Warnings = v + return s +} + type ImportStacksToStackSetInput struct { _ struct{} `type:"structure"` @@ -21319,6 +21337,40 @@ func (s *TemplateParameter) SetParameterKey(v string) *TemplateParameter { return s } +// Options for the GetTemplateSummary API action. +type TemplateSummaryConfig struct { + _ struct{} `type:"structure"` + + // If set to True, any unrecognized resource types generate warnings and not + // an error. Any unrecognized resource types are returned in the Warnings output + // parameter. + TreatUnrecognizedResourceTypesAsWarnings *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateSummaryConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateSummaryConfig) GoString() string { + return s.String() +} + +// SetTreatUnrecognizedResourceTypesAsWarnings sets the TreatUnrecognizedResourceTypesAsWarnings field's value. +func (s *TemplateSummaryConfig) SetTreatUnrecognizedResourceTypesAsWarnings(v bool) *TemplateSummaryConfig { + s.TreatUnrecognizedResourceTypesAsWarnings = &v + return s +} + type TestTypeInput struct { _ struct{} `type:"structure"` @@ -23351,6 +23403,40 @@ func (s *ValidateTemplateOutput) SetParameters(v []*TemplateParameter) *Validate return s } +// Contains any warnings returned by the GetTemplateSummary API action. +type Warnings struct { + _ struct{} `type:"structure"` + + // A list of all of the unrecognized resource types. This is only returned if + // the TemplateSummaryConfig parameter has the TreatUnrecognizedResourceTypesAsWarning + // configuration set to True. + UnrecognizedResourceTypes []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Warnings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Warnings) GoString() string { + return s.String() +} + +// SetUnrecognizedResourceTypes sets the UnrecognizedResourceTypes field's value. +func (s *Warnings) SetUnrecognizedResourceTypes(v []*string) *Warnings { + s.UnrecognizedResourceTypes = v + return s +} + const ( // AccountFilterTypeNone is a AccountFilterType enum value AccountFilterTypeNone = "NONE" diff --git a/service/ec2/api.go b/service/ec2/api.go index 216289f5d42..a075daf63af 100644 --- a/service/ec2/api.go +++ b/service/ec2/api.go @@ -1187,7 +1187,7 @@ func (c *EC2) AssignPrivateNatGatewayAddressRequest(input *AssignPrivateNatGatew // // Assigns one or more private IPv4 addresses to a private NAT gateway. For // more information, see Work with NAT gateways (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1447,7 +1447,7 @@ func (c *EC2) AssociateDhcpOptionsRequest(input *AssociateDhcpOptionsInput) (req // on the instance. // // For more information, see DHCP options sets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1840,12 +1840,12 @@ func (c *EC2) AssociateNatGatewayAddressRequest(input *AssociateNatGatewayAddres // // Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a // public NAT gateway. For more information, see Work with NAT gateways (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // By default, you can associate up to 2 Elastic IP addresses per public NAT // gateway. You can increase the limit by requesting a quota adjustment. For // more information, see Elastic IP address quotas (https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-eips) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1926,7 +1926,7 @@ func (c *EC2) AssociateRouteTableRequest(input *AssociateRouteTableInput) (req * // with multiple subnets. // // For more information, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2391,8 +2391,8 @@ func (c *EC2) AssociateVpcCidrBlockRequest(input *AssociateVpcCidrBlockInput) (r // an IPv6 pool, or an Amazon-provided IPv6 CIDR block. // // For more information about associating CIDR blocks with your VPC and applicable -// restrictions, see VPC and subnet sizing (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#VPC_Sizing) -// in the Amazon Virtual Private Cloud User Guide. +// restrictions, see IP addressing for your VPCs and subnets (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2465,12 +2465,10 @@ func (c *EC2) AttachClassicLinkVpcRequest(input *AttachClassicLinkVpcInput) (req // AttachClassicLinkVpc API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// This action is deprecated. // // Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or -// more of the VPC's security groups. You cannot link an EC2-Classic instance +// more of the VPC security groups. You cannot link an EC2-Classic instance // to more than one VPC at a time. You can only link an instance that's in the // running state. An instance is automatically unlinked from a VPC when it's // stopped - you can link it to the VPC again when you restart it. @@ -2555,9 +2553,9 @@ func (c *EC2) AttachInternetGatewayRequest(input *AttachInternetGatewayInput) (r // AttachInternetGateway API operation for Amazon Elastic Compute Cloud. // // Attaches an internet gateway or a virtual private gateway to a VPC, enabling -// connectivity between the internet and the VPC. For more information about -// your VPC and internet gateway, see the Amazon Virtual Private Cloud User -// Guide (https://docs.aws.amazon.com/vpc/latest/userguide/). +// connectivity between the internet and the VPC. For more information, see +// Internet gateways (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3027,8 +3025,8 @@ func (c *EC2) AuthorizeSecurityGroupEgressRequest(input *AuthorizeSecurityGroupE // AuthorizeSecurityGroupEgress API operation for Amazon Elastic Compute Cloud. // -// [VPC only] Adds the specified outbound (egress) rules to a security group -// for use with a VPC. +// Adds the specified outbound (egress) rules to a security group for use with +// a VPC. // // An outbound rule permits instances to send traffic to the specified IPv4 // or IPv6 CIDR address ranges, or to the instances that are associated with @@ -3136,10 +3134,6 @@ func (c *EC2) AuthorizeSecurityGroupIngressRequest(input *AuthorizeSecurityGroup // For more information about VPC security group quotas, see Amazon VPC quotas // (https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html). // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5042,9 +5036,9 @@ func (c *EC2) CreateDefaultSubnetRequest(input *CreateDefaultSubnetInput) (req * // // Creates a default subnet with a size /20 IPv4 CIDR block in the specified // Availability Zone in your default VPC. You can have only one default subnet -// per Availability Zone. For more information, see Creating a default subnet +// per Availability Zone. For more information, see Create a default subnet // (https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html#create-default-subnet) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5119,22 +5113,13 @@ func (c *EC2) CreateDefaultVpcRequest(input *CreateDefaultVpcInput) (req *reques // // Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet // in each Availability Zone. For more information about the components of a -// default VPC, see Default VPC and default subnets (https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html) -// in the Amazon Virtual Private Cloud User Guide. You cannot specify the components -// of the default VPC yourself. +// default VPC, see Default VPCs (https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html) +// in the Amazon VPC User Guide. You cannot specify the components of the default +// VPC yourself. // // If you deleted your previous default VPC, you can create a default VPC. You // cannot have more than one default VPC per Region. // -// If your account supports EC2-Classic, you cannot use this action to create -// a default VPC in a Region that supports EC2-Classic. If you want a default -// VPC in a Region that supports EC2-Classic, see "I really want a default VPC -// for my existing EC2 account. Is that possible?" in the Default VPCs FAQ (http://aws.amazon.com/vpc/faqs/#Default_VPCs). -// -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5244,7 +5229,7 @@ func (c *EC2) CreateDhcpOptionsRequest(input *CreateDhcpOptionsInput) (req *requ // of options, and if your VPC has an internet gateway, make sure to set the // domain-name-servers option either to AmazonProvidedDNS or to a domain name // server of your choice. For more information, see DHCP options sets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5646,16 +5631,6 @@ func (c *EC2) CreateImageRequest(input *CreateImageInput) (req *request.Request, // Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that // is either running or stopped. // -// By default, when Amazon EC2 creates the new AMI, it reboots the instance -// so that it can take snapshots of the attached volumes while data is at rest, -// in order to ensure a consistent state. You can set the NoReboot parameter -// to true in the API request, or use the --no-reboot option in the CLI to prevent -// Amazon EC2 from shutting down and rebooting the instance. -// -// If you choose to bypass the shutdown and reboot process by setting the NoReboot -// parameter to true in the API request, or by using the --no-reboot option -// in the CLI, we can't guarantee the file system integrity of the created image. -// // If you customized your instance with instance store volumes or Amazon EBS // volumes in addition to the root device volume, the new AMI contains block // device mapping information for those volumes. When you launch an instance @@ -5738,9 +5713,9 @@ func (c *EC2) CreateInstanceConnectEndpointRequest(input *CreateInstanceConnectE // // Creates an EC2 Instance Connect Endpoint. // -// An EC2 Instance Connect Endpoint allows you to connect to a resource, without -// requiring the resource to have a public IPv4 address. For more information, -// see Connect to your resources without requiring a public IPv4 address using +// An EC2 Instance Connect Endpoint allows you to connect to an instance, without +// requiring the instance to have a public IPv4 address. For more information, +// see Connect to your instances without requiring a public IPv4 address using // EC2 Instance Connect Endpoint (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect-Endpoint.html) // in the Amazon EC2 User Guide. // @@ -5913,10 +5888,11 @@ func (c *EC2) CreateInstanceExportTaskRequest(input *CreateInstanceExportTaskInp // // Exports a running or stopped instance to an Amazon S3 bucket. // -// For information about the supported operating systems, image formats, and -// known limitations for the types of instances you can export, see Exporting -// an instance as a VM Using VM Import/Export (https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html) -// in the VM Import/Export User Guide. +// For information about the prerequisites for your Amazon S3 bucket, supported +// operating systems, image formats, and known limitations for the types of +// instances you can export, see Exporting an instance as a VM Using VM Import/Export +// (https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html) in +// the VM Import/Export User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5992,8 +5968,8 @@ func (c *EC2) CreateInternetGatewayRequest(input *CreateInternetGatewayInput) (r // Creates an internet gateway for use with a VPC. After creating the internet // gateway, you attach it to a VPC using AttachInternetGateway. // -// For more information about your VPC and internet gateway, see the Amazon -// Virtual Private Cloud User Guide (https://docs.aws.amazon.com/vpc/latest/userguide/). +// For more information, see Internet gateways (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7025,7 +7001,7 @@ func (c *EC2) CreateNatGatewayRequest(input *CreateNatGatewayInput) (req *reques // overlapping networks. // // For more information, see NAT gateways (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7101,8 +7077,8 @@ func (c *EC2) CreateNetworkAclRequest(input *CreateNetworkAclInput) (req *reques // Creates a network ACL in a VPC. Network ACLs provide an optional layer of // security (in addition to security groups) for the instances in your VPC. // -// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ACLs.html) -// in the Amazon Virtual Private Cloud User Guide. +// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -7191,8 +7167,8 @@ func (c *EC2) CreateNetworkAclEntryRequest(input *CreateNetworkAclEntryInput) (r // After you add an entry, you can't modify it; you must either replace it, // or create an entry and delete the old one. // -// For more information about network ACLs, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ACLs.html) -// in the Amazon Virtual Private Cloud User Guide. +// For more information about network ACLs, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8013,7 +7989,7 @@ func (c *EC2) CreateRouteRequest(input *CreateRouteInput) (req *request.Request, // more specific, so we use that route to determine where to target the traffic. // // For more information about route tables, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8090,7 +8066,7 @@ func (c *EC2) CreateRouteTableRequest(input *CreateRouteTableInput) (req *reques // you can add routes and associate the table with a subnet. // // For more information, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -8173,16 +8149,13 @@ func (c *EC2) CreateSecurityGroupRequest(input *CreateSecurityGroupInput) (req * // in the Amazon Virtual Private Cloud User Guide. // // When you create a security group, you specify a friendly name of your choice. -// You can have a security group for use in EC2-Classic with the same name as -// a security group for use in a VPC. However, you can't have two security groups -// for use in EC2-Classic with the same name or two security groups for use -// in a VPC with the same name. +// You can't have two security groups for the same VPC with the same name. // -// You have a default security group for use in EC2-Classic and a default security -// group for use in your VPC. If you don't specify a security group when you -// launch an instance, the instance is launched into the appropriate default -// security group. A default security group includes a default rule that grants -// instances unrestricted network access to each other. +// You have a default security group for use in your VPC. If you don't specify +// a security group when you launch an instance, the instance is launched into +// the appropriate default security group. A default security group includes +// a default rule that grants instances unrestricted network access to each +// other. // // You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, // AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress. @@ -8190,10 +8163,6 @@ func (c *EC2) CreateSecurityGroupRequest(input *CreateSecurityGroupInput) (req * // For more information about VPC security group limits, see Amazon VPC Limits // (https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html). // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -8643,7 +8612,7 @@ func (c *EC2) CreateSubnetRequest(input *CreateSubnetInput) (req *request.Reques // all stopped), but no remaining IP addresses available. // // For more information, see Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -10446,9 +10415,9 @@ func (c *EC2) CreateVpcRequest(input *CreateVpcInput) (req *request.Request, out // CreateVpc API operation for Amazon Elastic Compute Cloud. // -// Creates a VPC with the specified CIDR blocks. For more information, see VPC -// CIDR blocks (https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html#vpc-cidr-blocks) -// in the Amazon Virtual Private Cloud User Guide. +// Creates a VPC with the specified CIDR blocks. For more information, see IP +// addressing for your VPCs and subnets (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html) +// in the Amazon VPC User Guide. // // You can optionally request an IPv6 CIDR block for the VPC. You can request // an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, @@ -10458,12 +10427,12 @@ func (c *EC2) CreateVpcRequest(input *CreateVpcInput) (req *request.Request, out // By default, each instance that you launch in the VPC has the default DHCP // options, which include only a default DNS server that we provide (AmazonProvidedDNS). // For more information, see DHCP option sets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // You can specify the instance tenancy value for the VPC when you create it. // You can't change this value for the VPC after you create it. For more information, // see Dedicated Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html) -// in the Amazon Elastic Compute Cloud User Guide. +// in the Amazon EC2 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -10536,11 +10505,11 @@ func (c *EC2) CreateVpcEndpointRequest(input *CreateVpcEndpointInput) (req *requ // CreateVpcEndpoint API operation for Amazon Elastic Compute Cloud. // -// Creates a VPC endpoint for a specified service. An endpoint enables you to -// create a private connection between your VPC and the service. The service -// may be provided by Amazon Web Services, an Amazon Web Services Marketplace +// Creates a VPC endpoint. A VPC endpoint provides a private connection between +// the specified VPC and the specified endpoint service. You can use an endpoint +// service provided by Amazon Web Services, an Amazon Web Services Marketplace // Partner, or another Amazon Web Services account. For more information, see -// the Amazon Web Services PrivateLink Guide (https://docs.aws.amazon.com/vpc/latest/privatelink/). +// the Amazon Web Services PrivateLink User Guide (https://docs.aws.amazon.com/vpc/latest/privatelink/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -14130,13 +14099,9 @@ func (c *EC2) DeleteSecurityGroupRequest(input *DeleteSecurityGroupInput) (req * // // Deletes a security group. // -// If you attempt to delete a security group that is associated with an instance, -// or is referenced by another security group, the operation fails with InvalidGroup.InUse -// in EC2-Classic or DependencyViolation in EC2-VPC. -// -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// If you attempt to delete a security group that is associated with an instance +// or network interface or is referenced by another security group, the operation +// fails with DependencyViolation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -18582,15 +18547,13 @@ func (c *EC2) DescribeClassicLinkInstancesRequest(input *DescribeClassicLinkInst // DescribeClassicLinkInstances API operation for Amazon Elastic Compute Cloud. // +// This action is deprecated. +// // Describes one or more of your linked EC2-Classic instances. This request // only returns information about EC2-Classic instances linked to a VPC through // ClassicLink. You cannot use this request to return information about other // instances. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -19657,7 +19620,7 @@ func (c *EC2) DescribeDhcpOptionsRequest(input *DescribeDhcpOptionsInput) (req * // Describes one or more of your DHCP options sets. // // For more information, see DHCP options sets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -25849,8 +25812,8 @@ func (c *EC2) DescribeNetworkAclsRequest(input *DescribeNetworkAclsInput) (req * // // Describes one or more of your network ACLs. // -// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ACLs.html) -// in the Amazon Virtual Private Cloud User Guide. +// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -27984,7 +27947,7 @@ func (c *EC2) DescribeRouteTablesRequest(input *DescribeRouteTablesInput) (req * // implicit associations. // // For more information, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -28376,8 +28339,8 @@ func (c *EC2) DescribeSecurityGroupReferencesRequest(input *DescribeSecurityGrou // DescribeSecurityGroupReferences API operation for Amazon Elastic Compute Cloud. // -// [VPC only] Describes the VPCs on the other side of a VPC peering connection -// that are referencing the security groups you've specified in this request. +// Describes the VPCs on the other side of a VPC peering connection that are +// referencing the security groups you've specified in this request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -28588,17 +28551,6 @@ func (c *EC2) DescribeSecurityGroupsRequest(input *DescribeSecurityGroupsInput) // // Describes the specified security groups or all of your security groups. // -// A security group is for use with instances either in the EC2-Classic platform -// or in a specific VPC. For more information, see Amazon EC2 security groups -// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) -// in the Amazon Elastic Compute Cloud User Guide and Security groups for your -// VPC (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html) -// in the Amazon Virtual Private Cloud User Guide. -// -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -29756,10 +29708,10 @@ func (c *EC2) DescribeStaleSecurityGroupsRequest(input *DescribeStaleSecurityGro // DescribeStaleSecurityGroups API operation for Amazon Elastic Compute Cloud. // -// [VPC only] Describes the stale security group rules for security groups in -// a specified VPC. Rules are stale when they reference a deleted security group -// in the same VPC or in a peer VPC, or if they reference a security group in -// a peer VPC for which the VPC peering connection has been deleted. +// Describes the stale security group rules for security groups in a specified +// VPC. Rules are stale when they reference a deleted security group in the +// same VPC or in a peer VPC, or if they reference a security group in a peer +// VPC for which the VPC peering connection has been deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -30037,8 +29989,8 @@ func (c *EC2) DescribeSubnetsRequest(input *DescribeSubnetsInput) (req *request. // // Describes one or more of your subnets. // -// For more information, see Your VPC and subnets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) -// in the Amazon Virtual Private Cloud User Guide. +// For more information, see Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -33369,11 +33321,9 @@ func (c *EC2) DescribeVpcClassicLinkRequest(input *DescribeVpcClassicLinkInput) // DescribeVpcClassicLink API operation for Amazon Elastic Compute Cloud. // -// Describes the ClassicLink status of one or more VPCs. +// This action is deprecated. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// Describes the ClassicLink status of the specified VPCs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -33452,17 +33402,13 @@ func (c *EC2) DescribeVpcClassicLinkDnsSupportRequest(input *DescribeVpcClassicL // DescribeVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// This action is deprecated. // // Describes the ClassicLink DNS support status of one or more VPCs. If enabled, // the DNS hostname of a linked EC2-Classic instance resolves to its private // IP address when addressed from an instance in the VPC to which it's linked. // Similarly, the DNS hostname of an instance in a VPC resolves to its private -// IP address when addressed from a linked EC2-Classic instance. For more information, -// see ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) -// in the Amazon Elastic Compute Cloud User Guide. +// IP address when addressed from a linked EC2-Classic instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -34731,9 +34677,7 @@ func (c *EC2) DetachClassicLinkVpcRequest(input *DetachClassicLinkVpcInput) (req // DetachClassicLinkVpc API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// This action is deprecated. // // Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance // has been unlinked, the VPC security groups are no longer associated with @@ -35960,13 +35904,11 @@ func (c *EC2) DisableVpcClassicLinkRequest(input *DisableVpcClassicLinkInput) (r // DisableVpcClassicLink API operation for Amazon Elastic Compute Cloud. // +// This action is deprecated. +// // Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC // that has EC2-Classic instances linked to it. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -36038,18 +35980,14 @@ func (c *EC2) DisableVpcClassicLinkDnsSupportRequest(input *DisableVpcClassicLin // DisableVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // +// This action is deprecated. +// // Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve // to public IP addresses when addressed between a linked EC2-Classic instance -// and instances in the VPC to which it's linked. For more information, see -// ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) -// in the Amazon Elastic Compute Cloud User Guide. +// and instances in the VPC to which it's linked. // // You must specify a VPC ID in the request. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -36589,17 +36527,17 @@ func (c *EC2) DisassociateNatGatewayAddressRequest(input *DisassociateNatGateway // Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. // You cannot disassociate your primary EIP. For more information, see Edit // secondary IP address associations (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // While disassociating is in progress, you cannot associate/disassociate additional // EIPs while the connections are being drained. You are, however, allowed to // delete the NAT gateway. // -// An EIP will only be released at the end of MaxDrainDurationSeconds. The EIPs -// stay associated and support the existing connections but do not support any -// new connections (new connections are distributed across the remaining associated -// EIPs). As the existing connections drain out, the EIPs (and the corresponding -// private IPs mapped to them) get released. +// An EIP is released only at the end of MaxDrainDurationSeconds. It stays associated +// and supports the existing connections but does not support any new connections +// (new connections are distributed across the remaining associated EIPs). As +// the existing connections drain out, the EIPs (and the corresponding private +// IP addresses mapped to them) are released. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -36678,7 +36616,7 @@ func (c *EC2) DisassociateRouteTableRequest(input *DisassociateRouteTableInput) // After you perform this action, the subnet no longer uses the routes in the // route table. Instead, it uses the routes in the VPC's main route table. For // more information about route tables, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -38130,17 +38068,14 @@ func (c *EC2) EnableVpcClassicLinkRequest(input *EnableVpcClassicLinkInput) (req // EnableVpcClassicLink API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// This action is deprecated. // // Enables a VPC for ClassicLink. You can then link EC2-Classic instances to // your ClassicLink-enabled VPC to allow communication over private IP addresses. // You cannot enable your VPC for ClassicLink if any of your VPC route tables // have existing routes for address ranges within the 10.0.0.0/8 IP address // range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 -// IP address ranges. For more information, see ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) -// in the Amazon Elastic Compute Cloud User Guide. +// IP address ranges. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -38213,17 +38148,13 @@ func (c *EC2) EnableVpcClassicLinkDnsSupportRequest(input *EnableVpcClassicLinkD // EnableVpcClassicLinkDnsSupport API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// This action is deprecated. // // Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, // the DNS hostname of a linked EC2-Classic instance resolves to its private // IP address when addressed from an instance in the VPC to which it's linked. // Similarly, the DNS hostname of an instance in a VPC resolves to its private -// IP address when addressed from a linked EC2-Classic instance. For more information, -// see ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html) -// in the Amazon Elastic Compute Cloud User Guide. +// IP address when addressed from a linked EC2-Classic instance. // // You must specify a VPC ID in the request. // @@ -39501,6 +39432,9 @@ func (c *EC2) GetFlowLogsIntegrationTemplateRequest(input *GetFlowLogsIntegratio // - Create a set of named queries in Athena that you can use to get started // quickly // +// GetFlowLogsIntegrationTemplate does not support integration between Amazon +// Web Services Transit Gateway Flow Logs and Amazon Athena. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -43260,16 +43194,21 @@ func (c *EC2) ImportInstanceRequest(input *ImportInstanceInput) (req *request.Re // ImportInstance API operation for Amazon Elastic Compute Cloud. // -// Creates an import instance task using metadata from the specified disk image. +// We recommend that you use the ImportImage (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportImage.html) +// API. For more information, see Importing a VM as an image using VM Import/Export +// (https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html) +// in the VM Import/Export User Guide. // -// This API action supports only single-volume VMs. To import multi-volume VMs, -// use ImportImage instead. +// Creates an import instance task using metadata from the specified disk image. // // This API action is not supported by the Command Line Interface (CLI). For // information about using the Amazon EC2 CLI, which is deprecated, see Importing // a VM to Amazon EC2 (https://awsdocs.s3.amazonaws.com/EC2/ec2-clt.pdf#UsingVirtualMachinesinAmazonEC2) // in the Amazon EC2 CLI Reference PDF file. // +// This API action supports only single-volume VMs. To import multi-volume VMs, +// use ImportImage instead. +// // For information about the import manifest referenced by this API action, // see VM Import Manifest (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html). // @@ -48451,22 +48390,8 @@ func (c *EC2) ModifyVpcPeeringConnectionOptionsRequest(input *ModifyVpcPeeringCo // ModifyVpcPeeringConnectionOptions API operation for Amazon Elastic Compute Cloud. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Modifies the VPC peering connection options on one side of a VPC peering -// connection. You can do the following: -// -// - Enable/disable communication over the peering connection between an -// EC2-Classic instance that's linked to your VPC (using ClassicLink) and -// instances in the peer VPC. -// -// - Enable/disable communication over the peering connection between instances -// in your VPC and an EC2-Classic instance that's linked to the peer VPC. -// -// - Enable/disable the ability to resolve public DNS hostnames to private -// IP addresses when queried from instances in the peer VPC. +// connection. // // If the peered VPCs are in the same Amazon Web Services account, you can enable // DNS resolution for queries from the local VPC. This ensures that queries @@ -48561,7 +48486,7 @@ func (c *EC2) ModifyVpcTenancyRequest(input *ModifyVpcTenancyInput) (req *reques // launch. The tenancy of any existing instances in the VPC is not affected. // // For more information, see Dedicated Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html) -// in the Amazon Elastic Compute Cloud User Guide. +// in the Amazon EC2 User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -50703,7 +50628,7 @@ func (c *EC2) ReleaseIpamPoolAllocationRequest(input *ReleaseIpamPoolAllocationI // manual allocations. To remove an allocation for a resource without deleting // the resource, set its monitored state to false using ModifyIpamResourceCidr // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyIpamResourceCidr.html). -// For more information, see Release an allocation (https://docs.aws.amazon.com/vpc/latest/ipam/release-pool-alloc-ipam.html) +// For more information, see Release an allocation (https://docs.aws.amazon.com/vpc/latest/ipam/release-alloc-ipam.html) // in the Amazon VPC IPAM User Guide. // // All EC2 API actions follow an eventual consistency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/query-api-troubleshooting.html#eventual-consistency) @@ -50860,8 +50785,8 @@ func (c *EC2) ReplaceNetworkAclAssociationRequest(input *ReplaceNetworkAclAssoci // // Changes which network ACL a subnet is associated with. By default when you // create a subnet, it's automatically associated with the default network ACL. -// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ACLs.html) -// in the Amazon Virtual Private Cloud User Guide. +// For more information, see Network ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) +// in the Amazon VPC User Guide. // // This is an idempotent operation. // @@ -50938,8 +50863,8 @@ func (c *EC2) ReplaceNetworkAclEntryRequest(input *ReplaceNetworkAclEntryInput) // ReplaceNetworkAclEntry API operation for Amazon Elastic Compute Cloud. // // Replaces an entry (rule) in a network ACL. For more information, see Network -// ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ACLs.html) in -// the Amazon Virtual Private Cloud User Guide. +// ACLs (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -51020,7 +50945,7 @@ func (c *EC2) ReplaceRouteRequest(input *ReplaceRouteInput) (req *request.Reques // reset the local route to its default target. // // For more information, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -51097,7 +51022,7 @@ func (c *EC2) ReplaceRouteTableAssociationRequest(input *ReplaceRouteTableAssoci // or virtual private gateway in a VPC. After the operation completes, the subnet // or gateway uses the routes in the new route table. For more information about // route tables, see Route tables (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // You can also use this operation to change which table is the main route table // in the VPC. Specify the main route table's association ID and the route table @@ -52575,9 +52500,8 @@ func (c *EC2) RevokeSecurityGroupEgressRequest(input *RevokeSecurityGroupEgressI // RevokeSecurityGroupEgress API operation for Amazon Elastic Compute Cloud. // -// [VPC only] Removes the specified outbound (egress) rules from a security -// group for EC2-VPC. This action does not apply to security groups for use -// in EC2-Classic. +// Removes the specified outbound (egress) rules from the specified security +// group. // // You can specify rules using either rule IDs or security group rule properties. // If you use rule properties, the values that you specify (for example, ports) @@ -52588,7 +52512,7 @@ func (c *EC2) RevokeSecurityGroupEgressRequest(input *RevokeSecurityGroupEgressI // ICMP type and code. If the security group rule has a description, you do // not need to specify the description to revoke the rule. // -// [Default VPC] If the values you specify do not match the existing rule's +// For a default VPC, if the values you specify do not match the existing rule's // values, no error is returned, and the output describes the security group // rules that were not revoked. // @@ -52680,9 +52604,9 @@ func (c *EC2) RevokeSecurityGroupIngressRequest(input *RevokeSecurityGroupIngres // type and code. If the security group rule has a description, you do not need // to specify the description to revoke the rule. // -// [EC2-Classic, default VPC] If the values you specify do not match the existing -// rule's values, no error is returned, and the output describes the security -// group rules that were not revoked. +// For a default VPC, if the values you specify do not match the existing rule's +// values, no error is returned, and the output describes the security group +// rules that were not revoked. // // Amazon Web Services recommends that you describe the security group to verify // that the rules were removed. @@ -52690,10 +52614,6 @@ func (c *EC2) RevokeSecurityGroupIngressRequest(input *RevokeSecurityGroupIngres // Rule changes are propagated to instances within the security group as quickly // as possible. However, a small delay might occur. // -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -54182,17 +54102,17 @@ func (c *EC2) UnassignPrivateNatGatewayAddressRequest(input *UnassignPrivateNatG // Unassigns secondary private IPv4 addresses from a private NAT gateway. You // cannot unassign your primary private IP. For more information, see Edit secondary // IP address associations (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary) -// in the Amazon Virtual Private Cloud User Guide. +// in the Amazon VPC User Guide. // // While unassigning is in progress, you cannot assign/unassign additional IP // addresses while the connections are being drained. You are, however, allowed // to delete the NAT gateway. // // A private IP address will only be released at the end of MaxDrainDurationSeconds. -// The private IP addresses stay associated and support the existing connections +// The private IP addresses stay associated and support the existing connections, // but do not support any new connections (new connections are distributed across // the remaining assigned private IP address). After the existing connections -// drain out, the private IP addresses get released. +// drain out, the private IP addresses are released. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -54340,10 +54260,10 @@ func (c *EC2) UpdateSecurityGroupRuleDescriptionsEgressRequest(input *UpdateSecu // UpdateSecurityGroupRuleDescriptionsEgress API operation for Amazon Elastic Compute Cloud. // -// [VPC only] Updates the description of an egress (outbound) security group -// rule. You can replace an existing description, or add a description to a -// rule that did not have one previously. You can remove a description for a -// security group rule by omitting the description parameter in the request. +// Updates the description of an egress (outbound) security group rule. You +// can replace an existing description, or add a description to a rule that +// did not have one previously. You can remove a description for a security +// group rule by omitting the description parameter in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -57948,7 +57868,7 @@ type AssignPrivateNatGatewayAddressInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // The NAT gateway ID. + // The ID of the NAT gateway. // // NatGatewayId is a required field NatGatewayId *string `type:"string" required:"true"` @@ -58025,7 +57945,7 @@ type AssignPrivateNatGatewayAddressOutput struct { // NAT gateway IP addresses. NatGatewayAddresses []*NatGatewayAddress `locationName:"natGatewayAddressSet" locationNameList:"item" type:"list"` - // The NAT gateway ID. + // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` } @@ -58890,7 +58810,7 @@ type AssociateNatGatewayAddressInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // The NAT gateway ID. + // The ID of the NAT gateway. // // NatGatewayId is a required field NatGatewayId *string `type:"string" required:"true"` @@ -58963,7 +58883,7 @@ type AssociateNatGatewayAddressOutput struct { // The IP addresses. NatGatewayAddresses []*NatGatewayAddress `locationName:"natGatewayAddressSet" locationNameList:"item" type:"list"` - // The NAT gateway ID. + // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` } @@ -60110,18 +60030,18 @@ type AttachClassicLinkVpcInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // The ID of one or more of the VPC's security groups. You cannot specify security - // groups from a different VPC. + // The IDs of the security groups. You cannot specify security groups from a + // different VPC. // // Groups is a required field Groups []*string `locationName:"SecurityGroupId" locationNameList:"groupId" type:"list" required:"true"` - // The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC. + // The ID of the EC2-Classic instance. // // InstanceId is a required field InstanceId *string `locationName:"instanceId" type:"string" required:"true"` - // The ID of a ClassicLink-enabled VPC. + // The ID of the ClassicLink-enabled VPC. // // VpcId is a required field VpcId *string `locationName:"vpcId" type:"string" required:"true"` @@ -61346,10 +61266,9 @@ type AuthorizeSecurityGroupIngressInput struct { // VPC, you must specify the security group ID. GroupId *string `type:"string"` - // [EC2-Classic, default VPC] The name of the security group. You must specify - // either the security group ID or the security group name in the request. For - // security groups in a nondefault VPC, you must specify the security group - // ID. + // [Default VPC] The name of the security group. You must specify either the + // security group ID or the security group name in the request. For security + // groups in a nondefault VPC, you must specify the security group ID. GroupName *string `type:"string"` // The sets of IP permissions. @@ -61358,24 +61277,23 @@ type AuthorizeSecurityGroupIngressInput struct { // The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). // To specify icmpv6, use a set of IP permissions. // - // [VPC only] Use -1 to specify all protocols. If you specify -1 or a protocol - // other than tcp, udp, or icmp, traffic on all ports is allowed, regardless - // of any ports you specify. + // Use -1 to specify all protocols. If you specify -1 or a protocol other than + // tcp, udp, or icmp, traffic on all ports is allowed, regardless of any ports + // you specify. // // Alternatively, use a set of IP permissions to specify multiple rules and // a description for the rule. IpProtocol *string `type:"string"` - // [EC2-Classic, default VPC] The name of the source security group. You can't - // specify this parameter in combination with the following parameters: the - // CIDR IP address range, the start of the port range, the IP protocol, and - // the end of the port range. Creates rules that grant full ICMP, UDP, and TCP - // access. To create a rule with a specific IP protocol and port range, use - // a set of IP permissions instead. For EC2-VPC, the source security group must - // be in the same VPC. + // [Default VPC] The name of the source security group. You can't specify this + // parameter in combination with the following parameters: the CIDR IP address + // range, the start of the port range, the IP protocol, and the end of the port + // range. Creates rules that grant full ICMP, UDP, and TCP access. To create + // a rule with a specific IP protocol and port range, use a set of IP permissions + // instead. The source security group must be in the same VPC. SourceSecurityGroupName *string `type:"string"` - // [nondefault VPC] The Amazon Web Services account ID for the source security + // [Nondefault VPC] The Amazon Web Services account ID for the source security // group, if the source security group is in a different account. You can't // specify this parameter in combination with the following parameters: the // CIDR IP address range, the IP protocol, the start of the port range, and @@ -64502,6 +64420,8 @@ func (s *CidrBlock) SetCidrBlock(v string) *CidrBlock { return s } +// Deprecated. +// // Describes the ClassicLink DNS support status of a VPC. type ClassicLinkDnsSupport struct { _ struct{} `type:"structure"` @@ -64543,15 +64463,13 @@ func (s *ClassicLinkDnsSupport) SetVpcId(v string) *ClassicLinkDnsSupport { return s } -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// Deprecated. // // Describes a linked EC2-Classic instance. type ClassicLinkInstance struct { _ struct{} `type:"structure"` - // A list of security groups. + // The security groups. Groups []*GroupIdentifier `locationName:"groupSet" locationNameList:"item" type:"list"` // The ID of the instance. @@ -69888,17 +69806,20 @@ type CreateImageInput struct { // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // By default, when Amazon EC2 creates the new AMI, it reboots the instance - // so that it can take snapshots of the attached volumes while data is at rest, - // in order to ensure a consistent state. You can set the NoReboot parameter - // to true in the API request, or use the --no-reboot option in the CLI to prevent - // Amazon EC2 from shutting down and rebooting the instance. + // Indicates whether or not the instance should be automatically rebooted before + // creating the image. Specify one of the following values: // - // If you choose to bypass the shutdown and reboot process by setting the NoReboot - // parameter to true in the API request, or by using the --no-reboot option - // in the CLI, we can't guarantee the file system integrity of the created image. + // * true - The instance is not rebooted before creating the image. This + // creates crash-consistent snapshots that include only the data that has + // been written to the volumes at the time the snapshots are created. Buffered + // data and data in memory that has not yet been written to the volumes is + // not included in the snapshots. // - // Default: false (follow standard reboot process) + // * false - The instance is rebooted before creating the image. This ensures + // that all buffered data and data in memory is written to the volumes before + // the snapshots are created. + // + // Default: false NoReboot *bool `locationName:"noReboot" type:"boolean"` // The tags to apply to the AMI and snapshots on creation. You can tag the AMI, @@ -72248,20 +72169,20 @@ type CreateNatGatewayInput struct { // an address, a private IPv4 address will be automatically assigned. PrivateIpAddress *string `type:"string"` - // Secondary EIP allocation IDs. For more information about secondary addresses, - // see Create a NAT gateway (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) - // in the Amazon Virtual Private Cloud User Guide. + // Secondary EIP allocation IDs. For more information, see Create a NAT gateway + // (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) + // in the Amazon VPC User Guide. SecondaryAllocationIds []*string `locationName:"SecondaryAllocationId" locationNameList:"AllocationId" type:"list"` // [Private NAT gateway only] The number of secondary private IPv4 addresses // you want to assign to the NAT gateway. For more information about secondary // addresses, see Create a NAT gateway (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) - // in the Amazon Virtual Private Cloud User Guide. + // in the Amazon VPC User Guide. SecondaryPrivateIpAddressCount *int64 `min:"1" type:"integer"` // Secondary private IPv4 addresses. For more information about secondary addresses, // see Create a NAT gateway (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) - // in the Amazon Virtual Private Cloud User Guide. + // in the Amazon VPC User Guide. SecondaryPrivateIpAddresses []*string `locationName:"SecondaryPrivateIpAddress" locationNameList:"item" type:"list"` // The ID of the subnet in which to create the NAT gateway. @@ -74311,9 +74232,7 @@ type CreateSecurityGroupInput struct { // // Constraints: Up to 255 characters in length // - // Constraints for EC2-Classic: ASCII characters - // - // Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* + // Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* // // Description is a required field Description *string `locationName:"GroupDescription" type:"string" required:"true"` @@ -74328,9 +74247,7 @@ type CreateSecurityGroupInput struct { // // Constraints: Up to 255 characters in length. Cannot start with sg-. // - // Constraints for EC2-Classic: ASCII characters - // - // Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* + // Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$* // // GroupName is a required field GroupName *string `type:"string" required:"true"` @@ -74338,7 +74255,7 @@ type CreateSecurityGroupInput struct { // The tags to assign to the security group. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` - // [EC2-VPC] The ID of the VPC. Required for EC2-VPC. + // The ID of the VPC. Required for a nondefault VPC. VpcId *string `type:"string"` } @@ -75068,8 +74985,7 @@ type CreateSubnetInput struct { // // To create a subnet in a Local Zone, set this value to the Local Zone ID, // for example us-west-2-lax-1a. For information about the Regions that support - // Local Zones, see Available Regions (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions) - // in the Amazon Elastic Compute Cloud User Guide. + // Local Zones, see Local Zones locations (http://aws.amazon.com/about-aws/global-infrastructure/localzones/locations/). // // To create a subnet in an Outpost, set this value to the Availability Zone // for the Outpost and specify the Outpost ARN. @@ -78374,7 +78290,8 @@ func (s *CreateVerifiedAccessTrustProviderOutput) SetVerifiedAccessTrustProvider type CreateVolumeInput struct { _ struct{} `type:"structure"` - // The Availability Zone in which to create the volume. + // The ID of the Availability Zone in which to create the volume. For example, + // us-east-1a. // // AvailabilityZone is a required field AvailabilityZone *string `type:"string" required:"true"` @@ -78885,7 +78802,7 @@ type CreateVpcEndpointInput struct { // default security group for the VPC. SecurityGroupIds []*string `locationName:"SecurityGroupId" locationNameList:"item" type:"list"` - // The service name. + // The name of the endpoint service. // // ServiceName is a required field ServiceName *string `type:"string" required:"true"` @@ -78903,7 +78820,7 @@ type CreateVpcEndpointInput struct { // Default: Gateway VpcEndpointType *string `type:"string" enum:"VpcEndpointType"` - // The ID of the VPC for the endpoint. + // The ID of the VPC. // // VpcId is a required field VpcId *string `type:"string" required:"true"` @@ -84244,12 +84161,12 @@ type DeleteSecurityGroupInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // The ID of the security group. Required for a nondefault VPC. + // The ID of the security group. GroupId *string `type:"string"` - // [EC2-Classic, default VPC] The name of the security group. You can specify - // either the security group name or the security group ID. For security groups - // in a nondefault VPC, you must specify the security group ID. + // [Default VPC] The name of the security group. You can specify either the + // security group name or the security group ID. For security groups in a nondefault + // VPC, you must specify the security group ID. GroupName *string `type:"string"` } @@ -89397,7 +89314,7 @@ type DescribeClassicLinkInstancesInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * group-id - The ID of a VPC security group that's associated with the // instance. @@ -89414,11 +89331,10 @@ type DescribeClassicLinkInstancesInput struct { // to find all resources assigned a tag with a specific key, regardless of // the tag value. // - // * vpc-id - The ID of the VPC to which the instance is linked. vpc-id - - // The ID of the VPC that the instance is linked to. + // * vpc-id - The ID of the VPC to which the instance is linked. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` - // One or more instance IDs. Must be instances linked to a VPC through ClassicLink. + // The instance IDs. Must be instances linked to a VPC through ClassicLink. InstanceIds []*string `locationName:"InstanceId" locationNameList:"InstanceId" type:"list"` // The maximum number of items to return for this request. To get the next page @@ -90553,7 +90469,7 @@ type DescribeDhcpOptionsInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * dhcp-options-id - The ID of a DHCP options set. // @@ -90696,10 +90612,10 @@ type DescribeEgressOnlyInternetGatewaysInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // One or more egress-only internet gateway IDs. + // The IDs of the egress-only internet gateways. EgressOnlyInternetGatewayIds []*string `locationName:"EgressOnlyInternetGatewayId" locationNameList:"item" type:"list"` - // One or more filters. + // The filters. // // * tag: - The key/value combination of a tag assigned to the resource. // Use the tag key in the filter name and the tag value as the filter value. @@ -93568,7 +93484,8 @@ type DescribeImagesInput struct { // The filters. // - // * architecture - The image architecture (i386 | x86_64 | arm64). + // * architecture - The image architecture (i386 | x86_64 | arm64 | x86_64_mac + // | arm64_mac). // // * block-device-mapping.delete-on-termination - A Boolean value that indicates // whether the Amazon EBS volume is deleted on instance termination. @@ -95114,8 +95031,8 @@ type DescribeInstanceTypesInput struct { // * bare-metal - Indicates whether it is a bare metal instance type (true // | false). // - // * burstable-performance-supported - Indicates whether it is a burstable - // performance instance type (true | false). + // * burstable-performance-supported - Indicates whether the instance type + // is a burstable performance T instance type (true | false). // // * current-generation - Indicates whether this instance type is the latest // generation instance type of an instance family (true | false). @@ -95211,6 +95128,14 @@ type DescribeInstanceTypesInput struct { // * network-info.network-performance - The network performance (for example, // "25 Gigabit"). // + // * nitro-enclaves-support - Indicates whether Nitro Enclaves is supported + // (supported | unsupported). + // + // * nitro-tpm-support - Indicates whether NitroTPM is supported (supported + // | unsupported). + // + // * nitro-tpm-info.supported-versions - The supported NitroTPM version (2.0). + // // * processor-info.supported-architecture - The CPU architecture (arm64 // | i386 | x86_64). // @@ -95323,12 +95248,6 @@ type DescribeInstanceTypesOutput struct { // The instance type. For more information, see Instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon EC2 User Guide. - // - // When you change your EBS-backed instance type, instance restart or replacement - // behavior depends on the instance type compatibility between the old and new - // types. An instance that's backed by an instance store volume is always replaced. - // For more information, see Change the instance type (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-resize.html) - // in the Amazon EC2 User Guide. InstanceTypes []*InstanceTypeInfo `locationName:"instanceTypeSet" locationNameList:"item" type:"list"` // The token to include in another request to get the next page of items. This @@ -95746,7 +95665,7 @@ type DescribeInternetGatewaysInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * attachment.state - The current state of the attachment between the gateway // and the VPC (available). Present only if a VPC is attached. @@ -95769,7 +95688,7 @@ type DescribeInternetGatewaysInput struct { // the tag value. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` - // One or more internet gateway IDs. + // The IDs of the internet gateways. // // Default: Describes all your internet gateways. InternetGatewayIds []*string `locationName:"internetGatewayId" locationNameList:"item" type:"list"` @@ -98262,7 +98181,7 @@ type DescribeNatGatewaysInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // One or more filters. + // The filters. // // * nat-gateway-id - The ID of the NAT gateway. // @@ -98289,7 +98208,7 @@ type DescribeNatGatewaysInput struct { // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). MaxResults *int64 `min:"5" type:"integer"` - // One or more NAT gateway IDs. + // The IDs of the NAT gateways. NatGatewayIds []*string `locationName:"NatGatewayId" locationNameList:"item" type:"list"` // The token returned from a previous paginated request. Pagination continues @@ -98408,7 +98327,7 @@ type DescribeNetworkAclsInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * association.association-id - The ID of an association ID for the ACL. // @@ -98467,7 +98386,7 @@ type DescribeNetworkAclsInput struct { // more information, see Pagination (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination). MaxResults *int64 `min:"5" type:"integer"` - // One or more network ACL IDs. + // The IDs of the network ACLs. // // Default: Describes all your network ACLs. NetworkAclIds []*string `locationName:"NetworkAclId" locationNameList:"item" type:"list"` @@ -101008,7 +100927,7 @@ type DescribeRouteTablesInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * association.route-table-association-id - The ID of an association ID // for the route table. @@ -101084,7 +101003,7 @@ type DescribeRouteTablesInput struct { // from the end of the items returned by the previous request. NextToken *string `type:"string"` - // One or more route table IDs. + // The IDs of the route tables. // // Default: Describes all your route tables. RouteTableIds []*string `locationName:"RouteTableId" locationNameList:"item" type:"list"` @@ -101825,10 +101744,8 @@ type DescribeSecurityGroupsInput struct { // Default: Describes all of your security groups. GroupIds []*string `locationName:"GroupId" locationNameList:"groupId" type:"list"` - // [EC2-Classic and default VPC only] The names of the security groups. You - // can specify either the security group name or the security group ID. For - // security groups in a nondefault VPC, use the group-name filter to describe - // security groups by name. + // [Default VPC] The names of the security groups. You can specify either the + // security group name or the security group ID. // // Default: Describes all of your security groups. GroupNames []*string `locationName:"GroupName" locationNameList:"GroupName" type:"list"` @@ -103514,7 +103431,7 @@ type DescribeSubnetsInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * availability-zone - The Availability Zone for the subnet. You can also // use availabilityZone as the filter name. @@ -103609,7 +103526,7 @@ type DescribeSubnetsInput struct { // from the end of the items returned by the previous request. NextToken *string `type:"string"` - // One or more subnet IDs. + // The IDs of the subnets. // // Default: Describes all your subnets. SubnetIds []*string `locationName:"SubnetId" locationNameList:"SubnetId" type:"list"` @@ -107132,7 +107049,7 @@ type DescribeVpcClassicLinkDnsSupportInput struct { // from the end of the items returned by the previous request. NextToken *string `locationName:"nextToken" min:"1" type:"string"` - // One or more VPC IDs. + // The IDs of the VPCs. VpcIds []*string `locationNameList:"VpcId" type:"list"` } @@ -107238,7 +107155,7 @@ type DescribeVpcClassicLinkInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * is-classic-link-enabled - Whether the VPC is enabled for ClassicLink // (true | false). @@ -107254,7 +107171,7 @@ type DescribeVpcClassicLinkInput struct { // the tag value. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` - // One or more VPCs for which you want to describe the ClassicLink status. + // The VPCs for which you want to describe the ClassicLink status. VpcIds []*string `locationName:"VpcId" locationNameList:"VpcId" type:"list"` } @@ -107297,7 +107214,7 @@ func (s *DescribeVpcClassicLinkInput) SetVpcIds(v []*string) *DescribeVpcClassic type DescribeVpcClassicLinkOutput struct { _ struct{} `type:"structure"` - // The ClassicLink status of one or more VPCs. + // The ClassicLink status of the VPCs. Vpcs []*VpcClassicLink `locationName:"vpcSet" locationNameList:"item" type:"list"` } @@ -108130,7 +108047,7 @@ type DescribeVpcPeeringConnectionsInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * accepter-vpc-info.cidr-block - The IPv4 CIDR block of the accepter VPC. // @@ -108177,7 +108094,7 @@ type DescribeVpcPeeringConnectionsInput struct { // from the end of the items returned by the previous request. NextToken *string `type:"string"` - // One or more VPC peering connection IDs. + // The IDs of the VPC peering connections. // // Default: Describes all your VPC peering connections. VpcPeeringConnectionIds []*string `locationName:"VpcPeeringConnectionId" locationNameList:"item" type:"list"` @@ -108294,7 +108211,7 @@ type DescribeVpcsInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // One or more filters. + // The filters. // // * cidr - The primary IPv4 CIDR block of the VPC. The CIDR block you specify // must exactly match the VPC's CIDR block for information to be returned @@ -108352,7 +108269,7 @@ type DescribeVpcsInput struct { // from the end of the items returned by the previous request. NextToken *string `type:"string"` - // One or more VPC IDs. + // The IDs of the VPCs. // // Default: Describes all your VPCs. VpcIds []*string `locationName:"VpcId" locationNameList:"VpcId" type:"list"` @@ -109456,7 +109373,7 @@ type DhcpConfiguration struct { // The name of a DHCP option. Key *string `locationName:"key" type:"string"` - // One or more values for the DHCP option. + // The values for the DHCP option. Values []*AttributeValue `locationName:"valueSet" locationNameList:"item" type:"list"` } @@ -109490,11 +109407,11 @@ func (s *DhcpConfiguration) SetValues(v []*AttributeValue) *DhcpConfiguration { return s } -// Describes a set of DHCP options. +// The set of DHCP options. type DhcpOptions struct { _ struct{} `type:"structure"` - // One or more DHCP options in the set. + // The DHCP options in the set. DhcpConfigurations []*DhcpConfiguration `locationName:"dhcpConfigurationSet" locationNameList:"item" type:"list"` // The ID of the set of DHCP options. @@ -111591,7 +111508,7 @@ type DisassociateNatGatewayAddressInput struct { // seconds. MaxDrainDurationSeconds *int64 `min:"1" type:"integer"` - // The NAT gateway ID. + // The ID of the NAT gateway. // // NatGatewayId is a required field NatGatewayId *string `type:"string" required:"true"` @@ -111664,7 +111581,7 @@ type DisassociateNatGatewayAddressOutput struct { // Information about the NAT gateway IP addresses. NatGatewayAddresses []*NatGatewayAddress `locationName:"natGatewayAddressSet" locationNameList:"item" type:"list"` - // The NAT gateway ID. + // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` } @@ -127018,9 +126935,7 @@ type ImportImageInput struct { // // * Key ID // - // * Key alias. The alias ARN contains the arn:aws:kms namespace, followed - // by the Region of the key, the Amazon Web Services account ID of the key - // owner, the alias namespace, and then the key alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. + // * Key alias // // * ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed // by the Region of the key, the Amazon Web Services account ID of the key @@ -127058,7 +126973,9 @@ type ImportImageInput struct { // in the VM Import/Export User Guide. LicenseType *string `type:"string"` - // The operating system of the virtual machine. + // The operating system of the virtual machine. If you import a VM that is compatible + // with Unified Extensible Firmware Interface (UEFI) using an EBS snapshot, + // you must specify a value for the platform. // // Valid values: Windows | Linux Platform *string `type:"string"` @@ -128181,9 +128098,7 @@ type ImportSnapshotInput struct { // // * Key ID // - // * Key alias. The alias ARN contains the arn:aws:kms namespace, followed - // by the Region of the key, the Amazon Web Services account ID of the key - // owner, the alias namespace, and then the key alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. + // * Key alias // // * ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed // by the Region of the key, the Amazon Web Services account ID of the key @@ -131166,6 +131081,9 @@ func (s *InstancePrivateIpAddress) SetPrivateIpAddress(v string) *InstancePrivat // The attributes for the instance types. When you specify instance attributes, // Amazon EC2 will identify instance types with these attributes. // +// You must specify VCpuCount and MemoryMiB. All other attributes are optional. +// Any unspecified optional attribute is set to its default. +// // When you specify multiple attributes, you get instance types that satisfy // all of the specified attributes. If you specify multiple values for an attribute, // you get instance types that satisfy any of the specified values. @@ -131180,8 +131098,13 @@ func (s *InstancePrivateIpAddress) SetPrivateIpAddress(v string) *InstancePrivat // - ExcludedInstanceTypes - The instance types to exclude from the list, // even if they match your specified attributes. // -// You must specify VCpuCount and MemoryMiB. All other attributes are optional. -// Any unspecified optional attribute is set to its default. +// If you specify InstanceRequirements, you can't specify InstanceType. +// +// Attribute-based instance type selection is only supported when using Auto +// Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan +// to use the launch template in the launch instance wizard (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html) +// or with the RunInstances API (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html), +// you can't specify InstanceRequirements. // // For more information, see Attribute-based instance type selection for EC2 // Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), @@ -131601,6 +131524,9 @@ func (s *InstanceRequirements) SetVCpuCount(v *VCpuCountRange) *InstanceRequirem // The attributes for the instance types. When you specify instance attributes, // Amazon EC2 will identify instance types with these attributes. // +// You must specify VCpuCount and MemoryMiB. All other attributes are optional. +// Any unspecified optional attribute is set to its default. +// // When you specify multiple attributes, you get instance types that satisfy // all of the specified attributes. If you specify multiple values for an attribute, // you get instance types that satisfy any of the specified values. @@ -131615,8 +131541,14 @@ func (s *InstanceRequirements) SetVCpuCount(v *VCpuCountRange) *InstanceRequirem // - ExcludedInstanceTypes - The instance types to exclude from the list, // even if they match your specified attributes. // -// You must specify VCpuCount and MemoryMiB. All other attributes are optional. -// Any unspecified optional attribute is set to its default. +// If you specify InstanceRequirements, you can't specify InstanceType. +// +// Attribute-based instance type selection is only supported when using Auto +// Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan +// to use the launch template in the launch instance wizard (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), +// or with the RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) +// API or AWS::EC2::Instance (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) +// Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements. // // For more information, see Attribute-based instance type selection for EC2 // Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), @@ -131812,8 +131744,10 @@ type InstanceRequirementsRequest struct { // MemoryMiB is a required field MemoryMiB *MemoryMiBRequest `type:"structure" required:"true"` - // The minimum and maximum amount of network bandwidth, in gigabits per second - // (Gbps). + // The minimum and maximum amount of baseline network bandwidth, in gigabits + // per second (Gbps). For more information, see Amazon EC2 instance network + // bandwidth (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html) + // in the Amazon EC2 User Guide. // // Default: No minimum or maximum limits NetworkBandwidthGbps *NetworkBandwidthGbpsRequest `type:"structure"` @@ -132695,7 +132629,8 @@ type InstanceTypeInfo struct { // Indicates whether the instance is a bare metal instance type. BareMetal *bool `locationName:"bareMetal" type:"boolean"` - // Indicates whether the instance type is a burstable performance instance type. + // Indicates whether the instance type is a burstable performance T instance + // type. For more information, see Burstable performance instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html). BurstablePerformanceSupported *bool `locationName:"burstablePerformanceSupported" type:"boolean"` // Indicates whether the instance type is current generation. @@ -133251,21 +133186,20 @@ type IpPermission struct { // The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers // (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). // - // [VPC only] Use -1 to specify all protocols. When authorizing security group - // rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 - // allows traffic on all ports, regardless of any port range you specify. For - // tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range - // is optional; if you omit the port range, traffic for all types and codes - // is allowed. + // Use -1 to specify all protocols. When authorizing security group rules, specifying + // -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic + // on all ports, regardless of any port range you specify. For tcp, udp, and + // icmp, you must specify a port range. For icmpv6, the port range is optional; + // if you omit the port range, traffic for all types and codes is allowed. IpProtocol *string `locationName:"ipProtocol" type:"string"` // The IPv4 ranges. IpRanges []*IpRange `locationName:"ipRanges" locationNameList:"item" type:"list"` - // [VPC only] The IPv6 ranges. + // The IPv6 ranges. Ipv6Ranges []*Ipv6Range `locationName:"ipv6Ranges" locationNameList:"item" type:"list"` - // [VPC only] The prefix list IDs. + // The prefix list IDs. PrefixListIds []*PrefixListId `locationName:"prefixListIds" locationNameList:"item" type:"list"` // If the protocol is TCP or UDP, this is the end of the port range. If the @@ -135488,7 +135422,7 @@ func (s *Ipv6PrefixSpecificationResponse) SetIpv6Prefix(v string) *Ipv6PrefixSpe return s } -// [EC2-VPC only] Describes an IPv6 range. +// Describes an IPv6 range. type Ipv6Range struct { _ struct{} `type:"structure"` @@ -136372,7 +136306,8 @@ func (s *LaunchTemplateConfig) SetOverrides(v []*LaunchTemplateOverrides) *Launc type LaunchTemplateCpuOptions struct { _ struct{} `type:"structure"` - // Indicates whether the instance is enabled for AMD SEV-SNP. + // Indicates whether the instance is enabled for AMD SEV-SNP. For more information, + // see AMD SEV-SNP (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html). AmdSevSnp *string `locationName:"amdSevSnp" type:"string" enum:"AmdSevSnpSpecification"` // The number of CPU cores for the instance. @@ -136424,7 +136359,8 @@ type LaunchTemplateCpuOptionsRequest struct { _ struct{} `type:"structure"` // Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is - // supported with M6a, R6a, and C6a instance types only. + // supported with M6a, R6a, and C6a instance types only. For more information, + // see AMD SEV-SNP (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html). AmdSevSnp *string `type:"string" enum:"AmdSevSnpSpecification"` // The number of CPU cores for the instance. @@ -143011,7 +142947,7 @@ type ModifyInstanceMetadataOptionsInput struct { HttpEndpoint *string `type:"string" enum:"InstanceMetadataEndpointState"` // Enables or disables the IPv6 endpoint for the instance metadata service. - // This setting applies only if you have enabled the HTTP metadata endpoint. + // Applies only if you enabled the HTTP metadata endpoint. HttpProtocolIpv6 *string `type:"string" enum:"InstanceMetadataProtocolState"` // The desired HTTP PUT response hop limit for instance metadata requests. The @@ -150225,7 +150161,7 @@ type NetworkAcl struct { // Any associations between the network ACL and one or more subnets Associations []*NetworkAclAssociation `locationName:"associationSet" locationNameList:"item" type:"list"` - // One or more entries (rules) in the network ACL. + // The entries (rules) in the network ACL. Entries []*NetworkAclEntry `locationName:"entrySet" locationNameList:"item" type:"list"` // Indicates whether this is the default network ACL for the VPC. @@ -153145,10 +153081,6 @@ func (s *PeeringAttachmentStatus) SetMessage(v string) *PeeringAttachmentStatus return s } -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Describes the VPC peering connection options. type PeeringConnectionOptions struct { _ struct{} `type:"structure"` @@ -153157,12 +153089,10 @@ type PeeringConnectionOptions struct { // to private IP addresses when queried from instances in the peer VPC. AllowDnsResolutionFromRemoteVpc *bool `locationName:"allowDnsResolutionFromRemoteVpc" type:"boolean"` - // If true, enables outbound communication from an EC2-Classic instance that's - // linked to a local VPC using ClassicLink to instances in a peer VPC. + // Deprecated. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `locationName:"allowEgressFromLocalClassicLinkToRemoteVpc" type:"boolean"` - // If true, enables outbound communication from instances in a local VPC to - // an EC2-Classic instance that's linked to a peer VPC using ClassicLink. + // Deprecated. AllowEgressFromLocalVpcToRemoteClassicLink *bool `locationName:"allowEgressFromLocalVpcToRemoteClassicLink" type:"boolean"` } @@ -153202,10 +153132,6 @@ func (s *PeeringConnectionOptions) SetAllowEgressFromLocalVpcToRemoteClassicLink return s } -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // The VPC peering connection options. type PeeringConnectionOptionsRequest struct { _ struct{} `type:"structure"` @@ -153214,12 +153140,10 @@ type PeeringConnectionOptionsRequest struct { // addresses when queried from instances in the peer VPC. AllowDnsResolutionFromRemoteVpc *bool `type:"boolean"` - // If true, enables outbound communication from an EC2-Classic instance that's - // linked to a local VPC using ClassicLink to instances in a peer VPC. + // Deprecated. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `type:"boolean"` - // If true, enables outbound communication from instances in a local VPC to - // an EC2-Classic instance that's linked to a peer VPC using ClassicLink. + // Deprecated. AllowEgressFromLocalVpcToRemoteClassicLink *bool `type:"boolean"` } @@ -159265,7 +159189,37 @@ type RequestLaunchTemplateData struct { // The attributes for the instance types. When you specify instance attributes, // Amazon EC2 will identify instance types with these attributes. // + // You must specify VCpuCount and MemoryMiB. All other attributes are optional. + // Any unspecified optional attribute is set to its default. + // + // When you specify multiple attributes, you get instance types that satisfy + // all of the specified attributes. If you specify multiple values for an attribute, + // you get instance types that satisfy any of the specified values. + // + // To limit the list of instance types from which Amazon EC2 can identify matching + // instance types, you can use one of the following parameters, but not both + // in the same request: + // + // * AllowedInstanceTypes - The instance types to include in the list. All + // other instance types are ignored, even if they match your specified attributes. + // + // * ExcludedInstanceTypes - The instance types to exclude from the list, + // even if they match your specified attributes. + // // If you specify InstanceRequirements, you can't specify InstanceType. + // + // Attribute-based instance type selection is only supported when using Auto + // Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan + // to use the launch template in the launch instance wizard (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html), + // or with the RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) + // API or AWS::EC2::Instance (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html) + // Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements. + // + // For more information, see Attribute-based instance type selection for EC2 + // Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), + // Attribute-based instance type selection for Spot Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), + // and Spot placement score (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) + // in the Amazon EC2 User Guide. InstanceRequirements *InstanceRequirementsRequest `type:"structure"` // The instance type. For more information, see Instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) @@ -163233,15 +163187,12 @@ type RevokeSecurityGroupIngressInput struct { // types. FromPort *int64 `type:"integer"` - // The ID of the security group. You must specify either the security group - // ID or the security group name in the request. For security groups in a nondefault - // VPC, you must specify the security group ID. + // The ID of the security group. GroupId *string `type:"string"` - // [EC2-Classic, default VPC] The name of the security group. You must specify - // either the security group ID or the security group name in the request. For - // security groups in a nondefault VPC, you must specify the security group - // ID. + // [Default VPC] The name of the security group. You must specify either the + // security group ID or the security group name in the request. For security + // groups in a nondefault VPC, you must specify the security group ID. GroupName *string `type:"string"` // The sets of IP permissions. You can't specify a source security group and @@ -163255,20 +163206,14 @@ type RevokeSecurityGroupIngressInput struct { // The IDs of the security group rules. SecurityGroupRuleIds []*string `locationName:"SecurityGroupRuleId" locationNameList:"item" type:"list"` - // [EC2-Classic, default VPC] The name of the source security group. You can't - // specify this parameter in combination with the following parameters: the - // CIDR IP address range, the start of the port range, the IP protocol, and - // the end of the port range. For EC2-VPC, the source security group must be - // in the same VPC. To revoke a specific rule for an IP protocol and port range, - // use a set of IP permissions instead. + // [Default VPC] The name of the source security group. You can't specify this + // parameter in combination with the following parameters: the CIDR IP address + // range, the start of the port range, the IP protocol, and the end of the port + // range. The source security group must be in the same VPC. To revoke a specific + // rule for an IP protocol and port range, use a set of IP permissions instead. SourceSecurityGroupName *string `type:"string"` - // [EC2-Classic] The Amazon Web Services account ID of the source security group, - // if the source security group is in a different account. You can't specify - // this parameter in combination with the following parameters: the CIDR IP - // address range, the IP protocol, the start of the port range, and the end - // of the port range. To revoke a specific rule for an IP protocol and port - // range, use a set of IP permissions instead. + // Not supported. SourceSecurityGroupOwnerId *string `type:"string"` // If the protocol is TCP or UDP, this is the end of the port range. If the @@ -164035,14 +163980,6 @@ type RunInstancesInput struct { // The instance type. For more information, see Instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon EC2 User Guide. - // - // When you change your EBS-backed instance type, instance restart or replacement - // behavior depends on the instance type compatibility between the old and new - // types. An instance that's backed by an instance store volume is always replaced. - // For more information, see Change the instance type (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-resize.html) - // in the Amazon EC2 User Guide. - // - // Default: m1.small InstanceType *string `type:"string" enum:"InstanceType"` // The number of IPv6 addresses to associate with the primary network interface. @@ -164129,7 +164066,8 @@ type RunInstancesInput struct { Placement *Placement `type:"structure"` // The options for the instance hostname. The default values are inherited from - // the subnet. + // the subnet. Applies only if creating a network interface, not attaching an + // existing one. PrivateDnsNameOptions *PrivateDnsNameOptionsRequest `type:"structure"` // The primary IPv4 address. You must specify a value from the IPv4 address @@ -166389,7 +166327,7 @@ type SecurityGroup struct { // The inbound rules associated with the security group. IpPermissions []*IpPermission `locationName:"ipPermissions" locationNameList:"item" type:"list"` - // [VPC only] The outbound rules associated with the security group. + // The outbound rules associated with the security group. IpPermissionsEgress []*IpPermission `locationName:"ipPermissionsEgress" locationNameList:"item" type:"list"` // The Amazon Web Services account ID of the owner of the security group. @@ -166398,7 +166336,7 @@ type SecurityGroup struct { // Any tags assigned to the security group. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` - // [VPC only] The ID of the VPC for the security group. + // The ID of the VPC for the security group. VpcId *string `locationName:"vpcId" type:"string"` } @@ -176740,7 +176678,7 @@ type UnassignPrivateNatGatewayAddressInput struct { // seconds. MaxDrainDurationSeconds *int64 `min:"1" type:"integer"` - // The NAT gateway ID. + // The ID of the NAT gateway. // // NatGatewayId is a required field NatGatewayId *string `type:"string" required:"true"` @@ -176818,7 +176756,7 @@ type UnassignPrivateNatGatewayAddressOutput struct { // Information about the NAT gateway IP addresses. NatGatewayAddresses []*NatGatewayAddress `locationName:"natGatewayAddressSet" locationNameList:"item" type:"list"` - // The NAT gateway ID. + // The ID of the NAT gateway. NatGatewayId *string `locationName:"natGatewayId" type:"string"` } @@ -177124,7 +177062,7 @@ type UpdateSecurityGroupRuleDescriptionsEgressInput struct { GroupId *string `type:"string"` // [Default VPC] The name of the security group. You must specify either the - // security group ID or the security group name in the request. + // security group ID or the security group name. GroupName *string `type:"string"` // The IP permissions for the security group rule. You must specify either the @@ -177229,18 +177167,17 @@ type UpdateSecurityGroupRuleDescriptionsIngressInput struct { // VPC, you must specify the security group ID. GroupId *string `type:"string"` - // [EC2-Classic, default VPC] The name of the security group. You must specify - // either the security group ID or the security group name in the request. For - // security groups in a nondefault VPC, you must specify the security group - // ID. + // [Default VPC] The name of the security group. You must specify either the + // security group ID or the security group name. For security groups in a nondefault + // VPC, you must specify the security group ID. GroupName *string `type:"string"` // The IP permissions for the security group rule. You must specify either IP // permissions or a description. IpPermissions []*IpPermission `locationNameList:"item" type:"list"` - // [VPC only] The description for the ingress security group rules. You must - // specify either a description or IP permissions. + // The description for the ingress security group rules. You must specify either + // a description or IP permissions. SecurityGroupRuleDescriptions []*SecurityGroupRuleDescription `locationName:"SecurityGroupRuleDescription" locationNameList:"item" type:"list"` } @@ -177440,10 +177377,6 @@ func (s *UserData) SetData(v string) *UserData { } // Describes a security group and Amazon Web Services account ID pair. -// -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. type UserIdGroupPair struct { _ struct{} `type:"structure"` @@ -177457,8 +177390,7 @@ type UserIdGroupPair struct { // The ID of the security group. GroupId *string `locationName:"groupId" type:"string"` - // The name of the security group. In a request, use this parameter for a security - // group in EC2-Classic or a default VPC only. For a security group in a nondefault + // [Default VPC] The name of the security group. For a security group in a nondefault // VPC, use the security group ID. // // For a referenced security group in another VPC, this value is not returned @@ -177473,9 +177405,6 @@ type UserIdGroupPair struct { // For a referenced security group in another VPC, the account ID of the referenced // security group is returned in the response. If the referenced security group // is deleted, this value is not returned. - // - // [EC2-Classic] Required when adding or removing rules that reference a security - // group in another Amazon Web Services account. UserId *string `locationName:"userId" type:"string"` // The ID of the VPC for the referenced security group, if applicable. @@ -180239,9 +180168,7 @@ func (s *VpcCidrBlockState) SetStatusMessage(v string) *VpcCidrBlockState { return s } -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. +// Deprecated. // // Describes whether a VPC is enabled for ClassicLink. type VpcClassicLink struct { @@ -180760,10 +180687,6 @@ func (s *VpcPeeringConnection) SetVpcPeeringConnectionId(v string) *VpcPeeringCo return s } -// We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic -// to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) -// in the Amazon Elastic Compute Cloud User Guide. -// // Describes the VPC peering connection options. type VpcPeeringConnectionOptionsDescription struct { _ struct{} `type:"structure"` @@ -180772,12 +180695,10 @@ type VpcPeeringConnectionOptionsDescription struct { // IP addresses when queried from instances in a peer VPC. AllowDnsResolutionFromRemoteVpc *bool `locationName:"allowDnsResolutionFromRemoteVpc" type:"boolean"` - // Indicates whether a local ClassicLink connection can communicate with the - // peer VPC over the VPC peering connection. + // Deprecated. AllowEgressFromLocalClassicLinkToRemoteVpc *bool `locationName:"allowEgressFromLocalClassicLinkToRemoteVpc" type:"boolean"` - // Indicates whether a local VPC can communicate with a ClassicLink connection - // in the peer VPC over the VPC peering connection. + // Deprecated. AllowEgressFromLocalVpcToRemoteClassicLink *bool `locationName:"allowEgressFromLocalVpcToRemoteClassicLink" type:"boolean"` } diff --git a/service/managedgrafana/api.go b/service/managedgrafana/api.go index 7e8f883c157..612ddb3b764 100644 --- a/service/managedgrafana/api.go +++ b/service/managedgrafana/api.go @@ -1100,6 +1100,155 @@ func (c *ManagedGrafana) ListTagsForResourceWithContext(ctx aws.Context, input * return out, req.Send() } +const opListVersions = "ListVersions" + +// ListVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListVersions for more information on using the ListVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListVersionsRequest method. +// req, resp := client.ListVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/grafana-2020-08-18/ListVersions +func (c *ManagedGrafana) ListVersionsRequest(input *ListVersionsInput) (req *request.Request, output *ListVersionsOutput) { + op := &request.Operation{ + Name: opListVersions, + HTTPMethod: "GET", + HTTPPath: "/versions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListVersionsInput{} + } + + output = &ListVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListVersions API operation for Amazon Managed Grafana. +// +// Lists available versions of Grafana. These are available when calling CreateWorkspace. +// Optionally, include a workspace to list the versions to which it can be upgraded. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Managed Grafana's +// API operation ListVersions for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// - ThrottlingException +// The request was denied because of request throttling. Retry the request. +// +// - ValidationException +// The value of a parameter in the request caused an error. +// +// - AccessDeniedException +// You do not have sufficient permissions to perform this action. +// +// - InternalServerException +// Unexpected error while processing the request. Retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/grafana-2020-08-18/ListVersions +func (c *ManagedGrafana) ListVersions(input *ListVersionsInput) (*ListVersionsOutput, error) { + req, out := c.ListVersionsRequest(input) + return out, req.Send() +} + +// ListVersionsWithContext is the same as ListVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ManagedGrafana) ListVersionsWithContext(ctx aws.Context, input *ListVersionsInput, opts ...request.Option) (*ListVersionsOutput, error) { + req, out := c.ListVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListVersionsPages iterates over the pages of a ListVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListVersions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListVersions operation. +// pageNum := 0 +// err := client.ListVersionsPages(params, +// func(page *managedgrafana.ListVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ManagedGrafana) ListVersionsPages(input *ListVersionsInput, fn func(*ListVersionsOutput, bool) bool) error { + return c.ListVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListVersionsPagesWithContext same as ListVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ManagedGrafana) ListVersionsPagesWithContext(ctx aws.Context, input *ListVersionsInput, fn func(*ListVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListWorkspaces = "ListWorkspaces" // ListWorkspacesRequest generates a "aws/request.Request" representing the @@ -2502,7 +2651,7 @@ type CreateWorkspaceInput struct { // Specifies the version of Grafana to support in the new workspace. // - // Supported values are 8.4 and 9.4. + // To get a list of supported version, use the ListVersions operation. GrafanaVersion *string `locationName:"grafanaVersion" min:"1" type:"string"` // Configuration for network access to your workspace. @@ -2556,6 +2705,9 @@ type CreateWorkspaceInput struct { // The configuration settings for an Amazon VPC that contains data sources for // your Grafana workspace to connect to. + // + // Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) + // Region (ap-northeast-2). VpcConfiguration *VpcConfiguration `locationName:"vpcConfiguration" type:"structure"` // This parameter is for internal use only, and should not be used. @@ -3131,6 +3283,9 @@ type DescribeWorkspaceConfigurationOutput struct { // // Configuration is a required field Configuration *string `locationName:"configuration" min:"2" type:"string" required:"true"` + + // The supported Grafana version for the workspace. + GrafanaVersion *string `locationName:"grafanaVersion" min:"1" type:"string"` } // String returns the string representation. @@ -3157,6 +3312,12 @@ func (s *DescribeWorkspaceConfigurationOutput) SetConfiguration(v string) *Descr return s } +// SetGrafanaVersion sets the GrafanaVersion field's value. +func (s *DescribeWorkspaceConfigurationOutput) SetGrafanaVersion(v string) *DescribeWorkspaceConfigurationOutput { + s.GrafanaVersion = &v + return s +} + type DescribeWorkspaceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3693,6 +3854,112 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +type ListVersionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to include in the response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token to use when requesting the next set of results. You receive this + // token from a previous ListVersions operation. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The ID of the workspace to list the available upgrade versions. If not included, + // lists all versions of Grafana that are supported for CreateWorkspace. + WorkspaceId *string `location:"querystring" locationName:"workspace-id" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVersionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListVersionsInput) SetMaxResults(v int64) *ListVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVersionsInput) SetNextToken(v string) *ListVersionsInput { + s.NextToken = &v + return s +} + +// SetWorkspaceId sets the WorkspaceId field's value. +func (s *ListVersionsInput) SetWorkspaceId(v string) *ListVersionsInput { + s.WorkspaceId = &v + return s +} + +type ListVersionsOutput struct { + _ struct{} `type:"structure"` + + // The Grafana versions available to create. If a workspace ID is included in + // the request, the Grafana versions to which this workspace can be upgraded. + GrafanaVersions []*string `locationName:"grafanaVersions" type:"list"` + + // The token to use in a subsequent ListVersions operation to return the next + // set of results. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVersionsOutput) GoString() string { + return s.String() +} + +// SetGrafanaVersions sets the GrafanaVersions field's value. +func (s *ListVersionsOutput) SetGrafanaVersions(v []*string) *ListVersionsOutput { + s.GrafanaVersions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVersionsOutput) SetNextToken(v string) *ListVersionsOutput { + s.NextToken = &v + return s +} + type ListWorkspacesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3794,19 +4061,29 @@ func (s *ListWorkspacesOutput) SetWorkspaces(v []*WorkspaceSummary) *ListWorkspa // // When this is configured, only listed IP addresses and VPC endpoints will // be able to access your workspace. Standard Grafana authentication and authorization -// will still be required. +// are still required. +// +// Access is granted to a caller that is in either the IP address list or the +// VPC endpoint list - they do not need to be in both. // // If this is not configured, or is removed, then all IP addresses and VPC endpoints -// will be allowed. Standard Grafana authentication and authorization will still -// be required. +// are allowed. Standard Grafana authentication and authorization are still +// required. +// +// While both prefixListIds and vpceIds are required, you can pass in an empty +// array of strings for either parameter if you do not want to allow any of +// that type. +// +// If both are passed as empty arrays, no traffic is allowed to the workspace, +// because only explicitly allowed connections are accepted. type NetworkAccessConfiguration struct { _ struct{} `type:"structure"` // An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP // addresses. The IP addresses specified are allowed to access your workspace. - // If the list is not included in the configuration then no IP addresses will - // be allowed to access the workspace. You create a prefix list using the Amazon - // VPC console. + // If the list is not included in the configuration (passed an empty array) + // then no IP addresses are allowed to access the workspace. You create a prefix + // list using the Amazon VPC console. // // Prefix list IDs have the format pl-1a2b3c4d . // @@ -3820,7 +4097,8 @@ type NetworkAccessConfiguration struct { // An array of Amazon VPC endpoint IDs for the workspace. You can create VPC // endpoints to your Amazon Managed Grafana workspace for access from within // a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints - // specified here will be allowed to access the workspace. + // specified here are allowed to access the workspace. If you pass in an empty + // array of strings, then no VPCs are allowed to access the workspace. // // VPC endpoint IDs have the format vpce-1a2b3c4d . // @@ -3830,7 +4108,7 @@ type NetworkAccessConfiguration struct { // // The only VPC endpoints that can be specified here are interface VPC endpoints // for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace - // service endpoint). Other VPC endpoints will be ignored. + // service endpoint). Other VPC endpoints are ignored. // // VpceIds is a required field VpceIds []*string `locationName:"vpceIds" type:"list" required:"true"` @@ -4900,6 +5178,15 @@ type UpdateWorkspaceConfigurationInput struct { // Configuration is a required field Configuration *string `locationName:"configuration" min:"2" type:"string" required:"true"` + // Specifies the version of Grafana to support in the new workspace. + // + // Can only be used to upgrade (for example, from 8.4 to 9.4), not downgrade + // (for example, from 9.4 to 8.4). + // + // To know what versions are available to upgrade to for a specific workspace, + // see the ListVersions operation. + GrafanaVersion *string `locationName:"grafanaVersion" min:"1" type:"string"` + // The ID of the workspace to update. // // WorkspaceId is a required field @@ -4933,6 +5220,9 @@ func (s *UpdateWorkspaceConfigurationInput) Validate() error { if s.Configuration != nil && len(*s.Configuration) < 2 { invalidParams.Add(request.NewErrParamMinLen("Configuration", 2)) } + if s.GrafanaVersion != nil && len(*s.GrafanaVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GrafanaVersion", 1)) + } if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } @@ -4952,6 +5242,12 @@ func (s *UpdateWorkspaceConfigurationInput) SetConfiguration(v string) *UpdateWo return s } +// SetGrafanaVersion sets the GrafanaVersion field's value. +func (s *UpdateWorkspaceConfigurationInput) SetGrafanaVersion(v string) *UpdateWorkspaceConfigurationInput { + s.GrafanaVersion = &v + return s +} + // SetWorkspaceId sets the WorkspaceId field's value. func (s *UpdateWorkspaceConfigurationInput) SetWorkspaceId(v string) *UpdateWorkspaceConfigurationInput { s.WorkspaceId = &v @@ -5468,6 +5764,9 @@ func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { // your Grafana workspace to connect to. // // Provided securityGroupIds and subnetIds must be part of the same VPC. +// +// Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) +// Region (ap-northeast-2). type VpcConfiguration struct { _ struct{} `type:"structure"` @@ -6242,6 +6541,12 @@ const ( // WorkspaceStatusLicenseRemovalFailed is a WorkspaceStatus enum value WorkspaceStatusLicenseRemovalFailed = "LICENSE_REMOVAL_FAILED" + + // WorkspaceStatusVersionUpdating is a WorkspaceStatus enum value + WorkspaceStatusVersionUpdating = "VERSION_UPDATING" + + // WorkspaceStatusVersionUpdateFailed is a WorkspaceStatus enum value + WorkspaceStatusVersionUpdateFailed = "VERSION_UPDATE_FAILED" ) // WorkspaceStatus_Values returns all elements of the WorkspaceStatus enum @@ -6258,5 +6563,7 @@ func WorkspaceStatus_Values() []string { WorkspaceStatusUpdateFailed, WorkspaceStatusUpgradeFailed, WorkspaceStatusLicenseRemovalFailed, + WorkspaceStatusVersionUpdating, + WorkspaceStatusVersionUpdateFailed, } } diff --git a/service/managedgrafana/managedgrafanaiface/interface.go b/service/managedgrafana/managedgrafanaiface/interface.go index d064c0cd071..81c455ae3b5 100644 --- a/service/managedgrafana/managedgrafanaiface/interface.go +++ b/service/managedgrafana/managedgrafanaiface/interface.go @@ -107,6 +107,13 @@ type ManagedGrafanaAPI interface { ListTagsForResourceWithContext(aws.Context, *managedgrafana.ListTagsForResourceInput, ...request.Option) (*managedgrafana.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*managedgrafana.ListTagsForResourceInput) (*request.Request, *managedgrafana.ListTagsForResourceOutput) + ListVersions(*managedgrafana.ListVersionsInput) (*managedgrafana.ListVersionsOutput, error) + ListVersionsWithContext(aws.Context, *managedgrafana.ListVersionsInput, ...request.Option) (*managedgrafana.ListVersionsOutput, error) + ListVersionsRequest(*managedgrafana.ListVersionsInput) (*request.Request, *managedgrafana.ListVersionsOutput) + + ListVersionsPages(*managedgrafana.ListVersionsInput, func(*managedgrafana.ListVersionsOutput, bool) bool) error + ListVersionsPagesWithContext(aws.Context, *managedgrafana.ListVersionsInput, func(*managedgrafana.ListVersionsOutput, bool) bool, ...request.Option) error + ListWorkspaces(*managedgrafana.ListWorkspacesInput) (*managedgrafana.ListWorkspacesOutput, error) ListWorkspacesWithContext(aws.Context, *managedgrafana.ListWorkspacesInput, ...request.Option) (*managedgrafana.ListWorkspacesOutput, error) ListWorkspacesRequest(*managedgrafana.ListWorkspacesInput) (*request.Request, *managedgrafana.ListWorkspacesOutput) diff --git a/service/medicalimaging/api.go b/service/medicalimaging/api.go new file mode 100644 index 00000000000..4e4be864a6a --- /dev/null +++ b/service/medicalimaging/api.go @@ -0,0 +1,6376 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package medicalimaging + +import ( + "fmt" + "io" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +const opCopyImageSet = "CopyImageSet" + +// CopyImageSetRequest generates a "aws/request.Request" representing the +// client's request for the CopyImageSet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CopyImageSet for more information on using the CopyImageSet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CopyImageSetRequest method. +// req, resp := client.CopyImageSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CopyImageSet +func (c *MedicalImaging) CopyImageSetRequest(input *CopyImageSetInput) (req *request.Request, output *CopyImageSetOutput) { + op := &request.Operation{ + Name: opCopyImageSet, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{sourceImageSetId}/copyImageSet", + } + + if input == nil { + input = &CopyImageSetInput{} + } + + output = &CopyImageSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// CopyImageSet API operation for AWS Health Imaging. +// +// Copy an image set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation CopyImageSet for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// - ServiceQuotaExceededException +// The request caused a service quota to be exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CopyImageSet +func (c *MedicalImaging) CopyImageSet(input *CopyImageSetInput) (*CopyImageSetOutput, error) { + req, out := c.CopyImageSetRequest(input) + return out, req.Send() +} + +// CopyImageSetWithContext is the same as CopyImageSet with the addition of +// the ability to pass a context and additional request options. +// +// See CopyImageSet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) CopyImageSetWithContext(ctx aws.Context, input *CopyImageSetInput, opts ...request.Option) (*CopyImageSetOutput, error) { + req, out := c.CopyImageSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDatastore = "CreateDatastore" + +// CreateDatastoreRequest generates a "aws/request.Request" representing the +// client's request for the CreateDatastore operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateDatastore for more information on using the CreateDatastore +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateDatastoreRequest method. +// req, resp := client.CreateDatastoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CreateDatastore +func (c *MedicalImaging) CreateDatastoreRequest(input *CreateDatastoreInput) (req *request.Request, output *CreateDatastoreOutput) { + op := &request.Operation{ + Name: opCreateDatastore, + HTTPMethod: "POST", + HTTPPath: "/datastore", + } + + if input == nil { + input = &CreateDatastoreInput{} + } + + output = &CreateDatastoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDatastore API operation for AWS Health Imaging. +// +// Create a data store. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation CreateDatastore for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ServiceQuotaExceededException +// The request caused a service quota to be exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CreateDatastore +func (c *MedicalImaging) CreateDatastore(input *CreateDatastoreInput) (*CreateDatastoreOutput, error) { + req, out := c.CreateDatastoreRequest(input) + return out, req.Send() +} + +// CreateDatastoreWithContext is the same as CreateDatastore with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDatastore for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) CreateDatastoreWithContext(ctx aws.Context, input *CreateDatastoreInput, opts ...request.Option) (*CreateDatastoreOutput, error) { + req, out := c.CreateDatastoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDatastore = "DeleteDatastore" + +// DeleteDatastoreRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDatastore operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteDatastore for more information on using the DeleteDatastore +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteDatastoreRequest method. +// req, resp := client.DeleteDatastoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteDatastore +func (c *MedicalImaging) DeleteDatastoreRequest(input *DeleteDatastoreInput) (req *request.Request, output *DeleteDatastoreOutput) { + op := &request.Operation{ + Name: opDeleteDatastore, + HTTPMethod: "DELETE", + HTTPPath: "/datastore/{datastoreId}", + } + + if input == nil { + input = &DeleteDatastoreInput{} + } + + output = &DeleteDatastoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDatastore API operation for AWS Health Imaging. +// +// Delete a data store. +// +// Before a data store can be deleted, you must first delete all image sets +// within it. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation DeleteDatastore for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteDatastore +func (c *MedicalImaging) DeleteDatastore(input *DeleteDatastoreInput) (*DeleteDatastoreOutput, error) { + req, out := c.DeleteDatastoreRequest(input) + return out, req.Send() +} + +// DeleteDatastoreWithContext is the same as DeleteDatastore with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDatastore for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) DeleteDatastoreWithContext(ctx aws.Context, input *DeleteDatastoreInput, opts ...request.Option) (*DeleteDatastoreOutput, error) { + req, out := c.DeleteDatastoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteImageSet = "DeleteImageSet" + +// DeleteImageSetRequest generates a "aws/request.Request" representing the +// client's request for the DeleteImageSet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteImageSet for more information on using the DeleteImageSet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteImageSetRequest method. +// req, resp := client.DeleteImageSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteImageSet +func (c *MedicalImaging) DeleteImageSetRequest(input *DeleteImageSetInput) (req *request.Request, output *DeleteImageSetOutput) { + op := &request.Operation{ + Name: opDeleteImageSet, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/deleteImageSet", + } + + if input == nil { + input = &DeleteImageSetInput{} + } + + output = &DeleteImageSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// DeleteImageSet API operation for AWS Health Imaging. +// +// Delete an image set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation DeleteImageSet for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteImageSet +func (c *MedicalImaging) DeleteImageSet(input *DeleteImageSetInput) (*DeleteImageSetOutput, error) { + req, out := c.DeleteImageSetRequest(input) + return out, req.Send() +} + +// DeleteImageSetWithContext is the same as DeleteImageSet with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteImageSet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) DeleteImageSetWithContext(ctx aws.Context, input *DeleteImageSetInput, opts ...request.Option) (*DeleteImageSetOutput, error) { + req, out := c.DeleteImageSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDICOMImportJob = "GetDICOMImportJob" + +// GetDICOMImportJobRequest generates a "aws/request.Request" representing the +// client's request for the GetDICOMImportJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetDICOMImportJob for more information on using the GetDICOMImportJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetDICOMImportJobRequest method. +// req, resp := client.GetDICOMImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDICOMImportJob +func (c *MedicalImaging) GetDICOMImportJobRequest(input *GetDICOMImportJobInput) (req *request.Request, output *GetDICOMImportJobOutput) { + op := &request.Operation{ + Name: opGetDICOMImportJob, + HTTPMethod: "GET", + HTTPPath: "/getDICOMImportJob/datastore/{datastoreId}/job/{jobId}", + } + + if input == nil { + input = &GetDICOMImportJobInput{} + } + + output = &GetDICOMImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDICOMImportJob API operation for AWS Health Imaging. +// +// Get the import job properties to learn more about the job or job progress. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation GetDICOMImportJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDICOMImportJob +func (c *MedicalImaging) GetDICOMImportJob(input *GetDICOMImportJobInput) (*GetDICOMImportJobOutput, error) { + req, out := c.GetDICOMImportJobRequest(input) + return out, req.Send() +} + +// GetDICOMImportJobWithContext is the same as GetDICOMImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetDICOMImportJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) GetDICOMImportJobWithContext(ctx aws.Context, input *GetDICOMImportJobInput, opts ...request.Option) (*GetDICOMImportJobOutput, error) { + req, out := c.GetDICOMImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDatastore = "GetDatastore" + +// GetDatastoreRequest generates a "aws/request.Request" representing the +// client's request for the GetDatastore operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetDatastore for more information on using the GetDatastore +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetDatastoreRequest method. +// req, resp := client.GetDatastoreRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDatastore +func (c *MedicalImaging) GetDatastoreRequest(input *GetDatastoreInput) (req *request.Request, output *GetDatastoreOutput) { + op := &request.Operation{ + Name: opGetDatastore, + HTTPMethod: "GET", + HTTPPath: "/datastore/{datastoreId}", + } + + if input == nil { + input = &GetDatastoreInput{} + } + + output = &GetDatastoreOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDatastore API operation for AWS Health Imaging. +// +// Get data store properties. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation GetDatastore for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDatastore +func (c *MedicalImaging) GetDatastore(input *GetDatastoreInput) (*GetDatastoreOutput, error) { + req, out := c.GetDatastoreRequest(input) + return out, req.Send() +} + +// GetDatastoreWithContext is the same as GetDatastore with the addition of +// the ability to pass a context and additional request options. +// +// See GetDatastore for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) GetDatastoreWithContext(ctx aws.Context, input *GetDatastoreInput, opts ...request.Option) (*GetDatastoreOutput, error) { + req, out := c.GetDatastoreRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetImageFrame = "GetImageFrame" + +// GetImageFrameRequest generates a "aws/request.Request" representing the +// client's request for the GetImageFrame operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetImageFrame for more information on using the GetImageFrame +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetImageFrameRequest method. +// req, resp := client.GetImageFrameRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageFrame +func (c *MedicalImaging) GetImageFrameRequest(input *GetImageFrameInput) (req *request.Request, output *GetImageFrameOutput) { + op := &request.Operation{ + Name: opGetImageFrame, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/getImageFrame", + } + + if input == nil { + input = &GetImageFrameInput{} + } + + output = &GetImageFrameOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetImageFrame API operation for AWS Health Imaging. +// +// Get an image frame (pixel data) for an image set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation GetImageFrame for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageFrame +func (c *MedicalImaging) GetImageFrame(input *GetImageFrameInput) (*GetImageFrameOutput, error) { + req, out := c.GetImageFrameRequest(input) + return out, req.Send() +} + +// GetImageFrameWithContext is the same as GetImageFrame with the addition of +// the ability to pass a context and additional request options. +// +// See GetImageFrame for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) GetImageFrameWithContext(ctx aws.Context, input *GetImageFrameInput, opts ...request.Option) (*GetImageFrameOutput, error) { + req, out := c.GetImageFrameRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetImageSet = "GetImageSet" + +// GetImageSetRequest generates a "aws/request.Request" representing the +// client's request for the GetImageSet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetImageSet for more information on using the GetImageSet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetImageSetRequest method. +// req, resp := client.GetImageSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSet +func (c *MedicalImaging) GetImageSetRequest(input *GetImageSetInput) (req *request.Request, output *GetImageSetOutput) { + op := &request.Operation{ + Name: opGetImageSet, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/getImageSet", + } + + if input == nil { + input = &GetImageSetInput{} + } + + output = &GetImageSetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetImageSet API operation for AWS Health Imaging. +// +// Get image set properties. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation GetImageSet for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSet +func (c *MedicalImaging) GetImageSet(input *GetImageSetInput) (*GetImageSetOutput, error) { + req, out := c.GetImageSetRequest(input) + return out, req.Send() +} + +// GetImageSetWithContext is the same as GetImageSet with the addition of +// the ability to pass a context and additional request options. +// +// See GetImageSet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) GetImageSetWithContext(ctx aws.Context, input *GetImageSetInput, opts ...request.Option) (*GetImageSetOutput, error) { + req, out := c.GetImageSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetImageSetMetadata = "GetImageSetMetadata" + +// GetImageSetMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetImageSetMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetImageSetMetadata for more information on using the GetImageSetMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetImageSetMetadataRequest method. +// req, resp := client.GetImageSetMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSetMetadata +func (c *MedicalImaging) GetImageSetMetadataRequest(input *GetImageSetMetadataInput) (req *request.Request, output *GetImageSetMetadataOutput) { + op := &request.Operation{ + Name: opGetImageSetMetadata, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/getImageSetMetadata", + } + + if input == nil { + input = &GetImageSetMetadataInput{} + } + + output = &GetImageSetMetadataOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// GetImageSetMetadata API operation for AWS Health Imaging. +// +// Get metadata attributes for an image set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation GetImageSetMetadata for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSetMetadata +func (c *MedicalImaging) GetImageSetMetadata(input *GetImageSetMetadataInput) (*GetImageSetMetadataOutput, error) { + req, out := c.GetImageSetMetadataRequest(input) + return out, req.Send() +} + +// GetImageSetMetadataWithContext is the same as GetImageSetMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See GetImageSetMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) GetImageSetMetadataWithContext(ctx aws.Context, input *GetImageSetMetadataInput, opts ...request.Option) (*GetImageSetMetadataOutput, error) { + req, out := c.GetImageSetMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDICOMImportJobs = "ListDICOMImportJobs" + +// ListDICOMImportJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListDICOMImportJobs operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDICOMImportJobs for more information on using the ListDICOMImportJobs +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListDICOMImportJobsRequest method. +// req, resp := client.ListDICOMImportJobsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDICOMImportJobs +func (c *MedicalImaging) ListDICOMImportJobsRequest(input *ListDICOMImportJobsInput) (req *request.Request, output *ListDICOMImportJobsOutput) { + op := &request.Operation{ + Name: opListDICOMImportJobs, + HTTPMethod: "GET", + HTTPPath: "/listDICOMImportJobs/datastore/{datastoreId}", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDICOMImportJobsInput{} + } + + output = &ListDICOMImportJobsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDICOMImportJobs API operation for AWS Health Imaging. +// +// List import jobs created by this AWS account for a specific data store. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation ListDICOMImportJobs for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDICOMImportJobs +func (c *MedicalImaging) ListDICOMImportJobs(input *ListDICOMImportJobsInput) (*ListDICOMImportJobsOutput, error) { + req, out := c.ListDICOMImportJobsRequest(input) + return out, req.Send() +} + +// ListDICOMImportJobsWithContext is the same as ListDICOMImportJobs with the addition of +// the ability to pass a context and additional request options. +// +// See ListDICOMImportJobs for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListDICOMImportJobsWithContext(ctx aws.Context, input *ListDICOMImportJobsInput, opts ...request.Option) (*ListDICOMImportJobsOutput, error) { + req, out := c.ListDICOMImportJobsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDICOMImportJobsPages iterates over the pages of a ListDICOMImportJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDICOMImportJobs method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListDICOMImportJobs operation. +// pageNum := 0 +// err := client.ListDICOMImportJobsPages(params, +// func(page *medicalimaging.ListDICOMImportJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MedicalImaging) ListDICOMImportJobsPages(input *ListDICOMImportJobsInput, fn func(*ListDICOMImportJobsOutput, bool) bool) error { + return c.ListDICOMImportJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDICOMImportJobsPagesWithContext same as ListDICOMImportJobsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListDICOMImportJobsPagesWithContext(ctx aws.Context, input *ListDICOMImportJobsInput, fn func(*ListDICOMImportJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDICOMImportJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDICOMImportJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDICOMImportJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDatastores = "ListDatastores" + +// ListDatastoresRequest generates a "aws/request.Request" representing the +// client's request for the ListDatastores operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDatastores for more information on using the ListDatastores +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListDatastoresRequest method. +// req, resp := client.ListDatastoresRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDatastores +func (c *MedicalImaging) ListDatastoresRequest(input *ListDatastoresInput) (req *request.Request, output *ListDatastoresOutput) { + op := &request.Operation{ + Name: opListDatastores, + HTTPMethod: "GET", + HTTPPath: "/datastore", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDatastoresInput{} + } + + output = &ListDatastoresOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDatastores API operation for AWS Health Imaging. +// +// List data stores created by this AWS account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation ListDatastores for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDatastores +func (c *MedicalImaging) ListDatastores(input *ListDatastoresInput) (*ListDatastoresOutput, error) { + req, out := c.ListDatastoresRequest(input) + return out, req.Send() +} + +// ListDatastoresWithContext is the same as ListDatastores with the addition of +// the ability to pass a context and additional request options. +// +// See ListDatastores for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListDatastoresWithContext(ctx aws.Context, input *ListDatastoresInput, opts ...request.Option) (*ListDatastoresOutput, error) { + req, out := c.ListDatastoresRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDatastoresPages iterates over the pages of a ListDatastores operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDatastores method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListDatastores operation. +// pageNum := 0 +// err := client.ListDatastoresPages(params, +// func(page *medicalimaging.ListDatastoresOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MedicalImaging) ListDatastoresPages(input *ListDatastoresInput, fn func(*ListDatastoresOutput, bool) bool) error { + return c.ListDatastoresPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDatastoresPagesWithContext same as ListDatastoresPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListDatastoresPagesWithContext(ctx aws.Context, input *ListDatastoresInput, fn func(*ListDatastoresOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDatastoresInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDatastoresRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDatastoresOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListImageSetVersions = "ListImageSetVersions" + +// ListImageSetVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListImageSetVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListImageSetVersions for more information on using the ListImageSetVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListImageSetVersionsRequest method. +// req, resp := client.ListImageSetVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListImageSetVersions +func (c *MedicalImaging) ListImageSetVersionsRequest(input *ListImageSetVersionsInput) (req *request.Request, output *ListImageSetVersionsOutput) { + op := &request.Operation{ + Name: opListImageSetVersions, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/listImageSetVersions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListImageSetVersionsInput{} + } + + output = &ListImageSetVersionsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// ListImageSetVersions API operation for AWS Health Imaging. +// +// List image set versions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation ListImageSetVersions for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListImageSetVersions +func (c *MedicalImaging) ListImageSetVersions(input *ListImageSetVersionsInput) (*ListImageSetVersionsOutput, error) { + req, out := c.ListImageSetVersionsRequest(input) + return out, req.Send() +} + +// ListImageSetVersionsWithContext is the same as ListImageSetVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListImageSetVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListImageSetVersionsWithContext(ctx aws.Context, input *ListImageSetVersionsInput, opts ...request.Option) (*ListImageSetVersionsOutput, error) { + req, out := c.ListImageSetVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListImageSetVersionsPages iterates over the pages of a ListImageSetVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListImageSetVersions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListImageSetVersions operation. +// pageNum := 0 +// err := client.ListImageSetVersionsPages(params, +// func(page *medicalimaging.ListImageSetVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MedicalImaging) ListImageSetVersionsPages(input *ListImageSetVersionsInput, fn func(*ListImageSetVersionsOutput, bool) bool) error { + return c.ListImageSetVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListImageSetVersionsPagesWithContext same as ListImageSetVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListImageSetVersionsPagesWithContext(ctx aws.Context, input *ListImageSetVersionsInput, fn func(*ListImageSetVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListImageSetVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListImageSetVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListImageSetVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListTagsForResource +func (c *MedicalImaging) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Health Imaging. +// +// Lists all tags associated with a medical imaging resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListTagsForResource +func (c *MedicalImaging) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opSearchImageSets = "SearchImageSets" + +// SearchImageSetsRequest generates a "aws/request.Request" representing the +// client's request for the SearchImageSets operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See SearchImageSets for more information on using the SearchImageSets +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the SearchImageSetsRequest method. +// req, resp := client.SearchImageSetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/SearchImageSets +func (c *MedicalImaging) SearchImageSetsRequest(input *SearchImageSetsInput) (req *request.Request, output *SearchImageSetsOutput) { + op := &request.Operation{ + Name: opSearchImageSets, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/searchImageSets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &SearchImageSetsInput{} + } + + output = &SearchImageSetsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// SearchImageSets API operation for AWS Health Imaging. +// +// Search image sets based on defined input attributes. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation SearchImageSets for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/SearchImageSets +func (c *MedicalImaging) SearchImageSets(input *SearchImageSetsInput) (*SearchImageSetsOutput, error) { + req, out := c.SearchImageSetsRequest(input) + return out, req.Send() +} + +// SearchImageSetsWithContext is the same as SearchImageSets with the addition of +// the ability to pass a context and additional request options. +// +// See SearchImageSets for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) SearchImageSetsWithContext(ctx aws.Context, input *SearchImageSetsInput, opts ...request.Option) (*SearchImageSetsOutput, error) { + req, out := c.SearchImageSetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// SearchImageSetsPages iterates over the pages of a SearchImageSets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See SearchImageSets method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a SearchImageSets operation. +// pageNum := 0 +// err := client.SearchImageSetsPages(params, +// func(page *medicalimaging.SearchImageSetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *MedicalImaging) SearchImageSetsPages(input *SearchImageSetsInput, fn func(*SearchImageSetsOutput, bool) bool) error { + return c.SearchImageSetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// SearchImageSetsPagesWithContext same as SearchImageSetsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) SearchImageSetsPagesWithContext(ctx aws.Context, input *SearchImageSetsInput, fn func(*SearchImageSetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *SearchImageSetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.SearchImageSetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*SearchImageSetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartDICOMImportJob = "StartDICOMImportJob" + +// StartDICOMImportJobRequest generates a "aws/request.Request" representing the +// client's request for the StartDICOMImportJob operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartDICOMImportJob for more information on using the StartDICOMImportJob +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartDICOMImportJobRequest method. +// req, resp := client.StartDICOMImportJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/StartDICOMImportJob +func (c *MedicalImaging) StartDICOMImportJobRequest(input *StartDICOMImportJobInput) (req *request.Request, output *StartDICOMImportJobOutput) { + op := &request.Operation{ + Name: opStartDICOMImportJob, + HTTPMethod: "POST", + HTTPPath: "/startDICOMImportJob/datastore/{datastoreId}", + } + + if input == nil { + input = &StartDICOMImportJobInput{} + } + + output = &StartDICOMImportJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDICOMImportJob API operation for AWS Health Imaging. +// +// Start importing bulk data into an ACTIVE data store. The import job imports +// DICOM P10 files found in the S3 prefix specified by the inputS3Uri parameter. +// The import job stores processing results in the file specified by the outputS3Uri +// parameter. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation StartDICOMImportJob for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// - ServiceQuotaExceededException +// The request caused a service quota to be exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/StartDICOMImportJob +func (c *MedicalImaging) StartDICOMImportJob(input *StartDICOMImportJobInput) (*StartDICOMImportJobOutput, error) { + req, out := c.StartDICOMImportJobRequest(input) + return out, req.Send() +} + +// StartDICOMImportJobWithContext is the same as StartDICOMImportJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartDICOMImportJob for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) StartDICOMImportJobWithContext(ctx aws.Context, input *StartDICOMImportJobInput, opts ...request.Option) (*StartDICOMImportJobOutput, error) { + req, out := c.StartDICOMImportJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/TagResource +func (c *MedicalImaging) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Health Imaging. +// +// Adds a user-specifed key and value tag to a medical imaging resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/TagResource +func (c *MedicalImaging) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UntagResource +func (c *MedicalImaging) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Health Imaging. +// +// Removes tags from a medical imaging resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UntagResource +func (c *MedicalImaging) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateImageSetMetadata = "UpdateImageSetMetadata" + +// UpdateImageSetMetadataRequest generates a "aws/request.Request" representing the +// client's request for the UpdateImageSetMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateImageSetMetadata for more information on using the UpdateImageSetMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateImageSetMetadataRequest method. +// req, resp := client.UpdateImageSetMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UpdateImageSetMetadata +func (c *MedicalImaging) UpdateImageSetMetadataRequest(input *UpdateImageSetMetadataInput) (req *request.Request, output *UpdateImageSetMetadataOutput) { + op := &request.Operation{ + Name: opUpdateImageSetMetadata, + HTTPMethod: "POST", + HTTPPath: "/datastore/{datastoreId}/imageSet/{imageSetId}/updateImageSetMetadata", + } + + if input == nil { + input = &UpdateImageSetMetadataInput{} + } + + output = &UpdateImageSetMetadataOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("runtime-", nil)) + req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler) + return +} + +// UpdateImageSetMetadata API operation for AWS Health Imaging. +// +// Update image set metadata attributes. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Health Imaging's +// API operation UpdateImageSetMetadata for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to throttling. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - AccessDeniedException +// The user does not have sufficient access to perform this action. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// An unexpected error occurred during processing of the request. +// +// - ResourceNotFoundException +// The request references a resource which does not exist. +// +// - ServiceQuotaExceededException +// The request caused a service quota to be exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UpdateImageSetMetadata +func (c *MedicalImaging) UpdateImageSetMetadata(input *UpdateImageSetMetadataInput) (*UpdateImageSetMetadataOutput, error) { + req, out := c.UpdateImageSetMetadataRequest(input) + return out, req.Send() +} + +// UpdateImageSetMetadataWithContext is the same as UpdateImageSetMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateImageSetMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MedicalImaging) UpdateImageSetMetadataWithContext(ctx aws.Context, input *UpdateImageSetMetadataInput, opts ...request.Option) (*UpdateImageSetMetadataOutput, error) { + req, out := c.UpdateImageSetMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// The user does not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Updating or deleting a resource can cause an inconsistent state. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Copy the destination image set. +type CopyDestinationImageSet struct { + _ struct{} `type:"structure"` + + // The image set identifier for the destination image set. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The latest version identifier for the destination image set. + // + // LatestVersionId is a required field + LatestVersionId *string `locationName:"latestVersionId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyDestinationImageSet) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyDestinationImageSet) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyDestinationImageSet) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyDestinationImageSet"} + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.LatestVersionId == nil { + invalidParams.Add(request.NewErrParamRequired("LatestVersionId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *CopyDestinationImageSet) SetImageSetId(v string) *CopyDestinationImageSet { + s.ImageSetId = &v + return s +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *CopyDestinationImageSet) SetLatestVersionId(v string) *CopyDestinationImageSet { + s.LatestVersionId = &v + return s +} + +// Copy the image set properties of the destination image set. +type CopyDestinationImageSetProperties struct { + _ struct{} `type:"structure"` + + // The timestamp when the destination image set properties were created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) assigned to the destination image set. + ImageSetArn *string `locationName:"imageSetArn" type:"string"` + + // The image set identifier of the copied image set properties. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state of the destination image set properties. + ImageSetState *string `locationName:"imageSetState" type:"string" enum:"ImageSetState"` + + // The image set workflow status of the destination image set properties. + ImageSetWorkflowStatus *string `locationName:"imageSetWorkflowStatus" type:"string" enum:"ImageSetWorkflowStatus"` + + // The latest version identifier for the destination image set properties. + // + // LatestVersionId is a required field + LatestVersionId *string `locationName:"latestVersionId" type:"string" required:"true"` + + // The timestamp when the destination image set properties were last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyDestinationImageSetProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyDestinationImageSetProperties) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CopyDestinationImageSetProperties) SetCreatedAt(v time.Time) *CopyDestinationImageSetProperties { + s.CreatedAt = &v + return s +} + +// SetImageSetArn sets the ImageSetArn field's value. +func (s *CopyDestinationImageSetProperties) SetImageSetArn(v string) *CopyDestinationImageSetProperties { + s.ImageSetArn = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *CopyDestinationImageSetProperties) SetImageSetId(v string) *CopyDestinationImageSetProperties { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *CopyDestinationImageSetProperties) SetImageSetState(v string) *CopyDestinationImageSetProperties { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *CopyDestinationImageSetProperties) SetImageSetWorkflowStatus(v string) *CopyDestinationImageSetProperties { + s.ImageSetWorkflowStatus = &v + return s +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *CopyDestinationImageSetProperties) SetLatestVersionId(v string) *CopyDestinationImageSetProperties { + s.LatestVersionId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CopyDestinationImageSetProperties) SetUpdatedAt(v time.Time) *CopyDestinationImageSetProperties { + s.UpdatedAt = &v + return s +} + +// Copy image set information. +type CopyImageSetInformation struct { + _ struct{} `type:"structure"` + + // The destination image set. + DestinationImageSet *CopyDestinationImageSet `locationName:"destinationImageSet" type:"structure"` + + // The source image set. + // + // SourceImageSet is a required field + SourceImageSet *CopySourceImageSetInformation `locationName:"sourceImageSet" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetInformation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyImageSetInformation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyImageSetInformation"} + if s.SourceImageSet == nil { + invalidParams.Add(request.NewErrParamRequired("SourceImageSet")) + } + if s.DestinationImageSet != nil { + if err := s.DestinationImageSet.Validate(); err != nil { + invalidParams.AddNested("DestinationImageSet", err.(request.ErrInvalidParams)) + } + } + if s.SourceImageSet != nil { + if err := s.SourceImageSet.Validate(); err != nil { + invalidParams.AddNested("SourceImageSet", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationImageSet sets the DestinationImageSet field's value. +func (s *CopyImageSetInformation) SetDestinationImageSet(v *CopyDestinationImageSet) *CopyImageSetInformation { + s.DestinationImageSet = v + return s +} + +// SetSourceImageSet sets the SourceImageSet field's value. +func (s *CopyImageSetInformation) SetSourceImageSet(v *CopySourceImageSetInformation) *CopyImageSetInformation { + s.SourceImageSet = v + return s +} + +type CopyImageSetInput struct { + _ struct{} `type:"structure" payload:"CopyImageSetInformation"` + + // Copy image set information. + // + // CopyImageSetInformation is a required field + CopyImageSetInformation *CopyImageSetInformation `locationName:"copyImageSetInformation" type:"structure" required:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The source image set identifier. + // + // SourceImageSetId is a required field + SourceImageSetId *string `location:"uri" locationName:"sourceImageSetId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyImageSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyImageSetInput"} + if s.CopyImageSetInformation == nil { + invalidParams.Add(request.NewErrParamRequired("CopyImageSetInformation")) + } + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.SourceImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("SourceImageSetId")) + } + if s.SourceImageSetId != nil && len(*s.SourceImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceImageSetId", 1)) + } + if s.CopyImageSetInformation != nil { + if err := s.CopyImageSetInformation.Validate(); err != nil { + invalidParams.AddNested("CopyImageSetInformation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyImageSetInformation sets the CopyImageSetInformation field's value. +func (s *CopyImageSetInput) SetCopyImageSetInformation(v *CopyImageSetInformation) *CopyImageSetInput { + s.CopyImageSetInformation = v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *CopyImageSetInput) SetDatastoreId(v string) *CopyImageSetInput { + s.DatastoreId = &v + return s +} + +// SetSourceImageSetId sets the SourceImageSetId field's value. +func (s *CopyImageSetInput) SetSourceImageSetId(v string) *CopyImageSetInput { + s.SourceImageSetId = &v + return s +} + +type CopyImageSetOutput struct { + _ struct{} `type:"structure"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The properties of the destination image set. + // + // DestinationImageSetProperties is a required field + DestinationImageSetProperties *CopyDestinationImageSetProperties `locationName:"destinationImageSetProperties" type:"structure" required:"true"` + + // The properties of the source image set. + // + // SourceImageSetProperties is a required field + SourceImageSetProperties *CopySourceImageSetProperties `locationName:"sourceImageSetProperties" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyImageSetOutput) GoString() string { + return s.String() +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *CopyImageSetOutput) SetDatastoreId(v string) *CopyImageSetOutput { + s.DatastoreId = &v + return s +} + +// SetDestinationImageSetProperties sets the DestinationImageSetProperties field's value. +func (s *CopyImageSetOutput) SetDestinationImageSetProperties(v *CopyDestinationImageSetProperties) *CopyImageSetOutput { + s.DestinationImageSetProperties = v + return s +} + +// SetSourceImageSetProperties sets the SourceImageSetProperties field's value. +func (s *CopyImageSetOutput) SetSourceImageSetProperties(v *CopySourceImageSetProperties) *CopyImageSetOutput { + s.SourceImageSetProperties = v + return s +} + +// Copy source image set information. +type CopySourceImageSetInformation struct { + _ struct{} `type:"structure"` + + // The latest version identifier for the source image set. + // + // LatestVersionId is a required field + LatestVersionId *string `locationName:"latestVersionId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySourceImageSetInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySourceImageSetInformation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopySourceImageSetInformation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopySourceImageSetInformation"} + if s.LatestVersionId == nil { + invalidParams.Add(request.NewErrParamRequired("LatestVersionId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *CopySourceImageSetInformation) SetLatestVersionId(v string) *CopySourceImageSetInformation { + s.LatestVersionId = &v + return s +} + +// Copy source image set properties. +type CopySourceImageSetProperties struct { + _ struct{} `type:"structure"` + + // The timestamp when the source image set properties were created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) assigned to the source image set. + ImageSetArn *string `locationName:"imageSetArn" type:"string"` + + // The image set identifier for the copied source image set. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state of the copied source image set. + ImageSetState *string `locationName:"imageSetState" type:"string" enum:"ImageSetState"` + + // The workflow status of the copied source image set. + ImageSetWorkflowStatus *string `locationName:"imageSetWorkflowStatus" type:"string" enum:"ImageSetWorkflowStatus"` + + // The latest version identifier for the copied source image set. + // + // LatestVersionId is a required field + LatestVersionId *string `locationName:"latestVersionId" type:"string" required:"true"` + + // The timestamp when the source image set properties were updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySourceImageSetProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopySourceImageSetProperties) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CopySourceImageSetProperties) SetCreatedAt(v time.Time) *CopySourceImageSetProperties { + s.CreatedAt = &v + return s +} + +// SetImageSetArn sets the ImageSetArn field's value. +func (s *CopySourceImageSetProperties) SetImageSetArn(v string) *CopySourceImageSetProperties { + s.ImageSetArn = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *CopySourceImageSetProperties) SetImageSetId(v string) *CopySourceImageSetProperties { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *CopySourceImageSetProperties) SetImageSetState(v string) *CopySourceImageSetProperties { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *CopySourceImageSetProperties) SetImageSetWorkflowStatus(v string) *CopySourceImageSetProperties { + s.ImageSetWorkflowStatus = &v + return s +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *CopySourceImageSetProperties) SetLatestVersionId(v string) *CopySourceImageSetProperties { + s.LatestVersionId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CopySourceImageSetProperties) SetUpdatedAt(v time.Time) *CopySourceImageSetProperties { + s.UpdatedAt = &v + return s +} + +type CreateDatastoreInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for API idempotency. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The data store name. + DatastoreName *string `locationName:"datastoreName" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) assigned to the AWS Key Management Service + // (AWS KMS) key for accessing encrypted data. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"1" type:"string"` + + // The tags provided when creating a data store. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDatastoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDatastoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDatastoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDatastoreInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DatastoreName != nil && len(*s.DatastoreName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreName", 1)) + } + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateDatastoreInput) SetClientToken(v string) *CreateDatastoreInput { + s.ClientToken = &v + return s +} + +// SetDatastoreName sets the DatastoreName field's value. +func (s *CreateDatastoreInput) SetDatastoreName(v string) *CreateDatastoreInput { + s.DatastoreName = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *CreateDatastoreInput) SetKmsKeyArn(v string) *CreateDatastoreInput { + s.KmsKeyArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDatastoreInput) SetTags(v map[string]*string) *CreateDatastoreInput { + s.Tags = v + return s +} + +type CreateDatastoreOutput struct { + _ struct{} `type:"structure"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The data store status. + // + // DatastoreStatus is a required field + DatastoreStatus *string `locationName:"datastoreStatus" type:"string" required:"true" enum:"DatastoreStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDatastoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDatastoreOutput) GoString() string { + return s.String() +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *CreateDatastoreOutput) SetDatastoreId(v string) *CreateDatastoreOutput { + s.DatastoreId = &v + return s +} + +// SetDatastoreStatus sets the DatastoreStatus field's value. +func (s *CreateDatastoreOutput) SetDatastoreStatus(v string) *CreateDatastoreOutput { + s.DatastoreStatus = &v + return s +} + +// Properties of the import job. +type DICOMImportJobProperties struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that grants permissions to access medical + // imaging resources. + // + // DataAccessRoleArn is a required field + DataAccessRoleArn *string `locationName:"dataAccessRoleArn" min:"20" type:"string" required:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The timestamp for when the import job was ended. + EndedAt *time.Time `locationName:"endedAt" type:"timestamp"` + + // The input prefix path for the S3 bucket that contains the DICOM P10 files + // to be imported. + // + // InputS3Uri is a required field + InputS3Uri *string `locationName:"inputS3Uri" min:"1" type:"string" required:"true"` + + // The import job identifier. + // + // JobId is a required field + JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` + + // The import job name. + // + // JobName is a required field + JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` + + // The filters for listing import jobs based on status. + // + // JobStatus is a required field + JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"JobStatus"` + + // The error message thrown if an import job fails. + Message *string `locationName:"message" min:"1" type:"string"` + + // The output prefix of the S3 bucket to upload the results of the DICOM import + // job. + // + // OutputS3Uri is a required field + OutputS3Uri *string `locationName:"outputS3Uri" min:"1" type:"string" required:"true"` + + // The timestamp for when the import job was submitted. + SubmittedAt *time.Time `locationName:"submittedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMImportJobProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMImportJobProperties) GoString() string { + return s.String() +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *DICOMImportJobProperties) SetDataAccessRoleArn(v string) *DICOMImportJobProperties { + s.DataAccessRoleArn = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DICOMImportJobProperties) SetDatastoreId(v string) *DICOMImportJobProperties { + s.DatastoreId = &v + return s +} + +// SetEndedAt sets the EndedAt field's value. +func (s *DICOMImportJobProperties) SetEndedAt(v time.Time) *DICOMImportJobProperties { + s.EndedAt = &v + return s +} + +// SetInputS3Uri sets the InputS3Uri field's value. +func (s *DICOMImportJobProperties) SetInputS3Uri(v string) *DICOMImportJobProperties { + s.InputS3Uri = &v + return s +} + +// SetJobId sets the JobId field's value. +func (s *DICOMImportJobProperties) SetJobId(v string) *DICOMImportJobProperties { + s.JobId = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *DICOMImportJobProperties) SetJobName(v string) *DICOMImportJobProperties { + s.JobName = &v + return s +} + +// SetJobStatus sets the JobStatus field's value. +func (s *DICOMImportJobProperties) SetJobStatus(v string) *DICOMImportJobProperties { + s.JobStatus = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *DICOMImportJobProperties) SetMessage(v string) *DICOMImportJobProperties { + s.Message = &v + return s +} + +// SetOutputS3Uri sets the OutputS3Uri field's value. +func (s *DICOMImportJobProperties) SetOutputS3Uri(v string) *DICOMImportJobProperties { + s.OutputS3Uri = &v + return s +} + +// SetSubmittedAt sets the SubmittedAt field's value. +func (s *DICOMImportJobProperties) SetSubmittedAt(v time.Time) *DICOMImportJobProperties { + s.SubmittedAt = &v + return s +} + +// Summary of import job. +type DICOMImportJobSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) that grants permissions to access medical + // imaging resources. + DataAccessRoleArn *string `locationName:"dataAccessRoleArn" min:"20" type:"string"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The timestamp when an import job ended. + EndedAt *time.Time `locationName:"endedAt" type:"timestamp"` + + // The import job identifier. + // + // JobId is a required field + JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` + + // The import job name. + // + // JobName is a required field + JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"` + + // The filters for listing import jobs based on status. + // + // JobStatus is a required field + JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"JobStatus"` + + // The error message thrown if an import job fails. + Message *string `locationName:"message" min:"1" type:"string"` + + // The timestamp when an import job was submitted. + SubmittedAt *time.Time `locationName:"submittedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMImportJobSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMImportJobSummary) GoString() string { + return s.String() +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *DICOMImportJobSummary) SetDataAccessRoleArn(v string) *DICOMImportJobSummary { + s.DataAccessRoleArn = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DICOMImportJobSummary) SetDatastoreId(v string) *DICOMImportJobSummary { + s.DatastoreId = &v + return s +} + +// SetEndedAt sets the EndedAt field's value. +func (s *DICOMImportJobSummary) SetEndedAt(v time.Time) *DICOMImportJobSummary { + s.EndedAt = &v + return s +} + +// SetJobId sets the JobId field's value. +func (s *DICOMImportJobSummary) SetJobId(v string) *DICOMImportJobSummary { + s.JobId = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *DICOMImportJobSummary) SetJobName(v string) *DICOMImportJobSummary { + s.JobName = &v + return s +} + +// SetJobStatus sets the JobStatus field's value. +func (s *DICOMImportJobSummary) SetJobStatus(v string) *DICOMImportJobSummary { + s.JobStatus = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *DICOMImportJobSummary) SetMessage(v string) *DICOMImportJobSummary { + s.Message = &v + return s +} + +// SetSubmittedAt sets the SubmittedAt field's value. +func (s *DICOMImportJobSummary) SetSubmittedAt(v time.Time) *DICOMImportJobSummary { + s.SubmittedAt = &v + return s +} + +// The aggregated structure to store DICOM study date and study time for search +// capabilities. +type DICOMStudyDateAndTime struct { + _ struct{} `type:"structure"` + + // The DICOM study date provided in yyMMdd format. + // + // DICOMStudyDate is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMStudyDateAndTime's + // String and GoString methods. + // + // DICOMStudyDate is a required field + DICOMStudyDate *string `type:"string" required:"true" sensitive:"true"` + + // The DICOM study time provided in HHmmss.FFFFFF format. + // + // DICOMStudyTime is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMStudyDateAndTime's + // String and GoString methods. + DICOMStudyTime *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMStudyDateAndTime) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMStudyDateAndTime) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DICOMStudyDateAndTime) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DICOMStudyDateAndTime"} + if s.DICOMStudyDate == nil { + invalidParams.Add(request.NewErrParamRequired("DICOMStudyDate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDICOMStudyDate sets the DICOMStudyDate field's value. +func (s *DICOMStudyDateAndTime) SetDICOMStudyDate(v string) *DICOMStudyDateAndTime { + s.DICOMStudyDate = &v + return s +} + +// SetDICOMStudyTime sets the DICOMStudyTime field's value. +func (s *DICOMStudyDateAndTime) SetDICOMStudyTime(v string) *DICOMStudyDateAndTime { + s.DICOMStudyTime = &v + return s +} + +// The DICOM attributes returned as a part of a response. Each image set has +// these properties as part of a search result. +type DICOMTags struct { + _ struct{} `type:"structure"` + + // The accession number for the DICOM study. + // + // DICOMAccessionNumber is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMAccessionNumber *string `type:"string" sensitive:"true"` + + // The total number of instances in the DICOM study. + DICOMNumberOfStudyRelatedInstances *int64 `type:"integer"` + + // The total number of series in the DICOM study. + DICOMNumberOfStudyRelatedSeries *int64 `type:"integer"` + + // The patient birth date. + // + // DICOMPatientBirthDate is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMPatientBirthDate *string `type:"string" sensitive:"true"` + + // The unique identifier for a patient in a DICOM Study. + // + // DICOMPatientId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMPatientId *string `type:"string" sensitive:"true"` + + // The patient name. + // + // DICOMPatientName is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMPatientName *string `type:"string" sensitive:"true"` + + // The patient sex. + // + // DICOMPatientSex is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMPatientSex *string `type:"string" sensitive:"true"` + + // The study date. + // + // DICOMStudyDate is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMStudyDate *string `type:"string" sensitive:"true"` + + // The description of the study. + // + // DICOMStudyDescription is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMStudyDescription *string `type:"string" sensitive:"true"` + + // The DICOM provided studyId. + // + // DICOMStudyId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMStudyId *string `type:"string" sensitive:"true"` + + // The DICOM provided identifier for studyInstanceUid.> + // + // DICOMStudyInstanceUID is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMStudyInstanceUID *string `type:"string" sensitive:"true"` + + // The study time. + // + // DICOMStudyTime is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMTags's + // String and GoString methods. + DICOMStudyTime *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMTags) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMTags) GoString() string { + return s.String() +} + +// SetDICOMAccessionNumber sets the DICOMAccessionNumber field's value. +func (s *DICOMTags) SetDICOMAccessionNumber(v string) *DICOMTags { + s.DICOMAccessionNumber = &v + return s +} + +// SetDICOMNumberOfStudyRelatedInstances sets the DICOMNumberOfStudyRelatedInstances field's value. +func (s *DICOMTags) SetDICOMNumberOfStudyRelatedInstances(v int64) *DICOMTags { + s.DICOMNumberOfStudyRelatedInstances = &v + return s +} + +// SetDICOMNumberOfStudyRelatedSeries sets the DICOMNumberOfStudyRelatedSeries field's value. +func (s *DICOMTags) SetDICOMNumberOfStudyRelatedSeries(v int64) *DICOMTags { + s.DICOMNumberOfStudyRelatedSeries = &v + return s +} + +// SetDICOMPatientBirthDate sets the DICOMPatientBirthDate field's value. +func (s *DICOMTags) SetDICOMPatientBirthDate(v string) *DICOMTags { + s.DICOMPatientBirthDate = &v + return s +} + +// SetDICOMPatientId sets the DICOMPatientId field's value. +func (s *DICOMTags) SetDICOMPatientId(v string) *DICOMTags { + s.DICOMPatientId = &v + return s +} + +// SetDICOMPatientName sets the DICOMPatientName field's value. +func (s *DICOMTags) SetDICOMPatientName(v string) *DICOMTags { + s.DICOMPatientName = &v + return s +} + +// SetDICOMPatientSex sets the DICOMPatientSex field's value. +func (s *DICOMTags) SetDICOMPatientSex(v string) *DICOMTags { + s.DICOMPatientSex = &v + return s +} + +// SetDICOMStudyDate sets the DICOMStudyDate field's value. +func (s *DICOMTags) SetDICOMStudyDate(v string) *DICOMTags { + s.DICOMStudyDate = &v + return s +} + +// SetDICOMStudyDescription sets the DICOMStudyDescription field's value. +func (s *DICOMTags) SetDICOMStudyDescription(v string) *DICOMTags { + s.DICOMStudyDescription = &v + return s +} + +// SetDICOMStudyId sets the DICOMStudyId field's value. +func (s *DICOMTags) SetDICOMStudyId(v string) *DICOMTags { + s.DICOMStudyId = &v + return s +} + +// SetDICOMStudyInstanceUID sets the DICOMStudyInstanceUID field's value. +func (s *DICOMTags) SetDICOMStudyInstanceUID(v string) *DICOMTags { + s.DICOMStudyInstanceUID = &v + return s +} + +// SetDICOMStudyTime sets the DICOMStudyTime field's value. +func (s *DICOMTags) SetDICOMStudyTime(v string) *DICOMTags { + s.DICOMStudyTime = &v + return s +} + +// The object containing removableAttributes and updatableAttributes. +type DICOMUpdates struct { + _ struct{} `type:"structure"` + + // The DICOM tags to be removed from ImageSetMetadata. + // + // RemovableAttributes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMUpdates's + // String and GoString methods. + // + // RemovableAttributes is automatically base64 encoded/decoded by the SDK. + RemovableAttributes []byte `locationName:"removableAttributes" min:"1" type:"blob" sensitive:"true"` + + // The DICOM tags that need to be updated in ImageSetMetadata. + // + // UpdatableAttributes is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DICOMUpdates's + // String and GoString methods. + // + // UpdatableAttributes is automatically base64 encoded/decoded by the SDK. + UpdatableAttributes []byte `locationName:"updatableAttributes" min:"1" type:"blob" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMUpdates) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DICOMUpdates) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DICOMUpdates) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DICOMUpdates"} + if s.RemovableAttributes != nil && len(s.RemovableAttributes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RemovableAttributes", 1)) + } + if s.UpdatableAttributes != nil && len(s.UpdatableAttributes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("UpdatableAttributes", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRemovableAttributes sets the RemovableAttributes field's value. +func (s *DICOMUpdates) SetRemovableAttributes(v []byte) *DICOMUpdates { + s.RemovableAttributes = v + return s +} + +// SetUpdatableAttributes sets the UpdatableAttributes field's value. +func (s *DICOMUpdates) SetUpdatableAttributes(v []byte) *DICOMUpdates { + s.UpdatableAttributes = v + return s +} + +// The properties associated with the data store. +type DatastoreProperties struct { + _ struct{} `type:"structure"` + + // The timestamp when the data store was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) for the data store. + DatastoreArn *string `locationName:"datastoreArn" type:"string"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The data store name. + // + // DatastoreName is a required field + DatastoreName *string `locationName:"datastoreName" min:"1" type:"string" required:"true"` + + // The data store status. + // + // DatastoreStatus is a required field + DatastoreStatus *string `locationName:"datastoreStatus" type:"string" required:"true" enum:"DatastoreStatus"` + + // The Amazon Resource Name (ARN) assigned to the AWS Key Management Service + // (AWS KMS) key for accessing encrypted data. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"1" type:"string"` + + // The timestamp when the data store was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatastoreProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatastoreProperties) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DatastoreProperties) SetCreatedAt(v time.Time) *DatastoreProperties { + s.CreatedAt = &v + return s +} + +// SetDatastoreArn sets the DatastoreArn field's value. +func (s *DatastoreProperties) SetDatastoreArn(v string) *DatastoreProperties { + s.DatastoreArn = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DatastoreProperties) SetDatastoreId(v string) *DatastoreProperties { + s.DatastoreId = &v + return s +} + +// SetDatastoreName sets the DatastoreName field's value. +func (s *DatastoreProperties) SetDatastoreName(v string) *DatastoreProperties { + s.DatastoreName = &v + return s +} + +// SetDatastoreStatus sets the DatastoreStatus field's value. +func (s *DatastoreProperties) SetDatastoreStatus(v string) *DatastoreProperties { + s.DatastoreStatus = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *DatastoreProperties) SetKmsKeyArn(v string) *DatastoreProperties { + s.KmsKeyArn = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DatastoreProperties) SetUpdatedAt(v time.Time) *DatastoreProperties { + s.UpdatedAt = &v + return s +} + +// List of summaries of data stores. +type DatastoreSummary struct { + _ struct{} `type:"structure"` + + // The timestamp when the data store was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) for the data store. + DatastoreArn *string `locationName:"datastoreArn" type:"string"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The data store name. + // + // DatastoreName is a required field + DatastoreName *string `locationName:"datastoreName" min:"1" type:"string" required:"true"` + + // The data store status. + // + // DatastoreStatus is a required field + DatastoreStatus *string `locationName:"datastoreStatus" type:"string" required:"true" enum:"DatastoreStatus"` + + // The timestamp when the data store was last updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatastoreSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DatastoreSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *DatastoreSummary) SetCreatedAt(v time.Time) *DatastoreSummary { + s.CreatedAt = &v + return s +} + +// SetDatastoreArn sets the DatastoreArn field's value. +func (s *DatastoreSummary) SetDatastoreArn(v string) *DatastoreSummary { + s.DatastoreArn = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DatastoreSummary) SetDatastoreId(v string) *DatastoreSummary { + s.DatastoreId = &v + return s +} + +// SetDatastoreName sets the DatastoreName field's value. +func (s *DatastoreSummary) SetDatastoreName(v string) *DatastoreSummary { + s.DatastoreName = &v + return s +} + +// SetDatastoreStatus sets the DatastoreStatus field's value. +func (s *DatastoreSummary) SetDatastoreStatus(v string) *DatastoreSummary { + s.DatastoreStatus = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *DatastoreSummary) SetUpdatedAt(v time.Time) *DatastoreSummary { + s.UpdatedAt = &v + return s +} + +type DeleteDatastoreInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDatastoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDatastoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDatastoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDatastoreInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DeleteDatastoreInput) SetDatastoreId(v string) *DeleteDatastoreInput { + s.DatastoreId = &v + return s +} + +type DeleteDatastoreOutput struct { + _ struct{} `type:"structure"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The data store status. + // + // DatastoreStatus is a required field + DatastoreStatus *string `locationName:"datastoreStatus" type:"string" required:"true" enum:"DatastoreStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDatastoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDatastoreOutput) GoString() string { + return s.String() +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DeleteDatastoreOutput) SetDatastoreId(v string) *DeleteDatastoreOutput { + s.DatastoreId = &v + return s +} + +// SetDatastoreStatus sets the DatastoreStatus field's value. +func (s *DeleteDatastoreOutput) SetDatastoreStatus(v string) *DeleteDatastoreOutput { + s.DatastoreStatus = &v + return s +} + +type DeleteImageSetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImageSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImageSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteImageSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteImageSetInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DeleteImageSetInput) SetDatastoreId(v string) *DeleteImageSetInput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *DeleteImageSetInput) SetImageSetId(v string) *DeleteImageSetInput { + s.ImageSetId = &v + return s +} + +type DeleteImageSetOutput struct { + _ struct{} `type:"structure"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state. + // + // ImageSetState is a required field + ImageSetState *string `locationName:"imageSetState" type:"string" required:"true" enum:"ImageSetState"` + + // The image set workflow status. + // + // ImageSetWorkflowStatus is a required field + ImageSetWorkflowStatus *string `locationName:"imageSetWorkflowStatus" type:"string" required:"true" enum:"ImageSetWorkflowStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImageSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteImageSetOutput) GoString() string { + return s.String() +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *DeleteImageSetOutput) SetDatastoreId(v string) *DeleteImageSetOutput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *DeleteImageSetOutput) SetImageSetId(v string) *DeleteImageSetOutput { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *DeleteImageSetOutput) SetImageSetState(v string) *DeleteImageSetOutput { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *DeleteImageSetOutput) SetImageSetWorkflowStatus(v string) *DeleteImageSetOutput { + s.ImageSetWorkflowStatus = &v + return s +} + +type GetDICOMImportJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The import job identifier. + // + // JobId is a required field + JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDICOMImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDICOMImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDICOMImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDICOMImportJobInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.JobId == nil { + invalidParams.Add(request.NewErrParamRequired("JobId")) + } + if s.JobId != nil && len(*s.JobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetDICOMImportJobInput) SetDatastoreId(v string) *GetDICOMImportJobInput { + s.DatastoreId = &v + return s +} + +// SetJobId sets the JobId field's value. +func (s *GetDICOMImportJobInput) SetJobId(v string) *GetDICOMImportJobInput { + s.JobId = &v + return s +} + +type GetDICOMImportJobOutput struct { + _ struct{} `type:"structure"` + + // The properties of the import job. + // + // JobProperties is a required field + JobProperties *DICOMImportJobProperties `locationName:"jobProperties" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDICOMImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDICOMImportJobOutput) GoString() string { + return s.String() +} + +// SetJobProperties sets the JobProperties field's value. +func (s *GetDICOMImportJobOutput) SetJobProperties(v *DICOMImportJobProperties) *GetDICOMImportJobOutput { + s.JobProperties = v + return s +} + +type GetDatastoreInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDatastoreInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDatastoreInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDatastoreInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDatastoreInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetDatastoreInput) SetDatastoreId(v string) *GetDatastoreInput { + s.DatastoreId = &v + return s +} + +type GetDatastoreOutput struct { + _ struct{} `type:"structure"` + + // The data store properties. + // + // DatastoreProperties is a required field + DatastoreProperties *DatastoreProperties `locationName:"datastoreProperties" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDatastoreOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDatastoreOutput) GoString() string { + return s.String() +} + +// SetDatastoreProperties sets the DatastoreProperties field's value. +func (s *GetDatastoreOutput) SetDatastoreProperties(v *DatastoreProperties) *GetDatastoreOutput { + s.DatastoreProperties = v + return s +} + +type GetImageFrameInput struct { + _ struct{} `type:"structure" payload:"ImageFrameInformation"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // Information about the image frame (pixel data) identifier. + // + // ImageFrameInformation is a required field + ImageFrameInformation *ImageFrameInformation `locationName:"imageFrameInformation" type:"structure" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageFrameInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageFrameInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetImageFrameInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetImageFrameInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageFrameInformation == nil { + invalidParams.Add(request.NewErrParamRequired("ImageFrameInformation")) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + if s.ImageFrameInformation != nil { + if err := s.ImageFrameInformation.Validate(); err != nil { + invalidParams.AddNested("ImageFrameInformation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetImageFrameInput) SetDatastoreId(v string) *GetImageFrameInput { + s.DatastoreId = &v + return s +} + +// SetImageFrameInformation sets the ImageFrameInformation field's value. +func (s *GetImageFrameInput) SetImageFrameInformation(v *ImageFrameInformation) *GetImageFrameInput { + s.ImageFrameInformation = v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *GetImageFrameInput) SetImageSetId(v string) *GetImageFrameInput { + s.ImageSetId = &v + return s +} + +type GetImageFrameOutput struct { + _ struct{} `type:"structure" payload:"ImageFrameBlob"` + + // The format in which the image frame information is returned to the customer. + // Default is application/octet-stream. + ContentType *string `location:"header" locationName:"Content-Type" type:"string"` + + // The blob containing the aggregated image frame information. + // + // ImageFrameBlob is a required field + ImageFrameBlob io.ReadCloser `locationName:"imageFrameBlob" type:"blob" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageFrameOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageFrameOutput) GoString() string { + return s.String() +} + +// SetContentType sets the ContentType field's value. +func (s *GetImageFrameOutput) SetContentType(v string) *GetImageFrameOutput { + s.ContentType = &v + return s +} + +// SetImageFrameBlob sets the ImageFrameBlob field's value. +func (s *GetImageFrameOutput) SetImageFrameBlob(v io.ReadCloser) *GetImageFrameOutput { + s.ImageFrameBlob = v + return s +} + +type GetImageSetInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` + + // The image set version identifier. + VersionId *string `location:"querystring" locationName:"version" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetImageSetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetImageSetInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetImageSetInput) SetDatastoreId(v string) *GetImageSetInput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *GetImageSetInput) SetImageSetId(v string) *GetImageSetInput { + s.ImageSetId = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *GetImageSetInput) SetVersionId(v string) *GetImageSetInput { + s.VersionId = &v + return s +} + +type GetImageSetMetadataInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` + + // The image set version identifier. + VersionId *string `location:"querystring" locationName:"version" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetImageSetMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetImageSetMetadataInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetImageSetMetadataInput) SetDatastoreId(v string) *GetImageSetMetadataInput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *GetImageSetMetadataInput) SetImageSetId(v string) *GetImageSetMetadataInput { + s.ImageSetId = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *GetImageSetMetadataInput) SetVersionId(v string) *GetImageSetMetadataInput { + s.VersionId = &v + return s +} + +type GetImageSetMetadataOutput struct { + _ struct{} `type:"structure" payload:"ImageSetMetadataBlob"` + + // The compression format in which image set metadata attributes are returned. + ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"` + + // The format in which the study metadata is returned to the customer. Default + // is text/plain. + ContentType *string `location:"header" locationName:"Content-Type" type:"string"` + + // The blob containing the aggregated metadata information for the image set. + // + // ImageSetMetadataBlob is a required field + ImageSetMetadataBlob io.ReadCloser `locationName:"imageSetMetadataBlob" type:"blob" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetMetadataOutput) GoString() string { + return s.String() +} + +// SetContentEncoding sets the ContentEncoding field's value. +func (s *GetImageSetMetadataOutput) SetContentEncoding(v string) *GetImageSetMetadataOutput { + s.ContentEncoding = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *GetImageSetMetadataOutput) SetContentType(v string) *GetImageSetMetadataOutput { + s.ContentType = &v + return s +} + +// SetImageSetMetadataBlob sets the ImageSetMetadataBlob field's value. +func (s *GetImageSetMetadataOutput) SetImageSetMetadataBlob(v io.ReadCloser) *GetImageSetMetadataOutput { + s.ImageSetMetadataBlob = v + return s +} + +type GetImageSetOutput struct { + _ struct{} `type:"structure"` + + // The timestamp when image set properties were created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The timestamp when the image set properties were deleted. + DeletedAt *time.Time `locationName:"deletedAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) assigned to the image set. + ImageSetArn *string `locationName:"imageSetArn" type:"string"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state. + // + // ImageSetState is a required field + ImageSetState *string `locationName:"imageSetState" type:"string" required:"true" enum:"ImageSetState"` + + // The image set workflow status. + ImageSetWorkflowStatus *string `locationName:"imageSetWorkflowStatus" type:"string" enum:"ImageSetWorkflowStatus"` + + // The error message thrown if an image set action fails. + Message *string `locationName:"message" min:"1" type:"string"` + + // The timestamp when image set properties were updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The image set version identifier. + // + // VersionId is a required field + VersionId *string `locationName:"versionId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetImageSetOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetImageSetOutput) SetCreatedAt(v time.Time) *GetImageSetOutput { + s.CreatedAt = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *GetImageSetOutput) SetDatastoreId(v string) *GetImageSetOutput { + s.DatastoreId = &v + return s +} + +// SetDeletedAt sets the DeletedAt field's value. +func (s *GetImageSetOutput) SetDeletedAt(v time.Time) *GetImageSetOutput { + s.DeletedAt = &v + return s +} + +// SetImageSetArn sets the ImageSetArn field's value. +func (s *GetImageSetOutput) SetImageSetArn(v string) *GetImageSetOutput { + s.ImageSetArn = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *GetImageSetOutput) SetImageSetId(v string) *GetImageSetOutput { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *GetImageSetOutput) SetImageSetState(v string) *GetImageSetOutput { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *GetImageSetOutput) SetImageSetWorkflowStatus(v string) *GetImageSetOutput { + s.ImageSetWorkflowStatus = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *GetImageSetOutput) SetMessage(v string) *GetImageSetOutput { + s.Message = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetImageSetOutput) SetUpdatedAt(v time.Time) *GetImageSetOutput { + s.UpdatedAt = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *GetImageSetOutput) SetVersionId(v string) *GetImageSetOutput { + s.VersionId = &v + return s +} + +// Information about the image frame (pixel data) identifier. +type ImageFrameInformation struct { + _ struct{} `type:"structure"` + + // The image frame (pixel data) identifier. + // + // ImageFrameId is a required field + ImageFrameId *string `locationName:"imageFrameId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageFrameInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageFrameInformation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImageFrameInformation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImageFrameInformation"} + if s.ImageFrameId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageFrameId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetImageFrameId sets the ImageFrameId field's value. +func (s *ImageFrameInformation) SetImageFrameId(v string) *ImageFrameInformation { + s.ImageFrameId = &v + return s +} + +// The image set properties. +type ImageSetProperties struct { + _ struct{} `type:"structure"` + + // The timestamp when the image set properties were created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The timestamp when the image set properties were deleted. + DeletedAt *time.Time `locationName:"deletedAt" type:"timestamp"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state. + // + // ImageSetState is a required field + ImageSetState *string `locationName:"imageSetState" type:"string" required:"true" enum:"ImageSetState"` + + // The image set workflow status. + ImageSetWorkflowStatus *string `type:"string" enum:"ImageSetWorkflowStatus"` + + // The error message thrown if an image set action fails. + Message *string `locationName:"message" min:"1" type:"string"` + + // The timestamp when the image set properties were updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The image set version identifier. + // + // VersionId is a required field + VersionId *string `locationName:"versionId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageSetProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageSetProperties) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ImageSetProperties) SetCreatedAt(v time.Time) *ImageSetProperties { + s.CreatedAt = &v + return s +} + +// SetDeletedAt sets the DeletedAt field's value. +func (s *ImageSetProperties) SetDeletedAt(v time.Time) *ImageSetProperties { + s.DeletedAt = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *ImageSetProperties) SetImageSetId(v string) *ImageSetProperties { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *ImageSetProperties) SetImageSetState(v string) *ImageSetProperties { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *ImageSetProperties) SetImageSetWorkflowStatus(v string) *ImageSetProperties { + s.ImageSetWorkflowStatus = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *ImageSetProperties) SetMessage(v string) *ImageSetProperties { + s.Message = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ImageSetProperties) SetUpdatedAt(v time.Time) *ImageSetProperties { + s.UpdatedAt = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *ImageSetProperties) SetVersionId(v string) *ImageSetProperties { + s.VersionId = &v + return s +} + +// Summary of the image set metadata. +type ImageSetsMetadataSummary struct { + _ struct{} `type:"structure"` + + // The time an image set is created in AWS HealthImaging. Sample creation date + // is provided in 1985-04-12T23:20:50.52Z format. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The DICOM tags associated with the image set. + DICOMTags *DICOMTags `type:"structure"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The time when an image was last updated in AWS HealthImaging. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` + + // The image set version. + Version *int64 `locationName:"version" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageSetsMetadataSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImageSetsMetadataSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ImageSetsMetadataSummary) SetCreatedAt(v time.Time) *ImageSetsMetadataSummary { + s.CreatedAt = &v + return s +} + +// SetDICOMTags sets the DICOMTags field's value. +func (s *ImageSetsMetadataSummary) SetDICOMTags(v *DICOMTags) *ImageSetsMetadataSummary { + s.DICOMTags = v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *ImageSetsMetadataSummary) SetImageSetId(v string) *ImageSetsMetadataSummary { + s.ImageSetId = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ImageSetsMetadataSummary) SetUpdatedAt(v time.Time) *ImageSetsMetadataSummary { + s.UpdatedAt = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *ImageSetsMetadataSummary) SetVersion(v int64) *ImageSetsMetadataSummary { + s.Version = &v + return s +} + +// An unexpected error occurred during processing of the request. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListDICOMImportJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The filters for listing import jobs based on status. + JobStatus *string `location:"querystring" locationName:"jobStatus" type:"string" enum:"JobStatus"` + + // The max results count. The upper bound is determined by load testing. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token used to request the list of import jobs on the next + // page. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDICOMImportJobsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDICOMImportJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDICOMImportJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDICOMImportJobsInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *ListDICOMImportJobsInput) SetDatastoreId(v string) *ListDICOMImportJobsInput { + s.DatastoreId = &v + return s +} + +// SetJobStatus sets the JobStatus field's value. +func (s *ListDICOMImportJobsInput) SetJobStatus(v string) *ListDICOMImportJobsInput { + s.JobStatus = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDICOMImportJobsInput) SetMaxResults(v int64) *ListDICOMImportJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDICOMImportJobsInput) SetNextToken(v string) *ListDICOMImportJobsInput { + s.NextToken = &v + return s +} + +type ListDICOMImportJobsOutput struct { + _ struct{} `type:"structure"` + + // A list of job summaries. + // + // JobSummaries is a required field + JobSummaries []*DICOMImportJobSummary `locationName:"jobSummaries" type:"list" required:"true"` + + // The pagination token used to retrieve the list of import jobs on the next + // page. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDICOMImportJobsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDICOMImportJobsOutput) GoString() string { + return s.String() +} + +// SetJobSummaries sets the JobSummaries field's value. +func (s *ListDICOMImportJobsOutput) SetJobSummaries(v []*DICOMImportJobSummary) *ListDICOMImportJobsOutput { + s.JobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDICOMImportJobsOutput) SetNextToken(v string) *ListDICOMImportJobsOutput { + s.NextToken = &v + return s +} + +type ListDatastoresInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store status. + DatastoreStatus *string `location:"querystring" locationName:"datastoreStatus" type:"string" enum:"DatastoreStatus"` + + // Valid Range: Minimum value of 1. Maximum value of 50. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token used to request the list of data stores on the next + // page. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDatastoresInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDatastoresInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDatastoresInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDatastoresInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreStatus sets the DatastoreStatus field's value. +func (s *ListDatastoresInput) SetDatastoreStatus(v string) *ListDatastoresInput { + s.DatastoreStatus = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDatastoresInput) SetMaxResults(v int64) *ListDatastoresInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDatastoresInput) SetNextToken(v string) *ListDatastoresInput { + s.NextToken = &v + return s +} + +type ListDatastoresOutput struct { + _ struct{} `type:"structure"` + + // The list of summaries of data stores. + DatastoreSummaries []*DatastoreSummary `locationName:"datastoreSummaries" type:"list"` + + // The pagination token used to retrieve the list of data stores on the next + // page. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDatastoresOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDatastoresOutput) GoString() string { + return s.String() +} + +// SetDatastoreSummaries sets the DatastoreSummaries field's value. +func (s *ListDatastoresOutput) SetDatastoreSummaries(v []*DatastoreSummary) *ListDatastoresOutput { + s.DatastoreSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDatastoresOutput) SetNextToken(v string) *ListDatastoresOutput { + s.NextToken = &v + return s +} + +type ListImageSetVersionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` + + // The max results count. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token used to request the list of image set versions on the + // next page. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImageSetVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImageSetVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListImageSetVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListImageSetVersionsInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *ListImageSetVersionsInput) SetDatastoreId(v string) *ListImageSetVersionsInput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *ListImageSetVersionsInput) SetImageSetId(v string) *ListImageSetVersionsInput { + s.ImageSetId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListImageSetVersionsInput) SetMaxResults(v int64) *ListImageSetVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImageSetVersionsInput) SetNextToken(v string) *ListImageSetVersionsInput { + s.NextToken = &v + return s +} + +type ListImageSetVersionsOutput struct { + _ struct{} `type:"structure"` + + // Lists all properties associated with an image set. + // + // ImageSetPropertiesList is a required field + ImageSetPropertiesList []*ImageSetProperties `locationName:"imageSetPropertiesList" type:"list" required:"true"` + + // The pagination token used to retrieve the list of image set versions on the + // next page. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImageSetVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImageSetVersionsOutput) GoString() string { + return s.String() +} + +// SetImageSetPropertiesList sets the ImageSetPropertiesList field's value. +func (s *ListImageSetVersionsOutput) SetImageSetPropertiesList(v []*ImageSetProperties) *ListImageSetVersionsOutput { + s.ImageSetPropertiesList = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImageSetVersionsOutput) SetNextToken(v string) *ListImageSetVersionsOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the medical imaging resource to list tags + // for. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A list of all tags associated with a medical imaging resource. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// Contains DICOMUpdates. +type MetadataUpdates struct { + _ struct{} `type:"structure"` + + // The object containing removableAttributes and updatableAttributes. + DICOMUpdates *DICOMUpdates `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataUpdates) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetadataUpdates) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MetadataUpdates) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MetadataUpdates"} + if s.DICOMUpdates != nil { + if err := s.DICOMUpdates.Validate(); err != nil { + invalidParams.AddNested("DICOMUpdates", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDICOMUpdates sets the DICOMUpdates field's value. +func (s *MetadataUpdates) SetDICOMUpdates(v *DICOMUpdates) *MetadataUpdates { + s.DICOMUpdates = v + return s +} + +// The request references a resource which does not exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The search input attribute value. +type SearchByAttributeValue struct { + _ struct{} `type:"structure"` + + // The created at time of the image set provided for search. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The DICOM accession number for search. + // + // DICOMAccessionNumber is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchByAttributeValue's + // String and GoString methods. + DICOMAccessionNumber *string `type:"string" sensitive:"true"` + + // The patient ID input for search. + // + // DICOMPatientId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchByAttributeValue's + // String and GoString methods. + DICOMPatientId *string `type:"string" sensitive:"true"` + + // The aggregated structure containing DICOM study date and study time for search. + DICOMStudyDateAndTime *DICOMStudyDateAndTime `type:"structure"` + + // The DICOM study ID for search. + // + // DICOMStudyId is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchByAttributeValue's + // String and GoString methods. + DICOMStudyId *string `type:"string" sensitive:"true"` + + // The DICOM study instance UID for search. + // + // DICOMStudyInstanceUID is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchByAttributeValue's + // String and GoString methods. + DICOMStudyInstanceUID *string `type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchByAttributeValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchByAttributeValue) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchByAttributeValue) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchByAttributeValue"} + if s.DICOMStudyDateAndTime != nil { + if err := s.DICOMStudyDateAndTime.Validate(); err != nil { + invalidParams.AddNested("DICOMStudyDateAndTime", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *SearchByAttributeValue) SetCreatedAt(v time.Time) *SearchByAttributeValue { + s.CreatedAt = &v + return s +} + +// SetDICOMAccessionNumber sets the DICOMAccessionNumber field's value. +func (s *SearchByAttributeValue) SetDICOMAccessionNumber(v string) *SearchByAttributeValue { + s.DICOMAccessionNumber = &v + return s +} + +// SetDICOMPatientId sets the DICOMPatientId field's value. +func (s *SearchByAttributeValue) SetDICOMPatientId(v string) *SearchByAttributeValue { + s.DICOMPatientId = &v + return s +} + +// SetDICOMStudyDateAndTime sets the DICOMStudyDateAndTime field's value. +func (s *SearchByAttributeValue) SetDICOMStudyDateAndTime(v *DICOMStudyDateAndTime) *SearchByAttributeValue { + s.DICOMStudyDateAndTime = v + return s +} + +// SetDICOMStudyId sets the DICOMStudyId field's value. +func (s *SearchByAttributeValue) SetDICOMStudyId(v string) *SearchByAttributeValue { + s.DICOMStudyId = &v + return s +} + +// SetDICOMStudyInstanceUID sets the DICOMStudyInstanceUID field's value. +func (s *SearchByAttributeValue) SetDICOMStudyInstanceUID(v string) *SearchByAttributeValue { + s.DICOMStudyInstanceUID = &v + return s +} + +// The search criteria. +type SearchCriteria struct { + _ struct{} `type:"structure" sensitive:"true"` + + // The filters for the search criteria. + Filters []*SearchFilter `locationName:"filters" min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchCriteria) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchCriteria) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchCriteria) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchCriteria"} + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *SearchCriteria) SetFilters(v []*SearchFilter) *SearchCriteria { + s.Filters = v + return s +} + +// The search filter. +type SearchFilter struct { + _ struct{} `type:"structure"` + + // The search filter operator for imageSetDateTime. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"Operator"` + + // The search filter values. + // + // Values is a required field + Values []*SearchByAttributeValue `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchFilter"} + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + if s.Values != nil { + for i, v := range s.Values { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Values", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOperator sets the Operator field's value. +func (s *SearchFilter) SetOperator(v string) *SearchFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *SearchFilter) SetValues(v []*SearchByAttributeValue) *SearchFilter { + s.Values = v + return s +} + +type SearchImageSetsInput struct { + _ struct{} `type:"structure" payload:"SearchCriteria"` + + // The identifier of the data store where the image sets reside. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The maximum number of results that can be returned in a search. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token used for pagination of results returned in the response. Use the + // token returned from the previous request to continue results where the previous + // request ended. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The search criteria that filters by applying a maximum of 1 item to SearchByAttribute. + // + // SearchCriteria is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SearchImageSetsInput's + // String and GoString methods. + SearchCriteria *SearchCriteria `locationName:"searchCriteria" type:"structure" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchImageSetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchImageSetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SearchImageSetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SearchImageSetsInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.SearchCriteria != nil { + if err := s.SearchCriteria.Validate(); err != nil { + invalidParams.AddNested("SearchCriteria", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *SearchImageSetsInput) SetDatastoreId(v string) *SearchImageSetsInput { + s.DatastoreId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *SearchImageSetsInput) SetMaxResults(v int64) *SearchImageSetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchImageSetsInput) SetNextToken(v string) *SearchImageSetsInput { + s.NextToken = &v + return s +} + +// SetSearchCriteria sets the SearchCriteria field's value. +func (s *SearchImageSetsInput) SetSearchCriteria(v *SearchCriteria) *SearchImageSetsInput { + s.SearchCriteria = v + return s +} + +type SearchImageSetsOutput struct { + _ struct{} `type:"structure"` + + // The model containing the image set results. + // + // ImageSetsMetadataSummaries is a required field + ImageSetsMetadataSummaries []*ImageSetsMetadataSummary `locationName:"imageSetsMetadataSummaries" type:"list" required:"true"` + + // The token for pagination results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchImageSetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SearchImageSetsOutput) GoString() string { + return s.String() +} + +// SetImageSetsMetadataSummaries sets the ImageSetsMetadataSummaries field's value. +func (s *SearchImageSetsOutput) SetImageSetsMetadataSummaries(v []*ImageSetsMetadataSummary) *SearchImageSetsOutput { + s.ImageSetsMetadataSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *SearchImageSetsOutput) SetNextToken(v string) *SearchImageSetsOutput { + s.NextToken = &v + return s +} + +// The request caused a service quota to be exceeded. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StartDICOMImportJobInput struct { + _ struct{} `type:"structure"` + + // A unique identifier for API idempotency. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The Amazon Resource Name (ARN) of the IAM role that grants permission to + // access medical imaging resources. + // + // DataAccessRoleArn is a required field + DataAccessRoleArn *string `locationName:"dataAccessRoleArn" min:"20" type:"string" required:"true"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The input prefix path for the S3 bucket that contains the DICOM files to + // be imported. + // + // InputS3Uri is a required field + InputS3Uri *string `locationName:"inputS3Uri" min:"1" type:"string" required:"true"` + + // The import job name. + JobName *string `locationName:"jobName" min:"1" type:"string"` + + // The output prefix of the S3 bucket to upload the results of the DICOM import + // job. + // + // OutputS3Uri is a required field + OutputS3Uri *string `locationName:"outputS3Uri" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDICOMImportJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDICOMImportJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDICOMImportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDICOMImportJobInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.DataAccessRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn")) + } + if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20)) + } + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.InputS3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("InputS3Uri")) + } + if s.InputS3Uri != nil && len(*s.InputS3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InputS3Uri", 1)) + } + if s.JobName != nil && len(*s.JobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobName", 1)) + } + if s.OutputS3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("OutputS3Uri")) + } + if s.OutputS3Uri != nil && len(*s.OutputS3Uri) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputS3Uri", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartDICOMImportJobInput) SetClientToken(v string) *StartDICOMImportJobInput { + s.ClientToken = &v + return s +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *StartDICOMImportJobInput) SetDataAccessRoleArn(v string) *StartDICOMImportJobInput { + s.DataAccessRoleArn = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *StartDICOMImportJobInput) SetDatastoreId(v string) *StartDICOMImportJobInput { + s.DatastoreId = &v + return s +} + +// SetInputS3Uri sets the InputS3Uri field's value. +func (s *StartDICOMImportJobInput) SetInputS3Uri(v string) *StartDICOMImportJobInput { + s.InputS3Uri = &v + return s +} + +// SetJobName sets the JobName field's value. +func (s *StartDICOMImportJobInput) SetJobName(v string) *StartDICOMImportJobInput { + s.JobName = &v + return s +} + +// SetOutputS3Uri sets the OutputS3Uri field's value. +func (s *StartDICOMImportJobInput) SetOutputS3Uri(v string) *StartDICOMImportJobInput { + s.OutputS3Uri = &v + return s +} + +type StartDICOMImportJobOutput struct { + _ struct{} `type:"structure"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The import job identifier. + // + // JobId is a required field + JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"` + + // The import job status. + // + // JobStatus is a required field + JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"JobStatus"` + + // The timestamp when the import job was submitted. + // + // SubmittedAt is a required field + SubmittedAt *time.Time `locationName:"submittedAt" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDICOMImportJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartDICOMImportJobOutput) GoString() string { + return s.String() +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *StartDICOMImportJobOutput) SetDatastoreId(v string) *StartDICOMImportJobOutput { + s.DatastoreId = &v + return s +} + +// SetJobId sets the JobId field's value. +func (s *StartDICOMImportJobOutput) SetJobId(v string) *StartDICOMImportJobOutput { + s.JobId = &v + return s +} + +// SetJobStatus sets the JobStatus field's value. +func (s *StartDICOMImportJobOutput) SetJobStatus(v string) *StartDICOMImportJobOutput { + s.JobStatus = &v + return s +} + +// SetSubmittedAt sets the SubmittedAt field's value. +func (s *StartDICOMImportJobOutput) SetSubmittedAt(v time.Time) *StartDICOMImportJobOutput { + s.SubmittedAt = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the medical imaging resource that tags + // are being added to. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The user-specified key and value tag pairs added to a medical imaging resource. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) of the medical imaging resource that tags + // are being removed from. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + + // The keys for the tags to be removed from the medical imaging resource. + // + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateImageSetMetadataInput struct { + _ struct{} `type:"structure" payload:"UpdateImageSetMetadataUpdates"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `location:"uri" locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `location:"uri" locationName:"imageSetId" type:"string" required:"true"` + + // The latest image set version identifier. + // + // LatestVersionId is a required field + LatestVersionId *string `location:"querystring" locationName:"latestVersion" type:"string" required:"true"` + + // Update image set metadata updates. + // + // UpdateImageSetMetadataUpdates is a required field + UpdateImageSetMetadataUpdates *MetadataUpdates `locationName:"updateImageSetMetadataUpdates" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateImageSetMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateImageSetMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateImageSetMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateImageSetMetadataInput"} + if s.DatastoreId == nil { + invalidParams.Add(request.NewErrParamRequired("DatastoreId")) + } + if s.DatastoreId != nil && len(*s.DatastoreId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatastoreId", 1)) + } + if s.ImageSetId == nil { + invalidParams.Add(request.NewErrParamRequired("ImageSetId")) + } + if s.ImageSetId != nil && len(*s.ImageSetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ImageSetId", 1)) + } + if s.LatestVersionId == nil { + invalidParams.Add(request.NewErrParamRequired("LatestVersionId")) + } + if s.UpdateImageSetMetadataUpdates == nil { + invalidParams.Add(request.NewErrParamRequired("UpdateImageSetMetadataUpdates")) + } + if s.UpdateImageSetMetadataUpdates != nil { + if err := s.UpdateImageSetMetadataUpdates.Validate(); err != nil { + invalidParams.AddNested("UpdateImageSetMetadataUpdates", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *UpdateImageSetMetadataInput) SetDatastoreId(v string) *UpdateImageSetMetadataInput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *UpdateImageSetMetadataInput) SetImageSetId(v string) *UpdateImageSetMetadataInput { + s.ImageSetId = &v + return s +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *UpdateImageSetMetadataInput) SetLatestVersionId(v string) *UpdateImageSetMetadataInput { + s.LatestVersionId = &v + return s +} + +// SetUpdateImageSetMetadataUpdates sets the UpdateImageSetMetadataUpdates field's value. +func (s *UpdateImageSetMetadataInput) SetUpdateImageSetMetadataUpdates(v *MetadataUpdates) *UpdateImageSetMetadataInput { + s.UpdateImageSetMetadataUpdates = v + return s +} + +type UpdateImageSetMetadataOutput struct { + _ struct{} `type:"structure"` + + // The timestamp when image set metadata was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // The data store identifier. + // + // DatastoreId is a required field + DatastoreId *string `locationName:"datastoreId" type:"string" required:"true"` + + // The image set identifier. + // + // ImageSetId is a required field + ImageSetId *string `locationName:"imageSetId" type:"string" required:"true"` + + // The image set state. + // + // ImageSetState is a required field + ImageSetState *string `locationName:"imageSetState" type:"string" required:"true" enum:"ImageSetState"` + + // The image set workflow status. + ImageSetWorkflowStatus *string `locationName:"imageSetWorkflowStatus" type:"string" enum:"ImageSetWorkflowStatus"` + + // The latest image set version identifier. + // + // LatestVersionId is a required field + LatestVersionId *string `locationName:"latestVersionId" type:"string" required:"true"` + + // The error message thrown if an update image set metadata action fails. + Message *string `locationName:"message" min:"1" type:"string"` + + // The timestamp when image set metadata was updated. + UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateImageSetMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateImageSetMetadataOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateImageSetMetadataOutput) SetCreatedAt(v time.Time) *UpdateImageSetMetadataOutput { + s.CreatedAt = &v + return s +} + +// SetDatastoreId sets the DatastoreId field's value. +func (s *UpdateImageSetMetadataOutput) SetDatastoreId(v string) *UpdateImageSetMetadataOutput { + s.DatastoreId = &v + return s +} + +// SetImageSetId sets the ImageSetId field's value. +func (s *UpdateImageSetMetadataOutput) SetImageSetId(v string) *UpdateImageSetMetadataOutput { + s.ImageSetId = &v + return s +} + +// SetImageSetState sets the ImageSetState field's value. +func (s *UpdateImageSetMetadataOutput) SetImageSetState(v string) *UpdateImageSetMetadataOutput { + s.ImageSetState = &v + return s +} + +// SetImageSetWorkflowStatus sets the ImageSetWorkflowStatus field's value. +func (s *UpdateImageSetMetadataOutput) SetImageSetWorkflowStatus(v string) *UpdateImageSetMetadataOutput { + s.ImageSetWorkflowStatus = &v + return s +} + +// SetLatestVersionId sets the LatestVersionId field's value. +func (s *UpdateImageSetMetadataOutput) SetLatestVersionId(v string) *UpdateImageSetMetadataOutput { + s.LatestVersionId = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *UpdateImageSetMetadataOutput) SetMessage(v string) *UpdateImageSetMetadataOutput { + s.Message = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateImageSetMetadataOutput) SetUpdatedAt(v time.Time) *UpdateImageSetMetadataOutput { + s.UpdatedAt = &v + return s +} + +// The input fails to satisfy the constraints specified by an AWS service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +const ( + // DatastoreStatusCreating is a DatastoreStatus enum value + DatastoreStatusCreating = "CREATING" + + // DatastoreStatusCreateFailed is a DatastoreStatus enum value + DatastoreStatusCreateFailed = "CREATE_FAILED" + + // DatastoreStatusActive is a DatastoreStatus enum value + DatastoreStatusActive = "ACTIVE" + + // DatastoreStatusDeleting is a DatastoreStatus enum value + DatastoreStatusDeleting = "DELETING" + + // DatastoreStatusDeleted is a DatastoreStatus enum value + DatastoreStatusDeleted = "DELETED" +) + +// DatastoreStatus_Values returns all elements of the DatastoreStatus enum +func DatastoreStatus_Values() []string { + return []string{ + DatastoreStatusCreating, + DatastoreStatusCreateFailed, + DatastoreStatusActive, + DatastoreStatusDeleting, + DatastoreStatusDeleted, + } +} + +const ( + // ImageSetStateActive is a ImageSetState enum value + ImageSetStateActive = "ACTIVE" + + // ImageSetStateLocked is a ImageSetState enum value + ImageSetStateLocked = "LOCKED" + + // ImageSetStateDeleted is a ImageSetState enum value + ImageSetStateDeleted = "DELETED" +) + +// ImageSetState_Values returns all elements of the ImageSetState enum +func ImageSetState_Values() []string { + return []string{ + ImageSetStateActive, + ImageSetStateLocked, + ImageSetStateDeleted, + } +} + +const ( + // ImageSetWorkflowStatusCreated is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusCreated = "CREATED" + + // ImageSetWorkflowStatusCopied is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusCopied = "COPIED" + + // ImageSetWorkflowStatusCopying is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusCopying = "COPYING" + + // ImageSetWorkflowStatusCopyingWithReadOnlyAccess is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusCopyingWithReadOnlyAccess = "COPYING_WITH_READ_ONLY_ACCESS" + + // ImageSetWorkflowStatusCopyFailed is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusCopyFailed = "COPY_FAILED" + + // ImageSetWorkflowStatusUpdating is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusUpdating = "UPDATING" + + // ImageSetWorkflowStatusUpdated is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusUpdated = "UPDATED" + + // ImageSetWorkflowStatusUpdateFailed is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusUpdateFailed = "UPDATE_FAILED" + + // ImageSetWorkflowStatusDeleting is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusDeleting = "DELETING" + + // ImageSetWorkflowStatusDeleted is a ImageSetWorkflowStatus enum value + ImageSetWorkflowStatusDeleted = "DELETED" +) + +// ImageSetWorkflowStatus_Values returns all elements of the ImageSetWorkflowStatus enum +func ImageSetWorkflowStatus_Values() []string { + return []string{ + ImageSetWorkflowStatusCreated, + ImageSetWorkflowStatusCopied, + ImageSetWorkflowStatusCopying, + ImageSetWorkflowStatusCopyingWithReadOnlyAccess, + ImageSetWorkflowStatusCopyFailed, + ImageSetWorkflowStatusUpdating, + ImageSetWorkflowStatusUpdated, + ImageSetWorkflowStatusUpdateFailed, + ImageSetWorkflowStatusDeleting, + ImageSetWorkflowStatusDeleted, + } +} + +const ( + // JobStatusSubmitted is a JobStatus enum value + JobStatusSubmitted = "SUBMITTED" + + // JobStatusInProgress is a JobStatus enum value + JobStatusInProgress = "IN_PROGRESS" + + // JobStatusCompleted is a JobStatus enum value + JobStatusCompleted = "COMPLETED" + + // JobStatusFailed is a JobStatus enum value + JobStatusFailed = "FAILED" +) + +// JobStatus_Values returns all elements of the JobStatus enum +func JobStatus_Values() []string { + return []string{ + JobStatusSubmitted, + JobStatusInProgress, + JobStatusCompleted, + JobStatusFailed, + } +} + +const ( + // OperatorEqual is a Operator enum value + OperatorEqual = "EQUAL" + + // OperatorBetween is a Operator enum value + OperatorBetween = "BETWEEN" +) + +// Operator_Values returns all elements of the Operator enum +func Operator_Values() []string { + return []string{ + OperatorEqual, + OperatorBetween, + } +} diff --git a/service/medicalimaging/doc.go b/service/medicalimaging/doc.go new file mode 100644 index 00000000000..90ddd3fc001 --- /dev/null +++ b/service/medicalimaging/doc.go @@ -0,0 +1,111 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package medicalimaging provides the client and types for making API +// requests to AWS Health Imaging. +// +// This is the AWS HealthImaging API Reference. AWS HealthImaging is an AWS +// service for storing, accessing, and analyzing medical images. For an introduction +// to the service, see the AWS HealthImaging Developer Guide (https://docs.aws.amazon.com/medical-imaging/latest/devguide). +// +// We recommend using one of the AWS Software Development Kits (SDKs) for your +// programming language, as they take care of request authentication, serialization, +// and connection management. For more information, see Tools to build on AWS +// (http://aws.amazon.com/developer/tools). +// +// For information about using AWS HealthImaging API actions in one of the language-specific +// AWS SDKs, refer to the See Also link at the end of each section that describes +// an API action or data type. +// +// The following sections list AWS HealthImaging API actions categorized according +// to functionality. Links are provided to actions within this Reference, along +// with links back to corresponding sections in the AWS HealthImaging Developer +// Guide so you can view console procedures and CLI/SDK code examples. +// +// Data store actions +// +// - CreateDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_CreateDatastore.html) +// – See Creating a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/create-data-store.html). +// +// - GetDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetDatastore.html) +// – See Getting data store properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-data-store.html). +// +// - ListDatastores (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListDatastores.html) +// – See Listing data stores (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-data-stores.html). +// +// - DeleteDatastore (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_DeleteDatastore.html) +// – See Deleting a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/delete-data-store.html). +// +// Import job actions +// +// - StartDICOMImportJob (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_StartDICOMImportJob.html) +// – See Starting an import job (https://docs.aws.amazon.com/medical-imaging/latest/devguide/start-dicom-import-job.html). +// +// - GetDICOMImportJob (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetDICOMImportJob.html) +// – See Getting import job properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-dicom-import-job.html). +// +// - ListDICOMImportJobs (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListDICOMImportJobs.html) +// – See Listing import jobs (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-dicom-import-jobs.html). +// +// Image set access actions +// +// - SearchImageSets (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_SearchImageSets.html) +// – See Searching image sets (https://docs.aws.amazon.com/medical-imaging/latest/devguide/search-image-sets.html). +// +// - GetImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageSet.html) +// – See Getting image set properties (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-set-properties.html). +// +// - GetImageSetMetadata (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageSetMetadata.html) +// – See Getting image set metadata (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-set-metadata.html). +// +// - GetImageFrame (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_GetImageFrame.html) +// – See Getting image set pixel data (https://docs.aws.amazon.com/medical-imaging/latest/devguide/get-image-frame.html). +// +// Image set modification actions +// +// - ListImageSetVersions (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListImageSetVersions.html) +// – See Listing image set versions (https://docs.aws.amazon.com/medical-imaging/latest/devguide/list-image-set-versions.html). +// +// - UpdateImageSetMetadata (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_UpdateImageSetMetadata.html) +// – See Updating image set metadata (https://docs.aws.amazon.com/medical-imaging/latest/devguide/update-image-set-metadata.html). +// +// - CopyImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_CopyImageSet.html) +// – See Copying an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/copy-image-set.html). +// +// - DeleteImageSet (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_DeleteImageSet.html) +// – See Deleting an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/delete-image-set.html). +// +// Tagging actions +// +// - TagResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_TagResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). +// +// - ListTagsForResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_ListTagsForResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). +// +// - UntagResource (https://docs.aws.amazon.com/medical-imaging/latest/APIReference/API_UntagResource.html) +// – See Tagging a data store (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-data-store.html) +// and Tagging an image set (https://docs.aws.amazon.com/medical-imaging/latest/devguide/tag-list-untag-image-set.html). +// +// See https://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19 for more information on this service. +// +// See medicalimaging package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/medicalimaging/ +// +// # Using the Client +// +// To contact AWS Health Imaging with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Health Imaging client MedicalImaging for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/medicalimaging/#New +package medicalimaging diff --git a/service/medicalimaging/errors.go b/service/medicalimaging/errors.go new file mode 100644 index 00000000000..ed16f846103 --- /dev/null +++ b/service/medicalimaging/errors.go @@ -0,0 +1,62 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package medicalimaging + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // The user does not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Updating or deleting a resource can cause an inconsistent state. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // An unexpected error occurred during processing of the request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The request references a resource which does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The request caused a service quota to be exceeded. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an AWS service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/medicalimaging/medicalimagingiface/interface.go b/service/medicalimaging/medicalimagingiface/interface.go new file mode 100644 index 00000000000..17c14921ecb --- /dev/null +++ b/service/medicalimaging/medicalimagingiface/interface.go @@ -0,0 +1,148 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package medicalimagingiface provides an interface to enable mocking the AWS Health Imaging service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package medicalimagingiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/medicalimaging" +) + +// MedicalImagingAPI provides an interface to enable mocking the +// medicalimaging.MedicalImaging service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Health Imaging. +// func myFunc(svc medicalimagingiface.MedicalImagingAPI) bool { +// // Make svc.CopyImageSet request +// } +// +// func main() { +// sess := session.New() +// svc := medicalimaging.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockMedicalImagingClient struct { +// medicalimagingiface.MedicalImagingAPI +// } +// func (m *mockMedicalImagingClient) CopyImageSet(input *medicalimaging.CopyImageSetInput) (*medicalimaging.CopyImageSetOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockMedicalImagingClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type MedicalImagingAPI interface { + CopyImageSet(*medicalimaging.CopyImageSetInput) (*medicalimaging.CopyImageSetOutput, error) + CopyImageSetWithContext(aws.Context, *medicalimaging.CopyImageSetInput, ...request.Option) (*medicalimaging.CopyImageSetOutput, error) + CopyImageSetRequest(*medicalimaging.CopyImageSetInput) (*request.Request, *medicalimaging.CopyImageSetOutput) + + CreateDatastore(*medicalimaging.CreateDatastoreInput) (*medicalimaging.CreateDatastoreOutput, error) + CreateDatastoreWithContext(aws.Context, *medicalimaging.CreateDatastoreInput, ...request.Option) (*medicalimaging.CreateDatastoreOutput, error) + CreateDatastoreRequest(*medicalimaging.CreateDatastoreInput) (*request.Request, *medicalimaging.CreateDatastoreOutput) + + DeleteDatastore(*medicalimaging.DeleteDatastoreInput) (*medicalimaging.DeleteDatastoreOutput, error) + DeleteDatastoreWithContext(aws.Context, *medicalimaging.DeleteDatastoreInput, ...request.Option) (*medicalimaging.DeleteDatastoreOutput, error) + DeleteDatastoreRequest(*medicalimaging.DeleteDatastoreInput) (*request.Request, *medicalimaging.DeleteDatastoreOutput) + + DeleteImageSet(*medicalimaging.DeleteImageSetInput) (*medicalimaging.DeleteImageSetOutput, error) + DeleteImageSetWithContext(aws.Context, *medicalimaging.DeleteImageSetInput, ...request.Option) (*medicalimaging.DeleteImageSetOutput, error) + DeleteImageSetRequest(*medicalimaging.DeleteImageSetInput) (*request.Request, *medicalimaging.DeleteImageSetOutput) + + GetDICOMImportJob(*medicalimaging.GetDICOMImportJobInput) (*medicalimaging.GetDICOMImportJobOutput, error) + GetDICOMImportJobWithContext(aws.Context, *medicalimaging.GetDICOMImportJobInput, ...request.Option) (*medicalimaging.GetDICOMImportJobOutput, error) + GetDICOMImportJobRequest(*medicalimaging.GetDICOMImportJobInput) (*request.Request, *medicalimaging.GetDICOMImportJobOutput) + + GetDatastore(*medicalimaging.GetDatastoreInput) (*medicalimaging.GetDatastoreOutput, error) + GetDatastoreWithContext(aws.Context, *medicalimaging.GetDatastoreInput, ...request.Option) (*medicalimaging.GetDatastoreOutput, error) + GetDatastoreRequest(*medicalimaging.GetDatastoreInput) (*request.Request, *medicalimaging.GetDatastoreOutput) + + GetImageFrame(*medicalimaging.GetImageFrameInput) (*medicalimaging.GetImageFrameOutput, error) + GetImageFrameWithContext(aws.Context, *medicalimaging.GetImageFrameInput, ...request.Option) (*medicalimaging.GetImageFrameOutput, error) + GetImageFrameRequest(*medicalimaging.GetImageFrameInput) (*request.Request, *medicalimaging.GetImageFrameOutput) + + GetImageSet(*medicalimaging.GetImageSetInput) (*medicalimaging.GetImageSetOutput, error) + GetImageSetWithContext(aws.Context, *medicalimaging.GetImageSetInput, ...request.Option) (*medicalimaging.GetImageSetOutput, error) + GetImageSetRequest(*medicalimaging.GetImageSetInput) (*request.Request, *medicalimaging.GetImageSetOutput) + + GetImageSetMetadata(*medicalimaging.GetImageSetMetadataInput) (*medicalimaging.GetImageSetMetadataOutput, error) + GetImageSetMetadataWithContext(aws.Context, *medicalimaging.GetImageSetMetadataInput, ...request.Option) (*medicalimaging.GetImageSetMetadataOutput, error) + GetImageSetMetadataRequest(*medicalimaging.GetImageSetMetadataInput) (*request.Request, *medicalimaging.GetImageSetMetadataOutput) + + ListDICOMImportJobs(*medicalimaging.ListDICOMImportJobsInput) (*medicalimaging.ListDICOMImportJobsOutput, error) + ListDICOMImportJobsWithContext(aws.Context, *medicalimaging.ListDICOMImportJobsInput, ...request.Option) (*medicalimaging.ListDICOMImportJobsOutput, error) + ListDICOMImportJobsRequest(*medicalimaging.ListDICOMImportJobsInput) (*request.Request, *medicalimaging.ListDICOMImportJobsOutput) + + ListDICOMImportJobsPages(*medicalimaging.ListDICOMImportJobsInput, func(*medicalimaging.ListDICOMImportJobsOutput, bool) bool) error + ListDICOMImportJobsPagesWithContext(aws.Context, *medicalimaging.ListDICOMImportJobsInput, func(*medicalimaging.ListDICOMImportJobsOutput, bool) bool, ...request.Option) error + + ListDatastores(*medicalimaging.ListDatastoresInput) (*medicalimaging.ListDatastoresOutput, error) + ListDatastoresWithContext(aws.Context, *medicalimaging.ListDatastoresInput, ...request.Option) (*medicalimaging.ListDatastoresOutput, error) + ListDatastoresRequest(*medicalimaging.ListDatastoresInput) (*request.Request, *medicalimaging.ListDatastoresOutput) + + ListDatastoresPages(*medicalimaging.ListDatastoresInput, func(*medicalimaging.ListDatastoresOutput, bool) bool) error + ListDatastoresPagesWithContext(aws.Context, *medicalimaging.ListDatastoresInput, func(*medicalimaging.ListDatastoresOutput, bool) bool, ...request.Option) error + + ListImageSetVersions(*medicalimaging.ListImageSetVersionsInput) (*medicalimaging.ListImageSetVersionsOutput, error) + ListImageSetVersionsWithContext(aws.Context, *medicalimaging.ListImageSetVersionsInput, ...request.Option) (*medicalimaging.ListImageSetVersionsOutput, error) + ListImageSetVersionsRequest(*medicalimaging.ListImageSetVersionsInput) (*request.Request, *medicalimaging.ListImageSetVersionsOutput) + + ListImageSetVersionsPages(*medicalimaging.ListImageSetVersionsInput, func(*medicalimaging.ListImageSetVersionsOutput, bool) bool) error + ListImageSetVersionsPagesWithContext(aws.Context, *medicalimaging.ListImageSetVersionsInput, func(*medicalimaging.ListImageSetVersionsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*medicalimaging.ListTagsForResourceInput) (*medicalimaging.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *medicalimaging.ListTagsForResourceInput, ...request.Option) (*medicalimaging.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*medicalimaging.ListTagsForResourceInput) (*request.Request, *medicalimaging.ListTagsForResourceOutput) + + SearchImageSets(*medicalimaging.SearchImageSetsInput) (*medicalimaging.SearchImageSetsOutput, error) + SearchImageSetsWithContext(aws.Context, *medicalimaging.SearchImageSetsInput, ...request.Option) (*medicalimaging.SearchImageSetsOutput, error) + SearchImageSetsRequest(*medicalimaging.SearchImageSetsInput) (*request.Request, *medicalimaging.SearchImageSetsOutput) + + SearchImageSetsPages(*medicalimaging.SearchImageSetsInput, func(*medicalimaging.SearchImageSetsOutput, bool) bool) error + SearchImageSetsPagesWithContext(aws.Context, *medicalimaging.SearchImageSetsInput, func(*medicalimaging.SearchImageSetsOutput, bool) bool, ...request.Option) error + + StartDICOMImportJob(*medicalimaging.StartDICOMImportJobInput) (*medicalimaging.StartDICOMImportJobOutput, error) + StartDICOMImportJobWithContext(aws.Context, *medicalimaging.StartDICOMImportJobInput, ...request.Option) (*medicalimaging.StartDICOMImportJobOutput, error) + StartDICOMImportJobRequest(*medicalimaging.StartDICOMImportJobInput) (*request.Request, *medicalimaging.StartDICOMImportJobOutput) + + TagResource(*medicalimaging.TagResourceInput) (*medicalimaging.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *medicalimaging.TagResourceInput, ...request.Option) (*medicalimaging.TagResourceOutput, error) + TagResourceRequest(*medicalimaging.TagResourceInput) (*request.Request, *medicalimaging.TagResourceOutput) + + UntagResource(*medicalimaging.UntagResourceInput) (*medicalimaging.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *medicalimaging.UntagResourceInput, ...request.Option) (*medicalimaging.UntagResourceOutput, error) + UntagResourceRequest(*medicalimaging.UntagResourceInput) (*request.Request, *medicalimaging.UntagResourceOutput) + + UpdateImageSetMetadata(*medicalimaging.UpdateImageSetMetadataInput) (*medicalimaging.UpdateImageSetMetadataOutput, error) + UpdateImageSetMetadataWithContext(aws.Context, *medicalimaging.UpdateImageSetMetadataInput, ...request.Option) (*medicalimaging.UpdateImageSetMetadataOutput, error) + UpdateImageSetMetadataRequest(*medicalimaging.UpdateImageSetMetadataInput) (*request.Request, *medicalimaging.UpdateImageSetMetadataOutput) +} + +var _ MedicalImagingAPI = (*medicalimaging.MedicalImaging)(nil) diff --git a/service/medicalimaging/service.go b/service/medicalimaging/service.go new file mode 100644 index 00000000000..b4bfee61ae8 --- /dev/null +++ b/service/medicalimaging/service.go @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package medicalimaging + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +// MedicalImaging provides the API operation methods for making requests to +// AWS Health Imaging. See this package's package overview docs +// for details on the service. +// +// MedicalImaging methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type MedicalImaging struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "Medical Imaging" // Name of service. + EndpointsID = "medical-imaging" // ID to lookup a service endpoint with. + ServiceID = "Medical Imaging" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the MedicalImaging client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a MedicalImaging client from just a session. +// svc := medicalimaging.New(mySession) +// +// // Create a MedicalImaging client with additional configuration +// svc := medicalimaging.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *MedicalImaging { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "medical-imaging" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *MedicalImaging { + svc := &MedicalImaging{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-07-19", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a MedicalImaging operation and runs any +// custom request initialization. +func (c *MedicalImaging) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/ram/api.go b/service/ram/api.go index 3f4322ae5ec..f6a12f766d2 100644 --- a/service/ram/api.go +++ b/service/ram/api.go @@ -691,6 +691,10 @@ func (c *RAM) CreateResourceShareRequest(input *CreateResourceShareInput) (req * // The operation failed because the specified tag key is a reserved word and // can't be used. // +// - TagLimitExceededException +// The operation failed because it would exceed the limit for tags for your +// Amazon Web Services account. +// // - ServerInternalException // The operation failed because the service could not respond to the request // due to an internal problem. Try again later. @@ -4563,6 +4567,10 @@ type AssociateResourceShareInput struct { // // ResourceShareArn is a required field ResourceShareArn *string `locationName:"resourceShareArn" type:"string" required:"true"` + + // Specifies from which source accounts the service principal has access to + // the resources in this resource share. + Sources []*string `locationName:"sources" type:"list"` } // String returns the string representation. @@ -4620,6 +4628,12 @@ func (s *AssociateResourceShareInput) SetResourceShareArn(v string) *AssociateRe return s } +// SetSources sets the Sources field's value. +func (s *AssociateResourceShareInput) SetSources(v []*string) *AssociateResourceShareInput { + s.Sources = v + return s +} + type AssociateResourceShareOutput struct { _ struct{} `type:"structure"` @@ -5344,6 +5358,10 @@ type CreateResourceShareInput struct { // resource share. ResourceArns []*string `locationName:"resourceArns" type:"list"` + // Specifies from which source accounts the service principal has access to + // the resources in this resource share. + Sources []*string `locationName:"sources" type:"list"` + // Specifies one or more tags to attach to the resource share itself. It doesn't // attach the tags to the resources associated with the resource share. Tags []*Tag `locationName:"tags" type:"list"` @@ -5416,6 +5434,12 @@ func (s *CreateResourceShareInput) SetResourceArns(v []*string) *CreateResourceS return s } +// SetSources sets the Sources field's value. +func (s *CreateResourceShareInput) SetSources(v []*string) *CreateResourceShareInput { + s.Sources = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateResourceShareInput) SetTags(v []*Tag) *CreateResourceShareInput { s.Tags = v @@ -5891,6 +5915,10 @@ type DisassociateResourceShareInput struct { // // ResourceShareArn is a required field ResourceShareArn *string `locationName:"resourceShareArn" type:"string" required:"true"` + + // Specifies from which source accounts the service principal no longer has + // access to the resources in this resource share. + Sources []*string `locationName:"sources" type:"list"` } // String returns the string representation. @@ -5948,6 +5976,12 @@ func (s *DisassociateResourceShareInput) SetResourceShareArn(v string) *Disassoc return s } +// SetSources sets the Sources field's value. +func (s *DisassociateResourceShareInput) SetSources(v []*string) *DisassociateResourceShareInput { + s.Sources = v + return s +} + type DisassociateResourceShareOutput struct { _ struct{} `type:"structure"` @@ -6437,7 +6471,7 @@ type GetResourceShareAssociationsInput struct { // Specifies the ID of the principal whose resource shares you want to retrieve. // This can be an Amazon Web Services account ID, an organization ID, an organizational // unit ID, or the Amazon Resource Name (ARN) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) - // of an individual IAM user or role. + // of an individual IAM role or user. // // You cannot specify this parameter if the association type is RESOURCE. Principal *string `locationName:"principal" type:"string"` diff --git a/service/ssmsap/api.go b/service/ssmsap/api.go index 91d6bc7f7f3..994fa591330 100644 --- a/service/ssmsap/api.go +++ b/service/ssmsap/api.go @@ -1430,6 +1430,94 @@ func (c *SsmSap) RegisterApplicationWithContext(ctx aws.Context, input *Register return out, req.Send() } +const opStartApplicationRefresh = "StartApplicationRefresh" + +// StartApplicationRefreshRequest generates a "aws/request.Request" representing the +// client's request for the StartApplicationRefresh operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartApplicationRefresh for more information on using the StartApplicationRefresh +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartApplicationRefreshRequest method. +// req, resp := client.StartApplicationRefreshRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-sap-2018-05-10/StartApplicationRefresh +func (c *SsmSap) StartApplicationRefreshRequest(input *StartApplicationRefreshInput) (req *request.Request, output *StartApplicationRefreshOutput) { + op := &request.Operation{ + Name: opStartApplicationRefresh, + HTTPMethod: "POST", + HTTPPath: "/start-application-refresh", + } + + if input == nil { + input = &StartApplicationRefreshInput{} + } + + output = &StartApplicationRefreshOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartApplicationRefresh API operation for AWS Systems Manager for SAP. +// +// Refreshes a registered application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Systems Manager for SAP's +// API operation StartApplicationRefresh for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource is not available. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ConflictException +// A conflict has occurred. +// +// - InternalServerException +// An internal error has occurred. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-sap-2018-05-10/StartApplicationRefresh +func (c *SsmSap) StartApplicationRefresh(input *StartApplicationRefreshInput) (*StartApplicationRefreshOutput, error) { + req, out := c.StartApplicationRefreshRequest(input) + return out, req.Send() +} + +// StartApplicationRefreshWithContext is the same as StartApplicationRefresh with the addition of +// the ability to pass a context and additional request options. +// +// See StartApplicationRefresh for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SsmSap) StartApplicationRefreshWithContext(ctx aws.Context, input *StartApplicationRefreshInput, opts ...request.Option) (*StartApplicationRefreshOutput, error) { + req, out := c.StartApplicationRefreshRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -1663,6 +1751,9 @@ func (c *SsmSap) UpdateApplicationSettingsRequest(input *UpdateApplicationSettin // - ValidationException // The input fails to satisfy the constraints specified by an AWS service. // +// - ConflictException +// A conflict has occurred. +// // - InternalServerException // An internal error has occurred. // @@ -1701,6 +1792,9 @@ type Application struct { // The components of the application. Components []*string `type:"list"` + // The latest discovery result for the application. + DiscoveryStatus *string `type:"string" enum:"ApplicationDiscoveryStatus"` + // The ID of the application. Id *string `type:"string"` @@ -1753,6 +1847,12 @@ func (s *Application) SetComponents(v []*string) *Application { return s } +// SetDiscoveryStatus sets the DiscoveryStatus field's value. +func (s *Application) SetDiscoveryStatus(v string) *Application { + s.DiscoveryStatus = &v + return s +} + // SetId sets the Id field's value. func (s *Application) SetId(v string) *Application { s.Id = &v @@ -1929,6 +2029,116 @@ func (s *ApplicationSummary) SetType(v string) *ApplicationSummary { return s } +// Describes the properties of the associated host. +type AssociatedHost struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon EC2 instance. + Ec2InstanceId *string `type:"string"` + + // The name of the host. + Hostname *string `type:"string"` + + // The version of the operating system. + OsVersion *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociatedHost) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociatedHost) GoString() string { + return s.String() +} + +// SetEc2InstanceId sets the Ec2InstanceId field's value. +func (s *AssociatedHost) SetEc2InstanceId(v string) *AssociatedHost { + s.Ec2InstanceId = &v + return s +} + +// SetHostname sets the Hostname field's value. +func (s *AssociatedHost) SetHostname(v string) *AssociatedHost { + s.Hostname = &v + return s +} + +// SetOsVersion sets the OsVersion field's value. +func (s *AssociatedHost) SetOsVersion(v string) *AssociatedHost { + s.OsVersion = &v + return s +} + +// Configuration parameters for AWS Backint Agent for SAP HANA. You can backup +// your SAP HANA database with AWS Backup or Amazon S3. +type BackintConfig struct { + _ struct{} `type:"structure"` + + // AWS service for your database backup. + // + // BackintMode is a required field + BackintMode *string `type:"string" required:"true" enum:"BackintMode"` + + // EnsureNoBackupInProcess is a required field + EnsureNoBackupInProcess *bool `type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BackintConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BackintConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BackintConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BackintConfig"} + if s.BackintMode == nil { + invalidParams.Add(request.NewErrParamRequired("BackintMode")) + } + if s.EnsureNoBackupInProcess == nil { + invalidParams.Add(request.NewErrParamRequired("EnsureNoBackupInProcess")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackintMode sets the BackintMode field's value. +func (s *BackintConfig) SetBackintMode(v string) *BackintConfig { + s.BackintMode = &v + return s +} + +// SetEnsureNoBackupInProcess sets the EnsureNoBackupInProcess field's value. +func (s *BackintConfig) SetEnsureNoBackupInProcess(v bool) *BackintConfig { + s.EnsureNoBackupInProcess = &v + return s +} + // The SAP component of your application. type Component struct { _ struct{} `type:"structure"` @@ -1936,6 +2146,17 @@ type Component struct { // The ID of the application. ApplicationId *string `type:"string"` + // The Amazon Resource Name (ARN) of the component. + Arn *string `type:"string"` + + // The associated host of the component. + AssociatedHost *AssociatedHost `type:"structure"` + + // The child components of a highly available environment. For example, in a + // highly available SAP on AWS workload, the child component consists of the + // primary and secondar instances. + ChildComponents []*string `type:"list"` + // The ID of the component. ComponentId *string `type:"string"` @@ -1945,14 +2166,35 @@ type Component struct { // The SAP HANA databases of the component. Databases []*string `type:"list"` + // The SAP HANA version of the component. + HdbVersion *string `type:"string"` + // The hosts of the component. - Hosts []*Host `type:"list"` + // + // Deprecated: This shape is no longer used. Please use AssociatedHost. + Hosts []*Host `deprecated:"true" type:"list"` // The time at which the component was last updated. LastUpdated *time.Time `type:"timestamp"` + // The parent component of a highly available environment. For example, in a + // highly available SAP on AWS workload, the parent component consists of the + // entire setup, including the child components. + ParentComponent *string `type:"string"` + // The primary host of the component. - PrimaryHost *string `type:"string"` + // + // Deprecated: This shape is no longer used. Please use AssociatedHost. + PrimaryHost *string `deprecated:"true" type:"string"` + + // Details of the SAP HANA system replication for the component. + Resilience *Resilience `type:"structure"` + + // The hostname of the component. + SapHostname *string `type:"string"` + + // The kernel version of the component. + SapKernelVersion *string `type:"string"` // The status of the component. Status *string `type:"string" enum:"ComponentStatus"` @@ -1982,6 +2224,24 @@ func (s *Component) SetApplicationId(v string) *Component { return s } +// SetArn sets the Arn field's value. +func (s *Component) SetArn(v string) *Component { + s.Arn = &v + return s +} + +// SetAssociatedHost sets the AssociatedHost field's value. +func (s *Component) SetAssociatedHost(v *AssociatedHost) *Component { + s.AssociatedHost = v + return s +} + +// SetChildComponents sets the ChildComponents field's value. +func (s *Component) SetChildComponents(v []*string) *Component { + s.ChildComponents = v + return s +} + // SetComponentId sets the ComponentId field's value. func (s *Component) SetComponentId(v string) *Component { s.ComponentId = &v @@ -2000,6 +2260,12 @@ func (s *Component) SetDatabases(v []*string) *Component { return s } +// SetHdbVersion sets the HdbVersion field's value. +func (s *Component) SetHdbVersion(v string) *Component { + s.HdbVersion = &v + return s +} + // SetHosts sets the Hosts field's value. func (s *Component) SetHosts(v []*Host) *Component { s.Hosts = v @@ -2012,12 +2278,36 @@ func (s *Component) SetLastUpdated(v time.Time) *Component { return s } +// SetParentComponent sets the ParentComponent field's value. +func (s *Component) SetParentComponent(v string) *Component { + s.ParentComponent = &v + return s +} + // SetPrimaryHost sets the PrimaryHost field's value. func (s *Component) SetPrimaryHost(v string) *Component { s.PrimaryHost = &v return s } +// SetResilience sets the Resilience field's value. +func (s *Component) SetResilience(v *Resilience) *Component { + s.Resilience = v + return s +} + +// SetSapHostname sets the SapHostname field's value. +func (s *Component) SetSapHostname(v string) *Component { + s.SapHostname = &v + return s +} + +// SetSapKernelVersion sets the SapKernelVersion field's value. +func (s *Component) SetSapKernelVersion(v string) *Component { + s.SapKernelVersion = &v + return s +} + // SetStatus sets the Status field's value. func (s *Component) SetStatus(v string) *Component { s.Status = &v @@ -2031,6 +2321,9 @@ type ComponentSummary struct { // The ID of the application. ApplicationId *string `type:"string"` + // The Amazon Resource Name (ARN) of the component summary. + Arn *string `type:"string"` + // The ID of the component. ComponentId *string `type:"string"` @@ -2065,6 +2358,12 @@ func (s *ComponentSummary) SetApplicationId(v string) *ComponentSummary { return s } +// SetArn sets the Arn field's value. +func (s *ComponentSummary) SetArn(v string) *ComponentSummary { + s.Arn = &v + return s +} + // SetComponentId sets the ComponentId field's value. func (s *ComponentSummary) SetComponentId(v string) *ComponentSummary { s.ComponentId = &v @@ -2748,6 +3047,9 @@ type GetComponentOutput struct { // The component of an application registered with AWS Systems Manager for SAP. Component *Component `type:"structure"` + + // The tags of a component. + Tags map[string]*string `type:"map"` } // String returns the string representation. @@ -2774,6 +3076,12 @@ func (s *GetComponentOutput) SetComponent(v *Component) *GetComponentOutput { return s } +// SetTags sets the Tags field's value. +func (s *GetComponentOutput) SetTags(v map[string]*string) *GetComponentOutput { + s.Tags = v + return s +} + type GetDatabaseInput struct { _ struct{} `type:"structure"` @@ -3038,6 +3346,9 @@ func (s *GetResourcePermissionOutput) SetPolicy(v string) *GetResourcePermission type Host struct { _ struct{} `type:"structure"` + // The ID of Amazon EC2 instance. + EC2InstanceId *string `type:"string"` + // The IP address of the Dedicated Host. HostIp *string `type:"string"` @@ -3049,6 +3360,9 @@ type Host struct { // The instance ID of the instance on the Dedicated Host. InstanceId *string `type:"string"` + + // The version of the operating system. + OsVersion *string `type:"string"` } // String returns the string representation. @@ -3069,6 +3383,12 @@ func (s Host) GoString() string { return s.String() } +// SetEC2InstanceId sets the EC2InstanceId field's value. +func (s *Host) SetEC2InstanceId(v string) *Host { + s.EC2InstanceId = &v + return s +} + // SetHostIp sets the HostIp field's value. func (s *Host) SetHostIp(v string) *Host { s.HostIp = &v @@ -3093,6 +3413,12 @@ func (s *Host) SetInstanceId(v string) *Host { return s } +// SetOsVersion sets the OsVersion field's value. +func (s *Host) SetOsVersion(v string) *Host { + s.OsVersion = &v + return s +} + // An internal error has occurred. type InternalServerException struct { _ struct{} `type:"structure"` @@ -4077,6 +4403,65 @@ func (s *RegisterApplicationOutput) SetOperationId(v string) *RegisterApplicatio return s } +// Details of the SAP HANA system replication for the instance. +type Resilience struct { + _ struct{} `type:"structure"` + + // The cluster status of the component. + ClusterStatus *string `type:"string" enum:"ClusterStatus"` + + // The operation mode of the component. + HsrOperationMode *string `type:"string" enum:"OperationMode"` + + // The replication mode of the component. + HsrReplicationMode *string `type:"string" enum:"ReplicationMode"` + + // The tier of the component. + HsrTier *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Resilience) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Resilience) GoString() string { + return s.String() +} + +// SetClusterStatus sets the ClusterStatus field's value. +func (s *Resilience) SetClusterStatus(v string) *Resilience { + s.ClusterStatus = &v + return s +} + +// SetHsrOperationMode sets the HsrOperationMode field's value. +func (s *Resilience) SetHsrOperationMode(v string) *Resilience { + s.HsrOperationMode = &v + return s +} + +// SetHsrReplicationMode sets the HsrReplicationMode field's value. +func (s *Resilience) SetHsrReplicationMode(v string) *Resilience { + s.HsrReplicationMode = &v + return s +} + +// SetHsrTier sets the HsrTier field's value. +func (s *Resilience) SetHsrTier(v string) *Resilience { + s.HsrTier = &v + return s +} + // The resource is not available. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -4141,6 +4526,83 @@ func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } +type StartApplicationRefreshInput struct { + _ struct{} `type:"structure"` + + // The ID of the application. + // + // ApplicationId is a required field + ApplicationId *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartApplicationRefreshInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartApplicationRefreshInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartApplicationRefreshInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartApplicationRefreshInput"} + if s.ApplicationId == nil { + invalidParams.Add(request.NewErrParamRequired("ApplicationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetApplicationId sets the ApplicationId field's value. +func (s *StartApplicationRefreshInput) SetApplicationId(v string) *StartApplicationRefreshInput { + s.ApplicationId = &v + return s +} + +type StartApplicationRefreshOutput struct { + _ struct{} `type:"structure"` + + // The ID of the operation. + OperationId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartApplicationRefreshOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartApplicationRefreshOutput) GoString() string { + return s.String() +} + +// SetOperationId sets the OperationId field's value. +func (s *StartApplicationRefreshOutput) SetOperationId(v string) *StartApplicationRefreshOutput { + s.OperationId = &v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` @@ -4320,6 +4782,9 @@ type UpdateApplicationSettingsInput struct { // ApplicationId is a required field ApplicationId *string `type:"string" required:"true"` + // Installation of AWS Backint Agent for SAP HANA. + Backint *BackintConfig `type:"structure"` + // The credentials to be added or updated. CredentialsToAddOrUpdate []*ApplicationCredential `min:"1" type:"list"` @@ -4357,6 +4822,11 @@ func (s *UpdateApplicationSettingsInput) Validate() error { if s.CredentialsToRemove != nil && len(s.CredentialsToRemove) < 1 { invalidParams.Add(request.NewErrParamMinLen("CredentialsToRemove", 1)) } + if s.Backint != nil { + if err := s.Backint.Validate(); err != nil { + invalidParams.AddNested("Backint", err.(request.ErrInvalidParams)) + } + } if s.CredentialsToAddOrUpdate != nil { for i, v := range s.CredentialsToAddOrUpdate { if v == nil { @@ -4390,6 +4860,12 @@ func (s *UpdateApplicationSettingsInput) SetApplicationId(v string) *UpdateAppli return s } +// SetBackint sets the Backint field's value. +func (s *UpdateApplicationSettingsInput) SetBackint(v *BackintConfig) *UpdateApplicationSettingsInput { + s.Backint = v + return s +} + // SetCredentialsToAddOrUpdate sets the CredentialsToAddOrUpdate field's value. func (s *UpdateApplicationSettingsInput) SetCredentialsToAddOrUpdate(v []*ApplicationCredential) *UpdateApplicationSettingsInput { s.CredentialsToAddOrUpdate = v @@ -4506,6 +4982,34 @@ func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } +const ( + // ApplicationDiscoveryStatusSuccess is a ApplicationDiscoveryStatus enum value + ApplicationDiscoveryStatusSuccess = "SUCCESS" + + // ApplicationDiscoveryStatusRegistrationFailed is a ApplicationDiscoveryStatus enum value + ApplicationDiscoveryStatusRegistrationFailed = "REGISTRATION_FAILED" + + // ApplicationDiscoveryStatusRefreshFailed is a ApplicationDiscoveryStatus enum value + ApplicationDiscoveryStatusRefreshFailed = "REFRESH_FAILED" + + // ApplicationDiscoveryStatusRegistering is a ApplicationDiscoveryStatus enum value + ApplicationDiscoveryStatusRegistering = "REGISTERING" + + // ApplicationDiscoveryStatusDeleting is a ApplicationDiscoveryStatus enum value + ApplicationDiscoveryStatusDeleting = "DELETING" +) + +// ApplicationDiscoveryStatus_Values returns all elements of the ApplicationDiscoveryStatus enum +func ApplicationDiscoveryStatus_Values() []string { + return []string{ + ApplicationDiscoveryStatusSuccess, + ApplicationDiscoveryStatusRegistrationFailed, + ApplicationDiscoveryStatusRefreshFailed, + ApplicationDiscoveryStatusRegistering, + ApplicationDiscoveryStatusDeleting, + } +} + const ( // ApplicationStatusActivated is a ApplicationStatus enum value ApplicationStatusActivated = "ACTIVATED" @@ -4558,27 +5062,95 @@ func ApplicationType_Values() []string { } } +const ( + // BackintModeAwsbackup is a BackintMode enum value + BackintModeAwsbackup = "AWSBackup" +) + +// BackintMode_Values returns all elements of the BackintMode enum +func BackintMode_Values() []string { + return []string{ + BackintModeAwsbackup, + } +} + +const ( + // ClusterStatusOnline is a ClusterStatus enum value + ClusterStatusOnline = "ONLINE" + + // ClusterStatusStandby is a ClusterStatus enum value + ClusterStatusStandby = "STANDBY" + + // ClusterStatusMaintenance is a ClusterStatus enum value + ClusterStatusMaintenance = "MAINTENANCE" + + // ClusterStatusOffline is a ClusterStatus enum value + ClusterStatusOffline = "OFFLINE" + + // ClusterStatusNone is a ClusterStatus enum value + ClusterStatusNone = "NONE" +) + +// ClusterStatus_Values returns all elements of the ClusterStatus enum +func ClusterStatus_Values() []string { + return []string{ + ClusterStatusOnline, + ClusterStatusStandby, + ClusterStatusMaintenance, + ClusterStatusOffline, + ClusterStatusNone, + } +} + const ( // ComponentStatusActivated is a ComponentStatus enum value ComponentStatusActivated = "ACTIVATED" + + // ComponentStatusStarting is a ComponentStatus enum value + ComponentStatusStarting = "STARTING" + + // ComponentStatusStopped is a ComponentStatus enum value + ComponentStatusStopped = "STOPPED" + + // ComponentStatusStopping is a ComponentStatus enum value + ComponentStatusStopping = "STOPPING" + + // ComponentStatusRunning is a ComponentStatus enum value + ComponentStatusRunning = "RUNNING" + + // ComponentStatusRunningWithError is a ComponentStatus enum value + ComponentStatusRunningWithError = "RUNNING_WITH_ERROR" + + // ComponentStatusUndefined is a ComponentStatus enum value + ComponentStatusUndefined = "UNDEFINED" ) // ComponentStatus_Values returns all elements of the ComponentStatus enum func ComponentStatus_Values() []string { return []string{ ComponentStatusActivated, + ComponentStatusStarting, + ComponentStatusStopped, + ComponentStatusStopping, + ComponentStatusRunning, + ComponentStatusRunningWithError, + ComponentStatusUndefined, } } const ( // ComponentTypeHana is a ComponentType enum value ComponentTypeHana = "HANA" + + // ComponentTypeHanaNode is a ComponentType enum value + ComponentTypeHanaNode = "HANA_NODE" ) // ComponentType_Values returns all elements of the ComponentType enum func ComponentType_Values() []string { return []string{ ComponentTypeHana, + ComponentTypeHanaNode, } } @@ -4609,6 +5181,9 @@ const ( // DatabaseStatusUnknown is a DatabaseStatus enum value DatabaseStatusUnknown = "UNKNOWN" + + // DatabaseStatusError is a DatabaseStatus enum value + DatabaseStatusError = "ERROR" ) // DatabaseStatus_Values returns all elements of the DatabaseStatus enum @@ -4619,6 +5194,7 @@ func DatabaseStatus_Values() []string { DatabaseStatusStopped, DatabaseStatusWarning, DatabaseStatusUnknown, + DatabaseStatusError, } } @@ -4682,6 +5258,34 @@ func HostRole_Values() []string { } } +const ( + // OperationModePrimary is a OperationMode enum value + OperationModePrimary = "PRIMARY" + + // OperationModeLogreplay is a OperationMode enum value + OperationModeLogreplay = "LOGREPLAY" + + // OperationModeDeltaDatashipping is a OperationMode enum value + OperationModeDeltaDatashipping = "DELTA_DATASHIPPING" + + // OperationModeLogreplayReadaccess is a OperationMode enum value + OperationModeLogreplayReadaccess = "LOGREPLAY_READACCESS" + + // OperationModeNone is a OperationMode enum value + OperationModeNone = "NONE" +) + +// OperationMode_Values returns all elements of the OperationMode enum +func OperationMode_Values() []string { + return []string{ + OperationModePrimary, + OperationModeLogreplay, + OperationModeDeltaDatashipping, + OperationModeLogreplayReadaccess, + OperationModeNone, + } +} + const ( // OperationStatusInprogress is a OperationStatus enum value OperationStatusInprogress = "INPROGRESS" @@ -4713,3 +5317,31 @@ func PermissionActionType_Values() []string { PermissionActionTypeRestore, } } + +const ( + // ReplicationModePrimary is a ReplicationMode enum value + ReplicationModePrimary = "PRIMARY" + + // ReplicationModeNone is a ReplicationMode enum value + ReplicationModeNone = "NONE" + + // ReplicationModeSync is a ReplicationMode enum value + ReplicationModeSync = "SYNC" + + // ReplicationModeSyncmem is a ReplicationMode enum value + ReplicationModeSyncmem = "SYNCMEM" + + // ReplicationModeAsync is a ReplicationMode enum value + ReplicationModeAsync = "ASYNC" +) + +// ReplicationMode_Values returns all elements of the ReplicationMode enum +func ReplicationMode_Values() []string { + return []string{ + ReplicationModePrimary, + ReplicationModeNone, + ReplicationModeSync, + ReplicationModeSyncmem, + ReplicationModeAsync, + } +} diff --git a/service/ssmsap/ssmsapiface/interface.go b/service/ssmsap/ssmsapiface/interface.go index bca8ed279d8..9b1e4af3bb1 100644 --- a/service/ssmsap/ssmsapiface/interface.go +++ b/service/ssmsap/ssmsapiface/interface.go @@ -128,6 +128,10 @@ type SsmSapAPI interface { RegisterApplicationWithContext(aws.Context, *ssmsap.RegisterApplicationInput, ...request.Option) (*ssmsap.RegisterApplicationOutput, error) RegisterApplicationRequest(*ssmsap.RegisterApplicationInput) (*request.Request, *ssmsap.RegisterApplicationOutput) + StartApplicationRefresh(*ssmsap.StartApplicationRefreshInput) (*ssmsap.StartApplicationRefreshOutput, error) + StartApplicationRefreshWithContext(aws.Context, *ssmsap.StartApplicationRefreshInput, ...request.Option) (*ssmsap.StartApplicationRefreshOutput, error) + StartApplicationRefreshRequest(*ssmsap.StartApplicationRefreshInput) (*request.Request, *ssmsap.StartApplicationRefreshOutput) + TagResource(*ssmsap.TagResourceInput) (*ssmsap.TagResourceOutput, error) TagResourceWithContext(aws.Context, *ssmsap.TagResourceInput, ...request.Option) (*ssmsap.TagResourceOutput, error) TagResourceRequest(*ssmsap.TagResourceInput) (*request.Request, *ssmsap.TagResourceOutput) diff --git a/service/wafv2/api.go b/service/wafv2/api.go index d3c9eecbbdc..ee54a4a9fc6 100644 --- a/service/wafv2/api.go +++ b/service/wafv2/api.go @@ -7949,8 +7949,8 @@ func (s *Condition) SetLabelNameCondition(v *LabelNameCondition) *Condition { // // You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies. // -// Example JSON: "MatchPattern": { "IncludedCookies": {"KeyToInclude1", "KeyToInclude2", -// "KeyToInclude3"} } +// Example JSON: "MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" +// ] } type CookieMatchPattern struct { _ struct{} `type:"structure"` @@ -8034,8 +8034,8 @@ type Cookies struct { // // You must specify exactly one setting: either All, IncludedCookies, or ExcludedCookies. // - // Example JSON: "MatchPattern": { "IncludedCookies": {"KeyToInclude1", "KeyToInclude2", - // "KeyToInclude3"} } + // Example JSON: "MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" + // ] } // // MatchPattern is a required field MatchPattern *CookieMatchPattern `type:"structure" required:"true"` @@ -13496,8 +13496,8 @@ func (s *HTTPRequest) SetURI(v string) *HTTPRequest { // // You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders. // -// Example JSON: "MatchPattern": { "ExcludedHeaders": {"KeyToExclude1", "KeyToExclude2"} -// } +// Example JSON: "MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" +// ] } type HeaderMatchPattern struct { _ struct{} `type:"structure"` @@ -13649,8 +13649,8 @@ type Headers struct { // // You must specify exactly one setting: either All, IncludedHeaders, or ExcludedHeaders. // - // Example JSON: "MatchPattern": { "ExcludedHeaders": {"KeyToExclude1", "KeyToExclude2"} - // } + // Example JSON: "MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" + // ] } // // MatchPattern is a required field MatchPattern *HeaderMatchPattern `type:"structure" required:"true"` @@ -18633,6 +18633,11 @@ type RateBasedStatementCustomKey struct { // contributes to the aggregation instance. If you use just the query string // as your custom key, then each string fully defines an aggregation instance. QueryString *RateLimitQueryString `type:"structure"` + + // Use the request's URI path as an aggregate key. Each distinct URI path contributes + // to the aggregation instance. If you use just the URI path as your custom + // key, then each URI path fully defines an aggregation instance. + UriPath *RateLimitUriPath `type:"structure"` } // String returns the string representation. @@ -18681,6 +18686,11 @@ func (s *RateBasedStatementCustomKey) Validate() error { invalidParams.AddNested("QueryString", err.(request.ErrInvalidParams)) } } + if s.UriPath != nil { + if err := s.UriPath.Validate(); err != nil { + invalidParams.AddNested("UriPath", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -18736,6 +18746,12 @@ func (s *RateBasedStatementCustomKey) SetQueryString(v *RateLimitQueryString) *R return s } +// SetUriPath sets the UriPath field's value. +func (s *RateBasedStatementCustomKey) SetUriPath(v *RateLimitUriPath) *RateBasedStatementCustomKey { + s.UriPath = v + return s +} + // The set of IP addresses that are currently blocked for a RateBasedStatement. // This is only available for rate-based rules that aggregate on just the IP // address, with the AggregateKeyType set to IP or FORWARDED_IP. @@ -19282,6 +19298,76 @@ func (s *RateLimitQueryString) SetTextTransformations(v []*TextTransformation) * return s } +// Specifies the request's URI path as an aggregate key for a rate-based rule. +// Each distinct URI path contributes to the aggregation instance. If you use +// just the URI path as your custom key, then each URI path fully defines an +// aggregation instance. +type RateLimitUriPath struct { + _ struct{} `type:"structure"` + + // Text transformations eliminate some of the unusual formatting that attackers + // use in web requests in an effort to bypass detection. Text transformations + // are used in rule match statements, to transform the FieldToMatch request + // component before inspecting it, and they're used in rate-based rule statements, + // to transform request components before using them as custom aggregation keys. + // If you specify one or more transformations to apply, WAF performs all transformations + // on the specified content, starting from the lowest priority setting, and + // then uses the component contents. + // + // TextTransformations is a required field + TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RateLimitUriPath) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RateLimitUriPath) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RateLimitUriPath) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RateLimitUriPath"} + if s.TextTransformations == nil { + invalidParams.Add(request.NewErrParamRequired("TextTransformations")) + } + if s.TextTransformations != nil && len(s.TextTransformations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TextTransformations", 1)) + } + if s.TextTransformations != nil { + for i, v := range s.TextTransformations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TextTransformations", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTextTransformations sets the TextTransformations field's value. +func (s *RateLimitUriPath) SetTextTransformations(v []*TextTransformation) *RateLimitUriPath { + s.TextTransformations = v + return s +} + // A single regular expression. This is used in a RegexPatternSet. type Regex struct { _ struct{} `type:"structure"`