From 4a6fd9fd2bf603cb75438d3c857ecae260b64ae5 Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Wed, 3 Jun 2020 18:09:40 +0000 Subject: [PATCH] Release v1.31.10 (2020-06-03) === ### Service Client Updates * `service/directconnect`: Updates service API and documentation * This release supports the virtual interface failover test, which allows you to verify that traffic routes over redundant virtual interfaces when you bring your primary virtual interface out of service. * `service/elasticache`: Updates service API and documentation * This release improves the Multi-AZ feature in ElastiCache by adding a separate flag and proper validations. * `service/es`: Updates service API, documentation, and paginators * Amazon Elasticsearch Service now offers support for cross-cluster search, enabling you to perform searches, aggregations, and visualizations across multiple Amazon Elasticsearch Service domains with a single query or from a single Kibana interface. New feature includes the ability to setup connection, required to perform cross-cluster search, between domains using an approval workflow. * `service/glue`: Updates service API and documentation * Adding databaseName in the response for GetUserDefinedFunctions() API. * `service/iam`: Updates service API and documentation * GenerateServiceLastAccessedDetails will now return ActionLastAccessed details for certain S3 control plane actions * `service/mediaconvert`: Updates service API and documentation * AWS Elemental MediaConvert SDK has added support for the encoding of VP8 or VP9 video in WebM container with Vorbis or Opus audio. --- CHANGELOG.md | 17 + aws/endpoints/defaults.go | 7 + aws/version.go | 2 +- .../apis/directconnect/2012-10-25/api-2.json | 114 + .../apis/directconnect/2012-10-25/docs-2.json | 125 +- models/apis/elasticache/2015-02-02/api-2.json | 10 + .../apis/elasticache/2015-02-02/docs-2.json | 8 + models/apis/es/2015-01-01/api-2.json | 328 +++ models/apis/es/2015-01-01/docs-2.json | 220 ++ models/apis/es/2015-01-01/paginators-1.json | 10 + models/apis/glue/2017-03-31/api-2.json | 1 + models/apis/glue/2017-03-31/docs-2.json | 3 +- models/apis/iam/2010-05-08/api-2.json | 28 +- models/apis/iam/2010-05-08/docs-2.json | 36 +- .../apis/mediaconvert/2017-08-29/api-2.json | 281 ++- .../apis/mediaconvert/2017-08-29/docs-2.json | 234 +- models/endpoints/endpoints.json | 7 + service/directconnect/api.go | 641 ++++- .../directconnectiface/interface.go | 12 + service/elasticache/api.go | 32 + service/elasticsearchservice/api.go | 2063 +++++++++++++++-- .../elasticsearchserviceiface/interface.go | 38 +- service/elasticsearchservice/errors.go | 28 +- service/glue/api.go | 13 +- service/iam/api.go | 146 +- service/iam/doc.go | 59 +- service/mediaconvert/api.go | 968 +++++++- 27 files changed, 5043 insertions(+), 388 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 18d53673d25..f1f5d34f4b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,20 @@ +Release v1.31.10 (2020-06-03) +=== + +### Service Client Updates +* `service/directconnect`: Updates service API and documentation + * This release supports the virtual interface failover test, which allows you to verify that traffic routes over redundant virtual interfaces when you bring your primary virtual interface out of service. +* `service/elasticache`: Updates service API and documentation + * This release improves the Multi-AZ feature in ElastiCache by adding a separate flag and proper validations. +* `service/es`: Updates service API, documentation, and paginators + * Amazon Elasticsearch Service now offers support for cross-cluster search, enabling you to perform searches, aggregations, and visualizations across multiple Amazon Elasticsearch Service domains with a single query or from a single Kibana interface. New feature includes the ability to setup connection, required to perform cross-cluster search, between domains using an approval workflow. +* `service/glue`: Updates service API and documentation + * Adding databaseName in the response for GetUserDefinedFunctions() API. +* `service/iam`: Updates service API and documentation + * GenerateServiceLastAccessedDetails will now return ActionLastAccessed details for certain S3 control plane actions +* `service/mediaconvert`: Updates service API and documentation + * AWS Elemental MediaConvert SDK has added support for the encoding of VP8 or VP9 video in WebM container with Vorbis or Opus audio. + Release v1.31.9 (2020-06-02) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 1ececcff690..34d3702e27b 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -2709,6 +2709,7 @@ var awsPartition = partition{ "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, + "ap-south-1": endpoint{}, "ap-southeast-1": endpoint{}, "ap-southeast-2": endpoint{}, "eu-central-1": endpoint{}, @@ -8141,6 +8142,12 @@ var awsusgovPartition = partition{ "storagegateway": service{ Endpoints: endpoints{ + "fips": endpoint{ + Hostname: "storagegateway-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, "us-gov-east-1": endpoint{}, "us-gov-west-1": endpoint{}, }, diff --git a/aws/version.go b/aws/version.go index 1078db6496a..f1b9ec4db93 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.31.9" +const SDKVersion = "1.31.10" diff --git a/models/apis/directconnect/2012-10-25/api-2.json b/models/apis/directconnect/2012-10-25/api-2.json index 01a636c11b5..70263016766 100644 --- a/models/apis/directconnect/2012-10-25/api-2.json +++ b/models/apis/directconnect/2012-10-25/api-2.json @@ -658,6 +658,45 @@ {"shape":"DirectConnectClientException"} ] }, + "ListVirtualInterfaceTestHistory":{ + "name":"ListVirtualInterfaceTestHistory", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListVirtualInterfaceTestHistoryRequest"}, + "output":{"shape":"ListVirtualInterfaceTestHistoryResponse"}, + "errors":[ + {"shape":"DirectConnectServerException"}, + {"shape":"DirectConnectClientException"} + ] + }, + "StartBgpFailoverTest":{ + "name":"StartBgpFailoverTest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartBgpFailoverTestRequest"}, + "output":{"shape":"StartBgpFailoverTestResponse"}, + "errors":[ + {"shape":"DirectConnectServerException"}, + {"shape":"DirectConnectClientException"} + ] + }, + "StopBgpFailoverTest":{ + "name":"StopBgpFailoverTest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StopBgpFailoverTestRequest"}, + "output":{"shape":"StopBgpFailoverTestResponse"}, + "errors":[ + {"shape":"DirectConnectServerException"}, + {"shape":"DirectConnectClientException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -904,6 +943,10 @@ } }, "BGPPeerId":{"type":"string"}, + "BGPPeerIdList":{ + "type":"list", + "member":{"shape":"BGPPeerId"} + }, "BGPPeerList":{ "type":"list", "member":{"shape":"BGPPeer"} @@ -1587,7 +1630,9 @@ }, "exception":true }, + "EndTime":{"type":"timestamp"}, "ErrorMessage":{"type":"string"}, + "FailureTestHistoryStatus":{"type":"string"}, "GatewayIdToAssociate":{"type":"string"}, "GatewayIdentifier":{"type":"string"}, "GatewayType":{ @@ -1695,6 +1740,24 @@ "lags":{"shape":"LagList"} } }, + "ListVirtualInterfaceTestHistoryRequest":{ + "type":"structure", + "members":{ + "testId":{"shape":"TestId"}, + "virtualInterfaceId":{"shape":"VirtualInterfaceId"}, + "bgpPeers":{"shape":"BGPPeerIdList"}, + "status":{"shape":"FailureTestHistoryStatus"}, + "maxResults":{"shape":"MaxResultSetSize"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "ListVirtualInterfaceTestHistoryResponse":{ + "type":"structure", + "members":{ + "virtualInterfaceTestHistory":{"shape":"VirtualInterfaceTestHistoryList"}, + "nextToken":{"shape":"PaginationToken"} + } + }, "Loa":{ "type":"structure", "members":{ @@ -1890,7 +1953,36 @@ "member":{"shape":"RouteFilterPrefix"} }, "RouterConfig":{"type":"string"}, + "StartBgpFailoverTestRequest":{ + "type":"structure", + "required":["virtualInterfaceId"], + "members":{ + "virtualInterfaceId":{"shape":"VirtualInterfaceId"}, + "bgpPeers":{"shape":"BGPPeerIdList"}, + "testDurationInMinutes":{"shape":"TestDuration"} + } + }, + "StartBgpFailoverTestResponse":{ + "type":"structure", + "members":{ + "virtualInterfaceTest":{"shape":"VirtualInterfaceTestHistory"} + } + }, + "StartTime":{"type":"timestamp"}, "StateChangeError":{"type":"string"}, + "StopBgpFailoverTestRequest":{ + "type":"structure", + "required":["virtualInterfaceId"], + "members":{ + "virtualInterfaceId":{"shape":"VirtualInterfaceId"} + } + }, + "StopBgpFailoverTestResponse":{ + "type":"structure", + "members":{ + "virtualInterfaceTest":{"shape":"VirtualInterfaceTestHistory"} + } + }, "Tag":{ "type":"structure", "required":["key"], @@ -1936,6 +2028,11 @@ "min":0, "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, + "TestDuration":{ + "type":"integer", + "box":true + }, + "TestId":{"type":"string"}, "TooManyTagsException":{ "type":"structure", "members":{ @@ -2063,6 +2160,23 @@ "unknown" ] }, + "VirtualInterfaceTestHistory":{ + "type":"structure", + "members":{ + "testId":{"shape":"TestId"}, + "virtualInterfaceId":{"shape":"VirtualInterfaceId"}, + "bgpPeers":{"shape":"BGPPeerIdList"}, + "status":{"shape":"FailureTestHistoryStatus"}, + "ownerAccount":{"shape":"OwnerAccount"}, + "testDurationInMinutes":{"shape":"TestDuration"}, + "startTime":{"shape":"StartTime"}, + "endTime":{"shape":"EndTime"} + } + }, + "VirtualInterfaceTestHistoryList":{ + "type":"list", + "member":{"shape":"VirtualInterfaceTestHistory"} + }, "VirtualInterfaceType":{"type":"string"}, "VirtualInterfaces":{ "type":"structure", diff --git a/models/apis/directconnect/2012-10-25/docs-2.json b/models/apis/directconnect/2012-10-25/docs-2.json index 94003c85bae..b23c0fe92da 100644 --- a/models/apis/directconnect/2012-10-25/docs-2.json +++ b/models/apis/directconnect/2012-10-25/docs-2.json @@ -22,9 +22,9 @@ "CreateDirectConnectGatewayAssociationProposal": "

Creates a proposal to associate the specified virtual private gateway or transit gateway with the specified Direct Connect gateway.

You can only associate a Direct Connect gateway and virtual private gateway or transit gateway when the account that owns the Direct Connect gateway and the account that owns the virtual private gateway or transit gateway have the same AWS Payer ID.

", "CreateInterconnect": "

Creates an interconnect between an AWS Direct Connect Partner's network and a specific AWS Direct Connect location.

An interconnect is a connection that is capable of hosting other connections. The AWS Direct Connect partner can use an interconnect to provide AWS Direct Connect hosted connections to customers through their own network services. Like a standard connection, an interconnect links the partner's network to an AWS Direct Connect location over a standard Ethernet fiber-optic cable. One end is connected to the partner's router, the other to an AWS Direct Connect router.

You can automatically add the new interconnect to a link aggregation group (LAG) by specifying a LAG ID in the request. This ensures that the new interconnect is allocated on the same AWS Direct Connect endpoint that hosts the specified LAG. If there are no available ports on the endpoint, the request fails and no interconnect is created.

For each end customer, the AWS Direct Connect Partner provisions a connection on their interconnect by calling AllocateHostedConnection. The end customer can then connect to AWS resources by creating a virtual interface on their connection, using the VLAN assigned to them by the AWS Direct Connect Partner.

Intended for use by AWS Direct Connect Partners only.

", "CreateLag": "

Creates a link aggregation group (LAG) with the specified number of bundled physical connections between the customer network and a specific AWS Direct Connect location. A LAG is a logical interface that uses the Link Aggregation Control Protocol (LACP) to aggregate multiple interfaces, enabling you to treat them as a single interface.

All connections in a LAG must use the same bandwidth and must terminate at the same AWS Direct Connect endpoint.

You can have up to 10 connections per LAG. Regardless of this limit, if you request more connections for the LAG than AWS Direct Connect can allocate on a single endpoint, no LAG is created.

You can specify an existing physical connection or interconnect to include in the LAG (which counts towards the total number of connections). Doing so interrupts the current physical connection or hosted connections, and re-establishes them as a member of the LAG. The LAG will be created on the same AWS Direct Connect endpoint to which the connection terminates. Any virtual interfaces associated with the connection are automatically disassociated and re-associated with the LAG. The connection ID does not change.

If the AWS account used to create a LAG is a registered AWS Direct Connect Partner, the LAG is automatically enabled to host sub-connections. For a LAG owned by a partner, any associated virtual interfaces cannot be directly configured.

", - "CreatePrivateVirtualInterface": "

Creates a private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface can be connected to either a Direct Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual interface to a Direct Connect gateway enables the possibility for connecting to multiple VPCs, including VPCs in different AWS Regions. Connecting the private virtual interface to a VGW only provides access to a single VPC within the same Region.

", + "CreatePrivateVirtualInterface": "

Creates a private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface can be connected to either a Direct Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual interface to a Direct Connect gateway enables the possibility for connecting to multiple VPCs, including VPCs in different AWS Regions. Connecting the private virtual interface to a VGW only provides access to a single VPC within the same Region.

Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.

", "CreatePublicVirtualInterface": "

Creates a public virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A public virtual interface supports sending traffic to public services of AWS such as Amazon S3.

When creating an IPv6 public virtual interface (addressFamily is ipv6), leave the customer and amazon address fields blank to use auto-assigned IPv6 space. Custom IPv6 addresses are not supported.

", - "CreateTransitVirtualInterface": "

Creates a transit virtual interface. A transit virtual interface should be used to access one or more transit gateways associated with Direct Connect gateways. A transit virtual interface enables the connection of multiple VPCs attached to a transit gateway to a Direct Connect gateway.

If you associate your transit gateway with one or more Direct Connect gateways, the Autonomous System Number (ASN) used by the transit gateway and the Direct Connect gateway must be different. For example, if you use the default ASN 64512 for both your the transit gateway and Direct Connect gateway, the association request fails.

", + "CreateTransitVirtualInterface": "

Creates a transit virtual interface. A transit virtual interface should be used to access one or more transit gateways associated with Direct Connect gateways. A transit virtual interface enables the connection of multiple VPCs attached to a transit gateway to a Direct Connect gateway.

If you associate your transit gateway with one or more Direct Connect gateways, the Autonomous System Number (ASN) used by the transit gateway and the Direct Connect gateway must be different. For example, if you use the default ASN 64512 for both your the transit gateway and Direct Connect gateway, the association request fails.

Setting the MTU of a virtual interface to 8500 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.

", "DeleteBGPPeer": "

Deletes the specified BGP peer on the specified virtual interface with the specified customer address and ASN.

You cannot delete the last BGP peer from a virtual interface.

", "DeleteConnection": "

Deletes the specified connection.

Deleting a connection only stops the AWS Direct Connect port hour and data transfer charges. If you are partnering with any third parties to connect with the AWS Direct Connect location, you must cancel your service with them separately.

", "DeleteDirectConnectGateway": "

Deletes the specified Direct Connect gateway. You must first delete all virtual interfaces that are attached to the Direct Connect gateway and disassociate all virtual private gateways associated with the Direct Connect gateway.

", @@ -50,11 +50,14 @@ "DescribeVirtualGateways": "

Lists the virtual private gateways owned by the AWS account.

You can create one or more AWS Direct Connect private virtual interfaces linked to a virtual private gateway.

", "DescribeVirtualInterfaces": "

Displays all virtual interfaces for an AWS account. Virtual interfaces deleted fewer than 15 minutes before you make the request are also returned. If you specify a connection ID, only the virtual interfaces associated with the connection are returned. If you specify a virtual interface ID, then only a single virtual interface is returned.

A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer network.

", "DisassociateConnectionFromLag": "

Disassociates a connection from a link aggregation group (LAG). The connection is interrupted and re-established as a standalone connection (the connection is not deleted; to delete the connection, use the DeleteConnection request). If the LAG has associated virtual interfaces or hosted connections, they remain associated with the LAG. A disassociated connection owned by an AWS Direct Connect Partner is automatically converted to an interconnect.

If disassociating the connection would cause the LAG to fall below its setting for minimum number of operational connections, the request fails, except when it's the last member of the LAG. If all connections are disassociated, the LAG continues to exist as an empty LAG with no physical connections.

", + "ListVirtualInterfaceTestHistory": "

Lists the virtual interface failover test history.

", + "StartBgpFailoverTest": "

Starts the virtual interface failover test that verifies your configuration meets your resiliency requirements by placing the BGP peering session in the DOWN state. You can then send traffic to verify that there are no outages.

You can run the test on public, private, transit, and hosted virtual interfaces.

You can use ListVirtualInterfaceTestHistory to view the virtual interface test history.

If you need to stop the test before the test interval completes, use StopBgpFailoverTest.

", + "StopBgpFailoverTest": "

Stops the virtual interface failover test.

", "TagResource": "

Adds the specified tags to the specified AWS Direct Connect resource. Each resource can have a maximum of 50 tags.

Each tag consists of a key and an optional value. If a tag with the same key is already associated with the resource, this action updates its value.

", "UntagResource": "

Removes one or more tags from the specified AWS Direct Connect resource.

", "UpdateDirectConnectGatewayAssociation": "

Updates the specified attributes of the Direct Connect gateway association.

Add or remove prefixes from the association.

", "UpdateLag": "

Updates the attributes of the specified link aggregation group (LAG).

You can update the following attributes:

When you create a LAG, the default value for the minimum number of operational connections is zero (0). If you update this value and the number of operational connections falls below the specified value, the LAG automatically goes down to avoid over-utilization of the remaining connections. Adjust this value with care, as it could force the LAG down if it is set higher than the current number of operational connections.

", - "UpdateVirtualInterfaceAttributes": "

Updates the specified attributes of the specified virtual private interface.

Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.

" + "UpdateVirtualInterfaceAttributes": "

Updates the specified attributes of the specified virtual private interface.

Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual q interface supports jumbo frames, call DescribeVirtualInterfaces.

" }, "shapes": { "ASN": { @@ -217,9 +220,18 @@ "base": null, "refs": { "BGPPeer$bgpPeerId": "

The ID of the BGP peer.

", + "BGPPeerIdList$member": null, "DeleteBGPPeerRequest$bgpPeerId": "

The ID of the BGP peer.

" } }, + "BGPPeerIdList": { + "base": null, + "refs": { + "ListVirtualInterfaceTestHistoryRequest$bgpPeers": "

The BGP peers that were placed in the DOWN state during the virtual interface failover test.

", + "StartBgpFailoverTestRequest$bgpPeers": "

The BGP peers to place in the DOWN state.

", + "VirtualInterfaceTestHistory$bgpPeers": "

The BGP peers that were put in the DOWN state as part of the virtual interface failover test.

" + } + }, "BGPPeerList": { "base": null, "refs": { @@ -792,6 +804,12 @@ "refs": { } }, + "EndTime": { + "base": null, + "refs": { + "VirtualInterfaceTestHistory$endTime": "

The time that the virtual interface moves out of the DOWN state.

" + } + }, "ErrorMessage": { "base": null, "refs": { @@ -799,6 +817,13 @@ "DirectConnectServerException$message": null } }, + "FailureTestHistoryStatus": { + "base": null, + "refs": { + "ListVirtualInterfaceTestHistoryRequest$status": "

The status of the virtual interface failover test.

", + "VirtualInterfaceTestHistory$status": "

The status of the virtual interface failover test.

" + } + }, "GatewayIdToAssociate": { "base": null, "refs": { @@ -923,6 +948,16 @@ "refs": { } }, + "ListVirtualInterfaceTestHistoryRequest": { + "base": null, + "refs": { + } + }, + "ListVirtualInterfaceTestHistoryResponse": { + "base": null, + "refs": { + } + }, "Loa": { "base": "

Information about a Letter of Authorization - Connecting Facility Assignment (LOA-CFA) for a connection.

", "refs": { @@ -1013,7 +1048,8 @@ "DescribeDirectConnectGatewayAssociationProposalsRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

", "DescribeDirectConnectGatewayAssociationsRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

", "DescribeDirectConnectGatewayAttachmentsRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

", - "DescribeDirectConnectGatewaysRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

" + "DescribeDirectConnectGatewaysRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

", + "ListVirtualInterfaceTestHistoryRequest$maxResults": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

If MaxResults is given a value larger than 100, only 100 results are returned.

" } }, "NewBGPPeer": { @@ -1076,7 +1112,8 @@ "DirectConnectGatewayAssociationProposal$directConnectGatewayOwnerAccount": "

The ID of the AWS account that owns the Direct Connect gateway.

", "DirectConnectGatewayAttachment$virtualInterfaceOwnerAccount": "

The ID of the AWS account that owns the virtual interface.

", "Lag$ownerAccount": "

The ID of the AWS account that owns the LAG.

", - "VirtualInterface$ownerAccount": "

The ID of the AWS account that owns the virtual interface.

" + "VirtualInterface$ownerAccount": "

The ID of the AWS account that owns the virtual interface.

", + "VirtualInterfaceTestHistory$ownerAccount": "

The owner ID of the tested virtual interface.

" } }, "PaginationToken": { @@ -1089,7 +1126,9 @@ "DescribeDirectConnectGatewayAttachmentsRequest$nextToken": "

The token provided in the previous call to retrieve the next page.

", "DescribeDirectConnectGatewayAttachmentsResult$nextToken": "

The token to retrieve the next page.

", "DescribeDirectConnectGatewaysRequest$nextToken": "

The token provided in the previous call to retrieve the next page.

", - "DescribeDirectConnectGatewaysResult$nextToken": "

The token to retrieve the next page.

" + "DescribeDirectConnectGatewaysResult$nextToken": "

The token to retrieve the next page.

", + "ListVirtualInterfaceTestHistoryRequest$nextToken": "

The token for the next page of results.

", + "ListVirtualInterfaceTestHistoryResponse$nextToken": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

" } }, "PartnerName": { @@ -1192,6 +1231,22 @@ "VirtualInterface$customerRouterConfig": "

The customer router configuration.

" } }, + "StartBgpFailoverTestRequest": { + "base": null, + "refs": { + } + }, + "StartBgpFailoverTestResponse": { + "base": null, + "refs": { + } + }, + "StartTime": { + "base": null, + "refs": { + "VirtualInterfaceTestHistory$startTime": "

The time that the virtual interface moves to the DOWN state.

" + } + }, "StateChangeError": { "base": null, "refs": { @@ -1200,6 +1255,16 @@ "DirectConnectGatewayAttachment$stateChangeError": "

The error message if the state of an object failed to advance.

" } }, + "StopBgpFailoverTestRequest": { + "base": null, + "refs": { + } + }, + "StopBgpFailoverTestResponse": { + "base": null, + "refs": { + } + }, "Tag": { "base": "

Information about a tag.

", "refs": { @@ -1257,6 +1322,20 @@ "Tag$value": "

The value.

" } }, + "TestDuration": { + "base": null, + "refs": { + "StartBgpFailoverTestRequest$testDurationInMinutes": "

The time in minutes that the virtual interface failover test will last.

Maximum value: 180 minutes (3 hours).

Default: 180 minutes (3 hours).

", + "VirtualInterfaceTestHistory$testDurationInMinutes": "

The time that the virtual interface failover test ran in minutes.

" + } + }, + "TestId": { + "base": null, + "refs": { + "ListVirtualInterfaceTestHistoryRequest$testId": "

The ID of the virtual interface failover test.

", + "VirtualInterfaceTestHistory$testId": "

The ID of the virtual interface failover test.

" + } + }, "TooManyTagsException": { "base": "

You have reached the limit on the number of tags that can be assigned.

", "refs": { @@ -1372,8 +1451,12 @@ "DescribeDirectConnectGatewayAttachmentsRequest$virtualInterfaceId": "

The ID of the virtual interface.

", "DescribeVirtualInterfacesRequest$virtualInterfaceId": "

The ID of the virtual interface.

", "DirectConnectGatewayAttachment$virtualInterfaceId": "

The ID of the virtual interface.

", + "ListVirtualInterfaceTestHistoryRequest$virtualInterfaceId": "

The ID of the virtual interface that was tested.

", + "StartBgpFailoverTestRequest$virtualInterfaceId": "

The ID of the virtual interface you want to test.

", + "StopBgpFailoverTestRequest$virtualInterfaceId": "

The ID of the virtual interface you no longer want to test.

", "UpdateVirtualInterfaceAttributesRequest$virtualInterfaceId": "

The ID of the virtual private interface.

", - "VirtualInterface$virtualInterfaceId": "

The ID of the virtual interface.

" + "VirtualInterface$virtualInterfaceId": "

The ID of the virtual interface.

", + "VirtualInterfaceTestHistory$virtualInterfaceId": "

The ID of the tested virtual interface.

" } }, "VirtualInterfaceList": { @@ -1385,13 +1468,13 @@ "VirtualInterfaceName": { "base": null, "refs": { - "NewPrivateVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "NewPrivateVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "NewPublicVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "NewPublicVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "NewTransitVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "NewTransitVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

", - "VirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network.

" + "NewPrivateVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "NewPrivateVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "NewPublicVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "NewPublicVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "NewTransitVirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "NewTransitVirtualInterfaceAllocation$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

", + "VirtualInterface$virtualInterfaceName": "

The name of the virtual interface assigned by the customer network. The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).

" } }, "VirtualInterfaceRegion": { @@ -1410,6 +1493,20 @@ "VirtualInterface$virtualInterfaceState": "

The state of the virtual interface. The following are the possible values:

" } }, + "VirtualInterfaceTestHistory": { + "base": "

Information about the virtual interface failover test.

", + "refs": { + "StartBgpFailoverTestResponse$virtualInterfaceTest": "

Information about the virtual interface failover test.

", + "StopBgpFailoverTestResponse$virtualInterfaceTest": "

Information about the virtual interface failover test.

", + "VirtualInterfaceTestHistoryList$member": null + } + }, + "VirtualInterfaceTestHistoryList": { + "base": null, + "refs": { + "ListVirtualInterfaceTestHistoryResponse$virtualInterfaceTestHistory": "

The ID of the tested virtual interface.

" + } + }, "VirtualInterfaceType": { "base": null, "refs": { diff --git a/models/apis/elasticache/2015-02-02/api-2.json b/models/apis/elasticache/2015-02-02/api-2.json index 630e2f7d70d..9afa90e0470 100644 --- a/models/apis/elasticache/2015-02-02/api-2.json +++ b/models/apis/elasticache/2015-02-02/api-2.json @@ -1825,6 +1825,7 @@ "GlobalReplicationGroupId":{"shape":"String"}, "PrimaryClusterId":{"shape":"String"}, "AutomaticFailoverEnabled":{"shape":"BooleanOptional"}, + "MultiAZEnabled":{"shape":"BooleanOptional"}, "NumCacheClusters":{"shape":"IntegerOptional"}, "PreferredCacheClusterAZs":{"shape":"AvailabilityZonesList"}, "NumNodeGroups":{"shape":"IntegerOptional"}, @@ -2661,6 +2662,7 @@ "PrimaryClusterId":{"shape":"String"}, "SnapshottingClusterId":{"shape":"String"}, "AutomaticFailoverEnabled":{"shape":"BooleanOptional"}, + "MultiAZEnabled":{"shape":"BooleanOptional"}, "NodeGroupId":{ "shape":"String", "deprecated":true @@ -2709,6 +2711,13 @@ "ReplicationGroup":{"shape":"ReplicationGroup"} } }, + "MultiAZStatus":{ + "type":"string", + "enum":[ + "enabled", + "disabled" + ] + }, "NoOperationFault":{ "type":"structure", "members":{ @@ -3107,6 +3116,7 @@ "NodeGroups":{"shape":"NodeGroupList"}, "SnapshottingClusterId":{"shape":"String"}, "AutomaticFailover":{"shape":"AutomaticFailoverStatus"}, + "MultiAZ":{"shape":"MultiAZStatus"}, "ConfigurationEndpoint":{"shape":"Endpoint"}, "SnapshotRetentionLimit":{"shape":"IntegerOptional"}, "SnapshotWindow":{"shape":"String"}, diff --git a/models/apis/elasticache/2015-02-02/docs-2.json b/models/apis/elasticache/2015-02-02/docs-2.json index 96868dc9714..f040fa507e2 100644 --- a/models/apis/elasticache/2015-02-02/docs-2.json +++ b/models/apis/elasticache/2015-02-02/docs-2.json @@ -198,6 +198,7 @@ "CacheCluster$AtRestEncryptionEnabled": "

A flag that enables encryption at-rest when set to true.

You cannot modify the value of AtRestEncryptionEnabled after the cluster is created. To enable at-rest encryption on a cluster you must set AtRestEncryptionEnabled to true when you create a cluster.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

", "CreateCacheClusterMessage$AutoMinorVersionUpgrade": "

This parameter is currently disabled.

", "CreateReplicationGroupMessage$AutomaticFailoverEnabled": "

Specifies whether a read-only replica is automatically promoted to read/write primary if the existing primary fails.

If true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group.

AutomaticFailoverEnabled must be enabled for Redis (cluster mode enabled) replication groups.

Default: false

Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover on:

", + "CreateReplicationGroupMessage$MultiAZEnabled": null, "CreateReplicationGroupMessage$AutoMinorVersionUpgrade": "

This parameter is currently disabled.

", "CreateReplicationGroupMessage$TransitEncryptionEnabled": "

A flag that enables in-transit encryption when set to true.

You cannot modify the value of TransitEncryptionEnabled after the cluster is created. To enable in-transit encryption on a cluster you must set TransitEncryptionEnabled to true when you create a cluster.

This parameter is valid only if the Engine parameter is redis, the EngineVersion parameter is 3.2.6, 4.x or later, and the cluster is being created in an Amazon VPC.

If you enable in-transit encryption, you must also specify a value for CacheSubnetGroup.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

For HIPAA compliance, you must specify TransitEncryptionEnabled as true, an AuthToken, and a CacheSubnetGroup.

", "CreateReplicationGroupMessage$AtRestEncryptionEnabled": "

A flag that enables encryption at rest when set to true.

You cannot modify the value of AtRestEncryptionEnabled after the replication group is created. To enable encryption at rest on a replication group you must set AtRestEncryptionEnabled to true when you create the replication group.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

", @@ -214,6 +215,7 @@ "ModifyCacheClusterMessage$AutoMinorVersionUpgrade": "

This parameter is currently disabled.

", "ModifyGlobalReplicationGroupMessage$AutomaticFailoverEnabled": "

Determines whether a read replica is automatically promoted to read/write primary if the existing primary encounters a failure.

", "ModifyReplicationGroupMessage$AutomaticFailoverEnabled": "

Determines whether a read replica is automatically promoted to read/write primary if the existing primary encounters a failure.

Valid values: true | false

Amazon ElastiCache for Redis does not support Multi-AZ with automatic failover on:

", + "ModifyReplicationGroupMessage$MultiAZEnabled": null, "ModifyReplicationGroupMessage$AutoMinorVersionUpgrade": "

This parameter is currently disabled.

", "ReplicationGroup$ClusterEnabled": "

A flag indicating whether or not this replication group is cluster enabled; i.e., whether its data can be partitioned across multiple shards (API/CLI: node groups).

Valid values: true | false

", "ReplicationGroup$AuthTokenEnabled": "

A flag that enables using an AuthToken (password) when issuing Redis commands.

Default: false

", @@ -1134,6 +1136,12 @@ "refs": { } }, + "MultiAZStatus": { + "base": null, + "refs": { + "ReplicationGroup$MultiAZ": null + } + }, "NoOperationFault": { "base": "

The operation was not performed because no changes were required.

", "refs": { diff --git a/models/apis/es/2015-01-01/api-2.json b/models/apis/es/2015-01-01/api-2.json index 51029316121..44711911ce4 100644 --- a/models/apis/es/2015-01-01/api-2.json +++ b/models/apis/es/2015-01-01/api-2.json @@ -10,6 +10,20 @@ "uid":"es-2015-01-01" }, "operations":{ + "AcceptInboundCrossClusterSearchConnection":{ + "name":"AcceptInboundCrossClusterSearchConnection", + "http":{ + "method":"PUT", + "requestUri":"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/accept" + }, + "input":{"shape":"AcceptInboundCrossClusterSearchConnectionRequest"}, + "output":{"shape":"AcceptInboundCrossClusterSearchConnectionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"DisabledOperationException"} + ] + }, "AddTags":{ "name":"AddTags", "http":{ @@ -74,6 +88,21 @@ {"shape":"ValidationException"} ] }, + "CreateOutboundCrossClusterSearchConnection":{ + "name":"CreateOutboundCrossClusterSearchConnection", + "http":{ + "method":"POST", + "requestUri":"/2015-01-01/es/ccs/outboundConnection" + }, + "input":{"shape":"CreateOutboundCrossClusterSearchConnectionRequest"}, + "output":{"shape":"CreateOutboundCrossClusterSearchConnectionResponse"}, + "errors":[ + {"shape":"LimitExceededException"}, + {"shape":"InternalException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"DisabledOperationException"} + ] + }, "CreatePackage":{ "name":"CreatePackage", "http":{ @@ -119,6 +148,32 @@ {"shape":"ValidationException"} ] }, + "DeleteInboundCrossClusterSearchConnection":{ + "name":"DeleteInboundCrossClusterSearchConnection", + "http":{ + "method":"DELETE", + "requestUri":"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}" + }, + "input":{"shape":"DeleteInboundCrossClusterSearchConnectionRequest"}, + "output":{"shape":"DeleteInboundCrossClusterSearchConnectionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"DisabledOperationException"} + ] + }, + "DeleteOutboundCrossClusterSearchConnection":{ + "name":"DeleteOutboundCrossClusterSearchConnection", + "http":{ + "method":"DELETE", + "requestUri":"/2015-01-01/es/ccs/outboundConnection/{ConnectionId}" + }, + "input":{"shape":"DeleteOutboundCrossClusterSearchConnectionRequest"}, + "output":{"shape":"DeleteOutboundCrossClusterSearchConnectionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"DisabledOperationException"} + ] + }, "DeletePackage":{ "name":"DeletePackage", "http":{ @@ -197,6 +252,32 @@ {"shape":"ValidationException"} ] }, + "DescribeInboundCrossClusterSearchConnections":{ + "name":"DescribeInboundCrossClusterSearchConnections", + "http":{ + "method":"POST", + "requestUri":"/2015-01-01/es/ccs/inboundConnection/search" + }, + "input":{"shape":"DescribeInboundCrossClusterSearchConnectionsRequest"}, + "output":{"shape":"DescribeInboundCrossClusterSearchConnectionsResponse"}, + "errors":[ + {"shape":"InvalidPaginationTokenException"}, + {"shape":"DisabledOperationException"} + ] + }, + "DescribeOutboundCrossClusterSearchConnections":{ + "name":"DescribeOutboundCrossClusterSearchConnections", + "http":{ + "method":"POST", + "requestUri":"/2015-01-01/es/ccs/outboundConnection/search" + }, + "input":{"shape":"DescribeOutboundCrossClusterSearchConnectionsRequest"}, + "output":{"shape":"DescribeOutboundCrossClusterSearchConnectionsResponse"}, + "errors":[ + {"shape":"InvalidPaginationTokenException"}, + {"shape":"DisabledOperationException"} + ] + }, "DescribePackages":{ "name":"DescribePackages", "http":{ @@ -414,6 +495,19 @@ {"shape":"InternalException"} ] }, + "RejectInboundCrossClusterSearchConnection":{ + "name":"RejectInboundCrossClusterSearchConnection", + "http":{ + "method":"PUT", + "requestUri":"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/reject" + }, + "input":{"shape":"RejectInboundCrossClusterSearchConnectionRequest"}, + "output":{"shape":"RejectInboundCrossClusterSearchConnectionResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"DisabledOperationException"} + ] + }, "RemoveTags":{ "name":"RemoveTags", "http":{ @@ -479,6 +573,23 @@ }, "shapes":{ "ARN":{"type":"string"}, + "AcceptInboundCrossClusterSearchConnectionRequest":{ + "type":"structure", + "required":["CrossClusterSearchConnectionId"], + "members":{ + "CrossClusterSearchConnectionId":{ + "shape":"CrossClusterSearchConnectionId", + "location":"uri", + "locationName":"ConnectionId" + } + } + }, + "AcceptInboundCrossClusterSearchConnectionResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnection":{"shape":"InboundCrossClusterSearchConnection"} + } + }, "AccessDeniedException":{ "type":"structure", "members":{ @@ -646,6 +757,10 @@ "error":{"httpStatusCode":409}, "exception":true }, + "ConnectionAlias":{ + "type":"string", + "max":20 + }, "CreateElasticsearchDomainRequest":{ "type":"structure", "required":["DomainName"], @@ -672,6 +787,29 @@ "DomainStatus":{"shape":"ElasticsearchDomainStatus"} } }, + "CreateOutboundCrossClusterSearchConnectionRequest":{ + "type":"structure", + "required":[ + "SourceDomainInfo", + "DestinationDomainInfo", + "ConnectionAlias" + ], + "members":{ + "SourceDomainInfo":{"shape":"DomainInformation"}, + "DestinationDomainInfo":{"shape":"DomainInformation"}, + "ConnectionAlias":{"shape":"ConnectionAlias"} + } + }, + "CreateOutboundCrossClusterSearchConnectionResponse":{ + "type":"structure", + "members":{ + "SourceDomainInfo":{"shape":"DomainInformation"}, + "DestinationDomainInfo":{"shape":"DomainInformation"}, + "ConnectionAlias":{"shape":"ConnectionAlias"}, + "ConnectionStatus":{"shape":"OutboundCrossClusterSearchConnectionStatus"}, + "CrossClusterSearchConnectionId":{"shape":"CrossClusterSearchConnectionId"} + } + }, "CreatePackageRequest":{ "type":"structure", "required":[ @@ -693,6 +831,8 @@ } }, "CreatedAt":{"type":"timestamp"}, + "CrossClusterSearchConnectionId":{"type":"string"}, + "CrossClusterSearchConnectionStatusMessage":{"type":"string"}, "DeleteElasticsearchDomainRequest":{ "type":"structure", "required":["DomainName"], @@ -710,6 +850,40 @@ "DomainStatus":{"shape":"ElasticsearchDomainStatus"} } }, + "DeleteInboundCrossClusterSearchConnectionRequest":{ + "type":"structure", + "required":["CrossClusterSearchConnectionId"], + "members":{ + "CrossClusterSearchConnectionId":{ + "shape":"CrossClusterSearchConnectionId", + "location":"uri", + "locationName":"ConnectionId" + } + } + }, + "DeleteInboundCrossClusterSearchConnectionResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnection":{"shape":"InboundCrossClusterSearchConnection"} + } + }, + "DeleteOutboundCrossClusterSearchConnectionRequest":{ + "type":"structure", + "required":["CrossClusterSearchConnectionId"], + "members":{ + "CrossClusterSearchConnectionId":{ + "shape":"CrossClusterSearchConnectionId", + "location":"uri", + "locationName":"ConnectionId" + } + } + }, + "DeleteOutboundCrossClusterSearchConnectionResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnection":{"shape":"OutboundCrossClusterSearchConnection"} + } + }, "DeletePackageRequest":{ "type":"structure", "required":["PackageID"], @@ -818,6 +992,36 @@ "LimitsByRole":{"shape":"LimitsByRole"} } }, + "DescribeInboundCrossClusterSearchConnectionsRequest":{ + "type":"structure", + "members":{ + "Filters":{"shape":"FilterList"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeInboundCrossClusterSearchConnectionsResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnections":{"shape":"InboundCrossClusterSearchConnections"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeOutboundCrossClusterSearchConnectionsRequest":{ + "type":"structure", + "members":{ + "Filters":{"shape":"FilterList"}, + "MaxResults":{"shape":"MaxResults"}, + "NextToken":{"shape":"NextToken"} + } + }, + "DescribeOutboundCrossClusterSearchConnectionsResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnections":{"shape":"OutboundCrossClusterSearchConnections"}, + "NextToken":{"shape":"NextToken"} + } + }, "DescribePackagesFilter":{ "type":"structure", "members":{ @@ -979,6 +1183,15 @@ "type":"list", "member":{"shape":"DomainInfo"} }, + "DomainInformation":{ + "type":"structure", + "required":["DomainName"], + "members":{ + "OwnerId":{"shape":"OwnerId"}, + "DomainName":{"shape":"DomainName"}, + "Region":{"shape":"Region"} + } + }, "DomainName":{ "type":"string", "max":28, @@ -1241,6 +1454,17 @@ }, "ErrorMessage":{"type":"string"}, "ErrorType":{"type":"string"}, + "Filter":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Values":{"shape":"ValueStringList"} + } + }, + "FilterList":{ + "type":"list", + "member":{"shape":"Filter"} + }, "GUID":{ "type":"string", "pattern":"\\p{XDigit}{8}-\\p{XDigit}{4}-\\p{XDigit}{4}-\\p{XDigit}{4}-\\p{XDigit}{12}" @@ -1314,6 +1538,37 @@ "min":1, "pattern":"[\\w-]+:[0-9a-f-]+" }, + "InboundCrossClusterSearchConnection":{ + "type":"structure", + "members":{ + "SourceDomainInfo":{"shape":"DomainInformation"}, + "DestinationDomainInfo":{"shape":"DomainInformation"}, + "CrossClusterSearchConnectionId":{"shape":"CrossClusterSearchConnectionId"}, + "ConnectionStatus":{"shape":"InboundCrossClusterSearchConnectionStatus"} + } + }, + "InboundCrossClusterSearchConnectionStatus":{ + "type":"structure", + "members":{ + "StatusCode":{"shape":"InboundCrossClusterSearchConnectionStatusCode"}, + "Message":{"shape":"CrossClusterSearchConnectionStatusMessage"} + } + }, + "InboundCrossClusterSearchConnectionStatusCode":{ + "type":"string", + "enum":[ + "PENDING_ACCEPTANCE", + "APPROVED", + "REJECTING", + "REJECTED", + "DELETING", + "DELETED" + ] + }, + "InboundCrossClusterSearchConnections":{ + "type":"list", + "member":{"shape":"InboundCrossClusterSearchConnection"} + }, "InstanceCount":{ "type":"integer", "min":1 @@ -1341,6 +1596,13 @@ "error":{"httpStatusCode":500}, "exception":true }, + "InvalidPaginationTokenException":{ + "type":"structure", + "members":{ + }, + "error":{"httpStatusCode":400}, + "exception":true + }, "InvalidTypeException":{ "type":"structure", "members":{ @@ -1578,6 +1840,10 @@ "Status":{"shape":"OptionStatus"} } }, + "NonEmptyString":{ + "type":"string", + "min":1 + }, "OptionState":{ "type":"string", "enum":[ @@ -1601,6 +1867,45 @@ "PendingDeletion":{"shape":"Boolean"} } }, + "OutboundCrossClusterSearchConnection":{ + "type":"structure", + "members":{ + "SourceDomainInfo":{"shape":"DomainInformation"}, + "DestinationDomainInfo":{"shape":"DomainInformation"}, + "CrossClusterSearchConnectionId":{"shape":"CrossClusterSearchConnectionId"}, + "ConnectionAlias":{"shape":"ConnectionAlias"}, + "ConnectionStatus":{"shape":"OutboundCrossClusterSearchConnectionStatus"} + } + }, + "OutboundCrossClusterSearchConnectionStatus":{ + "type":"structure", + "members":{ + "StatusCode":{"shape":"OutboundCrossClusterSearchConnectionStatusCode"}, + "Message":{"shape":"CrossClusterSearchConnectionStatusMessage"} + } + }, + "OutboundCrossClusterSearchConnectionStatusCode":{ + "type":"string", + "enum":[ + "PENDING_ACCEPTANCE", + "VALIDATING", + "VALIDATION_FAILED", + "PROVISIONING", + "ACTIVE", + "REJECTED", + "DELETING", + "DELETED" + ] + }, + "OutboundCrossClusterSearchConnections":{ + "type":"list", + "member":{"shape":"OutboundCrossClusterSearchConnection"} + }, + "OwnerId":{ + "type":"string", + "max":12, + "min":12 + }, "PackageDescription":{ "type":"string", "max":1024 @@ -1689,6 +1994,24 @@ "member":{"shape":"RecurringCharge"} }, "ReferencePath":{"type":"string"}, + "Region":{"type":"string"}, + "RejectInboundCrossClusterSearchConnectionRequest":{ + "type":"structure", + "required":["CrossClusterSearchConnectionId"], + "members":{ + "CrossClusterSearchConnectionId":{ + "shape":"CrossClusterSearchConnectionId", + "location":"uri", + "locationName":"ConnectionId" + } + } + }, + "RejectInboundCrossClusterSearchConnectionResponse":{ + "type":"structure", + "members":{ + "CrossClusterSearchConnection":{"shape":"InboundCrossClusterSearchConnection"} + } + }, "RemoveTagsRequest":{ "type":"structure", "required":[ @@ -2026,6 +2349,11 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ValueStringList":{ + "type":"list", + "member":{"shape":"NonEmptyString"}, + "min":1 + }, "VolumeType":{ "type":"string", "enum":[ diff --git a/models/apis/es/2015-01-01/docs-2.json b/models/apis/es/2015-01-01/docs-2.json index 1c6bb144b00..d1c51ebe170 100644 --- a/models/apis/es/2015-01-01/docs-2.json +++ b/models/apis/es/2015-01-01/docs-2.json @@ -2,18 +2,24 @@ "version": "2.0", "service": "Amazon Elasticsearch Configuration Service

Use the Amazon Elasticsearch Configuration API to create, configure, and manage Elasticsearch domains.

For sample code that uses the Configuration API, see the Amazon Elasticsearch Service Developer Guide. The guide also contains sample code for sending signed HTTP requests to the Elasticsearch APIs.

The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, see Regions and Endpoints.

", "operations": { + "AcceptInboundCrossClusterSearchConnection": "

Allows the destination domain owner to accept an inbound cross-cluster search connection request.

", "AddTags": "

Attaches tags to an existing Elasticsearch domain. Tags are a set of case-sensitive key value pairs. An Elasticsearch domain may have up to 10 tags. See Tagging Amazon Elasticsearch Service Domains for more information.

", "AssociatePackage": "

Associates a package with an Amazon ES domain.

", "CancelElasticsearchServiceSoftwareUpdate": "

Cancels a scheduled service software update for an Amazon ES domain. You can only perform this operation before the AutomatedUpdateDate and when the UpdateStatus is in the PENDING_UPDATE state.

", "CreateElasticsearchDomain": "

Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.

", + "CreateOutboundCrossClusterSearchConnection": "

Creates a new cross-cluster search connection from a source domain to a destination domain.

", "CreatePackage": "

Create a package for use with Amazon ES domains.

", "DeleteElasticsearchDomain": "

Permanently deletes the specified Elasticsearch domain and all of its data. Once a domain is deleted, it cannot be recovered.

", "DeleteElasticsearchServiceRole": "

Deletes the service-linked role that Elasticsearch Service uses to manage and maintain VPC domains. Role deletion will fail if any existing VPC domains use the role. You must delete any such Elasticsearch domains before deleting the role. See Deleting Elasticsearch Service Role in VPC Endpoints for Amazon Elasticsearch Service Domains.

", + "DeleteInboundCrossClusterSearchConnection": "

Allows the destination domain owner to delete an existing inbound cross-cluster search connection.

", + "DeleteOutboundCrossClusterSearchConnection": "

Allows the source domain owner to delete an existing outbound cross-cluster search connection.

", "DeletePackage": "

Delete the package.

", "DescribeElasticsearchDomain": "

Returns domain configuration information about the specified Elasticsearch domain, including the domain ID, domain endpoint, and domain ARN.

", "DescribeElasticsearchDomainConfig": "

Provides cluster configuration information about the specified Elasticsearch domain, such as the state, creation date, update version, and update date for cluster options.

", "DescribeElasticsearchDomains": "

Returns domain configuration information about the specified Elasticsearch domains, including the domain ID, domain endpoint, and domain ARN.

", "DescribeElasticsearchInstanceTypeLimits": "

Describe Elasticsearch Limits for a given InstanceType and ElasticsearchVersion. When modifying existing Domain, specify the DomainName to know what Limits are supported for modifying.

", + "DescribeInboundCrossClusterSearchConnections": "

Lists all the inbound cross-cluster search connections for a destination domain.

", + "DescribeOutboundCrossClusterSearchConnections": "

Lists all the outbound cross-cluster search connections for a source domain.

", "DescribePackages": "

Describes all packages available to Amazon ES. Includes options for filtering, limiting the number of results, and pagination.

", "DescribeReservedElasticsearchInstanceOfferings": "

Lists available reserved Elasticsearch instance offerings.

", "DescribeReservedElasticsearchInstances": "

Returns information about reserved Elasticsearch instances for this account.

", @@ -28,6 +34,7 @@ "ListPackagesForDomain": "

Lists all packages associated with the Amazon ES domain.

", "ListTags": "

Returns all tags for the given Elasticsearch domain.

", "PurchaseReservedElasticsearchInstanceOffering": "

Allows you to purchase reserved Elasticsearch instances.

", + "RejectInboundCrossClusterSearchConnection": "

Allows the destination domain owner to reject an inbound cross-cluster search connection request.

", "RemoveTags": "

Removes the specified set of tags from the specified Elasticsearch domain.

", "StartElasticsearchServiceSoftwareUpdate": "

Schedules a service software update for an Amazon ES domain.

", "UpdateElasticsearchDomainConfig": "

Modifies the cluster configuration of the specified Elasticsearch domain, setting as setting the instance type and the number of instances.

", @@ -44,6 +51,16 @@ "RemoveTagsRequest$ARN": "

Specifies the ARN for the Elasticsearch domain from which you want to delete the specified tags.

" } }, + "AcceptInboundCrossClusterSearchConnectionRequest": { + "base": "

Container for the parameters to the AcceptInboundCrossClusterSearchConnection operation.

", + "refs": { + } + }, + "AcceptInboundCrossClusterSearchConnectionResponse": { + "base": "

The result of a AcceptInboundCrossClusterSearchConnection operation. Contains details of accepted inbound connection.

", + "refs": { + } + }, "AccessDeniedException": { "base": "

An error occurred because user does not have permissions to access the resource. Returns HTTP status code 403.

", "refs": { @@ -198,6 +215,14 @@ "refs": { } }, + "ConnectionAlias": { + "base": null, + "refs": { + "CreateOutboundCrossClusterSearchConnectionRequest$ConnectionAlias": "

Specifies the connection alias that will be used by the customer for this connection.

", + "CreateOutboundCrossClusterSearchConnectionResponse$ConnectionAlias": "

Specifies the connection alias provided during the create connection request.

", + "OutboundCrossClusterSearchConnection$ConnectionAlias": "

Specifies the connection alias for the outbound cross-cluster search connection.

" + } + }, "CreateElasticsearchDomainRequest": { "base": null, "refs": { @@ -208,6 +233,16 @@ "refs": { } }, + "CreateOutboundCrossClusterSearchConnectionRequest": { + "base": "

Container for the parameters to the CreateOutboundCrossClusterSearchConnection operation.

", + "refs": { + } + }, + "CreateOutboundCrossClusterSearchConnectionResponse": { + "base": "

The result of a CreateOutboundCrossClusterSearchConnection request. Contains the details of the newly created cross-cluster search connection.

", + "refs": { + } + }, "CreatePackageRequest": { "base": "

Container for request parameters to CreatePackage operation.

", "refs": { @@ -224,6 +259,25 @@ "PackageDetails$CreatedAt": "

Timestamp which tells creation date of the package.

" } }, + "CrossClusterSearchConnectionId": { + "base": null, + "refs": { + "AcceptInboundCrossClusterSearchConnectionRequest$CrossClusterSearchConnectionId": "

The id of the inbound connection that you want to accept.

", + "CreateOutboundCrossClusterSearchConnectionResponse$CrossClusterSearchConnectionId": "

Unique id for the created outbound connection, which is used for subsequent operations on connection.

", + "DeleteInboundCrossClusterSearchConnectionRequest$CrossClusterSearchConnectionId": "

The id of the inbound connection that you want to permanently delete.

", + "DeleteOutboundCrossClusterSearchConnectionRequest$CrossClusterSearchConnectionId": "

The id of the outbound connection that you want to permanently delete.

", + "InboundCrossClusterSearchConnection$CrossClusterSearchConnectionId": "

Specifies the connection id for the inbound cross-cluster search connection.

", + "OutboundCrossClusterSearchConnection$CrossClusterSearchConnectionId": "

Specifies the connection id for the outbound cross-cluster search connection.

", + "RejectInboundCrossClusterSearchConnectionRequest$CrossClusterSearchConnectionId": "

The id of the inbound connection that you want to reject.

" + } + }, + "CrossClusterSearchConnectionStatusMessage": { + "base": null, + "refs": { + "InboundCrossClusterSearchConnectionStatus$Message": "

Specifies verbose information for the inbound connection status.

", + "OutboundCrossClusterSearchConnectionStatus$Message": "

Specifies verbose information for the outbound connection status.

" + } + }, "DeleteElasticsearchDomainRequest": { "base": "

Container for the parameters to the DeleteElasticsearchDomain operation. Specifies the name of the Elasticsearch domain that you want to delete.

", "refs": { @@ -234,6 +288,26 @@ "refs": { } }, + "DeleteInboundCrossClusterSearchConnectionRequest": { + "base": "

Container for the parameters to the DeleteInboundCrossClusterSearchConnection operation.

", + "refs": { + } + }, + "DeleteInboundCrossClusterSearchConnectionResponse": { + "base": "

The result of a DeleteInboundCrossClusterSearchConnection operation. Contains details of deleted inbound connection.

", + "refs": { + } + }, + "DeleteOutboundCrossClusterSearchConnectionRequest": { + "base": "

Container for the parameters to the DeleteOutboundCrossClusterSearchConnection operation.

", + "refs": { + } + }, + "DeleteOutboundCrossClusterSearchConnectionResponse": { + "base": "

The result of a DeleteOutboundCrossClusterSearchConnection operation. Contains details of deleted outbound connection.

", + "refs": { + } + }, "DeletePackageRequest": { "base": "

Container for request parameters to DeletePackage operation.

", "refs": { @@ -296,6 +370,26 @@ "refs": { } }, + "DescribeInboundCrossClusterSearchConnectionsRequest": { + "base": "

Container for the parameters to the DescribeInboundCrossClusterSearchConnections operation.

", + "refs": { + } + }, + "DescribeInboundCrossClusterSearchConnectionsResponse": { + "base": "

The result of a DescribeInboundCrossClusterSearchConnections request. Contains the list of connections matching the filter criteria.

", + "refs": { + } + }, + "DescribeOutboundCrossClusterSearchConnectionsRequest": { + "base": "

Container for the parameters to the DescribeOutboundCrossClusterSearchConnections operation.

", + "refs": { + } + }, + "DescribeOutboundCrossClusterSearchConnectionsResponse": { + "base": "

The result of a DescribeOutboundCrossClusterSearchConnections request. Contains the list of connections matching the filter criteria.

", + "refs": { + } + }, "DescribePackagesFilter": { "base": "

Filter to apply in DescribePackage response.

", "refs": { @@ -404,6 +498,19 @@ "ListDomainNamesResponse$DomainNames": "

List of Elasticsearch domain names.

" } }, + "DomainInformation": { + "base": null, + "refs": { + "CreateOutboundCrossClusterSearchConnectionRequest$SourceDomainInfo": "

Specifies the DomainInformation for the source Elasticsearch domain.

", + "CreateOutboundCrossClusterSearchConnectionRequest$DestinationDomainInfo": "

Specifies the DomainInformation for the destination Elasticsearch domain.

", + "CreateOutboundCrossClusterSearchConnectionResponse$SourceDomainInfo": "

Specifies the DomainInformation for the source Elasticsearch domain.

", + "CreateOutboundCrossClusterSearchConnectionResponse$DestinationDomainInfo": "

Specifies the DomainInformation for the destination Elasticsearch domain.

", + "InboundCrossClusterSearchConnection$SourceDomainInfo": "

Specifies the DomainInformation for the source Elasticsearch domain.

", + "InboundCrossClusterSearchConnection$DestinationDomainInfo": "

Specifies the DomainInformation for the destination Elasticsearch domain.

", + "OutboundCrossClusterSearchConnection$SourceDomainInfo": "

Specifies the DomainInformation for the source Elasticsearch domain.

", + "OutboundCrossClusterSearchConnection$DestinationDomainInfo": "

Specifies the DomainInformation for the destination Elasticsearch domain.

" + } + }, "DomainName": { "base": "

The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

", "refs": { @@ -416,6 +523,7 @@ "DescribeElasticsearchInstanceTypeLimitsRequest$DomainName": "

DomainName represents the name of the Domain that we are trying to modify. This should be present only if we are querying for Elasticsearch Limits for existing domain.

", "DissociatePackageRequest$DomainName": "

Name of the domain that you want to associate the package with.

", "DomainInfo$DomainName": "

Specifies the DomainName.

", + "DomainInformation$DomainName": null, "DomainNameList$member": null, "DomainPackageDetails$DomainName": "

Name of the domain you've associated a package with.

", "ElasticsearchDomainStatus$DomainName": "

The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

", @@ -610,6 +718,19 @@ "ErrorDetails$ErrorType": null } }, + "Filter": { + "base": "

A filter used to limit results when describing inbound or outbound cross-cluster search connections. Multiple values can be specified per filter. A cross-cluster search connection must match at least one of the specified values for it to be returned from an operation.

", + "refs": { + "FilterList$member": null + } + }, + "FilterList": { + "base": null, + "refs": { + "DescribeInboundCrossClusterSearchConnectionsRequest$Filters": "

A list of filters used to match properties for inbound cross-cluster search connection. Available Filter names for this operation are:

", + "DescribeOutboundCrossClusterSearchConnectionsRequest$Filters": "

A list of filters used to match properties for outbound cross-cluster search connection. Available Filter names for this operation are:

" + } + }, "GUID": { "base": null, "refs": { @@ -657,6 +778,33 @@ "CognitoOptions$IdentityPoolId": "

Specifies the Cognito identity pool ID for Kibana authentication.

" } }, + "InboundCrossClusterSearchConnection": { + "base": "

Specifies details of an inbound connection.

", + "refs": { + "AcceptInboundCrossClusterSearchConnectionResponse$CrossClusterSearchConnection": "

Specifies the InboundCrossClusterSearchConnection of accepted inbound connection.

", + "DeleteInboundCrossClusterSearchConnectionResponse$CrossClusterSearchConnection": "

Specifies the InboundCrossClusterSearchConnection of deleted inbound connection.

", + "InboundCrossClusterSearchConnections$member": null, + "RejectInboundCrossClusterSearchConnectionResponse$CrossClusterSearchConnection": "

Specifies the InboundCrossClusterSearchConnection of rejected inbound connection.

" + } + }, + "InboundCrossClusterSearchConnectionStatus": { + "base": "

Specifies the coonection status of an inbound cross-cluster search connection.

", + "refs": { + "InboundCrossClusterSearchConnection$ConnectionStatus": "

Specifies the InboundCrossClusterSearchConnectionStatus for the outbound connection.

" + } + }, + "InboundCrossClusterSearchConnectionStatusCode": { + "base": null, + "refs": { + "InboundCrossClusterSearchConnectionStatus$StatusCode": "

The state code for inbound connection. This can be one of the following:

" + } + }, + "InboundCrossClusterSearchConnections": { + "base": null, + "refs": { + "DescribeInboundCrossClusterSearchConnectionsResponse$CrossClusterSearchConnections": "

Consists of list of InboundCrossClusterSearchConnection matching the specified filter criteria.

" + } + }, "InstanceCount": { "base": "

Specifies the number of EC2 instances in the Elasticsearch domain.

", "refs": { @@ -706,6 +854,11 @@ "refs": { } }, + "InvalidPaginationTokenException": { + "base": "

The request processing has failed because of invalid pagination token provided by customer. Returns an HTTP status code of 400.

", + "refs": { + } + }, "InvalidTypeException": { "base": "

An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.

", "refs": { @@ -863,6 +1016,8 @@ "MaxResults": { "base": "

Set this value to limit the number of results returned.

", "refs": { + "DescribeInboundCrossClusterSearchConnectionsRequest$MaxResults": "

Set this value to limit the number of results returned. If not specified, defaults to 100.

", + "DescribeOutboundCrossClusterSearchConnectionsRequest$MaxResults": "

Set this value to limit the number of results returned. If not specified, defaults to 100.

", "DescribePackagesRequest$MaxResults": "

Limits results to a maximum number of packages.

", "DescribeReservedElasticsearchInstanceOfferingsRequest$MaxResults": "

Set this value to limit the number of results returned. If not specified, defaults to 100.

", "DescribeReservedElasticsearchInstancesRequest$MaxResults": "

Set this value to limit the number of results returned. If not specified, defaults to 100.

", @@ -888,6 +1043,10 @@ "NextToken": { "base": "

Paginated APIs accepts NextToken input to returns next page results and provides a NextToken output in the response which can be used by the client to retrieve more results.

", "refs": { + "DescribeInboundCrossClusterSearchConnectionsRequest$NextToken": "

NextToken is sent in case the earlier API call results contain the NextToken. It is used for pagination.

", + "DescribeInboundCrossClusterSearchConnectionsResponse$NextToken": "

If more results are available and NextToken is present, make the next request to the same API with the received NextToken to paginate the remaining results.

", + "DescribeOutboundCrossClusterSearchConnectionsRequest$NextToken": "

NextToken is sent in case the earlier API call results contain the NextToken. It is used for pagination.

", + "DescribeOutboundCrossClusterSearchConnectionsResponse$NextToken": "

If more results are available and NextToken is present, make the next request to the same API with the received NextToken to paginate the remaining results.

", "DescribePackagesRequest$NextToken": "

Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, returns results for the next page.

", "DescribeReservedElasticsearchInstanceOfferingsRequest$NextToken": "

NextToken should be sent in case if earlier API call produced result containing NextToken. It is used for pagination.

", "DescribeReservedElasticsearchInstanceOfferingsResponse$NextToken": "

Provides an identifier to allow retrieval of paginated results.

", @@ -915,6 +1074,13 @@ "ElasticsearchDomainConfig$NodeToNodeEncryptionOptions": "

Specifies the NodeToNodeEncryptionOptions for the Elasticsearch domain.

" } }, + "NonEmptyString": { + "base": null, + "refs": { + "Filter$Name": "

Specifies the name of the filter.

", + "ValueStringList$member": null + } + }, "OptionState": { "base": "

The state of a requested change. One of the following:

", "refs": { @@ -939,6 +1105,38 @@ "VPCDerivedInfoStatus$Status": "

Specifies the status of the VPC options for the specified Elasticsearch domain.

" } }, + "OutboundCrossClusterSearchConnection": { + "base": "

Specifies details of an outbound connection.

", + "refs": { + "DeleteOutboundCrossClusterSearchConnectionResponse$CrossClusterSearchConnection": "

Specifies the OutboundCrossClusterSearchConnection of deleted outbound connection.

", + "OutboundCrossClusterSearchConnections$member": null + } + }, + "OutboundCrossClusterSearchConnectionStatus": { + "base": "

Specifies the connection status of an outbound cross-cluster search connection.

", + "refs": { + "CreateOutboundCrossClusterSearchConnectionResponse$ConnectionStatus": "

Specifies the OutboundCrossClusterSearchConnectionStatus for the newly created connection.

", + "OutboundCrossClusterSearchConnection$ConnectionStatus": "

Specifies the OutboundCrossClusterSearchConnectionStatus for the outbound connection.

" + } + }, + "OutboundCrossClusterSearchConnectionStatusCode": { + "base": null, + "refs": { + "OutboundCrossClusterSearchConnectionStatus$StatusCode": "

The state code for outbound connection. This can be one of the following:

" + } + }, + "OutboundCrossClusterSearchConnections": { + "base": null, + "refs": { + "DescribeOutboundCrossClusterSearchConnectionsResponse$CrossClusterSearchConnections": "

Consists of list of OutboundCrossClusterSearchConnection matching the specified filter criteria.

" + } + }, + "OwnerId": { + "base": null, + "refs": { + "DomainInformation$OwnerId": null + } + }, "PackageDescription": { "base": null, "refs": { @@ -1043,6 +1241,22 @@ "DomainPackageDetails$ReferencePath": "

The relative path on Amazon ES nodes, which can be used as synonym_path when the package is synonym file.

" } }, + "Region": { + "base": null, + "refs": { + "DomainInformation$Region": null + } + }, + "RejectInboundCrossClusterSearchConnectionRequest": { + "base": "

Container for the parameters to the RejectInboundCrossClusterSearchConnection operation.

", + "refs": { + } + }, + "RejectInboundCrossClusterSearchConnectionResponse": { + "base": "

The result of a RejectInboundCrossClusterSearchConnection operation. Contains details of rejected inbound connection.

", + "refs": { + } + }, "RemoveTagsRequest": { "base": "

Container for the parameters to the RemoveTags operation. Specify the ARN for the Elasticsearch domain from which you want to remove the specified TagKey.

", "refs": { @@ -1379,6 +1593,12 @@ "refs": { } }, + "ValueStringList": { + "base": null, + "refs": { + "Filter$Values": "

Contains one or more values for the filter.

" + } + }, "VolumeType": { "base": "

The type of EBS volume, standard, gp2, or io1. See Configuring EBS-based Storagefor more information.

", "refs": { diff --git a/models/apis/es/2015-01-01/paginators-1.json b/models/apis/es/2015-01-01/paginators-1.json index e360c36eb9a..6a5c91f1c0a 100644 --- a/models/apis/es/2015-01-01/paginators-1.json +++ b/models/apis/es/2015-01-01/paginators-1.json @@ -1,5 +1,15 @@ { "pagination": { + "DescribeInboundCrossClusterSearchConnections": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "DescribeOutboundCrossClusterSearchConnections": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "DescribePackages": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index 2b354ca8ae8..7803c407f82 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -6230,6 +6230,7 @@ "type":"structure", "members":{ "FunctionName":{"shape":"NameString"}, + "DatabaseName":{"shape":"NameString"}, "ClassName":{"shape":"NameString"}, "OwnerName":{"shape":"NameString"}, "OwnerType":{"shape":"PrincipalType"}, diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index c3720ccdb9c..0ff5521b480 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -2681,7 +2681,7 @@ "GetTriggersRequest$DependentJobName": "

The name of the job to retrieve triggers for. The trigger that can start this job is returned, and if there is no such trigger, all triggers are returned.

", "GetUserDefinedFunctionRequest$DatabaseName": "

The name of the catalog database where the function is located.

", "GetUserDefinedFunctionRequest$FunctionName": "

The name of the function.

", - "GetUserDefinedFunctionsRequest$DatabaseName": "

The name of the catalog database where the functions are located.

", + "GetUserDefinedFunctionsRequest$DatabaseName": "

The name of the catalog database where the functions are located. If none is provided, functions from all the databases across the catalog will be returned.

", "GetUserDefinedFunctionsRequest$Pattern": "

An optional function-name pattern string that filters the function definitions returned.

", "GetWorkflowRequest$Name": "

The name of the workflow to retrieve.

", "GetWorkflowRunPropertiesRequest$Name": "

Name of the workflow which was run.

", @@ -2762,6 +2762,7 @@ "UpdateWorkflowResponse$Name": "

The name of the workflow which was specified in input.

", "UpdateXMLClassifierRequest$Name": "

The name of the classifier.

", "UserDefinedFunction$FunctionName": "

The name of the function.

", + "UserDefinedFunction$DatabaseName": "

The name of the database where the function resides.

", "UserDefinedFunction$ClassName": "

The Java class that contains the function code.

", "UserDefinedFunction$OwnerName": "

The owner of the function.

", "UserDefinedFunctionInput$FunctionName": "

The name of the function.

", diff --git a/models/apis/iam/2010-05-08/api-2.json b/models/apis/iam/2010-05-08/api-2.json index 7f5f98decd6..23b4b696541 100644 --- a/models/apis/iam/2010-05-08/api-2.json +++ b/models/apis/iam/2010-05-08/api-2.json @@ -2151,6 +2151,13 @@ } }, "shapes":{ + "AccessAdvisorUsageGranularityType":{ + "type":"string", + "enum":[ + "SERVICE_LEVEL", + "ACTION_LEVEL" + ] + }, "AccessDetail":{ "type":"structure", "required":[ @@ -3062,7 +3069,8 @@ "type":"structure", "required":["Arn"], "members":{ - "Arn":{"shape":"arnType"} + "Arn":{"shape":"arnType"}, + "Granularity":{"shape":"AccessAdvisorUsageGranularityType"} } }, "GenerateServiceLastAccessedDetailsResponse":{ @@ -3399,6 +3407,7 @@ ], "members":{ "JobStatus":{"shape":"jobStatusType"}, + "JobType":{"shape":"AccessAdvisorUsageGranularityType"}, "JobCreationDate":{"shape":"dateType"}, "ServicesLastAccessed":{"shape":"ServicesLastAccessed"}, "JobCompletionDate":{"shape":"dateType"}, @@ -4746,7 +4755,9 @@ "LastAuthenticated":{"shape":"dateType"}, "ServiceNamespace":{"shape":"serviceNamespaceType"}, "LastAuthenticatedEntity":{"shape":"arnType"}, - "TotalAuthenticatedEntities":{"shape":"integerType"} + "LastAuthenticatedRegion":{"shape":"stringType"}, + "TotalAuthenticatedEntities":{"shape":"integerType"}, + "TrackedActionsLastAccessed":{"shape":"TrackedActionsLastAccessed"} } }, "ServiceNotSupportedException":{ @@ -4942,6 +4953,19 @@ "Tags":{"shape":"tagListType"} } }, + "TrackedActionLastAccessed":{ + "type":"structure", + "members":{ + "ActionName":{"shape":"stringType"}, + "LastAccessedEntity":{"shape":"arnType"}, + "LastAccessedTime":{"shape":"dateType"}, + "LastAccessedRegion":{"shape":"stringType"} + } + }, + "TrackedActionsLastAccessed":{ + "type":"list", + "member":{"shape":"TrackedActionLastAccessed"} + }, "UnmodifiableEntityException":{ "type":"structure", "members":{ diff --git a/models/apis/iam/2010-05-08/docs-2.json b/models/apis/iam/2010-05-08/docs-2.json index ef1aa7ecd48..547d065f17d 100644 --- a/models/apis/iam/2010-05-08/docs-2.json +++ b/models/apis/iam/2010-05-08/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "AWS Identity and Access Management

AWS Identity and Access Management (IAM) is a web service that you can use to manage users and user permissions under your AWS account. This guide provides descriptions of IAM actions that you can call programmatically. For general information about IAM, see AWS Identity and Access Management (IAM). For the user guide for IAM, see Using IAM.

AWS provides SDKs that consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to IAM and AWS. For example, the SDKs take care of tasks such as cryptographically signing requests (see below), managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page.

We recommend that you use the AWS SDKs to make programmatic API calls to IAM. However, you can also use the IAM Query API to make direct calls to the IAM web service. To learn more about the IAM Query API, see Making Query Requests in the Using IAM guide. IAM supports GET and POST requests for all actions. That is, the API does not require you to use GET for some actions and POST for others. However, GET requests are subject to the limitation size of a URL. Therefore, for operations that require larger sizes, use a POST request.

Signing Requests

Requests must be signed using an access key ID and a secret access key. We strongly recommend that you do not use your AWS account access key ID and secret access key for everyday work with IAM. You can use the access key ID and secret access key for an IAM user or you can use the AWS Security Token Service to generate temporary security credentials and use those to sign requests.

To sign requests, we recommend that you use Signature Version 4. If you have an existing application that uses Signature Version 2, you do not have to update it to use Signature Version 4. However, some operations now require Signature Version 4. The documentation for operations that require version 4 indicate this requirement.

Additional Resources

For more information, see the following:

", + "service": "AWS Identity and Access Management

AWS Identity and Access Management (IAM) is a web service for securely controlling access to AWS services. With IAM, you can centrally manage users, security credentials such as access keys, and permissions that control which AWS resources users and applications can access. For more information about IAM, see AWS Identity and Access Management (IAM) and the AWS Identity and Access Management User Guide.

", "operations": { "AddClientIDToOpenIDConnectProvider": "

Adds a new client ID (also known as audience) to the list of client IDs already registered for the specified IAM OpenID Connect (OIDC) provider resource.

This operation is idempotent; it does not fail or return an error if you add an existing client ID to the provider.

", "AddRoleToInstanceProfile": "

Adds the specified IAM role to the specified instance profile. An instance profile can contain only one role, and this limit cannot be increased. You can remove the existing role and then add a different role to an instance profile. You must then wait for the change to appear across all of AWS because of eventual consistency. To force the change, you must disassociate the instance profile and then associate the instance profile, or you can stop your instance and then restart it.

The caller of this API must be granted the PassRole permission on the IAM role by a permissions policy.

For more information about roles, go to Working with Roles. For more information about instance profiles, go to About Instance Profiles.

", @@ -53,7 +53,7 @@ "EnableMFADevice": "

Enables the specified MFA device and associates it with the specified IAM user. When enabled, the MFA device is required for every subsequent login by the IAM user associated with the device.

", "GenerateCredentialReport": "

Generates a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports in the IAM User Guide.

", "GenerateOrganizationsAccessReport": "

Generates a report for service last accessed data for AWS Organizations. You can generate a report for any entities (organization root, organizational unit, or account) or policies in your organization.

To call this operation, you must be signed in using your AWS Organizations master account credentials. You can use your long-term IAM user or root user credentials, or temporary credentials from assuming an IAM role. SCPs must be enabled for your organization root. You must have the required IAM and AWS Organizations permissions. For more information, see Refining Permissions Using Service Last Accessed Data in the IAM User Guide.

You can generate a service last accessed data report for entities by specifying only the entity's path. This data includes a list of services that are allowed by any service control policies (SCPs) that apply to the entity.

You can generate a service last accessed data report for a policy by specifying an entity's path and an optional AWS Organizations policy ID. This data includes a list of services that are allowed by the specified SCP.

For each service in both report types, the data includes the most recent account activity that the policy allows to account principals in the entity or the entity's children. For important information about the data, reporting period, permissions required, troubleshooting, and supported Regions see Reducing Permissions Using Service Last Accessed Data in the IAM User Guide.

The data includes all attempts to access AWS, not just the successful ones. This includes all attempts that were made using the AWS Management Console, the AWS API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that an account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM Events with CloudTrail in the IAM User Guide.

This operation returns a JobId. Use this parameter in the GetOrganizationsAccessReport operation to check the status of the report generation. To check the status of this request, use the JobId parameter in the GetOrganizationsAccessReport operation and test the JobStatus response parameter. When the job is complete, you can retrieve the report.

To generate a service last accessed data report for entities, specify an entity path without specifying the optional AWS Organizations policy ID. The type of entity that you specify determines the data returned in the report.

To generate a service last accessed data report for policies, specify an entity path and the optional AWS Organizations policy ID. The type of entity that you specify determines the data returned for each service.

Service last accessed data does not use other policy types when determining whether a principal could access a service. These other policy types include identity-based policies, resource-based policies, access control lists, IAM permissions boundaries, and STS assume role policies. It only applies SCP logic. For more about the evaluation of policy types, see Evaluating Policies in the IAM User Guide.

For more information about service last accessed data, see Reducing Policy Scope by Viewing User Activity in the IAM User Guide.

", - "GenerateServiceLastAccessedDetails": "

Generates a report that includes details about when an IAM resource (user, group, role, or policy) was last used in an attempt to access AWS services. Recent activity usually appears within four hours. IAM reports activity for the last 365 days, or less if your Region began supporting this feature within the last year. For more information, see Regions Where Data Is Tracked.

The service last accessed data includes all attempts to access an AWS API, not just the successful ones. This includes all attempts that were made using the AWS Management Console, the AWS API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that your account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM Events with CloudTrail in the IAM User Guide.

The GenerateServiceLastAccessedDetails operation returns a JobId. Use this parameter in the following operations to retrieve the following details from your report:

To check the status of the GenerateServiceLastAccessedDetails request, use the JobId parameter in the same operations and test the JobStatus response parameter.

For additional information about the permissions policies that allow an identity (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, AWS Organizations policies, IAM permissions boundaries, and AWS STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating Policies in the IAM User Guide.

For more information about service last accessed data, see Reducing Policy Scope by Viewing User Activity in the IAM User Guide.

", + "GenerateServiceLastAccessedDetails": "

Generates a report that includes details about when an IAM resource (user, group, role, or policy) was last used in an attempt to access AWS services. Recent activity usually appears within four hours. IAM reports activity for the last 365 days, or less if your Region began supporting this feature within the last year. For more information, see Regions Where Data Is Tracked.

The service last accessed data includes all attempts to access an AWS API, not just the successful ones. This includes all attempts that were made using the AWS Management Console, the AWS API through any of the SDKs, or any of the command line tools. An unexpected entry in the service last accessed data does not mean that your account has been compromised, because the request might have been denied. Refer to your CloudTrail logs as the authoritative source for information about all API calls and whether they were successful or denied access. For more information, see Logging IAM Events with CloudTrail in the IAM User Guide.

The GenerateServiceLastAccessedDetails operation returns a JobId. Use this parameter in the following operations to retrieve the following details from your report:

To check the status of the GenerateServiceLastAccessedDetails request, use the JobId parameter in the same operations and test the JobStatus response parameter.

For additional information about the permissions policies that allow an identity (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, AWS Organizations policies, IAM permissions boundaries, and AWS STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating Policies in the IAM User Guide.

For more information about service and action last accessed data, see Reducing Permissions Using Service Last Accessed Data in the IAM User Guide.

", "GetAccessKeyLastUsed": "

Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the AWS service and Region that were specified in the last request made with that key.

", "GetAccountAuthorizationDetails": "

Retrieves information about all IAM users, groups, roles, and policies in your AWS account, including their relationships to one another. Use this API to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account.

Policies returned by this API are URL-encoded compliant with RFC 3986. You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the decode method of the java.net.URLDecoder utility class in the Java SDK. Other languages and SDKs provide similar functionality.

You can optionally filter the results using the Filter parameter. You can paginate the results using the MaxItems and Marker parameters.

", "GetAccountPasswordPolicy": "

Retrieves the password policy for the AWS account. For more information about using a password policy, go to Managing an IAM Password Policy.

", @@ -74,7 +74,7 @@ "GetSAMLProvider": "

Returns the SAML provider metadocument that was uploaded when the IAM SAML provider resource object was created or updated.

This operation requires Signature Version 4.

", "GetSSHPublicKey": "

Retrieves the specified SSH public key, including metadata about the key.

The SSH public key retrieved by this operation is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

", "GetServerCertificate": "

Retrieves information about the specified server certificate stored in IAM.

For more information about working with server certificates, see Working with Server Certificates in the IAM User Guide. This topic includes a list of AWS services that can use the server certificates that you manage with IAM.

", - "GetServiceLastAccessedDetails": "

Retrieves a service last accessed report that was created using the GenerateServiceLastAccessedDetails operation. You can use the JobId parameter in GetServiceLastAccessedDetails to retrieve the status of your report job. When the report is complete, you can retrieve the generated report. The report includes a list of AWS services that the resource (user, group, role, or managed policy) can access.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, AWS Organizations policies, IAM permissions boundaries, and AWS STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating Policies in the IAM User Guide.

For each service that the resource could access using permissions policies, the operation returns details about the most recent access attempt. If there was no attempt, the service is listed without details about the most recent attempt to access the service. If the operation fails, the GetServiceLastAccessedDetails operation returns the reason that it failed.

The GetServiceLastAccessedDetails operation returns a list of services. This list includes the number of entities that have attempted to access the service and the date and time of the last attempt. It also returns the ARN of the following entity, depending on the resource ARN that you used to generate the report:

By default, the list is sorted by service namespace.

", + "GetServiceLastAccessedDetails": "

Retrieves a service last accessed report that was created using the GenerateServiceLastAccessedDetails operation. You can use the JobId parameter in GetServiceLastAccessedDetails to retrieve the status of your report job. When the report is complete, you can retrieve the generated report. The report includes a list of AWS services that the resource (user, group, role, or managed policy) can access.

Service last accessed data does not use other policy types when determining whether a resource could access a service. These other policy types include resource-based policies, access control lists, AWS Organizations policies, IAM permissions boundaries, and AWS STS assume role policies. It only applies permissions policy logic. For more about the evaluation of policy types, see Evaluating Policies in the IAM User Guide.

For each service that the resource could access using permissions policies, the operation returns details about the most recent access attempt. If there was no attempt, the service is listed without details about the most recent attempt to access the service. If the operation fails, the GetServiceLastAccessedDetails operation returns the reason that it failed.

The GetServiceLastAccessedDetails operation returns a list of services. This list includes the number of entities that have attempted to access the service and the date and time of the last attempt. It also returns the ARN of the following entity, depending on the resource ARN that you used to generate the report:

By default, the list is sorted by service namespace.

If you specified ACTION_LEVEL granularity when you generated the report, this operation returns service and action last accessed data. This includes the most recent access attempt for each tracked action within a service. Otherwise, this operation returns only service data.

For more information about service and action last accessed data, see Reducing Permissions Using Service Last Accessed Data in the IAM User Guide.

", "GetServiceLastAccessedDetailsWithEntities": "

After you generate a group or policy report using the GenerateServiceLastAccessedDetails operation, you can use the JobId parameter in GetServiceLastAccessedDetailsWithEntities. This operation retrieves the status of your report job and a list of entities that could have used group or policy permissions to access the specified service.

You can also use this operation for user or role reports to retrieve details about those entities.

If the operation fails, the GetServiceLastAccessedDetailsWithEntities operation returns the reason that it failed.

By default, the list of associated entities is sorted by date, with the most recent access listed first.

", "GetServiceLinkedRoleDeletionStatus": "

Retrieves the status of your service-linked role deletion. After you use the DeleteServiceLinkedRole API operation to submit a service-linked role for deletion, you can use the DeletionTaskId parameter in GetServiceLinkedRoleDeletionStatus to check the status of the deletion. If the deletion fails, this operation returns the reason that it failed, if that information is returned by the service.

", "GetUser": "

Retrieves information about the specified IAM user, including the user's creation date, path, unique ID, and ARN.

If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID used to sign the request to this API.

", @@ -144,6 +144,13 @@ "UploadSigningCertificate": "

Uploads an X.509 signing certificate and associates it with the specified IAM user. Some AWS services use X.509 signing certificates to validate requests that are signed with a corresponding private key. When you upload the certificate, its default status is Active.

If the UserName is not specified, the IAM user name is determined implicitly based on the AWS access key ID used to sign the request. This operation works for access keys under the AWS account. Consequently, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.

Because the body of an X.509 certificate can be large, you should use POST rather than GET when calling UploadSigningCertificate. For information about setting up signatures and authorization through the API, go to Signing AWS API Requests in the AWS General Reference. For general information about using the Query API with IAM, go to Making Query Requests in the IAM User Guide.

" }, "shapes": { + "AccessAdvisorUsageGranularityType": { + "base": null, + "refs": { + "GenerateServiceLastAccessedDetailsRequest$Granularity": "

The level of detail that you want to generate. You can specify whether you want to generate information about the last attempt to access services or actions. If you specify service-level granularity, this operation generates only service data. If you specify action-level granularity, it generates service and action data. If you don't include this optional parameter, the operation generates service data.

", + "GetServiceLastAccessedDetailsResponse$JobType": "

The type of job. Service jobs return information about when each service was last accessed. Action jobs also include information about when tracked actions within the service were last accessed.

" + } + }, "AccessDetail": { "base": "

An object that contains details about when a principal in the reported AWS Organizations entity last attempted to access an AWS service. A principal can be an IAM user, an IAM role, or the AWS account root user within the reported Organizations entity.

This data type is a response element in the GetOrganizationsAccessReport operation.

", "refs": { @@ -1810,7 +1817,7 @@ "SimulateCustomPolicyRequest$PolicyInputList": "

A list of policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. Do not include any resource-based policies in this parameter. Any resource-based policy must be submitted with the ResourcePolicy parameter. The policies cannot be \"scope-down\" policies, such as you could include in a call to GetFederationToken or one of the AssumeRole API operations. In other words, do not use policies designed to restrict what a user can do while using the temporary credentials.

The regex pattern used to validate this parameter is a string of characters consisting of the following:

", "SimulateCustomPolicyRequest$PermissionsBoundaryPolicyInputList": "

The IAM permissions boundary policy to simulate. The permissions boundary sets the maximum permissions that an IAM entity can have. You can input only one permissions boundary when you pass a policy to this operation. For more information about permissions boundaries, see Permissions Boundaries for IAM Entities in the IAM User Guide. The policy input is specified as a string that contains the complete, valid JSON text of a permissions boundary policy.

The regex pattern used to validate this parameter is a string of characters consisting of the following:

", "SimulatePrincipalPolicyRequest$PolicyInputList": "

An optional list of additional policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy.

The regex pattern used to validate this parameter is a string of characters consisting of the following:

", - "SimulatePrincipalPolicyRequest$PermissionsBoundaryPolicyInputList": "

The IAM permissions boundary policy to simulate. The permissions boundary sets the maximum permissions that the entity can have. You can input only one permissions boundary when you pass a policy to this operation. An IAM entity can only have one permissions boundary in effect at a time. For example, if a permissions boundary is attached to an entity and you pass in a different permissions boundary policy using this parameter, then the new permission boundary policy is used for the simulation. For more information about permissions boundaries, see Permissions Boundaries for IAM Entities in the IAM User Guide. The policy input is specified as a string containing the complete, valid JSON text of a permissions boundary policy.

The regex pattern used to validate this parameter is a string of characters consisting of the following:

" + "SimulatePrincipalPolicyRequest$PermissionsBoundaryPolicyInputList": "

The IAM permissions boundary policy to simulate. The permissions boundary sets the maximum permissions that the entity can have. You can input only one permissions boundary when you pass a policy to this operation. An IAM entity can only have one permissions boundary in effect at a time. For example, if a permissions boundary is attached to an entity and you pass in a different permissions boundary policy using this parameter, then the new permissions boundary policy is used for the simulation. For more information about permissions boundaries, see Permissions Boundaries for IAM Entities in the IAM User Guide. The policy input is specified as a string containing the complete, valid JSON text of a permissions boundary policy.

The regex pattern used to validate this parameter is a string of characters consisting of the following:

" } }, "Statement": { @@ -1842,6 +1849,18 @@ "refs": { } }, + "TrackedActionLastAccessed": { + "base": "

Contains details about the most recent attempt to access an action within the service.

This data type is used as a response element in the GetServiceLastAccessedDetails operation.

", + "refs": { + "TrackedActionsLastAccessed$member": null + } + }, + "TrackedActionsLastAccessed": { + "base": null, + "refs": { + "ServiceLastAccessed$TrackedActionsLastAccessed": "

An object that contains details about the most recent attempt to access a tracked action within the service.

This field is null if there no tracked actions or if the principal did not use the tracked actions within the reporting period. This field is also null if the report was generated at the service level and not the action level. For more information, see the Granularity field in GenerateServiceLastAccessedDetails.

" + } + }, "UnmodifiableEntityException": { "base": "

The request was rejected because only the service that depends on the service-linked role can modify or delete the role on your behalf. The error message includes the name of the service that depends on this service-linked role. You must request the change through that service.

", "refs": { @@ -2084,6 +2103,7 @@ "ServiceLastAccessed$LastAuthenticatedEntity": "

The ARN of the authenticated entity (user or role) that last attempted to access the service. AWS does not report unauthenticated requests.

This field is null if no IAM entities attempted to access the service within the reporting period.

", "SetDefaultPolicyVersionRequest$PolicyArn": "

The Amazon Resource Name (ARN) of the IAM policy whose default version you want to set.

For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

", "SimulatePrincipalPolicyRequest$PolicySourceArn": "

The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to include in the simulation. If you specify a user, group, or role, the simulation includes all policies that are associated with that entity. If you specify a user, the simulation also includes all policies that are attached to any groups the user belongs to.

For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

", + "TrackedActionLastAccessed$LastAccessedEntity": null, "UpdateOpenIDConnectProviderThumbprintRequest$OpenIDConnectProviderArn": "

The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.

For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

", "UpdateSAMLProviderRequest$SAMLProviderArn": "

The Amazon Resource Name (ARN) of the SAML provider to update.

For more information about ARNs, see Amazon Resource Names (ARNs) and AWS Service Namespaces in the AWS General Reference.

", "UpdateSAMLProviderResponse$SAMLProviderArn": "

The Amazon Resource Name (ARN) of the SAML provider that was updated.

", @@ -2142,7 +2162,7 @@ "GetAccountAuthorizationDetailsResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", "GetGroupResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", "GetOrganizationsAccessReportResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", - "GetServiceLastAccessedDetailsResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", + "GetServiceLastAccessedDetailsResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", "GetServiceLastAccessedDetailsWithEntitiesResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", "ListAccessKeysResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", "ListAccountAliasesResponse$IsTruncated": "

A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the Marker request parameter to retrieve more items. Note that IAM might return fewer than the MaxItems number of results even when there are more results available. We recommend that you check IsTruncated after every call to ensure that you receive all your results.

", @@ -2300,6 +2320,7 @@ "ServiceSpecificCredential$CreateDate": "

The date and time, in ISO 8601 date-time format, when the service-specific credential were created.

", "ServiceSpecificCredentialMetadata$CreateDate": "

The date and time, in ISO 8601 date-time format, when the service-specific credential were created.

", "SigningCertificate$UploadDate": "

The date when the signing certificate was uploaded.

", + "TrackedActionLastAccessed$LastAccessedTime": "

The date and time, in ISO 8601 date-time format, when an authenticated entity most recently attempted to access the tracked service. AWS does not report unauthenticated requests.

This field is null if no IAM entities attempted to access the service within the reporting period.

", "User$CreateDate": "

The date and time, in ISO 8601 date-time format, when the user was created.

", "User$PasswordLastUsed": "

The date and time, in ISO 8601 date-time format, when the user's password was last used to sign in to an AWS website. For a list of AWS websites that capture a user's last sign-in time, see the Credential Reports topic in the IAM User Guide. If a password is used more than once in a five-minute span, only the first use is returned in this field. If the field is null (no value), then it indicates that they never signed in with a password. This can be because:

A null value does not mean that the user never had a password. Also, if the user does not currently have a password but had one in the past, then this field contains the date and time the most recent password was used.

This value is returned only in the GetUser and ListUsers operations.

", "UserDetail$CreateDate": "

The date and time, in ISO 8601 date-time format, when the user was created.

", @@ -3136,7 +3157,10 @@ "AccessKeyLastUsed$Region": "

The AWS Region where this access key was most recently used. The value for this field is \"N/A\" in the following situations:

For more information about AWS Regions, see Regions and Endpoints in the Amazon Web Services General Reference.

", "ErrorDetails$Message": "

Detailed information about the reason that the operation failed.

", "ErrorDetails$Code": "

The error code associated with the operation failure.

", - "RoleLastUsed$Region": "

The name of the AWS Region in which the role was last used.

" + "RoleLastUsed$Region": "

The name of the AWS Region in which the role was last used.

", + "ServiceLastAccessed$LastAuthenticatedRegion": "

The Region from which the authenticated entity (user or role) last attempted to access the service. AWS does not report unauthenticated requests.

This field is null if no IAM entities attempted to access the service within the reporting period.

", + "TrackedActionLastAccessed$ActionName": "

The name of the tracked action to which access was attempted. Tracked actions are actions that report activity to IAM.

", + "TrackedActionLastAccessed$LastAccessedRegion": "

The Region from which the authenticated entity (user or role) last attempted to access the tracked action. AWS does not report unauthenticated requests.

This field is null if no IAM entities attempted to access the service within the reporting period.

" } }, "summaryKeyType": { diff --git a/models/apis/mediaconvert/2017-08-29/api-2.json b/models/apis/mediaconvert/2017-08-29/api-2.json index 8a9798e6aad..06a8ce574b9 100644 --- a/models/apis/mediaconvert/2017-08-29/api-2.json +++ b/models/apis/mediaconvert/2017-08-29/api-2.json @@ -1167,6 +1167,8 @@ "AC3", "EAC3", "EAC3_ATMOS", + "VORBIS", + "OPUS", "PASSTHROUGH" ] }, @@ -1205,6 +1207,14 @@ "shape": "Mp3Settings", "locationName": "mp3Settings" }, + "OpusSettings": { + "shape": "OpusSettings", + "locationName": "opusSettings" + }, + "VorbisSettings": { + "shape": "VorbisSettings", + "locationName": "vorbisSettings" + }, "WavSettings": { "shape": "WavSettings", "locationName": "wavSettings" @@ -1341,7 +1351,7 @@ "locationName": "defaultSelection" }, "ExternalAudioFileInput": { - "shape": "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE", + "shape": "__stringPatternS3WWEEBBMMMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE", "locationName": "externalAudioFileInput" }, "LanguageCode": { @@ -2241,6 +2251,7 @@ "MP4", "MPD", "MXF", + "WEBM", "RAW" ] }, @@ -6723,6 +6734,14 @@ } } }, + "NoiseFilterPostTemporalSharpening": { + "type": "string", + "enum": [ + "DISABLED", + "ENABLED", + "AUTO" + ] + }, "NoiseReducer": { "type": "structure", "members": { @@ -6790,6 +6809,10 @@ "shape": "__integerMin0Max4", "locationName": "aggressiveMode" }, + "PostTemporalSharpening": { + "shape": "NoiseFilterPostTemporalSharpening", + "locationName": "postTemporalSharpening" + }, "Speed": { "shape": "__integerMinNegative1Max3", "locationName": "speed" @@ -6813,6 +6836,23 @@ "httpStatusCode": 404 } }, + "OpusSettings": { + "type": "structure", + "members": { + "Bitrate": { + "shape": "__integerMin32000Max192000", + "locationName": "bitrate" + }, + "Channels": { + "shape": "__integerMin1Max2", + "locationName": "channels" + }, + "SampleRate": { + "shape": "__integerMin16000Max48000", + "locationName": "sampleRate" + } + } + }, "Order": { "type": "string", "enum": [ @@ -7868,7 +7908,9 @@ "H_264", "H_265", "MPEG2", - "PRORES" + "PRORES", + "VP8", + "VP9" ] }, "VideoCodecSettings": { @@ -7901,6 +7943,14 @@ "ProresSettings": { "shape": "ProresSettings", "locationName": "proresSettings" + }, + "Vp8Settings": { + "shape": "Vp8Settings", + "locationName": "vp8Settings" + }, + "Vp9Settings": { + "shape": "Vp9Settings", + "locationName": "vp9Settings" } } }, @@ -8051,6 +8101,205 @@ "PIC_TIMING_SEI" ] }, + "VorbisSettings": { + "type": "structure", + "members": { + "Channels": { + "shape": "__integerMin1Max2", + "locationName": "channels" + }, + "SampleRate": { + "shape": "__integerMin22050Max48000", + "locationName": "sampleRate" + }, + "VbrQuality": { + "shape": "__integerMinNegative1Max10", + "locationName": "vbrQuality" + } + } + }, + "Vp8FramerateControl": { + "type": "string", + "enum": [ + "INITIALIZE_FROM_SOURCE", + "SPECIFIED" + ] + }, + "Vp8FramerateConversionAlgorithm": { + "type": "string", + "enum": [ + "DUPLICATE_DROP", + "INTERPOLATE" + ] + }, + "Vp8ParControl": { + "type": "string", + "enum": [ + "INITIALIZE_FROM_SOURCE", + "SPECIFIED" + ] + }, + "Vp8QualityTuningLevel": { + "type": "string", + "enum": [ + "MULTI_PASS", + "MULTI_PASS_HQ" + ] + }, + "Vp8RateControlMode": { + "type": "string", + "enum": [ + "VBR" + ] + }, + "Vp8Settings": { + "type": "structure", + "members": { + "Bitrate": { + "shape": "__integerMin1000Max1152000000", + "locationName": "bitrate" + }, + "FramerateControl": { + "shape": "Vp8FramerateControl", + "locationName": "framerateControl" + }, + "FramerateConversionAlgorithm": { + "shape": "Vp8FramerateConversionAlgorithm", + "locationName": "framerateConversionAlgorithm" + }, + "FramerateDenominator": { + "shape": "__integerMin1Max2147483647", + "locationName": "framerateDenominator" + }, + "FramerateNumerator": { + "shape": "__integerMin1Max2147483647", + "locationName": "framerateNumerator" + }, + "GopSize": { + "shape": "__doubleMin0", + "locationName": "gopSize" + }, + "HrdBufferSize": { + "shape": "__integerMin0Max47185920", + "locationName": "hrdBufferSize" + }, + "MaxBitrate": { + "shape": "__integerMin1000Max1152000000", + "locationName": "maxBitrate" + }, + "ParControl": { + "shape": "Vp8ParControl", + "locationName": "parControl" + }, + "ParDenominator": { + "shape": "__integerMin1Max2147483647", + "locationName": "parDenominator" + }, + "ParNumerator": { + "shape": "__integerMin1Max2147483647", + "locationName": "parNumerator" + }, + "QualityTuningLevel": { + "shape": "Vp8QualityTuningLevel", + "locationName": "qualityTuningLevel" + }, + "RateControlMode": { + "shape": "Vp8RateControlMode", + "locationName": "rateControlMode" + } + } + }, + "Vp9FramerateControl": { + "type": "string", + "enum": [ + "INITIALIZE_FROM_SOURCE", + "SPECIFIED" + ] + }, + "Vp9FramerateConversionAlgorithm": { + "type": "string", + "enum": [ + "DUPLICATE_DROP", + "INTERPOLATE" + ] + }, + "Vp9ParControl": { + "type": "string", + "enum": [ + "INITIALIZE_FROM_SOURCE", + "SPECIFIED" + ] + }, + "Vp9QualityTuningLevel": { + "type": "string", + "enum": [ + "MULTI_PASS", + "MULTI_PASS_HQ" + ] + }, + "Vp9RateControlMode": { + "type": "string", + "enum": [ + "VBR" + ] + }, + "Vp9Settings": { + "type": "structure", + "members": { + "Bitrate": { + "shape": "__integerMin1000Max480000000", + "locationName": "bitrate" + }, + "FramerateControl": { + "shape": "Vp9FramerateControl", + "locationName": "framerateControl" + }, + "FramerateConversionAlgorithm": { + "shape": "Vp9FramerateConversionAlgorithm", + "locationName": "framerateConversionAlgorithm" + }, + "FramerateDenominator": { + "shape": "__integerMin1Max2147483647", + "locationName": "framerateDenominator" + }, + "FramerateNumerator": { + "shape": "__integerMin1Max2147483647", + "locationName": "framerateNumerator" + }, + "GopSize": { + "shape": "__doubleMin0", + "locationName": "gopSize" + }, + "HrdBufferSize": { + "shape": "__integerMin0Max47185920", + "locationName": "hrdBufferSize" + }, + "MaxBitrate": { + "shape": "__integerMin1000Max480000000", + "locationName": "maxBitrate" + }, + "ParControl": { + "shape": "Vp9ParControl", + "locationName": "parControl" + }, + "ParDenominator": { + "shape": "__integerMin1Max2147483647", + "locationName": "parDenominator" + }, + "ParNumerator": { + "shape": "__integerMin1Max2147483647", + "locationName": "parNumerator" + }, + "QualityTuningLevel": { + "shape": "Vp9QualityTuningLevel", + "locationName": "qualityTuningLevel" + }, + "RateControlMode": { + "shape": "Vp9RateControlMode", + "locationName": "rateControlMode" + } + } + }, "WavFormat": { "type": "string", "enum": [ @@ -8269,6 +8518,11 @@ "min": 1000, "max": 300000000 }, + "__integerMin1000Max480000000": { + "type": "integer", + "min": 1000, + "max": 480000000 + }, "__integerMin10Max48": { "type": "integer", "min": 10, @@ -8279,6 +8533,11 @@ "min": 16000, "max": 320000 }, + "__integerMin16000Max48000": { + "type": "integer", + "min": 16000, + "max": 48000 + }, "__integerMin16Max24": { "type": "integer", "min": 16, @@ -8389,6 +8648,11 @@ "min": 2, "max": 2147483647 }, + "__integerMin32000Max192000": { + "type": "integer", + "min": 32000, + "max": 192000 + }, "__integerMin32000Max384000": { "type": "integer", "min": 32000, @@ -8459,6 +8723,11 @@ "min": -180, "max": 180 }, + "__integerMinNegative1Max10": { + "type": "integer", + "min": -1, + "max": 10 + }, "__integerMinNegative1Max3": { "type": "integer", "min": -1, @@ -8885,14 +9154,14 @@ "type": "string", "pattern": "^s3:\\/\\/.*\\/(ASSETMAP.xml)?$" }, - "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE": { - "type": "string", - "pattern": "^((s3://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[aA][aA][cC]|[aA][iI][fF][fF]|[mM][pP]2|[aA][cC]3|[eE][cC]3|[dD][tT][sS][eE]))))|(https?://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[aA][aA][cC]|[aA][iI][fF][fF]|[mM][pP]2|[aA][cC]3|[eE][cC]3|[dD][tT][sS][eE])))(\\?([^&=]+=[^&]+&)*[^&=]+=[^&]+)?))$" - }, "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLLHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLL": { "type": "string", "pattern": "^((s3://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[wW][eE][bB][mM]|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[xX][mM][lL]))))|(https?://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[wW][eE][bB][mM]|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[xX][mM][lL])))(\\?([^&=]+=[^&]+&)*[^&=]+=[^&]+)?))$" }, + "__stringPatternS3WWEEBBMMMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE": { + "type": "string", + "pattern": "^((s3://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([wW][eE][bB][mM]|[mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[aA][aA][cC]|[aA][iI][fF][fF]|[mM][pP]2|[aA][cC]3|[eE][cC]3|[dD][tT][sS][eE]))))|(https?://([^\\/]+\\/+)+([^\\/\\.]+|(([^\\/]*)\\.([mM]2[vV]|[mM][pP][eE][gG]|[mM][pP]3|[aA][vV][iI]|[mM][pP]4|[fF][lL][vV]|[mM][pP][tT]|[mM][pP][gG]|[mM]4[vV]|[tT][rR][pP]|[fF]4[vV]|[mM]2[tT][sS]|[tT][sS]|264|[hH]264|[mM][kK][vV]|[mM][oO][vV]|[mM][tT][sS]|[mM]2[tT]|[wW][mM][vV]|[aA][sS][fF]|[vV][oO][bB]|3[gG][pP]|3[gG][pP][pP]|[mM][xX][fF]|[dD][iI][vV][xX]|[xX][vV][iI][dD]|[rR][aA][wW]|[dD][vV]|[gG][xX][fF]|[mM]1[vV]|3[gG]2|[vV][mM][fF]|[mM]3[uU]8|[lL][cC][hH]|[gG][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF]_[mM][pP][eE][gG]2|[mM][xX][fF][hH][dD]|[wW][aA][vV]|[yY]4[mM]|[aA][aA][cC]|[aA][iI][fF][fF]|[mM][pP]2|[aA][cC]3|[eE][cC]3|[dD][tT][sS][eE])))(\\?([^&=]+=[^&]+&)*[^&=]+=[^&]+)?))$" + }, "__stringPatternSNManifestConfirmConditionNotificationNS": { "type": "string", "pattern": "^\\s*<(.|\\n)*ManifestConfirmConditionNotification(.|\\n)*>\\s*$" diff --git a/models/apis/mediaconvert/2017-08-29/docs-2.json b/models/apis/mediaconvert/2017-08-29/docs-2.json index 9482b177688..3c0b0144a82 100644 --- a/models/apis/mediaconvert/2017-08-29/docs-2.json +++ b/models/apis/mediaconvert/2017-08-29/docs-2.json @@ -194,9 +194,9 @@ } }, "AudioCodecSettings": { - "base": "Audio codec settings (CodecSettings) under (AudioDescriptions) contains the group of settings related to audio encoding. The settings in this group vary depending on the value that you choose for Audio codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings", + "base": "Audio codec settings (CodecSettings) under (AudioDescriptions) contains the group of settings related to audio encoding. The settings in this group vary depending on the value that you choose for Audio codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings * VORBIS, VorbisSettings * OPUS, OpusSettings", "refs": { - "AudioDescription$CodecSettings": "Audio codec settings (CodecSettings) under (AudioDescriptions) contains the group of settings related to audio encoding. The settings in this group vary depending on the value that you choose for Audio codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings" + "AudioDescription$CodecSettings": "Audio codec settings (CodecSettings) under (AudioDescriptions) contains the group of settings related to audio encoding. The settings in this group vary depending on the value that you choose for Audio codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings * VORBIS, VorbisSettings * OPUS, OpusSettings" } }, "AudioDefaultSelection": { @@ -416,9 +416,9 @@ } }, "CaptionSourceFramerate": { - "base": "Ignore this setting unless your input captions format is SCC. To have the service compensate for differing framerates between your input captions and input video, specify the framerate of the captions file. Specify this value as a fraction, using the settings Framerate numerator (framerateNumerator) and Framerate denominator (framerateDenominator). For example, you might specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, or 30000 / 1001 for 29.97 fps.", + "base": "Ignore this setting unless your input captions format is SCC. To have the service compensate for differing frame rates between your input captions and input video, specify the frame rate of the captions file. Specify this value as a fraction, using the settings Framerate numerator (framerateNumerator) and Framerate denominator (framerateDenominator). For example, you might specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, or 30000 / 1001 for 29.97 fps.", "refs": { - "FileSourceSettings$Framerate": "Ignore this setting unless your input captions format is SCC. To have the service compensate for differing framerates between your input captions and input video, specify the framerate of the captions file. Specify this value as a fraction, using the settings Framerate numerator (framerateNumerator) and Framerate denominator (framerateDenominator). For example, you might specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, or 30000 / 1001 for 29.97 fps." + "FileSourceSettings$Framerate": "Ignore this setting unless your input captions format is SCC. To have the service compensate for differing frame rates between your input captions and input video, specify the frame rate of the captions file. Specify this value as a fraction, using the settings Framerate numerator (framerateNumerator) and Framerate denominator (framerateDenominator). For example, you might specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, or 30000 / 1001 for 29.97 fps." } }, "CaptionSourceSettings": { @@ -1229,9 +1229,9 @@ } }, "H264FramerateConversionAlgorithm": { - "base": "When set to INTERPOLATE, produces smoother motion during frame rate conversion.", + "base": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion.", "refs": { - "H264Settings$FramerateConversionAlgorithm": "When set to INTERPOLATE, produces smoother motion during frame rate conversion." + "H264Settings$FramerateConversionAlgorithm": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion." } }, "H264GopBReference": { @@ -1253,15 +1253,15 @@ } }, "H264ParControl": { - "base": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio.", + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", "refs": { - "H264Settings$ParControl": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio." + "H264Settings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings." } }, "H264QualityTuningLevel": { - "base": "Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to use fast single-pass, high-quality singlepass, or high-quality multipass video encoding.", + "base": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding.", "refs": { - "H264Settings$QualityTuningLevel": "Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to use fast single-pass, high-quality singlepass, or high-quality multipass video encoding." + "H264Settings$QualityTuningLevel": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding." } }, "H264QvbrSettings": { @@ -1367,9 +1367,9 @@ } }, "H265FramerateControl": { - "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", + "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", "refs": { - "H265Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." + "H265Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." } }, "H265FramerateConversionAlgorithm": { @@ -1397,15 +1397,15 @@ } }, "H265ParControl": { - "base": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio.", + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", "refs": { - "H265Settings$ParControl": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio." + "H265Settings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings." } }, "H265QualityTuningLevel": { - "base": "Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to use fast single-pass, high-quality singlepass, or high-quality multipass video encoding.", + "base": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding.", "refs": { - "H265Settings$QualityTuningLevel": "Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to use fast single-pass, high-quality singlepass, or high-quality multipass video encoding." + "H265Settings$QualityTuningLevel": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding." } }, "H265QvbrSettings": { @@ -1682,10 +1682,10 @@ } }, "InputDeblockFilter": { - "base": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manaully controllable for MPEG2 and uncompressed video inputs.", + "base": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manually controllable for MPEG2 and uncompressed video inputs.", "refs": { - "Input$DeblockFilter": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manaully controllable for MPEG2 and uncompressed video inputs.", - "InputTemplate$DeblockFilter": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manaully controllable for MPEG2 and uncompressed video inputs." + "Input$DeblockFilter": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manually controllable for MPEG2 and uncompressed video inputs.", + "InputTemplate$DeblockFilter": "Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. Default is disabled. Only manually controllable for MPEG2 and uncompressed video inputs." } }, "InputDecryptionSettings": { @@ -2129,15 +2129,15 @@ } }, "Mpeg2FramerateControl": { - "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", + "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", "refs": { - "Mpeg2Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." + "Mpeg2Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." } }, "Mpeg2FramerateConversionAlgorithm": { - "base": "When set to INTERPOLATE, produces smoother motion during frame rate conversion.", + "base": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion.", "refs": { - "Mpeg2Settings$FramerateConversionAlgorithm": "When set to INTERPOLATE, produces smoother motion during frame rate conversion." + "Mpeg2Settings$FramerateConversionAlgorithm": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion." } }, "Mpeg2GopSizeUnits": { @@ -2159,15 +2159,15 @@ } }, "Mpeg2ParControl": { - "base": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio.", + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", "refs": { - "Mpeg2Settings$ParControl": "Using the API, enable ParFollowSource if you want the service to use the pixel aspect ratio from the input. Using the console, do this by choosing Follow source for Pixel aspect ratio." + "Mpeg2Settings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings." } }, "Mpeg2QualityTuningLevel": { - "base": "Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to use single-pass or multipass video encoding.", + "base": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding.", "refs": { - "Mpeg2Settings$QualityTuningLevel": "Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to use single-pass or multipass video encoding." + "Mpeg2Settings$QualityTuningLevel": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, single-pass encoding." } }, "Mpeg2RateControlMode": { @@ -2267,6 +2267,12 @@ "JobTemplateSettings$NielsenConfiguration": "Settings for your Nielsen configuration. If you don't do Nielsen measurement and analytics, ignore these settings. When you enable Nielsen configuration (nielsenConfiguration), MediaConvert enables PCM to ID3 tagging for all outputs in the job. To enable Nielsen configuration programmatically, include an instance of nielsenConfiguration in your JSON job specification. Even if you don't include any children of nielsenConfiguration, you still enable the setting." } }, + "NoiseFilterPostTemporalSharpening": { + "base": "Optional. When you set Noise reducer (noiseReducer) to Temporal (TEMPORAL), you can optionally use this setting to apply additional sharpening. The default behavior, Auto (AUTO) allows the transcoder to determine whether to apply filtering, depending on input type and quality.", + "refs": { + "NoiseReducerTemporalFilterSettings$PostTemporalSharpening": "Optional. When you set Noise reducer (noiseReducer) to Temporal (TEMPORAL), you can optionally use this setting to apply additional sharpening. The default behavior, Auto (AUTO) allows the transcoder to determine whether to apply filtering, depending on input type and quality." + } + }, "NoiseReducer": { "base": "Enable the Noise reducer (NoiseReducer) feature to remove noise from your video output if necessary. Enable or disable this feature for each output individually. This setting is disabled by default. When you enable Noise reducer (NoiseReducer), you must also select a value for Noise reducer filter (NoiseReducerFilter).", "refs": { @@ -2302,6 +2308,12 @@ "refs": { } }, + "OpusSettings": { + "base": "Required when you set Codec, under AudioDescriptions>CodecSettings, to the value OPUS.", + "refs": { + "AudioCodecSettings$OpusSettings": "Required when you set Codec, under AudioDescriptions>CodecSettings, to the value OPUS." + } + }, "Order": { "base": "Optional. When you request lists of resources, you can specify whether they are sorted in ASCENDING or DESCENDING order. Default varies by resource.", "refs": { @@ -2402,15 +2414,15 @@ } }, "ProresFramerateControl": { - "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", + "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", "refs": { - "ProresSettings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job sepecification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." + "ProresSettings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." } }, "ProresFramerateConversionAlgorithm": { - "base": "When set to INTERPOLATE, produces smoother motion during frame rate conversion.", + "base": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion.", "refs": { - "ProresSettings$FramerateConversionAlgorithm": "When set to INTERPOLATE, produces smoother motion during frame rate conversion." + "ProresSettings$FramerateConversionAlgorithm": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use duplicate drop conversion." } }, "ProresInterlaceMode": { @@ -2420,9 +2432,9 @@ } }, "ProresParControl": { - "base": "Use (ProresParControl) to specify how the service determines the pixel aspect ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect ratio from the input. To specify a different pixel aspect ratio: Using the console, choose it from the dropdown menu. Using the API, set ProresParControl to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator).", + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", "refs": { - "ProresSettings$ParControl": "Use (ProresParControl) to specify how the service determines the pixel aspect ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect ratio from the input. To specify a different pixel aspect ratio: Using the console, choose it from the dropdown menu. Using the API, set ProresParControl to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator)." + "ProresSettings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To use a different PAR, choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other than Follow source. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings." } }, "ProresSettings": { @@ -2764,9 +2776,9 @@ } }, "VideoCodecSettings": { - "base": "Video codec settings, (CodecSettings) under (VideoDescription), contains the group of settings related to video encoding. The settings in this group vary depending on the value that you choose for Video codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings", + "base": "Video codec settings, (CodecSettings) under (VideoDescription), contains the group of settings related to video encoding. The settings in this group vary depending on the value that you choose for Video codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * VP8, Vp8Settings * VP9, Vp9Settings", "refs": { - "VideoDescription$CodecSettings": "Video codec settings, (CodecSettings) under (VideoDescription), contains the group of settings related to video encoding. The settings in this group vary depending on the value that you choose for Video codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings" + "VideoDescription$CodecSettings": "Video codec settings, (CodecSettings) under (VideoDescription), contains the group of settings related to video encoding. The settings in this group vary depending on the value that you choose for Video codec (Codec). For each codec enum that you choose, define the corresponding settings object. The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * VP8, Vp8Settings * VP9, Vp9Settings" } }, "VideoDescription": { @@ -2801,6 +2813,84 @@ "VideoDescription$TimecodeInsertion": "Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode insertion when the input frame rate is identical to the output frame rate. To include timecodes in this output, set Timecode insertion (VideoTimecodeInsertion) to PIC_TIMING_SEI. To leave them out, set it to DISABLED. Default is DISABLED. When the service inserts timecodes in an output, by default, it uses any embedded timecodes from the input. If none are present, the service will set the timecode for the first output frame to zero. To change this default behavior, adjust the settings under Timecode configuration (TimecodeConfig). In the console, these settings are located under Job > Job settings > Timecode configuration. Note - Timecode source under input settings (InputTimecodeSource) does not affect the timecodes that are inserted in the output. Source under Job settings > Timecode configuration (TimecodeSource) does." } }, + "VorbisSettings": { + "base": "Required when you set Codec, under AudioDescriptions>CodecSettings, to the value Vorbis.", + "refs": { + "AudioCodecSettings$VorbisSettings": "Required when you set Codec, under AudioDescriptions>CodecSettings, to the value Vorbis." + } + }, + "Vp8FramerateControl": { + "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", + "refs": { + "Vp8Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." + } + }, + "Vp8FramerateConversionAlgorithm": { + "base": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.", + "refs": { + "Vp8Settings$FramerateConversionAlgorithm": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose Interpolate (INTERPOLATE) instead, the conversion produces smoother motion." + } + }, + "Vp8ParControl": { + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To specify a different PAR in the console, choose any value other than Follow source. To specify a different PAR by editing the JSON job specification, choose SPECIFIED. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", + "refs": { + "Vp8Settings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To specify a different PAR in the console, choose any value other than Follow source. To specify a different PAR by editing the JSON job specification, choose SPECIFIED. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings." + } + }, + "Vp8QualityTuningLevel": { + "base": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, multi-pass encoding.", + "refs": { + "Vp8Settings$QualityTuningLevel": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, multi-pass encoding." + } + }, + "Vp8RateControlMode": { + "base": "With the VP8 codec, you can use only the variable bitrate (VBR) rate control mode.", + "refs": { + "Vp8Settings$RateControlMode": "With the VP8 codec, you can use only the variable bitrate (VBR) rate control mode." + } + }, + "Vp8Settings": { + "base": "Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the value VP8.", + "refs": { + "VideoCodecSettings$Vp8Settings": "Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the value VP8." + } + }, + "Vp9FramerateControl": { + "base": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator.", + "refs": { + "Vp9Settings$FramerateControl": "If you are using the console, use the Framerate setting to specify the frame rate for this output. If you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame rate as a fraction. If you are creating your transcoding job specification as a JSON file without the console, use FramerateControl to specify which value the service uses for the frame rate for this output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input. Choose SPECIFIED if you want the service to use the frame rate you specify in the settings FramerateNumerator and FramerateDenominator." + } + }, + "Vp9FramerateConversionAlgorithm": { + "base": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.", + "refs": { + "Vp9Settings$FramerateConversionAlgorithm": "Optional. Specify how the transcoder performs framerate conversion. The default behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose Interpolate (INTERPOLATE) instead, the conversion produces smoother motion." + } + }, + "Vp9ParControl": { + "base": "Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output. To specify a different PAR in the console, choose any value other than Follow source. To specify a different PAR by editing the JSON job specification, choose SPECIFIED. When you choose SPECIFIED for this setting, you must also specify values for the parNumerator and parDenominator settings.", + "refs": { + "Vp9Settings$ParControl": "Optional. Specify how the service determines the pixel aspect ratio for this output. The default behavior is to use the same pixel aspect ratio as your input video." + } + }, + "Vp9QualityTuningLevel": { + "base": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, multi-pass encoding.", + "refs": { + "Vp9Settings$QualityTuningLevel": "Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want to trade off encoding speed for output video quality. The default behavior is faster, lower quality, multi-pass encoding." + } + }, + "Vp9RateControlMode": { + "base": "With the VP9 codec, you can use only the variable bitrate (VBR) rate control mode.", + "refs": { + "Vp9Settings$RateControlMode": "With the VP9 codec, you can use only the variable bitrate (VBR) rate control mode." + } + }, + "Vp9Settings": { + "base": "Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the value VP9.", + "refs": { + "VideoCodecSettings$Vp9Settings": "Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the value VP9." + } + }, "WavFormat": { "base": "The service defaults to using RIFF for WAV outputs. If your output audio is likely to exceed 4 GB in file size, or if you otherwise need the extended support of the RF64 format, set your output WAV file format to RF64.", "refs": { @@ -2822,7 +2912,9 @@ "M2tsSettings$FragmentTime": "The length, in seconds, of each fragment. Only used with EBP markers.", "M2tsSettings$NullPacketBitrate": "Value in bits per second of extra null packets to insert into the transport stream. This can be used if a downstream encryption system requires periodic null packets.", "M2tsSettings$SegmentationTime": "Specify the length, in seconds, of each segment. Required unless markers is set to _none_.", - "Mpeg2Settings$GopSize": "GOP Length (keyframe interval) in frames or seconds. Must be greater than zero." + "Mpeg2Settings$GopSize": "GOP Length (keyframe interval) in frames or seconds. Must be greater than zero.", + "Vp8Settings$GopSize": "GOP Length (keyframe interval) in frames. Must be greater than zero.", + "Vp9Settings$GopSize": "GOP Length (keyframe interval) in frames. Must be greater than zero." } }, "__doubleMin0Max1": { @@ -3041,7 +3133,9 @@ "__integerMin0Max47185920": { "base": null, "refs": { - "Mpeg2Settings$HrdBufferSize": "Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000." + "Mpeg2Settings$HrdBufferSize": "Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000.", + "Vp8Settings$HrdBufferSize": "Optional. Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000.", + "Vp9Settings$HrdBufferSize": "Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000." } }, "__integerMin0Max500": { @@ -3116,7 +3210,9 @@ "Av1Settings$MaxBitrate": "Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.", "H264QvbrSettings$MaxAverageBitrate": "Use this setting only when Rate control mode is QVBR and Quality tuning level is Multi-pass HQ. For Max average bitrate values suited to the complexity of your input video, the service limits the average bitrate of the video part of this output to the value that you choose. That is, the total size of the video element is less than or equal to the value you set multiplied by the number of seconds of encoded output.", "H264Settings$Bitrate": "Specify the average bitrate in bits per second. Required for VBR and CBR. For MS Smooth outputs, bitrates must be unique when rounded down to the nearest multiple of 1000.", - "H264Settings$MaxBitrate": "Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR." + "H264Settings$MaxBitrate": "Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when Rate control mode is QVBR.", + "Vp8Settings$Bitrate": "Target bitrate in bits/second. For example, enter five megabits per second as 5000000.", + "Vp8Settings$MaxBitrate": "Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional. Specify the maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. The default behavior uses twice the target bitrate as the maximum bitrate." } }, "__integerMin1000Max1466400000": { @@ -3145,6 +3241,13 @@ "Mpeg2Settings$MaxBitrate": "Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000." } }, + "__integerMin1000Max480000000": { + "base": null, + "refs": { + "Vp9Settings$Bitrate": "Target bitrate in bits/second. For example, enter five megabits per second as 5000000.", + "Vp9Settings$MaxBitrate": "Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional. Specify the maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. The default behavior uses twice the target bitrate as the maximum bitrate." + } + }, "__integerMin10Max48": { "base": null, "refs": { @@ -3157,6 +3260,12 @@ "Mp3Settings$Bitrate": "Specify the average bitrate in bits per second." } }, + "__integerMin16000Max48000": { + "base": null, + "refs": { + "OpusSettings$SampleRate": "Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The default value is 48000." + } + }, "__integerMin16Max24": { "base": null, "refs": { @@ -3197,7 +3306,7 @@ "__integerMin1Max1001": { "base": null, "refs": { - "CaptionSourceFramerate$FramerateDenominator": "Specify the denominator of the fraction that represents the framerate for the setting Caption source framerate (CaptionSourceFramerate). Use this setting along with the setting Framerate numerator (framerateNumerator).", + "CaptionSourceFramerate$FramerateDenominator": "Specify the denominator of the fraction that represents the frame rate for the setting Caption source frame rate (CaptionSourceFramerate). Use this setting along with the setting Framerate numerator (framerateNumerator).", "Mpeg2Settings$FramerateDenominator": "Frame rate denominator." } }, @@ -3211,7 +3320,9 @@ "base": null, "refs": { "Mp2Settings$Channels": "Set Channels to specify the number of channels in this output audio track. Choosing Mono in the console will give you 1 output channel; choosing Stereo will give you 2. In the API, valid values are 1 and 2.", - "Mp3Settings$Channels": "Specify the number of channels in this output audio track. Choosing Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In the API, valid values are 1 and 2." + "Mp3Settings$Channels": "Specify the number of channels in this output audio track. Choosing Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In the API, valid values are 1 and 2.", + "OpusSettings$Channels": "Specify the number of channels in this output audio track. Choosing Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In the API, valid values are 1 and 2.", + "VorbisSettings$Channels": "Optional. Specify the number of channels in this output audio track. Choosing Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In the API, valid values are 1 and 2. The default value is 2." } }, "__integerMin1Max20": { @@ -3262,6 +3373,14 @@ "ProresSettings$ParNumerator": "Pixel Aspect Ratio numerator.", "TrackSourceSettings$TrackNumber": "Use this setting to select a single captions track from a source. Track numbers correspond to the order in the captions source file. For IMF sources, track numbering is based on the order that the captions appear in the CPL. For example, use 1 to select the captions asset that is listed first in the CPL. To include more than one captions track in your job outputs, create multiple input captions selectors. Specify one track per selector.", "VideoSelector$Pid": "Use PID (Pid) to select specific video data from an input file. Specify this value as an integer; the system automatically converts it to the hexidecimal value. For example, 257 selects PID 0x101. A PID, or packet identifier, is an identifier for a set of data in an MPEG-2 transport stream container.", + "Vp8Settings$FramerateDenominator": "When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.", + "Vp8Settings$FramerateNumerator": "When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateNumerator to specify the numerator of this fraction. In this example, use 24000 for the value of FramerateNumerator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.", + "Vp8Settings$ParDenominator": "Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC widescreen, you would specify the ratio 40:33. In this example, the value for parDenominator is 33.", + "Vp8Settings$ParNumerator": "Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC widescreen, you would specify the ratio 40:33. In this example, the value for parNumerator is 40.", + "Vp9Settings$FramerateDenominator": "When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.", + "Vp9Settings$FramerateNumerator": "When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateNumerator to specify the numerator of this fraction. In this example, use 24000 for the value of FramerateNumerator. When you use the console for transcode jobs that use frame rate conversion, provide the value as a decimal number for Framerate. In this example, specify 23.976.", + "Vp9Settings$ParDenominator": "Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC widescreen, you would specify the ratio 40:33. In this example, the value for parDenominator is 33.", + "Vp9Settings$ParNumerator": "Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC widescreen, you would specify the ratio 40:33. In this example, the value for parNumerator is 40.", "__listOf__integerMin1Max2147483647$member": null } }, @@ -3299,7 +3418,7 @@ "__integerMin1Max60000": { "base": null, "refs": { - "CaptionSourceFramerate$FramerateNumerator": "Specify the numerator of the fraction that represents the framerate for the setting Caption source framerate (CaptionSourceFramerate). Use this setting along with the setting Framerate denominator (framerateDenominator)." + "CaptionSourceFramerate$FramerateNumerator": "Specify the numerator of the fraction that represents the frame rate for the setting Caption source frame rate (CaptionSourceFramerate). Use this setting along with the setting Framerate denominator (framerateDenominator)." } }, "__integerMin1Max64": { @@ -3314,7 +3433,8 @@ "__integerMin22050Max48000": { "base": null, "refs": { - "Mp3Settings$SampleRate": "Sample rate in hz." + "Mp3Settings$SampleRate": "Sample rate in hz.", + "VorbisSettings$SampleRate": "Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 44100, and 48000. The default value is 48000." } }, "__integerMin24Max60000": { @@ -3342,6 +3462,12 @@ "Rectangle$Width": "Width of rectangle in pixels. Specify only even numbers." } }, + "__integerMin32000Max192000": { + "base": null, + "refs": { + "OpusSettings$Bitrate": "Optional. Specify the average bitrate in bits per second. Valid values are multiples of 8000, from 32000 through 192000. The default value is 96000, which we recommend for quality and bandwidth." + } + }, "__integerMin32000Max384000": { "base": null, "refs": { @@ -3447,6 +3573,12 @@ "ColorCorrector$Hue": "Hue in degrees." } }, + "__integerMinNegative1Max10": { + "base": null, + "refs": { + "VorbisSettings$VbrQuality": "Optional. Specify the variable audio quality of this Vorbis output from -1 (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, respectively." + } + }, "__integerMinNegative1Max3": { "base": null, "refs": { @@ -3734,8 +3866,8 @@ "__mapOfAudioSelector": { "base": null, "refs": { - "Input$AudioSelectors": "Use Audio selectors (AudioSelectors) to specify a track or set of tracks from the input that you will use in your outputs. You can use mutiple Audio selectors per input.", - "InputTemplate$AudioSelectors": "Use Audio selectors (AudioSelectors) to specify a track or set of tracks from the input that you will use in your outputs. You can use mutiple Audio selectors per input." + "Input$AudioSelectors": "Use Audio selectors (AudioSelectors) to specify a track or set of tracks from the input that you will use in your outputs. You can use multiple Audio selectors per input.", + "InputTemplate$AudioSelectors": "Use Audio selectors (AudioSelectors) to specify a track or set of tracks from the input that you will use in your outputs. You can use multiple Audio selectors per input." } }, "__mapOfAudioSelectorGroup": { @@ -3748,8 +3880,8 @@ "__mapOfCaptionSelector": { "base": null, "refs": { - "Input$CaptionSelectors": "Use Captions selectors (CaptionSelectors) to specify the captions data from the input that you will use in your outputs. You can use mutiple captions selectors per input.", - "InputTemplate$CaptionSelectors": "Use Captions selectors (CaptionSelectors) to specify the captions data from the input that you will use in your outputs. You can use mutiple captions selectors per input." + "Input$CaptionSelectors": "Use Captions selectors (CaptionSelectors) to specify the captions data from the input that you will use in your outputs. You can use multiple captions selectors per input.", + "InputTemplate$CaptionSelectors": "Use Captions selectors (CaptionSelectors) to specify the captions data from the input that you will use in your outputs. You can use multiple captions selectors per input." } }, "__mapOf__string": { @@ -3831,7 +3963,7 @@ "ListTagsForResourceRequest$Arn": "The Amazon Resource Name (ARN) of the resource that you want to list tags for. To get the ARN, send a GET request with the resource name.", "Mp4Settings$Mp4MajorBrand": "Overrides the \"Major Brand\" field in the output file. Usually not necessary to specify.", "NielsenConfiguration$DistributorId": "Use Distributor ID (DistributorID) to specify the distributor ID that is assigned to your organization by Neilsen.", - "Output$Extension": "Use Extension (Extension) to specify the file extension for outputs in File output groups. If you do not specify a value, the service will use default extensions by container type as follows * MPEG-2 transport stream, m2ts * Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * No Container, the service will use codec extensions (e.g. AAC, H265, H265, AC3)", + "Output$Extension": "Use Extension (Extension) to specify the file extension for outputs in File output groups. If you do not specify a value, the service will use default extensions by container type as follows * MPEG-2 transport stream, m2ts * Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * WebM container, webm * No Container, the service will use codec extensions (e.g. AAC, H265, H265, AC3)", "OutputGroup$CustomName": "Use Custom Group Name (CustomName) to specify a name for the output group. This value is displayed on the console and can make your job settings JSON more human-readable. It does not affect your outputs. Use up to twelve characters that are either letters, numbers, spaces, or underscores.", "OutputGroup$Name": "Name of the output group", "Preset$Arn": "An identifier for this resource that is unique within all of AWS.", @@ -4067,16 +4199,16 @@ "__listOf__stringPatternS3ASSETMAPXml$member": null } }, - "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE": { + "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLLHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLL": { "base": null, "refs": { - "AudioSelector$ExternalAudioFileInput": "Specifies audio data from an external file source." + "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* (SupplementalImps) to specify any supplemental IMPs that contain assets referenced by the CPL." } }, - "__stringPatternS3MM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLLHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8WWEEBBMMLLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMXXMMLL": { + "__stringPatternS3WWEEBBMMMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEEHttpsMM2VVMMPPEEGGMMPP3AAVVIIMMPP4FFLLVVMMPPTTMMPPGGMM4VVTTRRPPFF4VVMM2TTSSTTSS264HH264MMKKVVMMOOVVMMTTSSMM2TTWWMMVVAASSFFVVOOBB3GGPP3GGPPPPMMXXFFDDIIVVXXXXVVIIDDRRAAWWDDVVGGXXFFMM1VV3GG2VVMMFFMM3UU8LLCCHHGGXXFFMMPPEEGG2MMXXFFMMPPEEGG2MMXXFFHHDDWWAAVVYY4MMAAAACCAAIIFFFFMMPP2AACC3EECC3DDTTSSEE": { "base": null, "refs": { - "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* (SupplementalImps) to specify any supplemental IMPs that contain assets referenced by the CPL." + "AudioSelector$ExternalAudioFileInput": "Specifies audio data from an external file source." } }, "__stringPatternSNManifestConfirmConditionNotificationNS": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index c5c2dee4a2b..e212d0697bb 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2569,6 +2569,7 @@ "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "eu-central-1" : { }, @@ -7751,6 +7752,12 @@ }, "storagegateway" : { "endpoints" : { + "fips" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "hostname" : "storagegateway-fips.us-gov-west-1.amazonaws.com" + }, "us-gov-east-1" : { }, "us-gov-west-1" : { } } diff --git a/service/directconnect/api.go b/service/directconnect/api.go index fe73bb92626..a611388eb9e 100644 --- a/service/directconnect/api.go +++ b/service/directconnect/api.go @@ -1935,6 +1935,13 @@ func (c *DirectConnect) CreatePrivateVirtualInterfaceRequest(input *CreatePrivat // different AWS Regions. Connecting the private virtual interface to a VGW // only provides access to a single VPC within the same Region. // +// Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an +// update to the underlying physical connection if it wasn't updated to support +// jumbo frames. Updating the connection disrupts network connectivity for all +// virtual interfaces associated with the connection for up to 30 seconds. To +// check whether your connection supports jumbo frames, call DescribeConnections. +// To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces. +// // 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. @@ -2126,6 +2133,13 @@ func (c *DirectConnect) CreateTransitVirtualInterfaceRequest(input *CreateTransi // 64512 for both your the transit gateway and Direct Connect gateway, the association // request fails. // +// Setting the MTU of a virtual interface to 8500 (jumbo frames) can cause an +// update to the underlying physical connection if it wasn't updated to support +// jumbo frames. Updating the connection disrupts network connectivity for all +// virtual interfaces associated with the connection for up to 30 seconds. To +// check whether your connection supports jumbo frames, call DescribeConnections. +// To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces. +// // 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. @@ -4331,6 +4345,262 @@ func (c *DirectConnect) DisassociateConnectionFromLagWithContext(ctx aws.Context return out, req.Send() } +const opListVirtualInterfaceTestHistory = "ListVirtualInterfaceTestHistory" + +// ListVirtualInterfaceTestHistoryRequest generates a "aws/request.Request" representing the +// client's request for the ListVirtualInterfaceTestHistory 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 ListVirtualInterfaceTestHistory for more information on using the ListVirtualInterfaceTestHistory +// 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 ListVirtualInterfaceTestHistoryRequest method. +// req, resp := client.ListVirtualInterfaceTestHistoryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ListVirtualInterfaceTestHistory +func (c *DirectConnect) ListVirtualInterfaceTestHistoryRequest(input *ListVirtualInterfaceTestHistoryInput) (req *request.Request, output *ListVirtualInterfaceTestHistoryOutput) { + op := &request.Operation{ + Name: opListVirtualInterfaceTestHistory, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListVirtualInterfaceTestHistoryInput{} + } + + output = &ListVirtualInterfaceTestHistoryOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListVirtualInterfaceTestHistory API operation for AWS Direct Connect. +// +// Lists the virtual interface failover test history. +// +// 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 Direct Connect's +// API operation ListVirtualInterfaceTestHistory for usage and error information. +// +// Returned Error Types: +// * ServerException +// A server-side error occurred. +// +// * ClientException +// One or more parameters are not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/ListVirtualInterfaceTestHistory +func (c *DirectConnect) ListVirtualInterfaceTestHistory(input *ListVirtualInterfaceTestHistoryInput) (*ListVirtualInterfaceTestHistoryOutput, error) { + req, out := c.ListVirtualInterfaceTestHistoryRequest(input) + return out, req.Send() +} + +// ListVirtualInterfaceTestHistoryWithContext is the same as ListVirtualInterfaceTestHistory with the addition of +// the ability to pass a context and additional request options. +// +// See ListVirtualInterfaceTestHistory 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 *DirectConnect) ListVirtualInterfaceTestHistoryWithContext(ctx aws.Context, input *ListVirtualInterfaceTestHistoryInput, opts ...request.Option) (*ListVirtualInterfaceTestHistoryOutput, error) { + req, out := c.ListVirtualInterfaceTestHistoryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartBgpFailoverTest = "StartBgpFailoverTest" + +// StartBgpFailoverTestRequest generates a "aws/request.Request" representing the +// client's request for the StartBgpFailoverTest 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 StartBgpFailoverTest for more information on using the StartBgpFailoverTest +// 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 StartBgpFailoverTestRequest method. +// req, resp := client.StartBgpFailoverTestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/StartBgpFailoverTest +func (c *DirectConnect) StartBgpFailoverTestRequest(input *StartBgpFailoverTestInput) (req *request.Request, output *StartBgpFailoverTestOutput) { + op := &request.Operation{ + Name: opStartBgpFailoverTest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartBgpFailoverTestInput{} + } + + output = &StartBgpFailoverTestOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartBgpFailoverTest API operation for AWS Direct Connect. +// +// Starts the virtual interface failover test that verifies your configuration +// meets your resiliency requirements by placing the BGP peering session in +// the DOWN state. You can then send traffic to verify that there are no outages. +// +// You can run the test on public, private, transit, and hosted virtual interfaces. +// +// You can use ListVirtualInterfaceTestHistory (https://docs.aws.amazon.com/directconnect/latest/APIReference/API_ListVirtualInterfaceTestHistory.html) +// to view the virtual interface test history. +// +// If you need to stop the test before the test interval completes, use StopBgpFailoverTest +// (https://docs.aws.amazon.com/directconnect/latest/APIReference/API_StopBgpFailoverTest.html). +// +// 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 Direct Connect's +// API operation StartBgpFailoverTest for usage and error information. +// +// Returned Error Types: +// * ServerException +// A server-side error occurred. +// +// * ClientException +// One or more parameters are not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/StartBgpFailoverTest +func (c *DirectConnect) StartBgpFailoverTest(input *StartBgpFailoverTestInput) (*StartBgpFailoverTestOutput, error) { + req, out := c.StartBgpFailoverTestRequest(input) + return out, req.Send() +} + +// StartBgpFailoverTestWithContext is the same as StartBgpFailoverTest with the addition of +// the ability to pass a context and additional request options. +// +// See StartBgpFailoverTest 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 *DirectConnect) StartBgpFailoverTestWithContext(ctx aws.Context, input *StartBgpFailoverTestInput, opts ...request.Option) (*StartBgpFailoverTestOutput, error) { + req, out := c.StartBgpFailoverTestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopBgpFailoverTest = "StopBgpFailoverTest" + +// StopBgpFailoverTestRequest generates a "aws/request.Request" representing the +// client's request for the StopBgpFailoverTest 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 StopBgpFailoverTest for more information on using the StopBgpFailoverTest +// 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 StopBgpFailoverTestRequest method. +// req, resp := client.StopBgpFailoverTestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/StopBgpFailoverTest +func (c *DirectConnect) StopBgpFailoverTestRequest(input *StopBgpFailoverTestInput) (req *request.Request, output *StopBgpFailoverTestOutput) { + op := &request.Operation{ + Name: opStopBgpFailoverTest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StopBgpFailoverTestInput{} + } + + output = &StopBgpFailoverTestOutput{} + req = c.newRequest(op, input, output) + return +} + +// StopBgpFailoverTest API operation for AWS Direct Connect. +// +// Stops the virtual interface failover test. +// +// 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 Direct Connect's +// API operation StopBgpFailoverTest for usage and error information. +// +// Returned Error Types: +// * ServerException +// A server-side error occurred. +// +// * ClientException +// One or more parameters are not valid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/StopBgpFailoverTest +func (c *DirectConnect) StopBgpFailoverTest(input *StopBgpFailoverTestInput) (*StopBgpFailoverTestOutput, error) { + req, out := c.StopBgpFailoverTestRequest(input) + return out, req.Send() +} + +// StopBgpFailoverTestWithContext is the same as StopBgpFailoverTest with the addition of +// the ability to pass a context and additional request options. +// +// See StopBgpFailoverTest 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 *DirectConnect) StopBgpFailoverTestWithContext(ctx aws.Context, input *StopBgpFailoverTestInput, opts ...request.Option) (*StopBgpFailoverTestOutput, error) { + req, out := c.StopBgpFailoverTestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -4738,7 +5008,7 @@ func (c *DirectConnect) UpdateVirtualInterfaceAttributesRequest(input *UpdateVir // jumbo frames. Updating the connection disrupts network connectivity for all // virtual interfaces associated with the connection for up to 30 seconds. To // check whether your connection supports jumbo frames, call DescribeConnections. -// To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces. +// To check whether your virtual q interface supports jumbo frames, call DescribeVirtualInterfaces. // // 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 @@ -9489,6 +9759,111 @@ func (s *Lag) SetTags(v []*Tag) *Lag { return s } +type ListVirtualInterfaceTestHistoryInput struct { + _ struct{} `type:"structure"` + + // The BGP peers that were placed in the DOWN state during the virtual interface + // failover test. + BgpPeers []*string `locationName:"bgpPeers" type:"list"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + // + // If MaxResults is given a value larger than 100, only 100 results are returned. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token for the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` + + // The status of the virtual interface failover test. + Status *string `locationName:"status" type:"string"` + + // The ID of the virtual interface failover test. + TestId *string `locationName:"testId" type:"string"` + + // The ID of the virtual interface that was tested. + VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` +} + +// String returns the string representation +func (s ListVirtualInterfaceTestHistoryInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListVirtualInterfaceTestHistoryInput) GoString() string { + return s.String() +} + +// SetBgpPeers sets the BgpPeers field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetBgpPeers(v []*string) *ListVirtualInterfaceTestHistoryInput { + s.BgpPeers = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetMaxResults(v int64) *ListVirtualInterfaceTestHistoryInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetNextToken(v string) *ListVirtualInterfaceTestHistoryInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetStatus(v string) *ListVirtualInterfaceTestHistoryInput { + s.Status = &v + return s +} + +// SetTestId sets the TestId field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetTestId(v string) *ListVirtualInterfaceTestHistoryInput { + s.TestId = &v + return s +} + +// SetVirtualInterfaceId sets the VirtualInterfaceId field's value. +func (s *ListVirtualInterfaceTestHistoryInput) SetVirtualInterfaceId(v string) *ListVirtualInterfaceTestHistoryInput { + s.VirtualInterfaceId = &v + return s +} + +type ListVirtualInterfaceTestHistoryOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // The ID of the tested virtual interface. + VirtualInterfaceTestHistory []*VirtualInterfaceTestHistory `locationName:"virtualInterfaceTestHistory" type:"list"` +} + +// String returns the string representation +func (s ListVirtualInterfaceTestHistoryOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListVirtualInterfaceTestHistoryOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVirtualInterfaceTestHistoryOutput) SetNextToken(v string) *ListVirtualInterfaceTestHistoryOutput { + s.NextToken = &v + return s +} + +// SetVirtualInterfaceTestHistory sets the VirtualInterfaceTestHistory field's value. +func (s *ListVirtualInterfaceTestHistoryOutput) SetVirtualInterfaceTestHistory(v []*VirtualInterfaceTestHistory) *ListVirtualInterfaceTestHistoryOutput { + s.VirtualInterfaceTestHistory = v + return s +} + // Information about a Letter of Authorization - Connecting Facility Assignment // (LOA-CFA) for a connection. type Loa struct { @@ -9685,7 +10060,9 @@ type NewPrivateVirtualInterface struct { // The ID of the virtual private gateway. VirtualGatewayId *string `locationName:"virtualGatewayId" type:"string"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` @@ -9835,7 +10212,9 @@ type NewPrivateVirtualInterfaceAllocation struct { // The tags associated with the private virtual interface. Tags []*Tag `locationName:"tags" min:"1" type:"list"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` @@ -9973,7 +10352,9 @@ type NewPublicVirtualInterface struct { // The tags associated with the public virtual interface. Tags []*Tag `locationName:"tags" min:"1" type:"list"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` @@ -10111,7 +10492,9 @@ type NewPublicVirtualInterfaceAllocation struct { // The tags associated with the public virtual interface. Tags []*Tag `locationName:"tags" min:"1" type:"list"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). // // VirtualInterfaceName is a required field VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string" required:"true"` @@ -10250,7 +10633,9 @@ type NewTransitVirtualInterface struct { // The tags associated with the transitive virtual interface. Tags []*Tag `locationName:"tags" min:"1" type:"list"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string"` // The ID of the VLAN. @@ -10379,7 +10764,9 @@ type NewTransitVirtualInterfaceAllocation struct { // The tags associated with the transitive virtual interface. Tags []*Tag `locationName:"tags" min:"1" type:"list"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string"` // The ID of the VLAN. @@ -10588,6 +10975,150 @@ func (s *ServerException) RequestID() string { return s.RespMetadata.RequestID } +type StartBgpFailoverTestInput struct { + _ struct{} `type:"structure"` + + // The BGP peers to place in the DOWN state. + BgpPeers []*string `locationName:"bgpPeers" type:"list"` + + // The time in minutes that the virtual interface failover test will last. + // + // Maximum value: 180 minutes (3 hours). + // + // Default: 180 minutes (3 hours). + TestDurationInMinutes *int64 `locationName:"testDurationInMinutes" type:"integer"` + + // The ID of the virtual interface you want to test. + // + // VirtualInterfaceId is a required field + VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string" required:"true"` +} + +// String returns the string representation +func (s StartBgpFailoverTestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StartBgpFailoverTestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartBgpFailoverTestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartBgpFailoverTestInput"} + if s.VirtualInterfaceId == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBgpPeers sets the BgpPeers field's value. +func (s *StartBgpFailoverTestInput) SetBgpPeers(v []*string) *StartBgpFailoverTestInput { + s.BgpPeers = v + return s +} + +// SetTestDurationInMinutes sets the TestDurationInMinutes field's value. +func (s *StartBgpFailoverTestInput) SetTestDurationInMinutes(v int64) *StartBgpFailoverTestInput { + s.TestDurationInMinutes = &v + return s +} + +// SetVirtualInterfaceId sets the VirtualInterfaceId field's value. +func (s *StartBgpFailoverTestInput) SetVirtualInterfaceId(v string) *StartBgpFailoverTestInput { + s.VirtualInterfaceId = &v + return s +} + +type StartBgpFailoverTestOutput struct { + _ struct{} `type:"structure"` + + // Information about the virtual interface failover test. + VirtualInterfaceTest *VirtualInterfaceTestHistory `locationName:"virtualInterfaceTest" type:"structure"` +} + +// String returns the string representation +func (s StartBgpFailoverTestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StartBgpFailoverTestOutput) GoString() string { + return s.String() +} + +// SetVirtualInterfaceTest sets the VirtualInterfaceTest field's value. +func (s *StartBgpFailoverTestOutput) SetVirtualInterfaceTest(v *VirtualInterfaceTestHistory) *StartBgpFailoverTestOutput { + s.VirtualInterfaceTest = v + return s +} + +type StopBgpFailoverTestInput struct { + _ struct{} `type:"structure"` + + // The ID of the virtual interface you no longer want to test. + // + // VirtualInterfaceId is a required field + VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string" required:"true"` +} + +// String returns the string representation +func (s StopBgpFailoverTestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StopBgpFailoverTestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopBgpFailoverTestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopBgpFailoverTestInput"} + if s.VirtualInterfaceId == nil { + invalidParams.Add(request.NewErrParamRequired("VirtualInterfaceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVirtualInterfaceId sets the VirtualInterfaceId field's value. +func (s *StopBgpFailoverTestInput) SetVirtualInterfaceId(v string) *StopBgpFailoverTestInput { + s.VirtualInterfaceId = &v + return s +} + +type StopBgpFailoverTestOutput struct { + _ struct{} `type:"structure"` + + // Information about the virtual interface failover test. + VirtualInterfaceTest *VirtualInterfaceTestHistory `locationName:"virtualInterfaceTest" type:"structure"` +} + +// String returns the string representation +func (s StopBgpFailoverTestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StopBgpFailoverTestOutput) GoString() string { + return s.String() +} + +// SetVirtualInterfaceTest sets the VirtualInterfaceTest field's value. +func (s *StopBgpFailoverTestOutput) SetVirtualInterfaceTest(v *VirtualInterfaceTestHistory) *StopBgpFailoverTestOutput { + s.VirtualInterfaceTest = v + return s +} + // Information about a tag. type Tag struct { _ struct{} `type:"structure"` @@ -11079,7 +11610,9 @@ type UpdateVirtualInterfaceAttributesOutput struct { // The ID of the virtual interface. VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string"` // The state of the virtual interface. The following are the possible values: @@ -11387,7 +11920,9 @@ type VirtualInterface struct { // The ID of the virtual interface. VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` - // The name of the virtual interface assigned by the customer network. + // The name of the virtual interface assigned by the customer network. The name + // has a maximum of 100 characters. The following are valid characters: a-z, + // 0-9 and a hyphen (-). VirtualInterfaceName *string `locationName:"virtualInterfaceName" type:"string"` // The state of the virtual interface. The following are the possible values: @@ -11583,6 +12118,94 @@ func (s *VirtualInterface) SetVlan(v int64) *VirtualInterface { return s } +// Information about the virtual interface failover test. +type VirtualInterfaceTestHistory struct { + _ struct{} `type:"structure"` + + // The BGP peers that were put in the DOWN state as part of the virtual interface + // failover test. + BgpPeers []*string `locationName:"bgpPeers" type:"list"` + + // The time that the virtual interface moves out of the DOWN state. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // The owner ID of the tested virtual interface. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The time that the virtual interface moves to the DOWN state. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The status of the virtual interface failover test. + Status *string `locationName:"status" type:"string"` + + // The time that the virtual interface failover test ran in minutes. + TestDurationInMinutes *int64 `locationName:"testDurationInMinutes" type:"integer"` + + // The ID of the virtual interface failover test. + TestId *string `locationName:"testId" type:"string"` + + // The ID of the tested virtual interface. + VirtualInterfaceId *string `locationName:"virtualInterfaceId" type:"string"` +} + +// String returns the string representation +func (s VirtualInterfaceTestHistory) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VirtualInterfaceTestHistory) GoString() string { + return s.String() +} + +// SetBgpPeers sets the BgpPeers field's value. +func (s *VirtualInterfaceTestHistory) SetBgpPeers(v []*string) *VirtualInterfaceTestHistory { + s.BgpPeers = v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *VirtualInterfaceTestHistory) SetEndTime(v time.Time) *VirtualInterfaceTestHistory { + s.EndTime = &v + return s +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *VirtualInterfaceTestHistory) SetOwnerAccount(v string) *VirtualInterfaceTestHistory { + s.OwnerAccount = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *VirtualInterfaceTestHistory) SetStartTime(v time.Time) *VirtualInterfaceTestHistory { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *VirtualInterfaceTestHistory) SetStatus(v string) *VirtualInterfaceTestHistory { + s.Status = &v + return s +} + +// SetTestDurationInMinutes sets the TestDurationInMinutes field's value. +func (s *VirtualInterfaceTestHistory) SetTestDurationInMinutes(v int64) *VirtualInterfaceTestHistory { + s.TestDurationInMinutes = &v + return s +} + +// SetTestId sets the TestId field's value. +func (s *VirtualInterfaceTestHistory) SetTestId(v string) *VirtualInterfaceTestHistory { + s.TestId = &v + return s +} + +// SetVirtualInterfaceId sets the VirtualInterfaceId field's value. +func (s *VirtualInterfaceTestHistory) SetVirtualInterfaceId(v string) *VirtualInterfaceTestHistory { + s.VirtualInterfaceId = &v + return s +} + const ( // AddressFamilyIpv4 is a AddressFamily enum value AddressFamilyIpv4 = "ipv4" diff --git a/service/directconnect/directconnectiface/interface.go b/service/directconnect/directconnectiface/interface.go index bf124c08dd7..2c10975655e 100644 --- a/service/directconnect/directconnectiface/interface.go +++ b/service/directconnect/directconnectiface/interface.go @@ -252,6 +252,18 @@ type DirectConnectAPI interface { DisassociateConnectionFromLagWithContext(aws.Context, *directconnect.DisassociateConnectionFromLagInput, ...request.Option) (*directconnect.Connection, error) DisassociateConnectionFromLagRequest(*directconnect.DisassociateConnectionFromLagInput) (*request.Request, *directconnect.Connection) + ListVirtualInterfaceTestHistory(*directconnect.ListVirtualInterfaceTestHistoryInput) (*directconnect.ListVirtualInterfaceTestHistoryOutput, error) + ListVirtualInterfaceTestHistoryWithContext(aws.Context, *directconnect.ListVirtualInterfaceTestHistoryInput, ...request.Option) (*directconnect.ListVirtualInterfaceTestHistoryOutput, error) + ListVirtualInterfaceTestHistoryRequest(*directconnect.ListVirtualInterfaceTestHistoryInput) (*request.Request, *directconnect.ListVirtualInterfaceTestHistoryOutput) + + StartBgpFailoverTest(*directconnect.StartBgpFailoverTestInput) (*directconnect.StartBgpFailoverTestOutput, error) + StartBgpFailoverTestWithContext(aws.Context, *directconnect.StartBgpFailoverTestInput, ...request.Option) (*directconnect.StartBgpFailoverTestOutput, error) + StartBgpFailoverTestRequest(*directconnect.StartBgpFailoverTestInput) (*request.Request, *directconnect.StartBgpFailoverTestOutput) + + StopBgpFailoverTest(*directconnect.StopBgpFailoverTestInput) (*directconnect.StopBgpFailoverTestOutput, error) + StopBgpFailoverTestWithContext(aws.Context, *directconnect.StopBgpFailoverTestInput, ...request.Option) (*directconnect.StopBgpFailoverTestOutput, error) + StopBgpFailoverTestRequest(*directconnect.StopBgpFailoverTestInput) (*request.Request, *directconnect.StopBgpFailoverTestOutput) + TagResource(*directconnect.TagResourceInput) (*directconnect.TagResourceOutput, error) TagResourceWithContext(aws.Context, *directconnect.TagResourceInput, ...request.Option) (*directconnect.TagResourceOutput, error) TagResourceRequest(*directconnect.TagResourceInput) (*request.Request, *directconnect.TagResourceOutput) diff --git a/service/elasticache/api.go b/service/elasticache/api.go index 64459a56c23..7c57fed8233 100644 --- a/service/elasticache/api.go +++ b/service/elasticache/api.go @@ -9125,6 +9125,8 @@ type CreateReplicationGroupInput struct { // The ID of the KMS key used to encrypt the disk in the cluster. KmsKeyId *string `type:"string"` + MultiAZEnabled *bool `type:"boolean"` + // A list of node group (shard) configuration options. Each node group (shard) // configuration has the following members: PrimaryAvailabilityZone, ReplicaAvailabilityZones, // ReplicaCount, and Slots. @@ -9414,6 +9416,12 @@ func (s *CreateReplicationGroupInput) SetKmsKeyId(v string) *CreateReplicationGr return s } +// SetMultiAZEnabled sets the MultiAZEnabled field's value. +func (s *CreateReplicationGroupInput) SetMultiAZEnabled(v bool) *CreateReplicationGroupInput { + s.MultiAZEnabled = &v + return s +} + // SetNodeGroupConfiguration sets the NodeGroupConfiguration field's value. func (s *CreateReplicationGroupInput) SetNodeGroupConfiguration(v []*NodeGroupConfiguration) *CreateReplicationGroupInput { s.NodeGroupConfiguration = v @@ -13848,6 +13856,8 @@ type ModifyReplicationGroupInput struct { // and create it anew with the earlier engine version. EngineVersion *string `type:"string"` + MultiAZEnabled *bool `type:"boolean"` + // Deprecated. This parameter is not used. // // Deprecated: NodeGroupId has been deprecated @@ -14010,6 +14020,12 @@ func (s *ModifyReplicationGroupInput) SetEngineVersion(v string) *ModifyReplicat return s } +// SetMultiAZEnabled sets the MultiAZEnabled field's value. +func (s *ModifyReplicationGroupInput) SetMultiAZEnabled(v bool) *ModifyReplicationGroupInput { + s.MultiAZEnabled = &v + return s +} + // SetNodeGroupId sets the NodeGroupId field's value. func (s *ModifyReplicationGroupInput) SetNodeGroupId(v string) *ModifyReplicationGroupInput { s.NodeGroupId = &v @@ -15451,6 +15467,8 @@ type ReplicationGroup struct { // The names of all the cache clusters that are part of this replication group. MemberClusters []*string `locationNameList:"ClusterId" type:"list"` + MultiAZ *string `type:"string" enum:"MultiAZStatus"` + // A list of node groups in this replication group. For Redis (cluster mode // disabled) replication groups, this is a single-element list. For Redis (cluster // mode enabled) replication groups, the list contains an entry for each node @@ -15586,6 +15604,12 @@ func (s *ReplicationGroup) SetMemberClusters(v []*string) *ReplicationGroup { return s } +// SetMultiAZ sets the MultiAZ field's value. +func (s *ReplicationGroup) SetMultiAZ(v string) *ReplicationGroup { + s.MultiAZ = &v + return s +} + // SetNodeGroups sets the NodeGroups field's value. func (s *ReplicationGroup) SetNodeGroups(v []*NodeGroup) *ReplicationGroup { s.NodeGroups = v @@ -17308,6 +17332,14 @@ const ( ChangeTypeRequiresReboot = "requires-reboot" ) +const ( + // MultiAZStatusEnabled is a MultiAZStatus enum value + MultiAZStatusEnabled = "enabled" + + // MultiAZStatusDisabled is a MultiAZStatus enum value + MultiAZStatusDisabled = "disabled" +) + const ( // NodeUpdateInitiatedBySystem is a NodeUpdateInitiatedBy enum value NodeUpdateInitiatedBySystem = "system" diff --git a/service/elasticsearchservice/api.go b/service/elasticsearchservice/api.go index ce50a0588d5..1db5e8a5ac4 100644 --- a/service/elasticsearchservice/api.go +++ b/service/elasticsearchservice/api.go @@ -13,6 +13,92 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opAcceptInboundCrossClusterSearchConnection = "AcceptInboundCrossClusterSearchConnection" + +// AcceptInboundCrossClusterSearchConnectionRequest generates a "aws/request.Request" representing the +// client's request for the AcceptInboundCrossClusterSearchConnection 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 AcceptInboundCrossClusterSearchConnection for more information on using the AcceptInboundCrossClusterSearchConnection +// 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 AcceptInboundCrossClusterSearchConnectionRequest method. +// req, resp := client.AcceptInboundCrossClusterSearchConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) AcceptInboundCrossClusterSearchConnectionRequest(input *AcceptInboundCrossClusterSearchConnectionInput) (req *request.Request, output *AcceptInboundCrossClusterSearchConnectionOutput) { + op := &request.Operation{ + Name: opAcceptInboundCrossClusterSearchConnection, + HTTPMethod: "PUT", + HTTPPath: "/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/accept", + } + + if input == nil { + input = &AcceptInboundCrossClusterSearchConnectionInput{} + } + + output = &AcceptInboundCrossClusterSearchConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// AcceptInboundCrossClusterSearchConnection API operation for Amazon Elasticsearch Service. +// +// Allows the destination domain owner to accept an inbound cross-cluster search +// connection 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 +// the error. +// +// See the AWS API reference guide for Amazon Elasticsearch Service's +// API operation AcceptInboundCrossClusterSearchConnection for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * LimitExceededException +// An exception for trying to create more than allowed resources or sub-resources. +// Gives http status code of 409. +// +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. +// +func (c *ElasticsearchService) AcceptInboundCrossClusterSearchConnection(input *AcceptInboundCrossClusterSearchConnectionInput) (*AcceptInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.AcceptInboundCrossClusterSearchConnectionRequest(input) + return out, req.Send() +} + +// AcceptInboundCrossClusterSearchConnectionWithContext is the same as AcceptInboundCrossClusterSearchConnection with the addition of +// the ability to pass a context and additional request options. +// +// See AcceptInboundCrossClusterSearchConnection 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 *ElasticsearchService) AcceptInboundCrossClusterSearchConnectionWithContext(ctx aws.Context, input *AcceptInboundCrossClusterSearchConnectionInput, opts ...request.Option) (*AcceptInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.AcceptInboundCrossClusterSearchConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opAddTags = "AddTags" // AddTagsRequest generates a "aws/request.Request" representing the @@ -396,6 +482,97 @@ func (c *ElasticsearchService) CreateElasticsearchDomainWithContext(ctx aws.Cont return out, req.Send() } +const opCreateOutboundCrossClusterSearchConnection = "CreateOutboundCrossClusterSearchConnection" + +// CreateOutboundCrossClusterSearchConnectionRequest generates a "aws/request.Request" representing the +// client's request for the CreateOutboundCrossClusterSearchConnection 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 CreateOutboundCrossClusterSearchConnection for more information on using the CreateOutboundCrossClusterSearchConnection +// 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 CreateOutboundCrossClusterSearchConnectionRequest method. +// req, resp := client.CreateOutboundCrossClusterSearchConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) CreateOutboundCrossClusterSearchConnectionRequest(input *CreateOutboundCrossClusterSearchConnectionInput) (req *request.Request, output *CreateOutboundCrossClusterSearchConnectionOutput) { + op := &request.Operation{ + Name: opCreateOutboundCrossClusterSearchConnection, + HTTPMethod: "POST", + HTTPPath: "/2015-01-01/es/ccs/outboundConnection", + } + + if input == nil { + input = &CreateOutboundCrossClusterSearchConnectionInput{} + } + + output = &CreateOutboundCrossClusterSearchConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateOutboundCrossClusterSearchConnection API operation for Amazon Elasticsearch Service. +// +// Creates a new cross-cluster search connection from a source domain to a destination +// domain. +// +// 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 Elasticsearch Service's +// API operation CreateOutboundCrossClusterSearchConnection for usage and error information. +// +// Returned Error Types: +// * LimitExceededException +// An exception for trying to create more than allowed resources or sub-resources. +// Gives http status code of 409. +// +// * InternalException +// The request processing has failed because of an unknown error, exception +// or failure (the failure is internal to the service) . Gives http status code +// of 500. +// +// * ResourceAlreadyExistsException +// An exception for creating a resource that already exists. Gives http status +// code of 400. +// +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. +// +func (c *ElasticsearchService) CreateOutboundCrossClusterSearchConnection(input *CreateOutboundCrossClusterSearchConnectionInput) (*CreateOutboundCrossClusterSearchConnectionOutput, error) { + req, out := c.CreateOutboundCrossClusterSearchConnectionRequest(input) + return out, req.Send() +} + +// CreateOutboundCrossClusterSearchConnectionWithContext is the same as CreateOutboundCrossClusterSearchConnection with the addition of +// the ability to pass a context and additional request options. +// +// See CreateOutboundCrossClusterSearchConnection 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 *ElasticsearchService) CreateOutboundCrossClusterSearchConnectionWithContext(ctx aws.Context, input *CreateOutboundCrossClusterSearchConnectionInput, opts ...request.Option) (*CreateOutboundCrossClusterSearchConnectionOutput, error) { + req, out := c.CreateOutboundCrossClusterSearchConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreatePackage = "CreatePackage" // CreatePackageRequest generates a "aws/request.Request" representing the @@ -677,6 +854,170 @@ func (c *ElasticsearchService) DeleteElasticsearchServiceRoleWithContext(ctx aws return out, req.Send() } +const opDeleteInboundCrossClusterSearchConnection = "DeleteInboundCrossClusterSearchConnection" + +// DeleteInboundCrossClusterSearchConnectionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteInboundCrossClusterSearchConnection 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 DeleteInboundCrossClusterSearchConnection for more information on using the DeleteInboundCrossClusterSearchConnection +// 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 DeleteInboundCrossClusterSearchConnectionRequest method. +// req, resp := client.DeleteInboundCrossClusterSearchConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) DeleteInboundCrossClusterSearchConnectionRequest(input *DeleteInboundCrossClusterSearchConnectionInput) (req *request.Request, output *DeleteInboundCrossClusterSearchConnectionOutput) { + op := &request.Operation{ + Name: opDeleteInboundCrossClusterSearchConnection, + HTTPMethod: "DELETE", + HTTPPath: "/2015-01-01/es/ccs/inboundConnection/{ConnectionId}", + } + + if input == nil { + input = &DeleteInboundCrossClusterSearchConnectionInput{} + } + + output = &DeleteInboundCrossClusterSearchConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteInboundCrossClusterSearchConnection API operation for Amazon Elasticsearch Service. +// +// Allows the destination domain owner to delete an existing inbound cross-cluster +// search connection. +// +// 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 Elasticsearch Service's +// API operation DeleteInboundCrossClusterSearchConnection for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. +// +func (c *ElasticsearchService) DeleteInboundCrossClusterSearchConnection(input *DeleteInboundCrossClusterSearchConnectionInput) (*DeleteInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.DeleteInboundCrossClusterSearchConnectionRequest(input) + return out, req.Send() +} + +// DeleteInboundCrossClusterSearchConnectionWithContext is the same as DeleteInboundCrossClusterSearchConnection with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteInboundCrossClusterSearchConnection 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 *ElasticsearchService) DeleteInboundCrossClusterSearchConnectionWithContext(ctx aws.Context, input *DeleteInboundCrossClusterSearchConnectionInput, opts ...request.Option) (*DeleteInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.DeleteInboundCrossClusterSearchConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteOutboundCrossClusterSearchConnection = "DeleteOutboundCrossClusterSearchConnection" + +// DeleteOutboundCrossClusterSearchConnectionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteOutboundCrossClusterSearchConnection 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 DeleteOutboundCrossClusterSearchConnection for more information on using the DeleteOutboundCrossClusterSearchConnection +// 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 DeleteOutboundCrossClusterSearchConnectionRequest method. +// req, resp := client.DeleteOutboundCrossClusterSearchConnectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) DeleteOutboundCrossClusterSearchConnectionRequest(input *DeleteOutboundCrossClusterSearchConnectionInput) (req *request.Request, output *DeleteOutboundCrossClusterSearchConnectionOutput) { + op := &request.Operation{ + Name: opDeleteOutboundCrossClusterSearchConnection, + HTTPMethod: "DELETE", + HTTPPath: "/2015-01-01/es/ccs/outboundConnection/{ConnectionId}", + } + + if input == nil { + input = &DeleteOutboundCrossClusterSearchConnectionInput{} + } + + output = &DeleteOutboundCrossClusterSearchConnectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteOutboundCrossClusterSearchConnection API operation for Amazon Elasticsearch Service. +// +// Allows the source domain owner to delete an existing outbound cross-cluster +// search connection. +// +// 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 Elasticsearch Service's +// API operation DeleteOutboundCrossClusterSearchConnection for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. +// +func (c *ElasticsearchService) DeleteOutboundCrossClusterSearchConnection(input *DeleteOutboundCrossClusterSearchConnectionInput) (*DeleteOutboundCrossClusterSearchConnectionOutput, error) { + req, out := c.DeleteOutboundCrossClusterSearchConnectionRequest(input) + return out, req.Send() +} + +// DeleteOutboundCrossClusterSearchConnectionWithContext is the same as DeleteOutboundCrossClusterSearchConnection with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteOutboundCrossClusterSearchConnection 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 *ElasticsearchService) DeleteOutboundCrossClusterSearchConnectionWithContext(ctx aws.Context, input *DeleteOutboundCrossClusterSearchConnectionInput, opts ...request.Option) (*DeleteOutboundCrossClusterSearchConnectionOutput, error) { + req, out := c.DeleteOutboundCrossClusterSearchConnectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeletePackage = "DeletePackage" // DeletePackageRequest generates a "aws/request.Request" representing the @@ -990,156 +1331,435 @@ func (c *ElasticsearchService) DescribeElasticsearchDomainsRequest(input *Descri input = &DescribeElasticsearchDomainsInput{} } - output = &DescribeElasticsearchDomainsOutput{} + output = &DescribeElasticsearchDomainsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeElasticsearchDomains API operation for Amazon Elasticsearch Service. +// +// Returns domain configuration information about the specified Elasticsearch +// domains, including the domain ID, domain endpoint, and domain ARN. +// +// 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 Elasticsearch Service's +// API operation DescribeElasticsearchDomains for usage and error information. +// +// Returned Error Types: +// * BaseException +// An error occurred while processing the request. +// +// * InternalException +// The request processing has failed because of an unknown error, exception +// or failure (the failure is internal to the service) . Gives http status code +// of 500. +// +// * ValidationException +// An exception for missing / invalid input fields. Gives http status code of +// 400. +// +func (c *ElasticsearchService) DescribeElasticsearchDomains(input *DescribeElasticsearchDomainsInput) (*DescribeElasticsearchDomainsOutput, error) { + req, out := c.DescribeElasticsearchDomainsRequest(input) + return out, req.Send() +} + +// DescribeElasticsearchDomainsWithContext is the same as DescribeElasticsearchDomains with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeElasticsearchDomains 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 *ElasticsearchService) DescribeElasticsearchDomainsWithContext(ctx aws.Context, input *DescribeElasticsearchDomainsInput, opts ...request.Option) (*DescribeElasticsearchDomainsOutput, error) { + req, out := c.DescribeElasticsearchDomainsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeElasticsearchInstanceTypeLimits = "DescribeElasticsearchInstanceTypeLimits" + +// DescribeElasticsearchInstanceTypeLimitsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeElasticsearchInstanceTypeLimits 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 DescribeElasticsearchInstanceTypeLimits for more information on using the DescribeElasticsearchInstanceTypeLimits +// 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 DescribeElasticsearchInstanceTypeLimitsRequest method. +// req, resp := client.DescribeElasticsearchInstanceTypeLimitsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) DescribeElasticsearchInstanceTypeLimitsRequest(input *DescribeElasticsearchInstanceTypeLimitsInput) (req *request.Request, output *DescribeElasticsearchInstanceTypeLimitsOutput) { + op := &request.Operation{ + Name: opDescribeElasticsearchInstanceTypeLimits, + HTTPMethod: "GET", + HTTPPath: "/2015-01-01/es/instanceTypeLimits/{ElasticsearchVersion}/{InstanceType}", + } + + if input == nil { + input = &DescribeElasticsearchInstanceTypeLimitsInput{} + } + + output = &DescribeElasticsearchInstanceTypeLimitsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeElasticsearchInstanceTypeLimits API operation for Amazon Elasticsearch Service. +// +// Describe Elasticsearch Limits for a given InstanceType and ElasticsearchVersion. +// When modifying existing Domain, specify the DomainName to know what Limits +// are supported for modifying. +// +// 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 Elasticsearch Service's +// API operation DescribeElasticsearchInstanceTypeLimits for usage and error information. +// +// Returned Error Types: +// * BaseException +// An error occurred while processing the request. +// +// * InternalException +// The request processing has failed because of an unknown error, exception +// or failure (the failure is internal to the service) . Gives http status code +// of 500. +// +// * InvalidTypeException +// An exception for trying to create or access sub-resource that is either invalid +// or not supported. Gives http status code of 409. +// +// * LimitExceededException +// An exception for trying to create more than allowed resources or sub-resources. +// Gives http status code of 409. +// +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * ValidationException +// An exception for missing / invalid input fields. Gives http status code of +// 400. +// +func (c *ElasticsearchService) DescribeElasticsearchInstanceTypeLimits(input *DescribeElasticsearchInstanceTypeLimitsInput) (*DescribeElasticsearchInstanceTypeLimitsOutput, error) { + req, out := c.DescribeElasticsearchInstanceTypeLimitsRequest(input) + return out, req.Send() +} + +// DescribeElasticsearchInstanceTypeLimitsWithContext is the same as DescribeElasticsearchInstanceTypeLimits with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeElasticsearchInstanceTypeLimits 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 *ElasticsearchService) DescribeElasticsearchInstanceTypeLimitsWithContext(ctx aws.Context, input *DescribeElasticsearchInstanceTypeLimitsInput, opts ...request.Option) (*DescribeElasticsearchInstanceTypeLimitsOutput, error) { + req, out := c.DescribeElasticsearchInstanceTypeLimitsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeInboundCrossClusterSearchConnections = "DescribeInboundCrossClusterSearchConnections" + +// DescribeInboundCrossClusterSearchConnectionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeInboundCrossClusterSearchConnections 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 DescribeInboundCrossClusterSearchConnections for more information on using the DescribeInboundCrossClusterSearchConnections +// 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 DescribeInboundCrossClusterSearchConnectionsRequest method. +// req, resp := client.DescribeInboundCrossClusterSearchConnectionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) DescribeInboundCrossClusterSearchConnectionsRequest(input *DescribeInboundCrossClusterSearchConnectionsInput) (req *request.Request, output *DescribeInboundCrossClusterSearchConnectionsOutput) { + op := &request.Operation{ + Name: opDescribeInboundCrossClusterSearchConnections, + HTTPMethod: "POST", + HTTPPath: "/2015-01-01/es/ccs/inboundConnection/search", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeInboundCrossClusterSearchConnectionsInput{} + } + + output = &DescribeInboundCrossClusterSearchConnectionsOutput{} req = c.newRequest(op, input, output) return } -// DescribeElasticsearchDomains API operation for Amazon Elasticsearch Service. +// DescribeInboundCrossClusterSearchConnections API operation for Amazon Elasticsearch Service. // -// Returns domain configuration information about the specified Elasticsearch -// domains, including the domain ID, domain endpoint, and domain ARN. +// Lists all the inbound cross-cluster search connections for a destination +// domain. // // 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 Elasticsearch Service's -// API operation DescribeElasticsearchDomains for usage and error information. +// API operation DescribeInboundCrossClusterSearchConnections for usage and error information. // // Returned Error Types: -// * BaseException -// An error occurred while processing the request. +// * InvalidPaginationTokenException +// The request processing has failed because of invalid pagination token provided +// by customer. Returns an HTTP status code of 400. // -// * InternalException -// The request processing has failed because of an unknown error, exception -// or failure (the failure is internal to the service) . Gives http status code -// of 500. -// -// * ValidationException -// An exception for missing / invalid input fields. Gives http status code of -// 400. +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. // -func (c *ElasticsearchService) DescribeElasticsearchDomains(input *DescribeElasticsearchDomainsInput) (*DescribeElasticsearchDomainsOutput, error) { - req, out := c.DescribeElasticsearchDomainsRequest(input) +func (c *ElasticsearchService) DescribeInboundCrossClusterSearchConnections(input *DescribeInboundCrossClusterSearchConnectionsInput) (*DescribeInboundCrossClusterSearchConnectionsOutput, error) { + req, out := c.DescribeInboundCrossClusterSearchConnectionsRequest(input) return out, req.Send() } -// DescribeElasticsearchDomainsWithContext is the same as DescribeElasticsearchDomains with the addition of +// DescribeInboundCrossClusterSearchConnectionsWithContext is the same as DescribeInboundCrossClusterSearchConnections with the addition of // the ability to pass a context and additional request options. // -// See DescribeElasticsearchDomains for details on how to use this API operation. +// See DescribeInboundCrossClusterSearchConnections 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 *ElasticsearchService) DescribeElasticsearchDomainsWithContext(ctx aws.Context, input *DescribeElasticsearchDomainsInput, opts ...request.Option) (*DescribeElasticsearchDomainsOutput, error) { - req, out := c.DescribeElasticsearchDomainsRequest(input) +func (c *ElasticsearchService) DescribeInboundCrossClusterSearchConnectionsWithContext(ctx aws.Context, input *DescribeInboundCrossClusterSearchConnectionsInput, opts ...request.Option) (*DescribeInboundCrossClusterSearchConnectionsOutput, error) { + req, out := c.DescribeInboundCrossClusterSearchConnectionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeElasticsearchInstanceTypeLimits = "DescribeElasticsearchInstanceTypeLimits" +// DescribeInboundCrossClusterSearchConnectionsPages iterates over the pages of a DescribeInboundCrossClusterSearchConnections operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeInboundCrossClusterSearchConnections 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 DescribeInboundCrossClusterSearchConnections operation. +// pageNum := 0 +// err := client.DescribeInboundCrossClusterSearchConnectionsPages(params, +// func(page *elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ElasticsearchService) DescribeInboundCrossClusterSearchConnectionsPages(input *DescribeInboundCrossClusterSearchConnectionsInput, fn func(*DescribeInboundCrossClusterSearchConnectionsOutput, bool) bool) error { + return c.DescribeInboundCrossClusterSearchConnectionsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// DescribeElasticsearchInstanceTypeLimitsRequest generates a "aws/request.Request" representing the -// client's request for the DescribeElasticsearchInstanceTypeLimits operation. The "output" return +// DescribeInboundCrossClusterSearchConnectionsPagesWithContext same as DescribeInboundCrossClusterSearchConnectionsPages 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 *ElasticsearchService) DescribeInboundCrossClusterSearchConnectionsPagesWithContext(ctx aws.Context, input *DescribeInboundCrossClusterSearchConnectionsInput, fn func(*DescribeInboundCrossClusterSearchConnectionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeInboundCrossClusterSearchConnectionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeInboundCrossClusterSearchConnectionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeInboundCrossClusterSearchConnectionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeOutboundCrossClusterSearchConnections = "DescribeOutboundCrossClusterSearchConnections" + +// DescribeOutboundCrossClusterSearchConnectionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeOutboundCrossClusterSearchConnections 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 DescribeElasticsearchInstanceTypeLimits for more information on using the DescribeElasticsearchInstanceTypeLimits +// See DescribeOutboundCrossClusterSearchConnections for more information on using the DescribeOutboundCrossClusterSearchConnections // 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 DescribeElasticsearchInstanceTypeLimitsRequest method. -// req, resp := client.DescribeElasticsearchInstanceTypeLimitsRequest(params) +// // Example sending a request using the DescribeOutboundCrossClusterSearchConnectionsRequest method. +// req, resp := client.DescribeOutboundCrossClusterSearchConnectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } -func (c *ElasticsearchService) DescribeElasticsearchInstanceTypeLimitsRequest(input *DescribeElasticsearchInstanceTypeLimitsInput) (req *request.Request, output *DescribeElasticsearchInstanceTypeLimitsOutput) { +func (c *ElasticsearchService) DescribeOutboundCrossClusterSearchConnectionsRequest(input *DescribeOutboundCrossClusterSearchConnectionsInput) (req *request.Request, output *DescribeOutboundCrossClusterSearchConnectionsOutput) { op := &request.Operation{ - Name: opDescribeElasticsearchInstanceTypeLimits, - HTTPMethod: "GET", - HTTPPath: "/2015-01-01/es/instanceTypeLimits/{ElasticsearchVersion}/{InstanceType}", + Name: opDescribeOutboundCrossClusterSearchConnections, + HTTPMethod: "POST", + HTTPPath: "/2015-01-01/es/ccs/outboundConnection/search", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &DescribeElasticsearchInstanceTypeLimitsInput{} + input = &DescribeOutboundCrossClusterSearchConnectionsInput{} } - output = &DescribeElasticsearchInstanceTypeLimitsOutput{} + output = &DescribeOutboundCrossClusterSearchConnectionsOutput{} req = c.newRequest(op, input, output) return } -// DescribeElasticsearchInstanceTypeLimits API operation for Amazon Elasticsearch Service. +// DescribeOutboundCrossClusterSearchConnections API operation for Amazon Elasticsearch Service. // -// Describe Elasticsearch Limits for a given InstanceType and ElasticsearchVersion. -// When modifying existing Domain, specify the DomainName to know what Limits -// are supported for modifying. +// Lists all the outbound cross-cluster search connections for a source domain. // // 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 Elasticsearch Service's -// API operation DescribeElasticsearchInstanceTypeLimits for usage and error information. +// API operation DescribeOutboundCrossClusterSearchConnections for usage and error information. // // Returned Error Types: -// * BaseException -// An error occurred while processing the request. -// -// * InternalException -// The request processing has failed because of an unknown error, exception -// or failure (the failure is internal to the service) . Gives http status code -// of 500. +// * InvalidPaginationTokenException +// The request processing has failed because of invalid pagination token provided +// by customer. Returns an HTTP status code of 400. // -// * InvalidTypeException -// An exception for trying to create or access sub-resource that is either invalid -// or not supported. Gives http status code of 409. -// -// * LimitExceededException -// An exception for trying to create more than allowed resources or sub-resources. +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. // Gives http status code of 409. // -// * ResourceNotFoundException -// An exception for accessing or deleting a resource that does not exist. Gives -// http status code of 400. -// -// * ValidationException -// An exception for missing / invalid input fields. Gives http status code of -// 400. -// -func (c *ElasticsearchService) DescribeElasticsearchInstanceTypeLimits(input *DescribeElasticsearchInstanceTypeLimitsInput) (*DescribeElasticsearchInstanceTypeLimitsOutput, error) { - req, out := c.DescribeElasticsearchInstanceTypeLimitsRequest(input) +func (c *ElasticsearchService) DescribeOutboundCrossClusterSearchConnections(input *DescribeOutboundCrossClusterSearchConnectionsInput) (*DescribeOutboundCrossClusterSearchConnectionsOutput, error) { + req, out := c.DescribeOutboundCrossClusterSearchConnectionsRequest(input) return out, req.Send() } -// DescribeElasticsearchInstanceTypeLimitsWithContext is the same as DescribeElasticsearchInstanceTypeLimits with the addition of +// DescribeOutboundCrossClusterSearchConnectionsWithContext is the same as DescribeOutboundCrossClusterSearchConnections with the addition of // the ability to pass a context and additional request options. // -// See DescribeElasticsearchInstanceTypeLimits for details on how to use this API operation. +// See DescribeOutboundCrossClusterSearchConnections 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 *ElasticsearchService) DescribeElasticsearchInstanceTypeLimitsWithContext(ctx aws.Context, input *DescribeElasticsearchInstanceTypeLimitsInput, opts ...request.Option) (*DescribeElasticsearchInstanceTypeLimitsOutput, error) { - req, out := c.DescribeElasticsearchInstanceTypeLimitsRequest(input) +func (c *ElasticsearchService) DescribeOutboundCrossClusterSearchConnectionsWithContext(ctx aws.Context, input *DescribeOutboundCrossClusterSearchConnectionsInput, opts ...request.Option) (*DescribeOutboundCrossClusterSearchConnectionsOutput, error) { + req, out := c.DescribeOutboundCrossClusterSearchConnectionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } +// DescribeOutboundCrossClusterSearchConnectionsPages iterates over the pages of a DescribeOutboundCrossClusterSearchConnections operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeOutboundCrossClusterSearchConnections 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 DescribeOutboundCrossClusterSearchConnections operation. +// pageNum := 0 +// err := client.DescribeOutboundCrossClusterSearchConnectionsPages(params, +// func(page *elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ElasticsearchService) DescribeOutboundCrossClusterSearchConnectionsPages(input *DescribeOutboundCrossClusterSearchConnectionsInput, fn func(*DescribeOutboundCrossClusterSearchConnectionsOutput, bool) bool) error { + return c.DescribeOutboundCrossClusterSearchConnectionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeOutboundCrossClusterSearchConnectionsPagesWithContext same as DescribeOutboundCrossClusterSearchConnectionsPages 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 *ElasticsearchService) DescribeOutboundCrossClusterSearchConnectionsPagesWithContext(ctx aws.Context, input *DescribeOutboundCrossClusterSearchConnectionsInput, fn func(*DescribeOutboundCrossClusterSearchConnectionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeOutboundCrossClusterSearchConnectionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeOutboundCrossClusterSearchConnectionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeOutboundCrossClusterSearchConnectionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribePackages = "DescribePackages" // DescribePackagesRequest generates a "aws/request.Request" representing the @@ -2792,99 +3412,181 @@ func (c *ElasticsearchService) ListTagsWithContext(ctx aws.Context, input *ListT return out, req.Send() } -const opPurchaseReservedElasticsearchInstanceOffering = "PurchaseReservedElasticsearchInstanceOffering" +const opPurchaseReservedElasticsearchInstanceOffering = "PurchaseReservedElasticsearchInstanceOffering" + +// PurchaseReservedElasticsearchInstanceOfferingRequest generates a "aws/request.Request" representing the +// client's request for the PurchaseReservedElasticsearchInstanceOffering 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 PurchaseReservedElasticsearchInstanceOffering for more information on using the PurchaseReservedElasticsearchInstanceOffering +// 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 PurchaseReservedElasticsearchInstanceOfferingRequest method. +// req, resp := client.PurchaseReservedElasticsearchInstanceOfferingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) PurchaseReservedElasticsearchInstanceOfferingRequest(input *PurchaseReservedElasticsearchInstanceOfferingInput) (req *request.Request, output *PurchaseReservedElasticsearchInstanceOfferingOutput) { + op := &request.Operation{ + Name: opPurchaseReservedElasticsearchInstanceOffering, + HTTPMethod: "POST", + HTTPPath: "/2015-01-01/es/purchaseReservedInstanceOffering", + } + + if input == nil { + input = &PurchaseReservedElasticsearchInstanceOfferingInput{} + } + + output = &PurchaseReservedElasticsearchInstanceOfferingOutput{} + req = c.newRequest(op, input, output) + return +} + +// PurchaseReservedElasticsearchInstanceOffering API operation for Amazon Elasticsearch Service. +// +// Allows you to purchase reserved Elasticsearch instances. +// +// 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 Elasticsearch Service's +// API operation PurchaseReservedElasticsearchInstanceOffering for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * ResourceAlreadyExistsException +// An exception for creating a resource that already exists. Gives http status +// code of 400. +// +// * LimitExceededException +// An exception for trying to create more than allowed resources or sub-resources. +// Gives http status code of 409. +// +// * DisabledOperationException +// An error occured because the client wanted to access a not supported operation. +// Gives http status code of 409. +// +// * ValidationException +// An exception for missing / invalid input fields. Gives http status code of +// 400. +// +// * InternalException +// The request processing has failed because of an unknown error, exception +// or failure (the failure is internal to the service) . Gives http status code +// of 500. +// +func (c *ElasticsearchService) PurchaseReservedElasticsearchInstanceOffering(input *PurchaseReservedElasticsearchInstanceOfferingInput) (*PurchaseReservedElasticsearchInstanceOfferingOutput, error) { + req, out := c.PurchaseReservedElasticsearchInstanceOfferingRequest(input) + return out, req.Send() +} + +// PurchaseReservedElasticsearchInstanceOfferingWithContext is the same as PurchaseReservedElasticsearchInstanceOffering with the addition of +// the ability to pass a context and additional request options. +// +// See PurchaseReservedElasticsearchInstanceOffering 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 *ElasticsearchService) PurchaseReservedElasticsearchInstanceOfferingWithContext(ctx aws.Context, input *PurchaseReservedElasticsearchInstanceOfferingInput, opts ...request.Option) (*PurchaseReservedElasticsearchInstanceOfferingOutput, error) { + req, out := c.PurchaseReservedElasticsearchInstanceOfferingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRejectInboundCrossClusterSearchConnection = "RejectInboundCrossClusterSearchConnection" -// PurchaseReservedElasticsearchInstanceOfferingRequest generates a "aws/request.Request" representing the -// client's request for the PurchaseReservedElasticsearchInstanceOffering operation. The "output" return +// RejectInboundCrossClusterSearchConnectionRequest generates a "aws/request.Request" representing the +// client's request for the RejectInboundCrossClusterSearchConnection 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 PurchaseReservedElasticsearchInstanceOffering for more information on using the PurchaseReservedElasticsearchInstanceOffering +// See RejectInboundCrossClusterSearchConnection for more information on using the RejectInboundCrossClusterSearchConnection // 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 PurchaseReservedElasticsearchInstanceOfferingRequest method. -// req, resp := client.PurchaseReservedElasticsearchInstanceOfferingRequest(params) +// // Example sending a request using the RejectInboundCrossClusterSearchConnectionRequest method. +// req, resp := client.RejectInboundCrossClusterSearchConnectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } -func (c *ElasticsearchService) PurchaseReservedElasticsearchInstanceOfferingRequest(input *PurchaseReservedElasticsearchInstanceOfferingInput) (req *request.Request, output *PurchaseReservedElasticsearchInstanceOfferingOutput) { +func (c *ElasticsearchService) RejectInboundCrossClusterSearchConnectionRequest(input *RejectInboundCrossClusterSearchConnectionInput) (req *request.Request, output *RejectInboundCrossClusterSearchConnectionOutput) { op := &request.Operation{ - Name: opPurchaseReservedElasticsearchInstanceOffering, - HTTPMethod: "POST", - HTTPPath: "/2015-01-01/es/purchaseReservedInstanceOffering", + Name: opRejectInboundCrossClusterSearchConnection, + HTTPMethod: "PUT", + HTTPPath: "/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/reject", } if input == nil { - input = &PurchaseReservedElasticsearchInstanceOfferingInput{} + input = &RejectInboundCrossClusterSearchConnectionInput{} } - output = &PurchaseReservedElasticsearchInstanceOfferingOutput{} + output = &RejectInboundCrossClusterSearchConnectionOutput{} req = c.newRequest(op, input, output) return } -// PurchaseReservedElasticsearchInstanceOffering API operation for Amazon Elasticsearch Service. +// RejectInboundCrossClusterSearchConnection API operation for Amazon Elasticsearch Service. // -// Allows you to purchase reserved Elasticsearch instances. +// Allows the destination domain owner to reject an inbound cross-cluster search +// connection 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 // the error. // // See the AWS API reference guide for Amazon Elasticsearch Service's -// API operation PurchaseReservedElasticsearchInstanceOffering for usage and error information. +// API operation RejectInboundCrossClusterSearchConnection for usage and error information. // // Returned Error Types: // * ResourceNotFoundException // An exception for accessing or deleting a resource that does not exist. Gives // http status code of 400. // -// * ResourceAlreadyExistsException -// An exception for creating a resource that already exists. Gives http status -// code of 400. -// -// * LimitExceededException -// An exception for trying to create more than allowed resources or sub-resources. -// Gives http status code of 409. -// // * DisabledOperationException // An error occured because the client wanted to access a not supported operation. // Gives http status code of 409. // -// * ValidationException -// An exception for missing / invalid input fields. Gives http status code of -// 400. -// -// * InternalException -// The request processing has failed because of an unknown error, exception -// or failure (the failure is internal to the service) . Gives http status code -// of 500. -// -func (c *ElasticsearchService) PurchaseReservedElasticsearchInstanceOffering(input *PurchaseReservedElasticsearchInstanceOfferingInput) (*PurchaseReservedElasticsearchInstanceOfferingOutput, error) { - req, out := c.PurchaseReservedElasticsearchInstanceOfferingRequest(input) +func (c *ElasticsearchService) RejectInboundCrossClusterSearchConnection(input *RejectInboundCrossClusterSearchConnectionInput) (*RejectInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.RejectInboundCrossClusterSearchConnectionRequest(input) return out, req.Send() } -// PurchaseReservedElasticsearchInstanceOfferingWithContext is the same as PurchaseReservedElasticsearchInstanceOffering with the addition of +// RejectInboundCrossClusterSearchConnectionWithContext is the same as RejectInboundCrossClusterSearchConnection with the addition of // the ability to pass a context and additional request options. // -// See PurchaseReservedElasticsearchInstanceOffering for details on how to use this API operation. +// See RejectInboundCrossClusterSearchConnection 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 *ElasticsearchService) PurchaseReservedElasticsearchInstanceOfferingWithContext(ctx aws.Context, input *PurchaseReservedElasticsearchInstanceOfferingInput, opts ...request.Option) (*PurchaseReservedElasticsearchInstanceOfferingOutput, error) { - req, out := c.PurchaseReservedElasticsearchInstanceOfferingRequest(input) +func (c *ElasticsearchService) RejectInboundCrossClusterSearchConnectionWithContext(ctx aws.Context, input *RejectInboundCrossClusterSearchConnectionInput, opts ...request.Option) (*RejectInboundCrossClusterSearchConnectionOutput, error) { + req, out := c.RejectInboundCrossClusterSearchConnectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -3261,6 +3963,74 @@ func (c *ElasticsearchService) UpgradeElasticsearchDomainWithContext(ctx aws.Con return out, req.Send() } +// Container for the parameters to the AcceptInboundCrossClusterSearchConnection +// operation. +type AcceptInboundCrossClusterSearchConnectionInput struct { + _ struct{} `type:"structure"` + + // The id of the inbound connection that you want to accept. + // + // CrossClusterSearchConnectionId is a required field + CrossClusterSearchConnectionId *string `location:"uri" locationName:"ConnectionId" type:"string" required:"true"` +} + +// String returns the string representation +func (s AcceptInboundCrossClusterSearchConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptInboundCrossClusterSearchConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AcceptInboundCrossClusterSearchConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AcceptInboundCrossClusterSearchConnectionInput"} + if s.CrossClusterSearchConnectionId == nil { + invalidParams.Add(request.NewErrParamRequired("CrossClusterSearchConnectionId")) + } + if s.CrossClusterSearchConnectionId != nil && len(*s.CrossClusterSearchConnectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CrossClusterSearchConnectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *AcceptInboundCrossClusterSearchConnectionInput) SetCrossClusterSearchConnectionId(v string) *AcceptInboundCrossClusterSearchConnectionInput { + s.CrossClusterSearchConnectionId = &v + return s +} + +// The result of a AcceptInboundCrossClusterSearchConnection operation. Contains +// details of accepted inbound connection. +type AcceptInboundCrossClusterSearchConnectionOutput struct { + _ struct{} `type:"structure"` + + // Specifies the InboundCrossClusterSearchConnection of accepted inbound connection. + CrossClusterSearchConnection *InboundCrossClusterSearchConnection `type:"structure"` +} + +// String returns the string representation +func (s AcceptInboundCrossClusterSearchConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptInboundCrossClusterSearchConnectionOutput) GoString() string { + return s.String() +} + +// SetCrossClusterSearchConnection sets the CrossClusterSearchConnection field's value. +func (s *AcceptInboundCrossClusterSearchConnectionOutput) SetCrossClusterSearchConnection(v *InboundCrossClusterSearchConnection) *AcceptInboundCrossClusterSearchConnectionOutput { + s.CrossClusterSearchConnection = v + return s +} + // An error occurred because user does not have permissions to access the resource. // Returns HTTP status code 403. type AccessDeniedException struct { @@ -4282,6 +5052,148 @@ func (s *CreateElasticsearchDomainOutput) SetDomainStatus(v *ElasticsearchDomain return s } +// Container for the parameters to the CreateOutboundCrossClusterSearchConnection +// operation. +type CreateOutboundCrossClusterSearchConnectionInput struct { + _ struct{} `type:"structure"` + + // Specifies the connection alias that will be used by the customer for this + // connection. + // + // ConnectionAlias is a required field + ConnectionAlias *string `type:"string" required:"true"` + + // Specifies the DomainInformation for the destination Elasticsearch domain. + // + // DestinationDomainInfo is a required field + DestinationDomainInfo *DomainInformation `type:"structure" required:"true"` + + // Specifies the DomainInformation for the source Elasticsearch domain. + // + // SourceDomainInfo is a required field + SourceDomainInfo *DomainInformation `type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateOutboundCrossClusterSearchConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateOutboundCrossClusterSearchConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateOutboundCrossClusterSearchConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateOutboundCrossClusterSearchConnectionInput"} + if s.ConnectionAlias == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectionAlias")) + } + if s.DestinationDomainInfo == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationDomainInfo")) + } + if s.SourceDomainInfo == nil { + invalidParams.Add(request.NewErrParamRequired("SourceDomainInfo")) + } + if s.DestinationDomainInfo != nil { + if err := s.DestinationDomainInfo.Validate(); err != nil { + invalidParams.AddNested("DestinationDomainInfo", err.(request.ErrInvalidParams)) + } + } + if s.SourceDomainInfo != nil { + if err := s.SourceDomainInfo.Validate(); err != nil { + invalidParams.AddNested("SourceDomainInfo", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectionAlias sets the ConnectionAlias field's value. +func (s *CreateOutboundCrossClusterSearchConnectionInput) SetConnectionAlias(v string) *CreateOutboundCrossClusterSearchConnectionInput { + s.ConnectionAlias = &v + return s +} + +// SetDestinationDomainInfo sets the DestinationDomainInfo field's value. +func (s *CreateOutboundCrossClusterSearchConnectionInput) SetDestinationDomainInfo(v *DomainInformation) *CreateOutboundCrossClusterSearchConnectionInput { + s.DestinationDomainInfo = v + return s +} + +// SetSourceDomainInfo sets the SourceDomainInfo field's value. +func (s *CreateOutboundCrossClusterSearchConnectionInput) SetSourceDomainInfo(v *DomainInformation) *CreateOutboundCrossClusterSearchConnectionInput { + s.SourceDomainInfo = v + return s +} + +// The result of a CreateOutboundCrossClusterSearchConnection request. Contains +// the details of the newly created cross-cluster search connection. +type CreateOutboundCrossClusterSearchConnectionOutput struct { + _ struct{} `type:"structure"` + + // Specifies the connection alias provided during the create connection request. + ConnectionAlias *string `type:"string"` + + // Specifies the OutboundCrossClusterSearchConnectionStatus for the newly created + // connection. + ConnectionStatus *OutboundCrossClusterSearchConnectionStatus `type:"structure"` + + // Unique id for the created outbound connection, which is used for subsequent + // operations on connection. + CrossClusterSearchConnectionId *string `type:"string"` + + // Specifies the DomainInformation for the destination Elasticsearch domain. + DestinationDomainInfo *DomainInformation `type:"structure"` + + // Specifies the DomainInformation for the source Elasticsearch domain. + SourceDomainInfo *DomainInformation `type:"structure"` +} + +// String returns the string representation +func (s CreateOutboundCrossClusterSearchConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateOutboundCrossClusterSearchConnectionOutput) GoString() string { + return s.String() +} + +// SetConnectionAlias sets the ConnectionAlias field's value. +func (s *CreateOutboundCrossClusterSearchConnectionOutput) SetConnectionAlias(v string) *CreateOutboundCrossClusterSearchConnectionOutput { + s.ConnectionAlias = &v + return s +} + +// SetConnectionStatus sets the ConnectionStatus field's value. +func (s *CreateOutboundCrossClusterSearchConnectionOutput) SetConnectionStatus(v *OutboundCrossClusterSearchConnectionStatus) *CreateOutboundCrossClusterSearchConnectionOutput { + s.ConnectionStatus = v + return s +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *CreateOutboundCrossClusterSearchConnectionOutput) SetCrossClusterSearchConnectionId(v string) *CreateOutboundCrossClusterSearchConnectionOutput { + s.CrossClusterSearchConnectionId = &v + return s +} + +// SetDestinationDomainInfo sets the DestinationDomainInfo field's value. +func (s *CreateOutboundCrossClusterSearchConnectionOutput) SetDestinationDomainInfo(v *DomainInformation) *CreateOutboundCrossClusterSearchConnectionOutput { + s.DestinationDomainInfo = v + return s +} + +// SetSourceDomainInfo sets the SourceDomainInfo field's value. +func (s *CreateOutboundCrossClusterSearchConnectionOutput) SetSourceDomainInfo(v *DomainInformation) *CreateOutboundCrossClusterSearchConnectionOutput { + s.SourceDomainInfo = v + return s +} + // Container for request parameters to CreatePackage operation. type CreatePackageInput struct { _ struct{} `type:"structure"` @@ -4370,55 +5282,152 @@ func (s *CreatePackageInput) SetPackageType(v string) *CreatePackageInput { type CreatePackageOutput struct { _ struct{} `type:"structure"` - // Information about the package PackageDetails. - PackageDetails *PackageDetails `type:"structure"` + // Information about the package PackageDetails. + PackageDetails *PackageDetails `type:"structure"` +} + +// String returns the string representation +func (s CreatePackageOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreatePackageOutput) GoString() string { + return s.String() +} + +// SetPackageDetails sets the PackageDetails field's value. +func (s *CreatePackageOutput) SetPackageDetails(v *PackageDetails) *CreatePackageOutput { + s.PackageDetails = v + return s +} + +// Container for the parameters to the DeleteElasticsearchDomain operation. +// Specifies the name of the Elasticsearch domain that you want to delete. +type DeleteElasticsearchDomainInput struct { + _ struct{} `type:"structure"` + + // The name of the Elasticsearch domain that you want to permanently delete. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteElasticsearchDomainInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteElasticsearchDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteElasticsearchDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteElasticsearchDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DeleteElasticsearchDomainInput) SetDomainName(v string) *DeleteElasticsearchDomainInput { + s.DomainName = &v + return s +} + +// The result of a DeleteElasticsearchDomain request. Contains the status of +// the pending deletion, or no status if the domain and all of its resources +// have been deleted. +type DeleteElasticsearchDomainOutput struct { + _ struct{} `type:"structure"` + + // The status of the Elasticsearch domain being deleted. + DomainStatus *ElasticsearchDomainStatus `type:"structure"` +} + +// String returns the string representation +func (s DeleteElasticsearchDomainOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteElasticsearchDomainOutput) GoString() string { + return s.String() +} + +// SetDomainStatus sets the DomainStatus field's value. +func (s *DeleteElasticsearchDomainOutput) SetDomainStatus(v *ElasticsearchDomainStatus) *DeleteElasticsearchDomainOutput { + s.DomainStatus = v + return s +} + +type DeleteElasticsearchServiceRoleInput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteElasticsearchServiceRoleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteElasticsearchServiceRoleInput) GoString() string { + return s.String() +} + +type DeleteElasticsearchServiceRoleOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation -func (s CreatePackageOutput) String() string { +func (s DeleteElasticsearchServiceRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreatePackageOutput) GoString() string { +func (s DeleteElasticsearchServiceRoleOutput) GoString() string { return s.String() } -// SetPackageDetails sets the PackageDetails field's value. -func (s *CreatePackageOutput) SetPackageDetails(v *PackageDetails) *CreatePackageOutput { - s.PackageDetails = v - return s -} - -// Container for the parameters to the DeleteElasticsearchDomain operation. -// Specifies the name of the Elasticsearch domain that you want to delete. -type DeleteElasticsearchDomainInput struct { +// Container for the parameters to the DeleteInboundCrossClusterSearchConnection +// operation. +type DeleteInboundCrossClusterSearchConnectionInput struct { _ struct{} `type:"structure"` - // The name of the Elasticsearch domain that you want to permanently delete. + // The id of the inbound connection that you want to permanently delete. // - // DomainName is a required field - DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"` + // CrossClusterSearchConnectionId is a required field + CrossClusterSearchConnectionId *string `location:"uri" locationName:"ConnectionId" type:"string" required:"true"` } // String returns the string representation -func (s DeleteElasticsearchDomainInput) String() string { +func (s DeleteInboundCrossClusterSearchConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteElasticsearchDomainInput) GoString() string { +func (s DeleteInboundCrossClusterSearchConnectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteElasticsearchDomainInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteElasticsearchDomainInput"} - if s.DomainName == nil { - invalidParams.Add(request.NewErrParamRequired("DomainName")) +func (s *DeleteInboundCrossClusterSearchConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteInboundCrossClusterSearchConnectionInput"} + if s.CrossClusterSearchConnectionId == nil { + invalidParams.Add(request.NewErrParamRequired("CrossClusterSearchConnectionId")) } - if s.DomainName != nil && len(*s.DomainName) < 3 { - invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + if s.CrossClusterSearchConnectionId != nil && len(*s.CrossClusterSearchConnectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CrossClusterSearchConnectionId", 1)) } if invalidParams.Len() > 0 { @@ -4427,66 +5436,105 @@ func (s *DeleteElasticsearchDomainInput) Validate() error { return nil } -// SetDomainName sets the DomainName field's value. -func (s *DeleteElasticsearchDomainInput) SetDomainName(v string) *DeleteElasticsearchDomainInput { - s.DomainName = &v +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *DeleteInboundCrossClusterSearchConnectionInput) SetCrossClusterSearchConnectionId(v string) *DeleteInboundCrossClusterSearchConnectionInput { + s.CrossClusterSearchConnectionId = &v return s } -// The result of a DeleteElasticsearchDomain request. Contains the status of -// the pending deletion, or no status if the domain and all of its resources -// have been deleted. -type DeleteElasticsearchDomainOutput struct { +// The result of a DeleteInboundCrossClusterSearchConnection operation. Contains +// details of deleted inbound connection. +type DeleteInboundCrossClusterSearchConnectionOutput struct { _ struct{} `type:"structure"` - // The status of the Elasticsearch domain being deleted. - DomainStatus *ElasticsearchDomainStatus `type:"structure"` + // Specifies the InboundCrossClusterSearchConnection of deleted inbound connection. + CrossClusterSearchConnection *InboundCrossClusterSearchConnection `type:"structure"` } // String returns the string representation -func (s DeleteElasticsearchDomainOutput) String() string { +func (s DeleteInboundCrossClusterSearchConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteElasticsearchDomainOutput) GoString() string { +func (s DeleteInboundCrossClusterSearchConnectionOutput) GoString() string { return s.String() } -// SetDomainStatus sets the DomainStatus field's value. -func (s *DeleteElasticsearchDomainOutput) SetDomainStatus(v *ElasticsearchDomainStatus) *DeleteElasticsearchDomainOutput { - s.DomainStatus = v +// SetCrossClusterSearchConnection sets the CrossClusterSearchConnection field's value. +func (s *DeleteInboundCrossClusterSearchConnectionOutput) SetCrossClusterSearchConnection(v *InboundCrossClusterSearchConnection) *DeleteInboundCrossClusterSearchConnectionOutput { + s.CrossClusterSearchConnection = v return s } -type DeleteElasticsearchServiceRoleInput struct { +// Container for the parameters to the DeleteOutboundCrossClusterSearchConnection +// operation. +type DeleteOutboundCrossClusterSearchConnectionInput struct { _ struct{} `type:"structure"` + + // The id of the outbound connection that you want to permanently delete. + // + // CrossClusterSearchConnectionId is a required field + CrossClusterSearchConnectionId *string `location:"uri" locationName:"ConnectionId" type:"string" required:"true"` } // String returns the string representation -func (s DeleteElasticsearchServiceRoleInput) String() string { +func (s DeleteOutboundCrossClusterSearchConnectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteElasticsearchServiceRoleInput) GoString() string { +func (s DeleteOutboundCrossClusterSearchConnectionInput) GoString() string { return s.String() } -type DeleteElasticsearchServiceRoleOutput struct { +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteOutboundCrossClusterSearchConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteOutboundCrossClusterSearchConnectionInput"} + if s.CrossClusterSearchConnectionId == nil { + invalidParams.Add(request.NewErrParamRequired("CrossClusterSearchConnectionId")) + } + if s.CrossClusterSearchConnectionId != nil && len(*s.CrossClusterSearchConnectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CrossClusterSearchConnectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *DeleteOutboundCrossClusterSearchConnectionInput) SetCrossClusterSearchConnectionId(v string) *DeleteOutboundCrossClusterSearchConnectionInput { + s.CrossClusterSearchConnectionId = &v + return s +} + +// The result of a DeleteOutboundCrossClusterSearchConnection operation. Contains +// details of deleted outbound connection. +type DeleteOutboundCrossClusterSearchConnectionOutput struct { _ struct{} `type:"structure"` + + // Specifies the OutboundCrossClusterSearchConnection of deleted outbound connection. + CrossClusterSearchConnection *OutboundCrossClusterSearchConnection `type:"structure"` } // String returns the string representation -func (s DeleteElasticsearchServiceRoleOutput) String() string { +func (s DeleteOutboundCrossClusterSearchConnectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteElasticsearchServiceRoleOutput) GoString() string { +func (s DeleteOutboundCrossClusterSearchConnectionOutput) GoString() string { return s.String() } +// SetCrossClusterSearchConnection sets the CrossClusterSearchConnection field's value. +func (s *DeleteOutboundCrossClusterSearchConnectionOutput) SetCrossClusterSearchConnection(v *OutboundCrossClusterSearchConnection) *DeleteOutboundCrossClusterSearchConnectionOutput { + s.CrossClusterSearchConnection = v + return s +} + // Container for request parameters to DeletePackage operation. type DeletePackageInput struct { _ struct{} `type:"structure"` @@ -4866,6 +5914,228 @@ func (s *DescribeElasticsearchInstanceTypeLimitsOutput) SetLimitsByRole(v map[st return s } +// Container for the parameters to the DescribeInboundCrossClusterSearchConnections +// operation. +type DescribeInboundCrossClusterSearchConnectionsInput struct { + _ struct{} `type:"structure"` + + // A list of filters used to match properties for inbound cross-cluster search + // connection. Available Filter names for this operation are: + // * cross-cluster-search-connection-id + // + // * source-domain-info.domain-name + // + // * source-domain-info.owner-id + // + // * source-domain-info.region + // + // * destination-domain-info.domain-name + Filters []*Filter `type:"list"` + + // Set this value to limit the number of results returned. If not specified, + // defaults to 100. + MaxResults *int64 `type:"integer"` + + // NextToken is sent in case the earlier API call results contain the NextToken. + // It is used for pagination. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s DescribeInboundCrossClusterSearchConnectionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeInboundCrossClusterSearchConnectionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeInboundCrossClusterSearchConnectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeInboundCrossClusterSearchConnectionsInput"} + 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 *DescribeInboundCrossClusterSearchConnectionsInput) SetFilters(v []*Filter) *DescribeInboundCrossClusterSearchConnectionsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeInboundCrossClusterSearchConnectionsInput) SetMaxResults(v int64) *DescribeInboundCrossClusterSearchConnectionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeInboundCrossClusterSearchConnectionsInput) SetNextToken(v string) *DescribeInboundCrossClusterSearchConnectionsInput { + s.NextToken = &v + return s +} + +// The result of a DescribeInboundCrossClusterSearchConnections request. Contains +// the list of connections matching the filter criteria. +type DescribeInboundCrossClusterSearchConnectionsOutput struct { + _ struct{} `type:"structure"` + + // Consists of list of InboundCrossClusterSearchConnection matching the specified + // filter criteria. + CrossClusterSearchConnections []*InboundCrossClusterSearchConnection `type:"list"` + + // If more results are available and NextToken is present, make the next request + // to the same API with the received NextToken to paginate the remaining results. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s DescribeInboundCrossClusterSearchConnectionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeInboundCrossClusterSearchConnectionsOutput) GoString() string { + return s.String() +} + +// SetCrossClusterSearchConnections sets the CrossClusterSearchConnections field's value. +func (s *DescribeInboundCrossClusterSearchConnectionsOutput) SetCrossClusterSearchConnections(v []*InboundCrossClusterSearchConnection) *DescribeInboundCrossClusterSearchConnectionsOutput { + s.CrossClusterSearchConnections = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeInboundCrossClusterSearchConnectionsOutput) SetNextToken(v string) *DescribeInboundCrossClusterSearchConnectionsOutput { + s.NextToken = &v + return s +} + +// Container for the parameters to the DescribeOutboundCrossClusterSearchConnections +// operation. +type DescribeOutboundCrossClusterSearchConnectionsInput struct { + _ struct{} `type:"structure"` + + // A list of filters used to match properties for outbound cross-cluster search + // connection. Available Filter names for this operation are: + // * cross-cluster-search-connection-id + // + // * destination-domain-info.domain-name + // + // * destination-domain-info.owner-id + // + // * destination-domain-info.region + // + // * source-domain-info.domain-name + Filters []*Filter `type:"list"` + + // Set this value to limit the number of results returned. If not specified, + // defaults to 100. + MaxResults *int64 `type:"integer"` + + // NextToken is sent in case the earlier API call results contain the NextToken. + // It is used for pagination. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s DescribeOutboundCrossClusterSearchConnectionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeOutboundCrossClusterSearchConnectionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeOutboundCrossClusterSearchConnectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeOutboundCrossClusterSearchConnectionsInput"} + 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 *DescribeOutboundCrossClusterSearchConnectionsInput) SetFilters(v []*Filter) *DescribeOutboundCrossClusterSearchConnectionsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeOutboundCrossClusterSearchConnectionsInput) SetMaxResults(v int64) *DescribeOutboundCrossClusterSearchConnectionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeOutboundCrossClusterSearchConnectionsInput) SetNextToken(v string) *DescribeOutboundCrossClusterSearchConnectionsInput { + s.NextToken = &v + return s +} + +// The result of a DescribeOutboundCrossClusterSearchConnections request. Contains +// the list of connections matching the filter criteria. +type DescribeOutboundCrossClusterSearchConnectionsOutput struct { + _ struct{} `type:"structure"` + + // Consists of list of OutboundCrossClusterSearchConnection matching the specified + // filter criteria. + CrossClusterSearchConnections []*OutboundCrossClusterSearchConnection `type:"list"` + + // If more results are available and NextToken is present, make the next request + // to the same API with the received NextToken to paginate the remaining results. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s DescribeOutboundCrossClusterSearchConnectionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeOutboundCrossClusterSearchConnectionsOutput) GoString() string { + return s.String() +} + +// SetCrossClusterSearchConnections sets the CrossClusterSearchConnections field's value. +func (s *DescribeOutboundCrossClusterSearchConnectionsOutput) SetCrossClusterSearchConnections(v []*OutboundCrossClusterSearchConnection) *DescribeOutboundCrossClusterSearchConnectionsOutput { + s.CrossClusterSearchConnections = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeOutboundCrossClusterSearchConnectionsOutput) SetNextToken(v string) *DescribeOutboundCrossClusterSearchConnectionsOutput { + s.NextToken = &v + return s +} + // Filter to apply in DescribePackage response. type DescribePackagesFilter struct { _ struct{} `type:"structure"` @@ -5367,11 +6637,74 @@ func (s DomainInfo) GoString() string { } // SetDomainName sets the DomainName field's value. -func (s *DomainInfo) SetDomainName(v string) *DomainInfo { +func (s *DomainInfo) SetDomainName(v string) *DomainInfo { + s.DomainName = &v + return s +} + +type DomainInformation struct { + _ struct{} `type:"structure"` + + // The name of an Elasticsearch domain. Domain names are unique across the domains + // owned by an account within an AWS region. Domain names start with a letter + // or number and can contain the following characters: a-z (lowercase), 0-9, + // and - (hyphen). + // + // DomainName is a required field + DomainName *string `min:"3" type:"string" required:"true"` + + OwnerId *string `min:"12" type:"string"` + + Region *string `type:"string"` +} + +// String returns the string representation +func (s DomainInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DomainInformation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DomainInformation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DomainInformation"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + if s.OwnerId != nil && len(*s.OwnerId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("OwnerId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DomainInformation) SetDomainName(v string) *DomainInformation { s.DomainName = &v return s } +// SetOwnerId sets the OwnerId field's value. +func (s *DomainInformation) SetOwnerId(v string) *DomainInformation { + s.OwnerId = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *DomainInformation) SetRegion(v string) *DomainInformation { + s.Region = &v + return s +} + // Information on a package that is associated with a domain. type DomainPackageDetails struct { _ struct{} `type:"structure"` @@ -6237,6 +7570,58 @@ func (s *ErrorDetails) SetErrorType(v string) *ErrorDetails { return s } +// A filter used to limit results when describing inbound or outbound cross-cluster +// search connections. Multiple values can be specified per filter. A cross-cluster +// search connection must match at least one of the specified values for it +// to be returned from an operation. +type Filter struct { + _ struct{} `type:"structure"` + + // Specifies the name of the filter. + Name *string `min:"1" type:"string"` + + // Contains one or more values for the filter. + Values []*string `min:"1" type:"list"` +} + +// String returns the string representation +func (s Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Filter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Filter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Filter"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *Filter) SetName(v string) *Filter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *Filter) SetValues(v []*string) *Filter { + s.Values = v + return s +} + // Container for request parameters to GetCompatibleElasticsearchVersions operation. type GetCompatibleElasticsearchVersionsInput struct { _ struct{} `type:"structure"` @@ -6504,6 +7889,105 @@ func (s *GetUpgradeStatusOutput) SetUpgradeStep(v string) *GetUpgradeStatusOutpu return s } +// Specifies details of an inbound connection. +type InboundCrossClusterSearchConnection struct { + _ struct{} `type:"structure"` + + // Specifies the InboundCrossClusterSearchConnectionStatus for the outbound + // connection. + ConnectionStatus *InboundCrossClusterSearchConnectionStatus `type:"structure"` + + // Specifies the connection id for the inbound cross-cluster search connection. + CrossClusterSearchConnectionId *string `type:"string"` + + // Specifies the DomainInformation for the destination Elasticsearch domain. + DestinationDomainInfo *DomainInformation `type:"structure"` + + // Specifies the DomainInformation for the source Elasticsearch domain. + SourceDomainInfo *DomainInformation `type:"structure"` +} + +// String returns the string representation +func (s InboundCrossClusterSearchConnection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InboundCrossClusterSearchConnection) GoString() string { + return s.String() +} + +// SetConnectionStatus sets the ConnectionStatus field's value. +func (s *InboundCrossClusterSearchConnection) SetConnectionStatus(v *InboundCrossClusterSearchConnectionStatus) *InboundCrossClusterSearchConnection { + s.ConnectionStatus = v + return s +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *InboundCrossClusterSearchConnection) SetCrossClusterSearchConnectionId(v string) *InboundCrossClusterSearchConnection { + s.CrossClusterSearchConnectionId = &v + return s +} + +// SetDestinationDomainInfo sets the DestinationDomainInfo field's value. +func (s *InboundCrossClusterSearchConnection) SetDestinationDomainInfo(v *DomainInformation) *InboundCrossClusterSearchConnection { + s.DestinationDomainInfo = v + return s +} + +// SetSourceDomainInfo sets the SourceDomainInfo field's value. +func (s *InboundCrossClusterSearchConnection) SetSourceDomainInfo(v *DomainInformation) *InboundCrossClusterSearchConnection { + s.SourceDomainInfo = v + return s +} + +// Specifies the coonection status of an inbound cross-cluster search connection. +type InboundCrossClusterSearchConnectionStatus struct { + _ struct{} `type:"structure"` + + // Specifies verbose information for the inbound connection status. + Message *string `type:"string"` + + // The state code for inbound connection. This can be one of the following: + // + // * PENDING_ACCEPTANCE: Inbound connection is not yet accepted by destination + // domain owner. + // + // * APPROVED: Inbound connection is pending acceptance by destination domain + // owner. + // + // * REJECTING: Inbound connection rejection is in process. + // + // * REJECTED: Inbound connection is rejected. + // + // * DELETING: Inbound connection deletion is in progress. + // + // * DELETED: Inbound connection is deleted and cannot be used further. + StatusCode *string `type:"string" enum:"InboundCrossClusterSearchConnectionStatusCode"` +} + +// String returns the string representation +func (s InboundCrossClusterSearchConnectionStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InboundCrossClusterSearchConnectionStatus) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *InboundCrossClusterSearchConnectionStatus) SetMessage(v string) *InboundCrossClusterSearchConnectionStatus { + s.Message = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *InboundCrossClusterSearchConnectionStatus) SetStatusCode(v string) *InboundCrossClusterSearchConnectionStatus { + s.StatusCode = &v + return s +} + // InstanceCountLimits represents the limits on number of instances that be // created in Amazon Elasticsearch for given InstanceType. type InstanceCountLimits struct { @@ -6622,6 +8106,63 @@ func (s *InternalException) RequestID() string { return s.RespMetadata.RequestID } +// The request processing has failed because of invalid pagination token provided +// by customer. Returns an HTTP status code of 400. +type InvalidPaginationTokenException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s InvalidPaginationTokenException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s InvalidPaginationTokenException) GoString() string { + return s.String() +} + +func newErrorInvalidPaginationTokenException(v protocol.ResponseMetadata) error { + return &InvalidPaginationTokenException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidPaginationTokenException) Code() string { + return "InvalidPaginationTokenException" +} + +// Message returns the exception's message. +func (s *InvalidPaginationTokenException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidPaginationTokenException) OrigErr() error { + return nil +} + +func (s *InvalidPaginationTokenException) 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 *InvalidPaginationTokenException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidPaginationTokenException) RequestID() string { + return s.RespMetadata.RequestID +} + // An exception for trying to create or access sub-resource that is either invalid // or not supported. Gives http status code of 409. type InvalidTypeException struct { @@ -7529,6 +9070,118 @@ func (s *OptionStatus) SetUpdateVersion(v int64) *OptionStatus { return s } +// Specifies details of an outbound connection. +type OutboundCrossClusterSearchConnection struct { + _ struct{} `type:"structure"` + + // Specifies the connection alias for the outbound cross-cluster search connection. + ConnectionAlias *string `type:"string"` + + // Specifies the OutboundCrossClusterSearchConnectionStatus for the outbound + // connection. + ConnectionStatus *OutboundCrossClusterSearchConnectionStatus `type:"structure"` + + // Specifies the connection id for the outbound cross-cluster search connection. + CrossClusterSearchConnectionId *string `type:"string"` + + // Specifies the DomainInformation for the destination Elasticsearch domain. + DestinationDomainInfo *DomainInformation `type:"structure"` + + // Specifies the DomainInformation for the source Elasticsearch domain. + SourceDomainInfo *DomainInformation `type:"structure"` +} + +// String returns the string representation +func (s OutboundCrossClusterSearchConnection) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OutboundCrossClusterSearchConnection) GoString() string { + return s.String() +} + +// SetConnectionAlias sets the ConnectionAlias field's value. +func (s *OutboundCrossClusterSearchConnection) SetConnectionAlias(v string) *OutboundCrossClusterSearchConnection { + s.ConnectionAlias = &v + return s +} + +// SetConnectionStatus sets the ConnectionStatus field's value. +func (s *OutboundCrossClusterSearchConnection) SetConnectionStatus(v *OutboundCrossClusterSearchConnectionStatus) *OutboundCrossClusterSearchConnection { + s.ConnectionStatus = v + return s +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *OutboundCrossClusterSearchConnection) SetCrossClusterSearchConnectionId(v string) *OutboundCrossClusterSearchConnection { + s.CrossClusterSearchConnectionId = &v + return s +} + +// SetDestinationDomainInfo sets the DestinationDomainInfo field's value. +func (s *OutboundCrossClusterSearchConnection) SetDestinationDomainInfo(v *DomainInformation) *OutboundCrossClusterSearchConnection { + s.DestinationDomainInfo = v + return s +} + +// SetSourceDomainInfo sets the SourceDomainInfo field's value. +func (s *OutboundCrossClusterSearchConnection) SetSourceDomainInfo(v *DomainInformation) *OutboundCrossClusterSearchConnection { + s.SourceDomainInfo = v + return s +} + +// Specifies the connection status of an outbound cross-cluster search connection. +type OutboundCrossClusterSearchConnectionStatus struct { + _ struct{} `type:"structure"` + + // Specifies verbose information for the outbound connection status. + Message *string `type:"string"` + + // The state code for outbound connection. This can be one of the following: + // + // * VALIDATING: The outbound connection request is being validated. + // + // * VALIDATION_FAILED: Validation failed for the connection request. + // + // * PENDING_ACCEPTANCE: Outbound connection request is validated and is + // not yet accepted by destination domain owner. + // + // * PROVISIONING: Outbound connection request is in process. + // + // * ACTIVE: Outbound connection is active and ready to use. + // + // * REJECTED: Outbound connection request is rejected by destination domain + // owner. + // + // * DELETING: Outbound connection deletion is in progress. + // + // * DELETED: Outbound connection is deleted and cannot be used further. + StatusCode *string `type:"string" enum:"OutboundCrossClusterSearchConnectionStatusCode"` +} + +// String returns the string representation +func (s OutboundCrossClusterSearchConnectionStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OutboundCrossClusterSearchConnectionStatus) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *OutboundCrossClusterSearchConnectionStatus) SetMessage(v string) *OutboundCrossClusterSearchConnectionStatus { + s.Message = &v + return s +} + +// SetStatusCode sets the StatusCode field's value. +func (s *OutboundCrossClusterSearchConnectionStatus) SetStatusCode(v string) *OutboundCrossClusterSearchConnectionStatus { + s.StatusCode = &v + return s +} + // Basic information about a package. type PackageDetails struct { _ struct{} `type:"structure"` @@ -7789,6 +9442,74 @@ func (s *RecurringCharge) SetRecurringChargeFrequency(v string) *RecurringCharge return s } +// Container for the parameters to the RejectInboundCrossClusterSearchConnection +// operation. +type RejectInboundCrossClusterSearchConnectionInput struct { + _ struct{} `type:"structure"` + + // The id of the inbound connection that you want to reject. + // + // CrossClusterSearchConnectionId is a required field + CrossClusterSearchConnectionId *string `location:"uri" locationName:"ConnectionId" type:"string" required:"true"` +} + +// String returns the string representation +func (s RejectInboundCrossClusterSearchConnectionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectInboundCrossClusterSearchConnectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RejectInboundCrossClusterSearchConnectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RejectInboundCrossClusterSearchConnectionInput"} + if s.CrossClusterSearchConnectionId == nil { + invalidParams.Add(request.NewErrParamRequired("CrossClusterSearchConnectionId")) + } + if s.CrossClusterSearchConnectionId != nil && len(*s.CrossClusterSearchConnectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CrossClusterSearchConnectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCrossClusterSearchConnectionId sets the CrossClusterSearchConnectionId field's value. +func (s *RejectInboundCrossClusterSearchConnectionInput) SetCrossClusterSearchConnectionId(v string) *RejectInboundCrossClusterSearchConnectionInput { + s.CrossClusterSearchConnectionId = &v + return s +} + +// The result of a RejectInboundCrossClusterSearchConnection operation. Contains +// details of rejected inbound connection. +type RejectInboundCrossClusterSearchConnectionOutput struct { + _ struct{} `type:"structure"` + + // Specifies the InboundCrossClusterSearchConnection of rejected inbound connection. + CrossClusterSearchConnection *InboundCrossClusterSearchConnection `type:"structure"` +} + +// String returns the string representation +func (s RejectInboundCrossClusterSearchConnectionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectInboundCrossClusterSearchConnectionOutput) GoString() string { + return s.String() +} + +// SetCrossClusterSearchConnection sets the CrossClusterSearchConnection field's value. +func (s *RejectInboundCrossClusterSearchConnectionOutput) SetCrossClusterSearchConnection(v *InboundCrossClusterSearchConnection) *RejectInboundCrossClusterSearchConnectionOutput { + s.CrossClusterSearchConnection = v + return s +} + // Container for the parameters to the RemoveTags operation. Specify the ARN // for the Elasticsearch domain from which you want to remove the specified // TagKey. @@ -9434,6 +11155,26 @@ const ( ESWarmPartitionInstanceTypeUltrawarm1LargeElasticsearch = "ultrawarm1.large.elasticsearch" ) +const ( + // InboundCrossClusterSearchConnectionStatusCodePendingAcceptance is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodePendingAcceptance = "PENDING_ACCEPTANCE" + + // InboundCrossClusterSearchConnectionStatusCodeApproved is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodeApproved = "APPROVED" + + // InboundCrossClusterSearchConnectionStatusCodeRejecting is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodeRejecting = "REJECTING" + + // InboundCrossClusterSearchConnectionStatusCodeRejected is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodeRejected = "REJECTED" + + // InboundCrossClusterSearchConnectionStatusCodeDeleting is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodeDeleting = "DELETING" + + // InboundCrossClusterSearchConnectionStatusCodeDeleted is a InboundCrossClusterSearchConnectionStatusCode enum value + InboundCrossClusterSearchConnectionStatusCodeDeleted = "DELETED" +) + // Type of Log File, it can be one of the following: // * INDEX_SLOW_LOGS: Index slow logs contain insert requests that took more // time than configured index query log threshold to execute. @@ -9472,6 +11213,32 @@ const ( OptionStateActive = "Active" ) +const ( + // OutboundCrossClusterSearchConnectionStatusCodePendingAcceptance is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodePendingAcceptance = "PENDING_ACCEPTANCE" + + // OutboundCrossClusterSearchConnectionStatusCodeValidating is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeValidating = "VALIDATING" + + // OutboundCrossClusterSearchConnectionStatusCodeValidationFailed is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeValidationFailed = "VALIDATION_FAILED" + + // OutboundCrossClusterSearchConnectionStatusCodeProvisioning is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeProvisioning = "PROVISIONING" + + // OutboundCrossClusterSearchConnectionStatusCodeActive is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeActive = "ACTIVE" + + // OutboundCrossClusterSearchConnectionStatusCodeRejected is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeRejected = "REJECTED" + + // OutboundCrossClusterSearchConnectionStatusCodeDeleting is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeDeleting = "DELETING" + + // OutboundCrossClusterSearchConnectionStatusCodeDeleted is a OutboundCrossClusterSearchConnectionStatusCode enum value + OutboundCrossClusterSearchConnectionStatusCodeDeleted = "DELETED" +) + const ( // PackageStatusCopying is a PackageStatus enum value PackageStatusCopying = "COPYING" diff --git a/service/elasticsearchservice/elasticsearchserviceiface/interface.go b/service/elasticsearchservice/elasticsearchserviceiface/interface.go index dd4b8122862..a2c497f877a 100644 --- a/service/elasticsearchservice/elasticsearchserviceiface/interface.go +++ b/service/elasticsearchservice/elasticsearchserviceiface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // Amazon Elasticsearch Service. // func myFunc(svc elasticsearchserviceiface.ElasticsearchServiceAPI) bool { -// // Make svc.AddTags request +// // Make svc.AcceptInboundCrossClusterSearchConnection request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockElasticsearchServiceClient struct { // elasticsearchserviceiface.ElasticsearchServiceAPI // } -// func (m *mockElasticsearchServiceClient) AddTags(input *elasticsearchservice.AddTagsInput) (*elasticsearchservice.AddTagsOutput, error) { +// func (m *mockElasticsearchServiceClient) AcceptInboundCrossClusterSearchConnection(input *elasticsearchservice.AcceptInboundCrossClusterSearchConnectionInput) (*elasticsearchservice.AcceptInboundCrossClusterSearchConnectionOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type ElasticsearchServiceAPI interface { + AcceptInboundCrossClusterSearchConnection(*elasticsearchservice.AcceptInboundCrossClusterSearchConnectionInput) (*elasticsearchservice.AcceptInboundCrossClusterSearchConnectionOutput, error) + AcceptInboundCrossClusterSearchConnectionWithContext(aws.Context, *elasticsearchservice.AcceptInboundCrossClusterSearchConnectionInput, ...request.Option) (*elasticsearchservice.AcceptInboundCrossClusterSearchConnectionOutput, error) + AcceptInboundCrossClusterSearchConnectionRequest(*elasticsearchservice.AcceptInboundCrossClusterSearchConnectionInput) (*request.Request, *elasticsearchservice.AcceptInboundCrossClusterSearchConnectionOutput) + AddTags(*elasticsearchservice.AddTagsInput) (*elasticsearchservice.AddTagsOutput, error) AddTagsWithContext(aws.Context, *elasticsearchservice.AddTagsInput, ...request.Option) (*elasticsearchservice.AddTagsOutput, error) AddTagsRequest(*elasticsearchservice.AddTagsInput) (*request.Request, *elasticsearchservice.AddTagsOutput) @@ -76,6 +80,10 @@ type ElasticsearchServiceAPI interface { CreateElasticsearchDomainWithContext(aws.Context, *elasticsearchservice.CreateElasticsearchDomainInput, ...request.Option) (*elasticsearchservice.CreateElasticsearchDomainOutput, error) CreateElasticsearchDomainRequest(*elasticsearchservice.CreateElasticsearchDomainInput) (*request.Request, *elasticsearchservice.CreateElasticsearchDomainOutput) + CreateOutboundCrossClusterSearchConnection(*elasticsearchservice.CreateOutboundCrossClusterSearchConnectionInput) (*elasticsearchservice.CreateOutboundCrossClusterSearchConnectionOutput, error) + CreateOutboundCrossClusterSearchConnectionWithContext(aws.Context, *elasticsearchservice.CreateOutboundCrossClusterSearchConnectionInput, ...request.Option) (*elasticsearchservice.CreateOutboundCrossClusterSearchConnectionOutput, error) + CreateOutboundCrossClusterSearchConnectionRequest(*elasticsearchservice.CreateOutboundCrossClusterSearchConnectionInput) (*request.Request, *elasticsearchservice.CreateOutboundCrossClusterSearchConnectionOutput) + CreatePackage(*elasticsearchservice.CreatePackageInput) (*elasticsearchservice.CreatePackageOutput, error) CreatePackageWithContext(aws.Context, *elasticsearchservice.CreatePackageInput, ...request.Option) (*elasticsearchservice.CreatePackageOutput, error) CreatePackageRequest(*elasticsearchservice.CreatePackageInput) (*request.Request, *elasticsearchservice.CreatePackageOutput) @@ -88,6 +96,14 @@ type ElasticsearchServiceAPI interface { DeleteElasticsearchServiceRoleWithContext(aws.Context, *elasticsearchservice.DeleteElasticsearchServiceRoleInput, ...request.Option) (*elasticsearchservice.DeleteElasticsearchServiceRoleOutput, error) DeleteElasticsearchServiceRoleRequest(*elasticsearchservice.DeleteElasticsearchServiceRoleInput) (*request.Request, *elasticsearchservice.DeleteElasticsearchServiceRoleOutput) + DeleteInboundCrossClusterSearchConnection(*elasticsearchservice.DeleteInboundCrossClusterSearchConnectionInput) (*elasticsearchservice.DeleteInboundCrossClusterSearchConnectionOutput, error) + DeleteInboundCrossClusterSearchConnectionWithContext(aws.Context, *elasticsearchservice.DeleteInboundCrossClusterSearchConnectionInput, ...request.Option) (*elasticsearchservice.DeleteInboundCrossClusterSearchConnectionOutput, error) + DeleteInboundCrossClusterSearchConnectionRequest(*elasticsearchservice.DeleteInboundCrossClusterSearchConnectionInput) (*request.Request, *elasticsearchservice.DeleteInboundCrossClusterSearchConnectionOutput) + + DeleteOutboundCrossClusterSearchConnection(*elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionInput) (*elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionOutput, error) + DeleteOutboundCrossClusterSearchConnectionWithContext(aws.Context, *elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionInput, ...request.Option) (*elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionOutput, error) + DeleteOutboundCrossClusterSearchConnectionRequest(*elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionInput) (*request.Request, *elasticsearchservice.DeleteOutboundCrossClusterSearchConnectionOutput) + DeletePackage(*elasticsearchservice.DeletePackageInput) (*elasticsearchservice.DeletePackageOutput, error) DeletePackageWithContext(aws.Context, *elasticsearchservice.DeletePackageInput, ...request.Option) (*elasticsearchservice.DeletePackageOutput, error) DeletePackageRequest(*elasticsearchservice.DeletePackageInput) (*request.Request, *elasticsearchservice.DeletePackageOutput) @@ -108,6 +124,20 @@ type ElasticsearchServiceAPI interface { DescribeElasticsearchInstanceTypeLimitsWithContext(aws.Context, *elasticsearchservice.DescribeElasticsearchInstanceTypeLimitsInput, ...request.Option) (*elasticsearchservice.DescribeElasticsearchInstanceTypeLimitsOutput, error) DescribeElasticsearchInstanceTypeLimitsRequest(*elasticsearchservice.DescribeElasticsearchInstanceTypeLimitsInput) (*request.Request, *elasticsearchservice.DescribeElasticsearchInstanceTypeLimitsOutput) + DescribeInboundCrossClusterSearchConnections(*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsInput) (*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput, error) + DescribeInboundCrossClusterSearchConnectionsWithContext(aws.Context, *elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsInput, ...request.Option) (*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput, error) + DescribeInboundCrossClusterSearchConnectionsRequest(*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsInput) (*request.Request, *elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput) + + DescribeInboundCrossClusterSearchConnectionsPages(*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsInput, func(*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput, bool) bool) error + DescribeInboundCrossClusterSearchConnectionsPagesWithContext(aws.Context, *elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsInput, func(*elasticsearchservice.DescribeInboundCrossClusterSearchConnectionsOutput, bool) bool, ...request.Option) error + + DescribeOutboundCrossClusterSearchConnections(*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsInput) (*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput, error) + DescribeOutboundCrossClusterSearchConnectionsWithContext(aws.Context, *elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsInput, ...request.Option) (*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput, error) + DescribeOutboundCrossClusterSearchConnectionsRequest(*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsInput) (*request.Request, *elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput) + + DescribeOutboundCrossClusterSearchConnectionsPages(*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsInput, func(*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput, bool) bool) error + DescribeOutboundCrossClusterSearchConnectionsPagesWithContext(aws.Context, *elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsInput, func(*elasticsearchservice.DescribeOutboundCrossClusterSearchConnectionsOutput, bool) bool, ...request.Option) error + DescribePackages(*elasticsearchservice.DescribePackagesInput) (*elasticsearchservice.DescribePackagesOutput, error) DescribePackagesWithContext(aws.Context, *elasticsearchservice.DescribePackagesInput, ...request.Option) (*elasticsearchservice.DescribePackagesOutput, error) DescribePackagesRequest(*elasticsearchservice.DescribePackagesInput) (*request.Request, *elasticsearchservice.DescribePackagesOutput) @@ -188,6 +218,10 @@ type ElasticsearchServiceAPI interface { PurchaseReservedElasticsearchInstanceOfferingWithContext(aws.Context, *elasticsearchservice.PurchaseReservedElasticsearchInstanceOfferingInput, ...request.Option) (*elasticsearchservice.PurchaseReservedElasticsearchInstanceOfferingOutput, error) PurchaseReservedElasticsearchInstanceOfferingRequest(*elasticsearchservice.PurchaseReservedElasticsearchInstanceOfferingInput) (*request.Request, *elasticsearchservice.PurchaseReservedElasticsearchInstanceOfferingOutput) + RejectInboundCrossClusterSearchConnection(*elasticsearchservice.RejectInboundCrossClusterSearchConnectionInput) (*elasticsearchservice.RejectInboundCrossClusterSearchConnectionOutput, error) + RejectInboundCrossClusterSearchConnectionWithContext(aws.Context, *elasticsearchservice.RejectInboundCrossClusterSearchConnectionInput, ...request.Option) (*elasticsearchservice.RejectInboundCrossClusterSearchConnectionOutput, error) + RejectInboundCrossClusterSearchConnectionRequest(*elasticsearchservice.RejectInboundCrossClusterSearchConnectionInput) (*request.Request, *elasticsearchservice.RejectInboundCrossClusterSearchConnectionOutput) + RemoveTags(*elasticsearchservice.RemoveTagsInput) (*elasticsearchservice.RemoveTagsOutput, error) RemoveTagsWithContext(aws.Context, *elasticsearchservice.RemoveTagsInput, ...request.Option) (*elasticsearchservice.RemoveTagsOutput, error) RemoveTagsRequest(*elasticsearchservice.RemoveTagsInput) (*request.Request, *elasticsearchservice.RemoveTagsOutput) diff --git a/service/elasticsearchservice/errors.go b/service/elasticsearchservice/errors.go index d0ca4fe8804..46f3ae0daa4 100644 --- a/service/elasticsearchservice/errors.go +++ b/service/elasticsearchservice/errors.go @@ -43,6 +43,13 @@ const ( // of 500. ErrCodeInternalException = "InternalException" + // ErrCodeInvalidPaginationTokenException for service response error code + // "InvalidPaginationTokenException". + // + // The request processing has failed because of invalid pagination token provided + // by customer. Returns an HTTP status code of 400. + ErrCodeInvalidPaginationTokenException = "InvalidPaginationTokenException" + // ErrCodeInvalidTypeException for service response error code // "InvalidTypeException". // @@ -80,14 +87,15 @@ const ( ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ - "AccessDeniedException": newErrorAccessDeniedException, - "BaseException": newErrorBaseException, - "ConflictException": newErrorConflictException, - "DisabledOperationException": newErrorDisabledOperationException, - "InternalException": newErrorInternalException, - "InvalidTypeException": newErrorInvalidTypeException, - "LimitExceededException": newErrorLimitExceededException, - "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, - "ResourceNotFoundException": newErrorResourceNotFoundException, - "ValidationException": newErrorValidationException, + "AccessDeniedException": newErrorAccessDeniedException, + "BaseException": newErrorBaseException, + "ConflictException": newErrorConflictException, + "DisabledOperationException": newErrorDisabledOperationException, + "InternalException": newErrorInternalException, + "InvalidPaginationTokenException": newErrorInvalidPaginationTokenException, + "InvalidTypeException": newErrorInvalidTypeException, + "LimitExceededException": newErrorLimitExceededException, + "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ValidationException": newErrorValidationException, } diff --git a/service/glue/api.go b/service/glue/api.go index 58312d39b23..3b645e18131 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -24582,7 +24582,9 @@ type GetUserDefinedFunctionsInput struct { // If none is provided, the AWS account ID is used by default. CatalogId *string `min:"1" type:"string"` - // The name of the catalog database where the functions are located. + // The name of the catalog database where the functions are located. If none + // is provided, functions from all the databases across the catalog will be + // returned. DatabaseName *string `min:"1" type:"string"` // The maximum number of functions to return in one response. @@ -33794,6 +33796,9 @@ type UserDefinedFunction struct { // The time at which the function was created. CreateTime *time.Time `type:"timestamp"` + // The name of the database where the function resides. + DatabaseName *string `min:"1" type:"string"` + // The name of the function. FunctionName *string `min:"1" type:"string"` @@ -33829,6 +33834,12 @@ func (s *UserDefinedFunction) SetCreateTime(v time.Time) *UserDefinedFunction { return s } +// SetDatabaseName sets the DatabaseName field's value. +func (s *UserDefinedFunction) SetDatabaseName(v string) *UserDefinedFunction { + s.DatabaseName = &v + return s +} + // SetFunctionName sets the FunctionName field's value. func (s *UserDefinedFunction) SetFunctionName(v string) *UserDefinedFunction { s.FunctionName = &v diff --git a/service/iam/api.go b/service/iam/api.go index eb606e83573..1a854732b6b 100644 --- a/service/iam/api.go +++ b/service/iam/api.go @@ -5326,8 +5326,8 @@ func (c *IAM) GenerateServiceLastAccessedDetailsRequest(input *GenerateServiceLa // see Evaluating Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics) // in the IAM User Guide. // -// For more information about service last accessed data, see Reducing Policy -// Scope by Viewing User Activity (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) +// For more information about service and action last accessed data, see Reducing +// Permissions Using Service Last Accessed Data (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) // in the IAM User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7410,6 +7410,15 @@ func (c *IAM) GetServiceLastAccessedDetailsRequest(input *GetServiceLastAccessed // // By default, the list is sorted by service namespace. // +// If you specified ACTION_LEVEL granularity when you generated the report, +// this operation returns service and action last accessed data. This includes +// the most recent access attempt for each tracked action within a service. +// Otherwise, this operation returns only service data. +// +// For more information about service and action last accessed data, see Reducing +// Permissions Using Service Last Accessed Data (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) +// in the IAM 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. @@ -20346,6 +20355,14 @@ type GenerateServiceLastAccessedDetailsInput struct { // // Arn is a required field Arn *string `min:"20" type:"string" required:"true"` + + // The level of detail that you want to generate. You can specify whether you + // want to generate information about the last attempt to access services or + // actions. If you specify service-level granularity, this operation generates + // only service data. If you specify action-level granularity, it generates + // service and action data. If you don't include this optional parameter, the + // operation generates service data. + Granularity *string `type:"string" enum:"AccessAdvisorUsageGranularityType"` } // String returns the string representation @@ -20380,6 +20397,12 @@ func (s *GenerateServiceLastAccessedDetailsInput) SetArn(v string) *GenerateServ return s } +// SetGranularity sets the Granularity field's value. +func (s *GenerateServiceLastAccessedDetailsInput) SetGranularity(v string) *GenerateServiceLastAccessedDetailsInput { + s.Granularity = &v + return s +} + type GenerateServiceLastAccessedDetailsOutput struct { _ struct{} `type:"structure"` @@ -22358,6 +22381,11 @@ type GetServiceLastAccessedDetailsOutput struct { // JobStatus is a required field JobStatus *string `type:"string" required:"true" enum:"JobStatusType"` + // The type of job. Service jobs return information about when each service + // was last accessed. Action jobs also include information about when tracked + // actions within the service were last accessed. + JobType *string `type:"string" enum:"AccessAdvisorUsageGranularityType"` + // When IsTruncated is true, this element is present and contains the value // to use for the Marker parameter in a subsequent pagination request. Marker *string `type:"string"` @@ -22409,6 +22437,12 @@ func (s *GetServiceLastAccessedDetailsOutput) SetJobStatus(v string) *GetService return s } +// SetJobType sets the JobType field's value. +func (s *GetServiceLastAccessedDetailsOutput) SetJobType(v string) *GetServiceLastAccessedDetailsOutput { + s.JobType = &v + return s +} + // SetMarker sets the Marker field's value. func (s *GetServiceLastAccessedDetailsOutput) SetMarker(v string) *GetServiceLastAccessedDetailsOutput { s.Marker = &v @@ -29462,6 +29496,13 @@ type ServiceLastAccessed struct { // the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). LastAuthenticatedEntity *string `min:"20" type:"string"` + // The Region from which the authenticated entity (user or role) last attempted + // to access the service. AWS does not report unauthenticated requests. + // + // This field is null if no IAM entities attempted to access the service within + // the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). + LastAuthenticatedRegion *string `type:"string"` + // The name of the service in which access was attempted. // // ServiceName is a required field @@ -29486,6 +29527,16 @@ type ServiceLastAccessed struct { // This field is null if no principals attempted to access the service within // the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). TotalAuthenticatedEntities *int64 `type:"integer"` + + // An object that contains details about the most recent attempt to access a + // tracked action within the service. + // + // This field is null if there no tracked actions or if the principal did not + // use the tracked actions within the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). + // This field is also null if the report was generated at the service level + // and not the action level. For more information, see the Granularity field + // in GenerateServiceLastAccessedDetails. + TrackedActionsLastAccessed []*TrackedActionLastAccessed `type:"list"` } // String returns the string representation @@ -29510,6 +29561,12 @@ func (s *ServiceLastAccessed) SetLastAuthenticatedEntity(v string) *ServiceLastA return s } +// SetLastAuthenticatedRegion sets the LastAuthenticatedRegion field's value. +func (s *ServiceLastAccessed) SetLastAuthenticatedRegion(v string) *ServiceLastAccessed { + s.LastAuthenticatedRegion = &v + return s +} + // SetServiceName sets the ServiceName field's value. func (s *ServiceLastAccessed) SetServiceName(v string) *ServiceLastAccessed { s.ServiceName = &v @@ -29528,6 +29585,12 @@ func (s *ServiceLastAccessed) SetTotalAuthenticatedEntities(v int64) *ServiceLas return s } +// SetTrackedActionsLastAccessed sets the TrackedActionsLastAccessed field's value. +func (s *ServiceLastAccessed) SetTrackedActionsLastAccessed(v []*TrackedActionLastAccessed) *ServiceLastAccessed { + s.TrackedActionsLastAccessed = v + return s +} + // Contains the details of a service-specific credential. type ServiceSpecificCredential struct { _ struct{} `type:"structure"` @@ -30313,7 +30376,7 @@ type SimulatePrincipalPolicyInput struct { // one permissions boundary when you pass a policy to this operation. An IAM // entity can only have one permissions boundary in effect at a time. For example, // if a permissions boundary is attached to an entity and you pass in a different - // permissions boundary policy using this parameter, then the new permission + // permissions boundary policy using this parameter, then the new permissions // boundary policy is used for the simulation. For more information about permissions // boundaries, see Permissions Boundaries for IAM Entities (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) // in the IAM User Guide. The policy input is specified as a string containing @@ -30857,6 +30920,75 @@ func (s TagUserOutput) GoString() string { return s.String() } +// Contains details about the most recent attempt to access an action within +// the service. +// +// This data type is used as a response element in the GetServiceLastAccessedDetails +// operation. +type TrackedActionLastAccessed struct { + _ struct{} `type:"structure"` + + // The name of the tracked action to which access was attempted. Tracked actions + // are actions that report activity to IAM. + ActionName *string `type:"string"` + + // The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS resources. + // + // For more information about ARNs, go to Amazon Resource Names (ARNs) and AWS + // Service Namespaces (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) + // in the AWS General Reference. + LastAccessedEntity *string `min:"20" type:"string"` + + // The Region from which the authenticated entity (user or role) last attempted + // to access the tracked action. AWS does not report unauthenticated requests. + // + // This field is null if no IAM entities attempted to access the service within + // the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). + LastAccessedRegion *string `type:"string"` + + // The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601), + // when an authenticated entity most recently attempted to access the tracked + // service. AWS does not report unauthenticated requests. + // + // This field is null if no IAM entities attempted to access the service within + // the reporting period (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period). + LastAccessedTime *time.Time `type:"timestamp"` +} + +// String returns the string representation +func (s TrackedActionLastAccessed) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TrackedActionLastAccessed) GoString() string { + return s.String() +} + +// SetActionName sets the ActionName field's value. +func (s *TrackedActionLastAccessed) SetActionName(v string) *TrackedActionLastAccessed { + s.ActionName = &v + return s +} + +// SetLastAccessedEntity sets the LastAccessedEntity field's value. +func (s *TrackedActionLastAccessed) SetLastAccessedEntity(v string) *TrackedActionLastAccessed { + s.LastAccessedEntity = &v + return s +} + +// SetLastAccessedRegion sets the LastAccessedRegion field's value. +func (s *TrackedActionLastAccessed) SetLastAccessedRegion(v string) *TrackedActionLastAccessed { + s.LastAccessedRegion = &v + return s +} + +// SetLastAccessedTime sets the LastAccessedTime field's value. +func (s *TrackedActionLastAccessed) SetLastAccessedTime(v time.Time) *TrackedActionLastAccessed { + s.LastAccessedTime = &v + return s +} + type UntagRoleInput struct { _ struct{} `type:"structure"` @@ -33066,6 +33198,14 @@ func (s *VirtualMFADevice) SetUser(v *User) *VirtualMFADevice { return s } +const ( + // AccessAdvisorUsageGranularityTypeServiceLevel is a AccessAdvisorUsageGranularityType enum value + AccessAdvisorUsageGranularityTypeServiceLevel = "SERVICE_LEVEL" + + // AccessAdvisorUsageGranularityTypeActionLevel is a AccessAdvisorUsageGranularityType enum value + AccessAdvisorUsageGranularityTypeActionLevel = "ACTION_LEVEL" +) + const ( // AssignmentStatusTypeAssigned is a AssignmentStatusType enum value AssignmentStatusTypeAssigned = "Assigned" diff --git a/service/iam/doc.go b/service/iam/doc.go index 0d709cd275b..13f89fa1900 100644 --- a/service/iam/doc.go +++ b/service/iam/doc.go @@ -3,59 +3,12 @@ // Package iam provides the client and types for making API // requests to AWS Identity and Access Management. // -// AWS Identity and Access Management (IAM) is a web service that you can use -// to manage users and user permissions under your AWS account. This guide provides -// descriptions of IAM actions that you can call programmatically. For general -// information about IAM, see AWS Identity and Access Management (IAM) (http://aws.amazon.com/iam/). -// For the user guide for IAM, see Using IAM (https://docs.aws.amazon.com/IAM/latest/UserGuide/). -// -// AWS provides SDKs that consist of libraries and sample code for various programming -// languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs -// provide a convenient way to create programmatic access to IAM and AWS. For -// example, the SDKs take care of tasks such as cryptographically signing requests -// (see below), managing errors, and retrying requests automatically. For information -// about the AWS SDKs, including how to download and install them, see the Tools -// for Amazon Web Services (http://aws.amazon.com/tools/) page. -// -// We recommend that you use the AWS SDKs to make programmatic API calls to -// IAM. However, you can also use the IAM Query API to make direct calls to -// the IAM web service. To learn more about the IAM Query API, see Making Query -// Requests (https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) -// in the Using IAM guide. IAM supports GET and POST requests for all actions. -// That is, the API does not require you to use GET for some actions and POST -// for others. However, GET requests are subject to the limitation size of a -// URL. Therefore, for operations that require larger sizes, use a POST request. -// -// Signing Requests -// -// Requests must be signed using an access key ID and a secret access key. We -// strongly recommend that you do not use your AWS account access key ID and -// secret access key for everyday work with IAM. You can use the access key -// ID and secret access key for an IAM user or you can use the AWS Security -// Token Service to generate temporary security credentials and use those to -// sign requests. -// -// To sign requests, we recommend that you use Signature Version 4 (https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). -// If you have an existing application that uses Signature Version 2, you do -// not have to update it to use Signature Version 4. However, some operations -// now require Signature Version 4. The documentation for operations that require -// version 4 indicate this requirement. -// -// Additional Resources -// -// For more information, see the following: -// -// * AWS Security Credentials (https://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html). -// This topic provides general information about the types of credentials -// used for accessing AWS. -// -// * IAM Best Practices (https://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPractices.html). -// This topic presents a list of suggestions for using the IAM service to -// help secure your AWS resources. -// -// * Signing AWS API Requests (https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html). -// This set of topics walk you through the process of signing a request using -// an access key ID and secret access key. +// AWS Identity and Access Management (IAM) is a web service for securely controlling +// access to AWS services. With IAM, you can centrally manage users, security +// credentials such as access keys, and permissions that control which AWS resources +// users and applications can access. For more information about IAM, see AWS +// Identity and Access Management (IAM) (http://aws.amazon.com/iam/) and the +// AWS Identity and Access Management User Guide (https://docs.aws.amazon.com/IAM/latest/UserGuide/). // // See https://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08 for more information on this service. // diff --git a/service/mediaconvert/api.go b/service/mediaconvert/api.go index 3e7bff6c792..3a7744b14f2 100644 --- a/service/mediaconvert/api.go +++ b/service/mediaconvert/api.go @@ -3014,7 +3014,8 @@ func (s AssociateCertificateOutput) GoString() string { // codec enum that you choose, define the corresponding settings object. The // following lists the codec enum, settings object pairs. * AAC, AacSettings // * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings -// * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings +// * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings * +// VORBIS, VorbisSettings * OPUS, OpusSettings type AudioCodecSettings struct { _ struct{} `type:"structure"` @@ -3054,6 +3055,14 @@ type AudioCodecSettings struct { // value MP3. Mp3Settings *Mp3Settings `locationName:"mp3Settings" type:"structure"` + // Required when you set Codec, under AudioDescriptions>CodecSettings, to the + // value OPUS. + OpusSettings *OpusSettings `locationName:"opusSettings" type:"structure"` + + // Required when you set Codec, under AudioDescriptions>CodecSettings, to the + // value Vorbis. + VorbisSettings *VorbisSettings `locationName:"vorbisSettings" type:"structure"` + // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value WAV. WavSettings *WavSettings `locationName:"wavSettings" type:"structure"` @@ -3107,6 +3116,16 @@ func (s *AudioCodecSettings) Validate() error { invalidParams.AddNested("Mp3Settings", err.(request.ErrInvalidParams)) } } + if s.OpusSettings != nil { + if err := s.OpusSettings.Validate(); err != nil { + invalidParams.AddNested("OpusSettings", err.(request.ErrInvalidParams)) + } + } + if s.VorbisSettings != nil { + if err := s.VorbisSettings.Validate(); err != nil { + invalidParams.AddNested("VorbisSettings", err.(request.ErrInvalidParams)) + } + } if s.WavSettings != nil { if err := s.WavSettings.Validate(); err != nil { invalidParams.AddNested("WavSettings", err.(request.ErrInvalidParams)) @@ -3167,6 +3186,18 @@ func (s *AudioCodecSettings) SetMp3Settings(v *Mp3Settings) *AudioCodecSettings return s } +// SetOpusSettings sets the OpusSettings field's value. +func (s *AudioCodecSettings) SetOpusSettings(v *OpusSettings) *AudioCodecSettings { + s.OpusSettings = v + return s +} + +// SetVorbisSettings sets the VorbisSettings field's value. +func (s *AudioCodecSettings) SetVorbisSettings(v *VorbisSettings) *AudioCodecSettings { + s.VorbisSettings = v + return s +} + // SetWavSettings sets the WavSettings field's value. func (s *AudioCodecSettings) SetWavSettings(v *WavSettings) *AudioCodecSettings { s.WavSettings = v @@ -3212,7 +3243,8 @@ type AudioDescription struct { // codec enum that you choose, define the corresponding settings object. The // following lists the codec enum, settings object pairs. * AAC, AacSettings // * MP2, Mp2Settings * MP3, Mp3Settings * WAV, WavSettings * AIFF, AiffSettings - // * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings + // * AC3, Ac3Settings * EAC3, Eac3Settings * EAC3_ATMOS, Eac3AtmosSettings * + // VORBIS, VorbisSettings * OPUS, OpusSettings CodecSettings *AudioCodecSettings `locationName:"codecSettings" type:"structure"` // Specify the language for this audio output track. The service puts this language @@ -4632,23 +4664,23 @@ func (s *CaptionSelector) SetSourceSettings(v *CaptionSourceSettings) *CaptionSe } // Ignore this setting unless your input captions format is SCC. To have the -// service compensate for differing framerates between your input captions and -// input video, specify the framerate of the captions file. Specify this value -// as a fraction, using the settings Framerate numerator (framerateNumerator) +// service compensate for differing frame rates between your input captions +// and input video, specify the frame rate of the captions file. Specify this +// value as a fraction, using the settings Framerate numerator (framerateNumerator) // and Framerate denominator (framerateDenominator). For example, you might // specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, // or 30000 / 1001 for 29.97 fps. type CaptionSourceFramerate struct { _ struct{} `type:"structure"` - // Specify the denominator of the fraction that represents the framerate for - // the setting Caption source framerate (CaptionSourceFramerate). Use this setting - // along with the setting Framerate numerator (framerateNumerator). + // Specify the denominator of the fraction that represents the frame rate for + // the setting Caption source frame rate (CaptionSourceFramerate). Use this + // setting along with the setting Framerate numerator (framerateNumerator). FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` - // Specify the numerator of the fraction that represents the framerate for the - // setting Caption source framerate (CaptionSourceFramerate). Use this setting - // along with the setting Framerate denominator (framerateDenominator). + // Specify the numerator of the fraction that represents the frame rate for + // the setting Caption source frame rate (CaptionSourceFramerate). Use this + // setting along with the setting Framerate denominator (framerateDenominator). FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` } @@ -8275,9 +8307,9 @@ type FileSourceSettings struct { Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"FileSourceConvert608To708"` // Ignore this setting unless your input captions format is SCC. To have the - // service compensate for differing framerates between your input captions and - // input video, specify the framerate of the captions file. Specify this value - // as a fraction, using the settings Framerate numerator (framerateNumerator) + // service compensate for differing frame rates between your input captions + // and input video, specify the frame rate of the captions file. Specify this + // value as a fraction, using the settings Framerate numerator (framerateNumerator) // and Framerate denominator (framerateDenominator). For example, you might // specify 24 / 1 for 24 fps, 25 / 1 for 25 fps, 24000 / 1001 for 23.976 fps, // or 30000 / 1001 for 29.97 fps. @@ -8887,7 +8919,8 @@ type H264Settings struct { // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H264FramerateControl"` - // When set to INTERPOLATE, produces smoother motion during frame rate conversion. + // Optional. Specify how the transcoder performs framerate conversion. The default + // behavior is to use duplicate drop conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"H264FramerateConversionAlgorithm"` // When you use the API for transcode jobs that use frame rate conversion, specify @@ -8959,9 +8992,12 @@ type H264Settings struct { // if using B-frames and/or interlaced encoding. NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` - // Using the API, enable ParFollowSource if you want the service to use the - // pixel aspect ratio from the input. Using the console, do this by choosing - // Follow source for Pixel aspect ratio. + // Optional. Specify how the service determines the pixel aspect ratio (PAR) + // for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), + // uses the PAR from your input video for your output. To use a different PAR, + // choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other + // than Follow source. When you choose SPECIFIED for this setting, you must + // also specify values for the parNumerator and parDenominator settings. ParControl *string `locationName:"parControl" type:"string" enum:"H264ParControl"` // Pixel Aspect Ratio denominator. @@ -8970,9 +9006,9 @@ type H264Settings struct { // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` - // Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to - // use fast single-pass, high-quality singlepass, or high-quality multipass - // video encoding. + // Optional. Use Quality tuning level (qualityTuningLevel) to choose how you + // want to trade off encoding speed for output video quality. The default behavior + // is faster, lower quality, single-pass encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H264QualityTuningLevel"` // Settings for quality-defined variable bitrate encoding with the H.264 codec. @@ -9434,7 +9470,7 @@ type H265Settings struct { // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding - // job sepecification as a JSON file without the console, use FramerateControl + // job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame @@ -9509,9 +9545,12 @@ type H265Settings struct { // if using B-frames and/or interlaced encoding. NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` - // Using the API, enable ParFollowSource if you want the service to use the - // pixel aspect ratio from the input. Using the console, do this by choosing - // Follow source for Pixel aspect ratio. + // Optional. Specify how the service determines the pixel aspect ratio (PAR) + // for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), + // uses the PAR from your input video for your output. To use a different PAR, + // choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other + // than Follow source. When you choose SPECIFIED for this setting, you must + // also specify values for the parNumerator and parDenominator settings. ParControl *string `locationName:"parControl" type:"string" enum:"H265ParControl"` // Pixel Aspect Ratio denominator. @@ -9520,9 +9559,9 @@ type H265Settings struct { // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` - // Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to - // use fast single-pass, high-quality singlepass, or high-quality multipass - // video encoding. + // Optional. Use Quality tuning level (qualityTuningLevel) to choose how you + // want to trade off encoding speed for output video quality. The default behavior + // is faster, lower quality, single-pass encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H265QualityTuningLevel"` // Settings for quality-defined variable bitrate encoding with the H.265 codec. @@ -10862,12 +10901,12 @@ type Input struct { AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` // Use Audio selectors (AudioSelectors) to specify a track or set of tracks - // from the input that you will use in your outputs. You can use mutiple Audio + // from the input that you will use in your outputs. You can use multiple Audio // selectors per input. AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` // Use Captions selectors (CaptionSelectors) to specify the captions data from - // the input that you will use in your outputs. You can use mutiple captions + // the input that you will use in your outputs. You can use multiple captions // selectors per input. CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` @@ -10878,7 +10917,7 @@ type Input struct { Crop *Rectangle `locationName:"crop" type:"structure"` // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. - // Default is disabled. Only manaully controllable for MPEG2 and uncompressed + // Default is disabled. Only manually controllable for MPEG2 and uncompressed // video inputs. DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` @@ -11310,12 +11349,12 @@ type InputTemplate struct { AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` // Use Audio selectors (AudioSelectors) to specify a track or set of tracks - // from the input that you will use in your outputs. You can use mutiple Audio + // from the input that you will use in your outputs. You can use multiple Audio // selectors per input. AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` // Use Captions selectors (CaptionSelectors) to specify the captions data from - // the input that you will use in your outputs. You can use mutiple captions + // the input that you will use in your outputs. You can use multiple captions // selectors per input. CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` @@ -11326,7 +11365,7 @@ type InputTemplate struct { Crop *Rectangle `locationName:"crop" type:"structure"` // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. - // Default is disabled. Only manaully controllable for MPEG2 and uncompressed + // Default is disabled. Only manually controllable for MPEG2 and uncompressed // video inputs. DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` @@ -14373,14 +14412,15 @@ type Mpeg2Settings struct { // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding - // job sepecification as a JSON file without the console, use FramerateControl + // job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"Mpeg2FramerateControl"` - // When set to INTERPOLATE, produces smoother motion during frame rate conversion. + // Optional. Specify how the transcoder performs framerate conversion. The default + // behavior is to use duplicate drop conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"Mpeg2FramerateConversionAlgorithm"` // Frame rate denominator. @@ -14445,9 +14485,12 @@ type Mpeg2Settings struct { // Number of B-frames between reference frames. NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` - // Using the API, enable ParFollowSource if you want the service to use the - // pixel aspect ratio from the input. Using the console, do this by choosing - // Follow source for Pixel aspect ratio. + // Optional. Specify how the service determines the pixel aspect ratio (PAR) + // for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), + // uses the PAR from your input video for your output. To use a different PAR, + // choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other + // than Follow source. When you choose SPECIFIED for this setting, you must + // also specify values for the parNumerator and parDenominator settings. ParControl *string `locationName:"parControl" type:"string" enum:"Mpeg2ParControl"` // Pixel Aspect Ratio denominator. @@ -14456,8 +14499,9 @@ type Mpeg2Settings struct { // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` - // Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to - // use single-pass or multipass video encoding. + // Optional. Use Quality tuning level (qualityTuningLevel) to choose how you + // want to trade off encoding speed for output video quality. The default behavior + // is faster, lower quality, single-pass encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"Mpeg2QualityTuningLevel"` // Use Rate control mode (Mpeg2RateControlMode) to specifiy whether the bitrate @@ -15158,6 +15202,12 @@ type NoiseReducerTemporalFilterSettings struct { // and creates better VQ for low bitrate outputs. AggressiveMode *int64 `locationName:"aggressiveMode" type:"integer"` + // Optional. When you set Noise reducer (noiseReducer) to Temporal (TEMPORAL), + // you can optionally use this setting to apply additional sharpening. The default + // behavior, Auto (AUTO) allows the transcoder to determine whether to apply + // filtering, depending on input type and quality. + PostTemporalSharpening *string `locationName:"postTemporalSharpening" type:"string" enum:"NoiseFilterPostTemporalSharpening"` + // The speed of the filter (higher number is faster). Low setting reduces bit // rate at the cost of transcode time, high setting improves transcode time // at the cost of bit rate. @@ -15200,6 +15250,12 @@ func (s *NoiseReducerTemporalFilterSettings) SetAggressiveMode(v int64) *NoiseRe return s } +// SetPostTemporalSharpening sets the PostTemporalSharpening field's value. +func (s *NoiseReducerTemporalFilterSettings) SetPostTemporalSharpening(v string) *NoiseReducerTemporalFilterSettings { + s.PostTemporalSharpening = &v + return s +} + // SetSpeed sets the Speed field's value. func (s *NoiseReducerTemporalFilterSettings) SetSpeed(v int64) *NoiseReducerTemporalFilterSettings { s.Speed = &v @@ -15267,6 +15323,73 @@ func (s *NotFoundException) RequestID() string { return s.RespMetadata.RequestID } +// Required when you set Codec, under AudioDescriptions>CodecSettings, to the +// value OPUS. +type OpusSettings struct { + _ struct{} `type:"structure"` + + // Optional. Specify the average bitrate in bits per second. Valid values are + // multiples of 8000, from 32000 through 192000. The default value is 96000, + // which we recommend for quality and bandwidth. + Bitrate *int64 `locationName:"bitrate" min:"32000" type:"integer"` + + // Specify the number of channels in this output audio track. Choosing Mono + // on the console gives you 1 output channel; choosing Stereo gives you 2. In + // the API, valid values are 1 and 2. + Channels *int64 `locationName:"channels" min:"1" type:"integer"` + + // Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The + // default value is 48000. + SampleRate *int64 `locationName:"sampleRate" min:"16000" type:"integer"` +} + +// String returns the string representation +func (s OpusSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpusSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OpusSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OpusSettings"} + if s.Bitrate != nil && *s.Bitrate < 32000 { + invalidParams.Add(request.NewErrParamMinValue("Bitrate", 32000)) + } + if s.Channels != nil && *s.Channels < 1 { + invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) + } + if s.SampleRate != nil && *s.SampleRate < 16000 { + invalidParams.Add(request.NewErrParamMinValue("SampleRate", 16000)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBitrate sets the Bitrate field's value. +func (s *OpusSettings) SetBitrate(v int64) *OpusSettings { + s.Bitrate = &v + return s +} + +// SetChannels sets the Channels field's value. +func (s *OpusSettings) SetChannels(v int64) *OpusSettings { + s.Channels = &v + return s +} + +// SetSampleRate sets the SampleRate field's value. +func (s *OpusSettings) SetSampleRate(v int64) *OpusSettings { + s.SampleRate = &v + return s +} + // An output object describes the settings for a single output file or stream // in an output group. type Output struct { @@ -15288,8 +15411,9 @@ type Output struct { // Use Extension (Extension) to specify the file extension for outputs in File // output groups. If you do not specify a value, the service will use default // extensions by container type as follows * MPEG-2 transport stream, m2ts * - // Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * No Container, - // the service will use codec extensions (e.g. AAC, H265, H265, AC3) + // Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * WebM container, + // webm * No Container, the service will use codec extensions (e.g. AAC, H265, + // H265, AC3) Extension *string `locationName:"extension" type:"string"` // Use Name modifier (NameModifier) to have the service add a string to the @@ -15913,14 +16037,15 @@ type ProresSettings struct { // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding - // job sepecification as a JSON file without the console, use FramerateControl + // job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"ProresFramerateControl"` - // When set to INTERPOLATE, produces smoother motion during frame rate conversion. + // Optional. Specify how the transcoder performs framerate conversion. The default + // behavior is to use duplicate drop conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"ProresFramerateConversionAlgorithm"` // Frame rate denominator. @@ -15945,11 +16070,12 @@ type ProresSettings struct { // on which of the Follow options you chose. InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"ProresInterlaceMode"` - // Use (ProresParControl) to specify how the service determines the pixel aspect - // ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect - // ratio from the input. To specify a different pixel aspect ratio: Using the - // console, choose it from the dropdown menu. Using the API, set ProresParControl - // to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). + // Optional. Specify how the service determines the pixel aspect ratio (PAR) + // for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), + // uses the PAR from your input video for your output. To use a different PAR, + // choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other + // than Follow source. When you choose SPECIFIED for this setting, you must + // also specify values for the parNumerator and parDenominator settings. ParControl *string `locationName:"parControl" type:"string" enum:"ProresParControl"` // Pixel Aspect Ratio denominator. @@ -17853,7 +17979,8 @@ func (s *UpdateQueueOutput) SetQueue(v *Queue) *UpdateQueueOutput { // each codec enum that you choose, define the corresponding settings object. // The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, // FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings -// * MPEG2, Mpeg2Settings * PRORES, ProresSettings +// * MPEG2, Mpeg2Settings * PRORES, ProresSettings * VP8, Vp8Settings * VP9, +// Vp9Settings type VideoCodecSettings struct { _ struct{} `type:"structure"` @@ -17883,6 +18010,14 @@ type VideoCodecSettings struct { // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value PRORES. ProresSettings *ProresSettings `locationName:"proresSettings" type:"structure"` + + // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to + // the value VP8. + Vp8Settings *Vp8Settings `locationName:"vp8Settings" type:"structure"` + + // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to + // the value VP9. + Vp9Settings *Vp9Settings `locationName:"vp9Settings" type:"structure"` } // String returns the string representation @@ -17928,6 +18063,16 @@ func (s *VideoCodecSettings) Validate() error { invalidParams.AddNested("ProresSettings", err.(request.ErrInvalidParams)) } } + if s.Vp8Settings != nil { + if err := s.Vp8Settings.Validate(); err != nil { + invalidParams.AddNested("Vp8Settings", err.(request.ErrInvalidParams)) + } + } + if s.Vp9Settings != nil { + if err := s.Vp9Settings.Validate(); err != nil { + invalidParams.AddNested("Vp9Settings", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -17977,6 +18122,18 @@ func (s *VideoCodecSettings) SetProresSettings(v *ProresSettings) *VideoCodecSet return s } +// SetVp8Settings sets the Vp8Settings field's value. +func (s *VideoCodecSettings) SetVp8Settings(v *Vp8Settings) *VideoCodecSettings { + s.Vp8Settings = v + return s +} + +// SetVp9Settings sets the Vp9Settings field's value. +func (s *VideoCodecSettings) SetVp9Settings(v *Vp9Settings) *VideoCodecSettings { + s.Vp9Settings = v + return s +} + // Settings for video outputs type VideoDescription struct { _ struct{} `type:"structure"` @@ -18000,7 +18157,8 @@ type VideoDescription struct { // each codec enum that you choose, define the corresponding settings object. // The following lists the codec enum, settings object pairs. * FRAME_CAPTURE, // FrameCaptureSettings * AV1, Av1Settings * H_264, H264Settings * H_265, H265Settings - // * MPEG2, Mpeg2Settings * PRORES, ProresSettings + // * MPEG2, Mpeg2Settings * PRORES, ProresSettings * VP8, Vp8Settings * VP9, + // Vp9Settings CodecSettings *VideoCodecSettings `locationName:"codecSettings" type:"structure"` // Choose Insert (INSERT) for this setting to include color metadata in this @@ -18497,6 +18655,484 @@ func (s *VideoSelector) SetRotate(v string) *VideoSelector { return s } +// Required when you set Codec, under AudioDescriptions>CodecSettings, to the +// value Vorbis. +type VorbisSettings struct { + _ struct{} `type:"structure"` + + // Optional. Specify the number of channels in this output audio track. Choosing + // Mono on the console gives you 1 output channel; choosing Stereo gives you + // 2. In the API, valid values are 1 and 2. The default value is 2. + Channels *int64 `locationName:"channels" min:"1" type:"integer"` + + // Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, + // 44100, and 48000. The default value is 48000. + SampleRate *int64 `locationName:"sampleRate" min:"22050" type:"integer"` + + // Optional. Specify the variable audio quality of this Vorbis output from -1 + // (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default + // value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, + // respectively. + VbrQuality *int64 `locationName:"vbrQuality" type:"integer"` +} + +// String returns the string representation +func (s VorbisSettings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VorbisSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VorbisSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VorbisSettings"} + if s.Channels != nil && *s.Channels < 1 { + invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) + } + if s.SampleRate != nil && *s.SampleRate < 22050 { + invalidParams.Add(request.NewErrParamMinValue("SampleRate", 22050)) + } + if s.VbrQuality != nil && *s.VbrQuality < -1 { + invalidParams.Add(request.NewErrParamMinValue("VbrQuality", -1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannels sets the Channels field's value. +func (s *VorbisSettings) SetChannels(v int64) *VorbisSettings { + s.Channels = &v + return s +} + +// SetSampleRate sets the SampleRate field's value. +func (s *VorbisSettings) SetSampleRate(v int64) *VorbisSettings { + s.SampleRate = &v + return s +} + +// SetVbrQuality sets the VbrQuality field's value. +func (s *VorbisSettings) SetVbrQuality(v int64) *VorbisSettings { + s.VbrQuality = &v + return s +} + +// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to +// the value VP8. +type Vp8Settings struct { + _ struct{} `type:"structure"` + + // Target bitrate in bits/second. For example, enter five megabits per second + // as 5000000. + Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` + + // If you are using the console, use the Framerate setting to specify the frame + // rate for this output. If you want to keep the same frame rate as the input + // video, choose Follow source. If you want to do frame rate conversion, choose + // a frame rate from the dropdown list or choose Custom. The framerates shown + // in the dropdown list are decimal approximations of fractions. If you choose + // Custom, specify your frame rate as a fraction. If you are creating your transcoding + // job specification as a JSON file without the console, use FramerateControl + // to specify which value the service uses for the frame rate for this output. + // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate + // from the input. Choose SPECIFIED if you want the service to use the frame + // rate you specify in the settings FramerateNumerator and FramerateDenominator. + FramerateControl *string `locationName:"framerateControl" type:"string" enum:"Vp8FramerateControl"` + + // Optional. Specify how the transcoder performs framerate conversion. The default + // behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose + // Interpolate (INTERPOLATE) instead, the conversion produces smoother motion. + FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"Vp8FramerateConversionAlgorithm"` + + // When you use the API for transcode jobs that use frame rate conversion, specify + // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use + // FramerateDenominator to specify the denominator of this fraction. In this + // example, use 1001 for the value of FramerateDenominator. When you use the + // console for transcode jobs that use frame rate conversion, provide the value + // as a decimal number for Framerate. In this example, specify 23.976. + FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` + + // When you use the API for transcode jobs that use frame rate conversion, specify + // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use + // FramerateNumerator to specify the numerator of this fraction. In this example, + // use 24000 for the value of FramerateNumerator. When you use the console for + // transcode jobs that use frame rate conversion, provide the value as a decimal + // number for Framerate. In this example, specify 23.976. + FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` + + // GOP Length (keyframe interval) in frames. Must be greater than zero. + GopSize *float64 `locationName:"gopSize" type:"double"` + + // Optional. Size of buffer (HRD buffer model) in bits. For example, enter five + // megabits as 5000000. + HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` + + // Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional. + // Specify the maximum bitrate in bits/second. For example, enter five megabits + // per second as 5000000. The default behavior uses twice the target bitrate + // as the maximum bitrate. + MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` + + // Optional. Specify how the service determines the pixel aspect ratio (PAR) + // for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), + // uses the PAR from your input video for your output. To specify a different + // PAR in the console, choose any value other than Follow source. To specify + // a different PAR by editing the JSON job specification, choose SPECIFIED. + // When you choose SPECIFIED for this setting, you must also specify values + // for the parNumerator and parDenominator settings. + ParControl *string `locationName:"parControl" type:"string" enum:"Vp8ParControl"` + + // Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the + // console, this corresponds to any value other than Follow source. When you + // specify an output pixel aspect ratio (PAR) that is different from your input + // video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC + // widescreen, you would specify the ratio 40:33. In this example, the value + // for parDenominator is 33. + ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` + + // Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the + // console, this corresponds to any value other than Follow source. When you + // specify an output pixel aspect ratio (PAR) that is different from your input + // video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC + // widescreen, you would specify the ratio 40:33. In this example, the value + // for parNumerator is 40. + ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` + + // Optional. Use Quality tuning level (qualityTuningLevel) to choose how you + // want to trade off encoding speed for output video quality. The default behavior + // is faster, lower quality, multi-pass encoding. + QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"Vp8QualityTuningLevel"` + + // With the VP8 codec, you can use only the variable bitrate (VBR) rate control + // mode. + RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"Vp8RateControlMode"` +} + +// String returns the string representation +func (s Vp8Settings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Vp8Settings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Vp8Settings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Vp8Settings"} + if s.Bitrate != nil && *s.Bitrate < 1000 { + invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) + } + if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { + invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) + } + if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { + invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) + } + if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { + invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) + } + if s.ParDenominator != nil && *s.ParDenominator < 1 { + invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) + } + if s.ParNumerator != nil && *s.ParNumerator < 1 { + invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBitrate sets the Bitrate field's value. +func (s *Vp8Settings) SetBitrate(v int64) *Vp8Settings { + s.Bitrate = &v + return s +} + +// SetFramerateControl sets the FramerateControl field's value. +func (s *Vp8Settings) SetFramerateControl(v string) *Vp8Settings { + s.FramerateControl = &v + return s +} + +// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. +func (s *Vp8Settings) SetFramerateConversionAlgorithm(v string) *Vp8Settings { + s.FramerateConversionAlgorithm = &v + return s +} + +// SetFramerateDenominator sets the FramerateDenominator field's value. +func (s *Vp8Settings) SetFramerateDenominator(v int64) *Vp8Settings { + s.FramerateDenominator = &v + return s +} + +// SetFramerateNumerator sets the FramerateNumerator field's value. +func (s *Vp8Settings) SetFramerateNumerator(v int64) *Vp8Settings { + s.FramerateNumerator = &v + return s +} + +// SetGopSize sets the GopSize field's value. +func (s *Vp8Settings) SetGopSize(v float64) *Vp8Settings { + s.GopSize = &v + return s +} + +// SetHrdBufferSize sets the HrdBufferSize field's value. +func (s *Vp8Settings) SetHrdBufferSize(v int64) *Vp8Settings { + s.HrdBufferSize = &v + return s +} + +// SetMaxBitrate sets the MaxBitrate field's value. +func (s *Vp8Settings) SetMaxBitrate(v int64) *Vp8Settings { + s.MaxBitrate = &v + return s +} + +// SetParControl sets the ParControl field's value. +func (s *Vp8Settings) SetParControl(v string) *Vp8Settings { + s.ParControl = &v + return s +} + +// SetParDenominator sets the ParDenominator field's value. +func (s *Vp8Settings) SetParDenominator(v int64) *Vp8Settings { + s.ParDenominator = &v + return s +} + +// SetParNumerator sets the ParNumerator field's value. +func (s *Vp8Settings) SetParNumerator(v int64) *Vp8Settings { + s.ParNumerator = &v + return s +} + +// SetQualityTuningLevel sets the QualityTuningLevel field's value. +func (s *Vp8Settings) SetQualityTuningLevel(v string) *Vp8Settings { + s.QualityTuningLevel = &v + return s +} + +// SetRateControlMode sets the RateControlMode field's value. +func (s *Vp8Settings) SetRateControlMode(v string) *Vp8Settings { + s.RateControlMode = &v + return s +} + +// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to +// the value VP9. +type Vp9Settings struct { + _ struct{} `type:"structure"` + + // Target bitrate in bits/second. For example, enter five megabits per second + // as 5000000. + Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` + + // If you are using the console, use the Framerate setting to specify the frame + // rate for this output. If you want to keep the same frame rate as the input + // video, choose Follow source. If you want to do frame rate conversion, choose + // a frame rate from the dropdown list or choose Custom. The framerates shown + // in the dropdown list are decimal approximations of fractions. If you choose + // Custom, specify your frame rate as a fraction. If you are creating your transcoding + // job specification as a JSON file without the console, use FramerateControl + // to specify which value the service uses for the frame rate for this output. + // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate + // from the input. Choose SPECIFIED if you want the service to use the frame + // rate you specify in the settings FramerateNumerator and FramerateDenominator. + FramerateControl *string `locationName:"framerateControl" type:"string" enum:"Vp9FramerateControl"` + + // Optional. Specify how the transcoder performs framerate conversion. The default + // behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose + // Interpolate (INTERPOLATE) instead, the conversion produces smoother motion. + FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"Vp9FramerateConversionAlgorithm"` + + // When you use the API for transcode jobs that use frame rate conversion, specify + // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use + // FramerateDenominator to specify the denominator of this fraction. In this + // example, use 1001 for the value of FramerateDenominator. When you use the + // console for transcode jobs that use frame rate conversion, provide the value + // as a decimal number for Framerate. In this example, specify 23.976. + FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` + + // When you use the API for transcode jobs that use frame rate conversion, specify + // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use + // FramerateNumerator to specify the numerator of this fraction. In this example, + // use 24000 for the value of FramerateNumerator. When you use the console for + // transcode jobs that use frame rate conversion, provide the value as a decimal + // number for Framerate. In this example, specify 23.976. + FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` + + // GOP Length (keyframe interval) in frames. Must be greater than zero. + GopSize *float64 `locationName:"gopSize" type:"double"` + + // Size of buffer (HRD buffer model) in bits. For example, enter five megabits + // as 5000000. + HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` + + // Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional. + // Specify the maximum bitrate in bits/second. For example, enter five megabits + // per second as 5000000. The default behavior uses twice the target bitrate + // as the maximum bitrate. + MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` + + // Optional. Specify how the service determines the pixel aspect ratio for this + // output. The default behavior is to use the same pixel aspect ratio as your + // input video. + ParControl *string `locationName:"parControl" type:"string" enum:"Vp9ParControl"` + + // Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the + // console, this corresponds to any value other than Follow source. When you + // specify an output pixel aspect ratio (PAR) that is different from your input + // video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC + // widescreen, you would specify the ratio 40:33. In this example, the value + // for parDenominator is 33. + ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` + + // Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the + // console, this corresponds to any value other than Follow source. When you + // specify an output pixel aspect ratio (PAR) that is different from your input + // video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC + // widescreen, you would specify the ratio 40:33. In this example, the value + // for parNumerator is 40. + ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` + + // Optional. Use Quality tuning level (qualityTuningLevel) to choose how you + // want to trade off encoding speed for output video quality. The default behavior + // is faster, lower quality, multi-pass encoding. + QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"Vp9QualityTuningLevel"` + + // With the VP9 codec, you can use only the variable bitrate (VBR) rate control + // mode. + RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"Vp9RateControlMode"` +} + +// String returns the string representation +func (s Vp9Settings) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Vp9Settings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Vp9Settings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Vp9Settings"} + if s.Bitrate != nil && *s.Bitrate < 1000 { + invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) + } + if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { + invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) + } + if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { + invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) + } + if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { + invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) + } + if s.ParDenominator != nil && *s.ParDenominator < 1 { + invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) + } + if s.ParNumerator != nil && *s.ParNumerator < 1 { + invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBitrate sets the Bitrate field's value. +func (s *Vp9Settings) SetBitrate(v int64) *Vp9Settings { + s.Bitrate = &v + return s +} + +// SetFramerateControl sets the FramerateControl field's value. +func (s *Vp9Settings) SetFramerateControl(v string) *Vp9Settings { + s.FramerateControl = &v + return s +} + +// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. +func (s *Vp9Settings) SetFramerateConversionAlgorithm(v string) *Vp9Settings { + s.FramerateConversionAlgorithm = &v + return s +} + +// SetFramerateDenominator sets the FramerateDenominator field's value. +func (s *Vp9Settings) SetFramerateDenominator(v int64) *Vp9Settings { + s.FramerateDenominator = &v + return s +} + +// SetFramerateNumerator sets the FramerateNumerator field's value. +func (s *Vp9Settings) SetFramerateNumerator(v int64) *Vp9Settings { + s.FramerateNumerator = &v + return s +} + +// SetGopSize sets the GopSize field's value. +func (s *Vp9Settings) SetGopSize(v float64) *Vp9Settings { + s.GopSize = &v + return s +} + +// SetHrdBufferSize sets the HrdBufferSize field's value. +func (s *Vp9Settings) SetHrdBufferSize(v int64) *Vp9Settings { + s.HrdBufferSize = &v + return s +} + +// SetMaxBitrate sets the MaxBitrate field's value. +func (s *Vp9Settings) SetMaxBitrate(v int64) *Vp9Settings { + s.MaxBitrate = &v + return s +} + +// SetParControl sets the ParControl field's value. +func (s *Vp9Settings) SetParControl(v string) *Vp9Settings { + s.ParControl = &v + return s +} + +// SetParDenominator sets the ParDenominator field's value. +func (s *Vp9Settings) SetParDenominator(v int64) *Vp9Settings { + s.ParDenominator = &v + return s +} + +// SetParNumerator sets the ParNumerator field's value. +func (s *Vp9Settings) SetParNumerator(v int64) *Vp9Settings { + s.ParNumerator = &v + return s +} + +// SetQualityTuningLevel sets the QualityTuningLevel field's value. +func (s *Vp9Settings) SetQualityTuningLevel(v string) *Vp9Settings { + s.QualityTuningLevel = &v + return s +} + +// SetRateControlMode sets the RateControlMode field's value. +func (s *Vp9Settings) SetRateControlMode(v string) *Vp9Settings { + s.RateControlMode = &v + return s +} + // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value WAV. type WavSettings struct { @@ -18877,6 +19513,12 @@ const ( // AudioCodecEac3Atmos is a AudioCodec enum value AudioCodecEac3Atmos = "EAC3_ATMOS" + // AudioCodecVorbis is a AudioCodec enum value + AudioCodecVorbis = "VORBIS" + + // AudioCodecOpus is a AudioCodec enum value + AudioCodecOpus = "OPUS" + // AudioCodecPassthrough is a AudioCodec enum value AudioCodecPassthrough = "PASSTHROUGH" ) @@ -19526,6 +20168,9 @@ const ( // ContainerTypeMxf is a ContainerType enum value ContainerTypeMxf = "MXF" + // ContainerTypeWebm is a ContainerType enum value + ContainerTypeWebm = "WEBM" + // ContainerTypeRaw is a ContainerType enum value ContainerTypeRaw = "RAW" ) @@ -20335,7 +20980,8 @@ const ( H264FramerateControlSpecified = "SPECIFIED" ) -// When set to INTERPOLATE, produces smoother motion during frame rate conversion. +// Optional. Specify how the transcoder performs framerate conversion. The default +// behavior is to use duplicate drop conversion. const ( // H264FramerateConversionAlgorithmDuplicateDrop is a H264FramerateConversionAlgorithm enum value H264FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" @@ -20392,9 +21038,12 @@ const ( H264InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) -// Using the API, enable ParFollowSource if you want the service to use the -// pixel aspect ratio from the input. Using the console, do this by choosing -// Follow source for Pixel aspect ratio. +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To use a different PAR, +// choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other +// than Follow source. When you choose SPECIFIED for this setting, you must +// also specify values for the parNumerator and parDenominator settings. const ( // H264ParControlInitializeFromSource is a H264ParControl enum value H264ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" @@ -20403,9 +21052,9 @@ const ( H264ParControlSpecified = "SPECIFIED" ) -// Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to -// use fast single-pass, high-quality singlepass, or high-quality multipass -// video encoding. +// Optional. Use Quality tuning level (qualityTuningLevel) to choose how you +// want to trade off encoding speed for output video quality. The default behavior +// is faster, lower quality, single-pass encoding. const ( // H264QualityTuningLevelSinglePass is a H264QualityTuningLevel enum value H264QualityTuningLevelSinglePass = "SINGLE_PASS" @@ -20655,7 +21304,7 @@ const ( // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding -// job sepecification as a JSON file without the console, use FramerateControl +// job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame @@ -20726,9 +21375,12 @@ const ( H265InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) -// Using the API, enable ParFollowSource if you want the service to use the -// pixel aspect ratio from the input. Using the console, do this by choosing -// Follow source for Pixel aspect ratio. +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To use a different PAR, +// choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other +// than Follow source. When you choose SPECIFIED for this setting, you must +// also specify values for the parNumerator and parDenominator settings. const ( // H265ParControlInitializeFromSource is a H265ParControl enum value H265ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" @@ -20737,9 +21389,9 @@ const ( H265ParControlSpecified = "SPECIFIED" ) -// Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to -// use fast single-pass, high-quality singlepass, or high-quality multipass -// video encoding. +// Optional. Use Quality tuning level (qualityTuningLevel) to choose how you +// want to trade off encoding speed for output video quality. The default behavior +// is faster, lower quality, single-pass encoding. const ( // H265QualityTuningLevelSinglePass is a H265QualityTuningLevel enum value H265QualityTuningLevelSinglePass = "SINGLE_PASS" @@ -21127,7 +21779,7 @@ const ( ) // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. -// Default is disabled. Only manaully controllable for MPEG2 and uncompressed +// Default is disabled. Only manually controllable for MPEG2 and uncompressed // video inputs. const ( // InputDeblockFilterEnabled is a InputDeblockFilter enum value @@ -22253,7 +22905,7 @@ const ( // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding -// job sepecification as a JSON file without the console, use FramerateControl +// job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame @@ -22266,7 +22918,8 @@ const ( Mpeg2FramerateControlSpecified = "SPECIFIED" ) -// When set to INTERPOLATE, produces smoother motion during frame rate conversion. +// Optional. Specify how the transcoder performs framerate conversion. The default +// behavior is to use duplicate drop conversion. const ( // Mpeg2FramerateConversionAlgorithmDuplicateDrop is a Mpeg2FramerateConversionAlgorithm enum value Mpeg2FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" @@ -22334,9 +22987,12 @@ const ( Mpeg2IntraDcPrecisionIntraDcPrecision11 = "INTRA_DC_PRECISION_11" ) -// Using the API, enable ParFollowSource if you want the service to use the -// pixel aspect ratio from the input. Using the console, do this by choosing -// Follow source for Pixel aspect ratio. +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To use a different PAR, +// choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other +// than Follow source. When you choose SPECIFIED for this setting, you must +// also specify values for the parNumerator and parDenominator settings. const ( // Mpeg2ParControlInitializeFromSource is a Mpeg2ParControl enum value Mpeg2ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" @@ -22345,8 +23001,9 @@ const ( Mpeg2ParControlSpecified = "SPECIFIED" ) -// Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to -// use single-pass or multipass video encoding. +// Optional. Use Quality tuning level (qualityTuningLevel) to choose how you +// want to trade off encoding speed for output video quality. The default behavior +// is faster, lower quality, single-pass encoding. const ( // Mpeg2QualityTuningLevelSinglePass is a Mpeg2QualityTuningLevel enum value Mpeg2QualityTuningLevelSinglePass = "SINGLE_PASS" @@ -22466,6 +23123,21 @@ const ( MxfAfdSignalingCopyFromVideo = "COPY_FROM_VIDEO" ) +// Optional. When you set Noise reducer (noiseReducer) to Temporal (TEMPORAL), +// you can optionally use this setting to apply additional sharpening. The default +// behavior, Auto (AUTO) allows the transcoder to determine whether to apply +// filtering, depending on input type and quality. +const ( + // NoiseFilterPostTemporalSharpeningDisabled is a NoiseFilterPostTemporalSharpening enum value + NoiseFilterPostTemporalSharpeningDisabled = "DISABLED" + + // NoiseFilterPostTemporalSharpeningEnabled is a NoiseFilterPostTemporalSharpening enum value + NoiseFilterPostTemporalSharpeningEnabled = "ENABLED" + + // NoiseFilterPostTemporalSharpeningAuto is a NoiseFilterPostTemporalSharpening enum value + NoiseFilterPostTemporalSharpeningAuto = "AUTO" +) + // Use Noise reducer filter (NoiseReducerFilter) to select one of the following // spatial image filtering functions. To use this setting, you must also enable // Noise reducer (NoiseReducer). * Bilateral preserves edges while reducing @@ -22597,7 +23269,7 @@ const ( // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding -// job sepecification as a JSON file without the console, use FramerateControl +// job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame @@ -22610,7 +23282,8 @@ const ( ProresFramerateControlSpecified = "SPECIFIED" ) -// When set to INTERPOLATE, produces smoother motion during frame rate conversion. +// Optional. Specify how the transcoder performs framerate conversion. The default +// behavior is to use duplicate drop conversion. const ( // ProresFramerateConversionAlgorithmDuplicateDrop is a ProresFramerateConversionAlgorithm enum value ProresFramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" @@ -22647,11 +23320,12 @@ const ( ProresInterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) -// Use (ProresParControl) to specify how the service determines the pixel aspect -// ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect -// ratio from the input. To specify a different pixel aspect ratio: Using the -// console, choose it from the dropdown menu. Using the API, set ProresParControl -// to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To use a different PAR, +// choose (SPECIFIED). In the console, SPECIFIED corresponds to any value other +// than Follow source. When you choose SPECIFIED for this setting, you must +// also specify values for the parNumerator and parDenominator settings. const ( // ProresParControlInitializeFromSource is a ProresParControl enum value ProresParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" @@ -22994,6 +23668,12 @@ const ( // VideoCodecProres is a VideoCodec enum value VideoCodecProres = "PRORES" + + // VideoCodecVp8 is a VideoCodec enum value + VideoCodecVp8 = "VP8" + + // VideoCodecVp9 is a VideoCodec enum value + VideoCodecVp9 = "VP9" ) // Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode @@ -23016,6 +23696,132 @@ const ( VideoTimecodeInsertionPicTimingSei = "PIC_TIMING_SEI" ) +// If you are using the console, use the Framerate setting to specify the frame +// rate for this output. If you want to keep the same frame rate as the input +// video, choose Follow source. If you want to do frame rate conversion, choose +// a frame rate from the dropdown list or choose Custom. The framerates shown +// in the dropdown list are decimal approximations of fractions. If you choose +// Custom, specify your frame rate as a fraction. If you are creating your transcoding +// job specification as a JSON file without the console, use FramerateControl +// to specify which value the service uses for the frame rate for this output. +// Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate +// from the input. Choose SPECIFIED if you want the service to use the frame +// rate you specify in the settings FramerateNumerator and FramerateDenominator. +const ( + // Vp8FramerateControlInitializeFromSource is a Vp8FramerateControl enum value + Vp8FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" + + // Vp8FramerateControlSpecified is a Vp8FramerateControl enum value + Vp8FramerateControlSpecified = "SPECIFIED" +) + +// Optional. Specify how the transcoder performs framerate conversion. The default +// behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose +// Interpolate (INTERPOLATE) instead, the conversion produces smoother motion. +const ( + // Vp8FramerateConversionAlgorithmDuplicateDrop is a Vp8FramerateConversionAlgorithm enum value + Vp8FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" + + // Vp8FramerateConversionAlgorithmInterpolate is a Vp8FramerateConversionAlgorithm enum value + Vp8FramerateConversionAlgorithmInterpolate = "INTERPOLATE" +) + +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To specify a different +// PAR in the console, choose any value other than Follow source. To specify +// a different PAR by editing the JSON job specification, choose SPECIFIED. +// When you choose SPECIFIED for this setting, you must also specify values +// for the parNumerator and parDenominator settings. +const ( + // Vp8ParControlInitializeFromSource is a Vp8ParControl enum value + Vp8ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" + + // Vp8ParControlSpecified is a Vp8ParControl enum value + Vp8ParControlSpecified = "SPECIFIED" +) + +// Optional. Use Quality tuning level (qualityTuningLevel) to choose how you +// want to trade off encoding speed for output video quality. The default behavior +// is faster, lower quality, multi-pass encoding. +const ( + // Vp8QualityTuningLevelMultiPass is a Vp8QualityTuningLevel enum value + Vp8QualityTuningLevelMultiPass = "MULTI_PASS" + + // Vp8QualityTuningLevelMultiPassHq is a Vp8QualityTuningLevel enum value + Vp8QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" +) + +// With the VP8 codec, you can use only the variable bitrate (VBR) rate control +// mode. +const ( + // Vp8RateControlModeVbr is a Vp8RateControlMode enum value + Vp8RateControlModeVbr = "VBR" +) + +// If you are using the console, use the Framerate setting to specify the frame +// rate for this output. If you want to keep the same frame rate as the input +// video, choose Follow source. If you want to do frame rate conversion, choose +// a frame rate from the dropdown list or choose Custom. The framerates shown +// in the dropdown list are decimal approximations of fractions. If you choose +// Custom, specify your frame rate as a fraction. If you are creating your transcoding +// job specification as a JSON file without the console, use FramerateControl +// to specify which value the service uses for the frame rate for this output. +// Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate +// from the input. Choose SPECIFIED if you want the service to use the frame +// rate you specify in the settings FramerateNumerator and FramerateDenominator. +const ( + // Vp9FramerateControlInitializeFromSource is a Vp9FramerateControl enum value + Vp9FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" + + // Vp9FramerateControlSpecified is a Vp9FramerateControl enum value + Vp9FramerateControlSpecified = "SPECIFIED" +) + +// Optional. Specify how the transcoder performs framerate conversion. The default +// behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose +// Interpolate (INTERPOLATE) instead, the conversion produces smoother motion. +const ( + // Vp9FramerateConversionAlgorithmDuplicateDrop is a Vp9FramerateConversionAlgorithm enum value + Vp9FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" + + // Vp9FramerateConversionAlgorithmInterpolate is a Vp9FramerateConversionAlgorithm enum value + Vp9FramerateConversionAlgorithmInterpolate = "INTERPOLATE" +) + +// Optional. Specify how the service determines the pixel aspect ratio (PAR) +// for this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), +// uses the PAR from your input video for your output. To specify a different +// PAR in the console, choose any value other than Follow source. To specify +// a different PAR by editing the JSON job specification, choose SPECIFIED. +// When you choose SPECIFIED for this setting, you must also specify values +// for the parNumerator and parDenominator settings. +const ( + // Vp9ParControlInitializeFromSource is a Vp9ParControl enum value + Vp9ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" + + // Vp9ParControlSpecified is a Vp9ParControl enum value + Vp9ParControlSpecified = "SPECIFIED" +) + +// Optional. Use Quality tuning level (qualityTuningLevel) to choose how you +// want to trade off encoding speed for output video quality. The default behavior +// is faster, lower quality, multi-pass encoding. +const ( + // Vp9QualityTuningLevelMultiPass is a Vp9QualityTuningLevel enum value + Vp9QualityTuningLevelMultiPass = "MULTI_PASS" + + // Vp9QualityTuningLevelMultiPassHq is a Vp9QualityTuningLevel enum value + Vp9QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" +) + +// With the VP9 codec, you can use only the variable bitrate (VBR) rate control +// mode. +const ( + // Vp9RateControlModeVbr is a Vp9RateControlMode enum value + Vp9RateControlModeVbr = "VBR" +) + // The service defaults to using RIFF for WAV outputs. If your output audio // is likely to exceed 4 GB in file size, or if you otherwise need the extended // support of the RF64 format, set your output WAV file format to RF64.