diff --git a/CHANGELOG.md b/CHANGELOG.md index 581e29fe448..0399a5259c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Release v1.45.16 (2023-09-25) +=== + +### Service Client Updates +* `service/amplifyuibuilder`: Updates service API and documentation +* `service/chime-sdk-media-pipelines`: Updates service API, documentation, and paginators +* `service/emr-serverless`: Updates service API and documentation +* `service/finspace-data`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * Added ability to tag users upon creation. +* `service/ssm`: Updates service API and documentation + * This release updates the enum values for ResourceType in SSM DescribeInstanceInformation input and ConnectionStatus in GetConnectionStatus output. +* `service/wafv2`: Updates service API and documentation + Release v1.45.15 (2023-09-22) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 5d3516cb4bf..c0faf837ec6 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -38529,6 +38529,16 @@ var awsusgovPartition = partition{ }: endpoint{}, }, }, + "rolesanywhere": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + }, + }, "route53": service{ PartitionEndpoint: "aws-us-gov-global", IsRegionalized: boxedFalse, diff --git a/aws/version.go b/aws/version.go index 8fe3a6efea9..f9673717cf9 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.45.15" +const SDKVersion = "1.45.16" diff --git a/models/apis/amplifyuibuilder/2021-08-11/api-2.json b/models/apis/amplifyuibuilder/2021-08-11/api-2.json index 050462247ef..99cacc4272f 100644 --- a/models/apis/amplifyuibuilder/2021-08-11/api-2.json +++ b/models/apis/amplifyuibuilder/2021-08-11/api-2.json @@ -423,6 +423,19 @@ "type":"boolean", "box":true }, + "CodegenDependencies":{ + "type":"list", + "member":{"shape":"CodegenDependency"} + }, + "CodegenDependency":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "supportedVersion":{"shape":"String"}, + "isSemVer":{"shape":"Boolean"}, + "reason":{"shape":"String"} + } + }, "CodegenFeatureFlags":{ "type":"structure", "members":{ @@ -563,7 +576,8 @@ "asset":{"shape":"CodegenJobAsset"}, "tags":{"shape":"Tags"}, "createdAt":{"shape":"SyntheticTimestamp_date_time"}, - "modifiedAt":{"shape":"SyntheticTimestamp_date_time"} + "modifiedAt":{"shape":"SyntheticTimestamp_date_time"}, + "dependencies":{"shape":"CodegenDependencies"} } }, "CodegenJobAsset":{ @@ -1979,6 +1993,11 @@ }, "payload":"body" }, + "ReactCodegenDependencies":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, "ReactStartCodegenJobData":{ "type":"structure", "members":{ @@ -1987,7 +2006,8 @@ "script":{"shape":"JSScript"}, "renderTypeDeclarations":{"shape":"Boolean"}, "inlineSourceMap":{"shape":"Boolean"}, - "apiConfiguration":{"shape":"ApiConfiguration"} + "apiConfiguration":{"shape":"ApiConfiguration"}, + "dependencies":{"shape":"ReactCodegenDependencies"} } }, "RefreshTokenRequest":{ diff --git a/models/apis/amplifyuibuilder/2021-08-11/docs-2.json b/models/apis/amplifyuibuilder/2021-08-11/docs-2.json index 35ac3f54560..b0105a38f8a 100644 --- a/models/apis/amplifyuibuilder/2021-08-11/docs-2.json +++ b/models/apis/amplifyuibuilder/2021-08-11/docs-2.json @@ -8,7 +8,7 @@ "DeleteComponent": "

Deletes a component from an Amplify app.

", "DeleteForm": "

Deletes a form from an Amplify app.

", "DeleteTheme": "

Deletes a theme from an Amplify app.

", - "ExchangeCodeForToken": "

Exchanges an access code for a token.

", + "ExchangeCodeForToken": "

This is for internal use.

Amplify uses this action to exchange an access code for a token.

", "ExportComponents": "

Exports component configurations to code that is ready to integrate into an Amplify app.

", "ExportForms": "

Exports form configurations to code that is ready to integrate into an Amplify app.

", "ExportThemes": "

Exports theme configurations to code that is ready to integrate into an Amplify app.

", @@ -22,7 +22,7 @@ "ListForms": "

Retrieves a list of forms for a specified Amplify app and backend environment.

", "ListThemes": "

Retrieves a list of themes for a specified Amplify app and backend environment.

", "PutMetadataFlag": "

Stores the metadata information about a feature on a form.

", - "RefreshToken": "

Refreshes a previously issued access token that might have expired.

", + "RefreshToken": "

This is for internal use.

Amplify uses this action to refresh a previously issued access token that might have expired.

", "StartCodegenJob": "

Starts a code generation job for a specified Amplify app and backend environment.

", "UpdateComponent": "

Updates an existing component.

", "UpdateForm": "

Updates an existing form.

", @@ -60,6 +60,7 @@ "Boolean": { "base": null, "refs": { + "CodegenDependency$isSemVer": "

Determines if the dependency package is using Semantic versioning. If set to true, it indicates that the dependency package uses Semantic versioning.

", "CodegenFeatureFlags$isRelationshipSupported": "

Specifes whether a code generation job supports data relationships.

", "CodegenFeatureFlags$isNonModelSupported": "

Specifies whether a code generation job supports non models.

", "CodegenGenericDataField$required": "

Specifies whether the generic data field is required.

", @@ -84,6 +85,18 @@ "StartCodegenJobData$autoGenerateForms": "

Specifies whether to autogenerate forms in the code generation job.

" } }, + "CodegenDependencies": { + "base": null, + "refs": { + "CodegenJob$dependencies": "

Lists the dependency packages that may be required for the project code to run.

" + } + }, + "CodegenDependency": { + "base": "

Dependency package that may be required for the project code to run.

", + "refs": { + "CodegenDependencies$member": null + } + }, "CodegenFeatureFlags": { "base": "

Describes the feature flags that you can specify for a code generation job.

", "refs": { @@ -962,6 +975,12 @@ "refs": { } }, + "ReactCodegenDependencies": { + "base": "

Indicates the dependency version of the project code to be generated by Amazon Web Services Amplify. The version of the generated code output is determined by the version number contained in aws-amplify.

", + "refs": { + "ReactStartCodegenJobData$dependencies": "

Lists the dependency packages that may be required for the project code to run.

" + } + }, "ReactStartCodegenJobData": { "base": "

Describes the code generation job configuration for a React project.

", "refs": { @@ -1083,6 +1102,9 @@ "refs": { "ActionParameters$model": "

The name of the data model. Use when the action performs an operation on an Amplify DataStore model.

", "AssociatedFieldsList$member": null, + "CodegenDependency$name": "

Name of the dependency package.

", + "CodegenDependency$supportedVersion": "

Indicates the version of the supported dependency package.

", + "CodegenDependency$reason": "

Indicates the reason to include the dependency package in your project code.

", "CodegenGenericDataEnumValuesList$member": null, "CodegenGenericDataEnums$key": null, "CodegenGenericDataField$dataTypeValue": "

The value of the data type for the generic data field.

", @@ -1250,6 +1272,8 @@ "PutMetadataFlagRequest$appId": "

The unique ID for the Amplify app.

", "PutMetadataFlagRequest$environmentName": "

The name of the backend environment that is part of the Amplify app.

", "PutMetadataFlagRequest$featureName": "

The name of the feature associated with the metadata.

", + "ReactCodegenDependencies$key": null, + "ReactCodegenDependencies$value": null, "RelatedModelFieldsList$member": null, "ResourceConflictException$message": null, "ResourceNotFoundException$message": null, diff --git a/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json b/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json index db1e9b63210..129c3acd087 100644 --- a/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json +++ b/models/apis/chime-sdk-media-pipelines/2021-07-15/api-2.json @@ -108,6 +108,46 @@ {"shape":"ServiceFailureException"} ] }, + "CreateMediaPipelineKinesisVideoStreamPool":{ + "name":"CreateMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"POST", + "requestUri":"/media-pipeline-kinesis-video-stream-pools", + "responseCode":201 + }, + "input":{"shape":"CreateMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"CreateMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, + "CreateMediaStreamPipeline":{ + "name":"CreateMediaStreamPipeline", + "http":{ + "method":"POST", + "requestUri":"/sdk-media-stream-pipelines", + "responseCode":201 + }, + "input":{"shape":"CreateMediaStreamPipelineRequest"}, + "output":{"shape":"CreateMediaStreamPipelineResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "DeleteMediaCapturePipeline":{ "name":"DeleteMediaCapturePipeline", "http":{ @@ -164,6 +204,25 @@ {"shape":"ServiceFailureException"} ] }, + "DeleteMediaPipelineKinesisVideoStreamPool":{ + "name":"DeleteMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"DELETE", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":204 + }, + "input":{"shape":"DeleteMediaPipelineKinesisVideoStreamPoolRequest"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"ThrottledClientException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetMediaCapturePipeline":{ "name":"GetMediaCapturePipeline", "http":{ @@ -221,6 +280,25 @@ {"shape":"ServiceFailureException"} ] }, + "GetMediaPipelineKinesisVideoStreamPool":{ + "name":"GetMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"GET", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":200 + }, + "input":{"shape":"GetMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"GetMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "GetSpeakerSearchTask":{ "name":"GetSpeakerSearchTask", "http":{ @@ -297,6 +375,25 @@ {"shape":"ServiceFailureException"} ] }, + "ListMediaPipelineKinesisVideoStreamPools":{ + "name":"ListMediaPipelineKinesisVideoStreamPools", + "http":{ + "method":"GET", + "requestUri":"/media-pipeline-kinesis-video-stream-pools", + "responseCode":200 + }, + "input":{"shape":"ListMediaPipelineKinesisVideoStreamPoolsRequest"}, + "output":{"shape":"ListMediaPipelineKinesisVideoStreamPoolsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] + }, "ListMediaPipelines":{ "name":"ListMediaPipelines", "http":{ @@ -489,6 +586,26 @@ {"shape":"ServiceUnavailableException"}, {"shape":"ServiceFailureException"} ] + }, + "UpdateMediaPipelineKinesisVideoStreamPool":{ + "name":"UpdateMediaPipelineKinesisVideoStreamPool", + "http":{ + "method":"PUT", + "requestUri":"/media-pipeline-kinesis-video-stream-pools/{identifier}", + "responseCode":200 + }, + "input":{"shape":"UpdateMediaPipelineKinesisVideoStreamPoolRequest"}, + "output":{"shape":"UpdateMediaPipelineKinesisVideoStreamPoolResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"ForbiddenException"}, + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedClientException"}, + {"shape":"ThrottledClientException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"ServiceFailureException"} + ] } }, "shapes":{ @@ -652,6 +769,12 @@ "type":"string", "pattern":"44100|48000" }, + "AwsRegion":{ + "type":"string", + "max":32, + "min":1, + "pattern":"^([a-z]+-){2,}\\d+$" + }, "BadRequestException":{ "type":"structure", "members":{ @@ -996,6 +1119,50 @@ "MediaLiveConnectorPipeline":{"shape":"MediaLiveConnectorPipeline"} } }, + "CreateMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":[ + "StreamConfiguration", + "PoolName" + ], + "members":{ + "StreamConfiguration":{"shape":"KinesisVideoStreamConfiguration"}, + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagList"} + } + }, + "CreateMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, + "CreateMediaStreamPipelineRequest":{ + "type":"structure", + "required":[ + "Sources", + "Sinks" + ], + "members":{ + "Sources":{"shape":"MediaStreamSourceList"}, + "Sinks":{"shape":"MediaStreamSinkList"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + }, + "Tags":{"shape":"TagList"} + } + }, + "CreateMediaStreamPipelineResponse":{ + "type":"structure", + "members":{ + "MediaStreamPipeline":{"shape":"MediaStreamPipeline"} + } + }, "DataChannelConcatenationConfiguration":{ "type":"structure", "required":["State"], @@ -1003,6 +1170,14 @@ "State":{"shape":"ArtifactsConcatenationState"} } }, + "DataRetentionChangeInHours":{ + "type":"integer", + "min":1 + }, + "DataRetentionInHours":{ + "type":"integer", + "min":0 + }, "DeleteMediaCapturePipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1025,6 +1200,17 @@ } } }, + "DeleteMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + } + } + }, "DeleteMediaPipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1127,6 +1313,23 @@ "MediaInsightsPipelineConfiguration":{"shape":"MediaInsightsPipelineConfiguration"} } }, + "GetMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + } + } + }, + "GetMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, "GetMediaPipelineRequest":{ "type":"structure", "required":["MediaPipelineId"], @@ -1287,6 +1490,71 @@ "min":1, "pattern":"arn:[a-z\\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+" }, + "KinesisVideoStreamConfiguration":{ + "type":"structure", + "required":["Region"], + "members":{ + "Region":{"shape":"AwsRegion"}, + "DataRetentionInHours":{"shape":"DataRetentionInHours"} + } + }, + "KinesisVideoStreamConfigurationUpdate":{ + "type":"structure", + "members":{ + "DataRetentionInHours":{"shape":"DataRetentionChangeInHours"} + } + }, + "KinesisVideoStreamPoolConfiguration":{ + "type":"structure", + "members":{ + "PoolArn":{"shape":"Arn"}, + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "PoolId":{"shape":"KinesisVideoStreamPoolId"}, + "PoolStatus":{"shape":"KinesisVideoStreamPoolStatus"}, + "PoolSize":{"shape":"KinesisVideoStreamPoolSize"}, + "StreamConfiguration":{"shape":"KinesisVideoStreamConfiguration"}, + "CreatedTimestamp":{"shape":"Iso8601Timestamp"}, + "UpdatedTimestamp":{"shape":"Iso8601Timestamp"} + } + }, + "KinesisVideoStreamPoolId":{ + "type":"string", + "max":256, + "min":1, + "pattern":"^[0-9a-zA-Z._-]+" + }, + "KinesisVideoStreamPoolName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^[0-9a-zA-Z._-]+" + }, + "KinesisVideoStreamPoolSize":{ + "type":"integer", + "min":0 + }, + "KinesisVideoStreamPoolStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "UPDATING", + "DELETING", + "FAILED" + ] + }, + "KinesisVideoStreamPoolSummary":{ + "type":"structure", + "members":{ + "PoolName":{"shape":"KinesisVideoStreamPoolName"}, + "PoolId":{"shape":"KinesisVideoStreamPoolId"}, + "PoolArn":{"shape":"Arn"} + } + }, + "KinesisVideoStreamPoolSummaryList":{ + "type":"list", + "member":{"shape":"KinesisVideoStreamPoolSummary"} + }, "KinesisVideoStreamRecordingSourceRuntimeConfiguration":{ "type":"structure", "required":[ @@ -1383,6 +1651,28 @@ "NextToken":{"shape":"String"} } }, + "ListMediaPipelineKinesisVideoStreamPoolsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"next-token" + }, + "MaxResults":{ + "shape":"ResultMax", + "location":"querystring", + "locationName":"max-results" + } + } + }, + "ListMediaPipelineKinesisVideoStreamPoolsResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPools":{"shape":"KinesisVideoStreamPoolSummaryList"}, + "NextToken":{"shape":"String"} + } + }, "ListMediaPipelinesRequest":{ "type":"structure", "members":{ @@ -1648,7 +1938,8 @@ "MediaCapturePipeline":{"shape":"MediaCapturePipeline"}, "MediaLiveConnectorPipeline":{"shape":"MediaLiveConnectorPipeline"}, "MediaConcatenationPipeline":{"shape":"MediaConcatenationPipeline"}, - "MediaInsightsPipeline":{"shape":"MediaInsightsPipeline"} + "MediaInsightsPipeline":{"shape":"MediaInsightsPipeline"}, + "MediaStreamPipeline":{"shape":"MediaStreamPipeline"} } }, "MediaPipelineElementStatus":{ @@ -1718,6 +2009,66 @@ "max":48000, "min":8000 }, + "MediaStreamPipeline":{ + "type":"structure", + "members":{ + "MediaPipelineId":{"shape":"GuidString"}, + "MediaPipelineArn":{"shape":"AmazonResourceName"}, + "CreatedTimestamp":{"shape":"Iso8601Timestamp"}, + "UpdatedTimestamp":{"shape":"Iso8601Timestamp"}, + "Status":{"shape":"MediaPipelineStatus"}, + "Sources":{"shape":"MediaStreamSourceList"}, + "Sinks":{"shape":"MediaStreamSinkList"} + } + }, + "MediaStreamPipelineSinkType":{ + "type":"string", + "enum":["KinesisVideoStreamPool"] + }, + "MediaStreamSink":{ + "type":"structure", + "required":[ + "SinkArn", + "SinkType", + "ReservedStreamCapacity", + "MediaStreamType" + ], + "members":{ + "SinkArn":{"shape":"Arn"}, + "SinkType":{"shape":"MediaStreamPipelineSinkType"}, + "ReservedStreamCapacity":{"shape":"ReservedStreamCapacity"}, + "MediaStreamType":{"shape":"MediaStreamType"} + } + }, + "MediaStreamSinkList":{ + "type":"list", + "member":{"shape":"MediaStreamSink"}, + "max":2, + "min":1 + }, + "MediaStreamSource":{ + "type":"structure", + "required":[ + "SourceType", + "SourceArn" + ], + "members":{ + "SourceType":{"shape":"MediaPipelineSourceType"}, + "SourceArn":{"shape":"Arn"} + } + }, + "MediaStreamSourceList":{ + "type":"list", + "member":{"shape":"MediaStreamSource"}, + "min":1 + }, + "MediaStreamType":{ + "type":"string", + "enum":[ + "MixedAudio", + "IndividualAudio" + ] + }, "MeetingEventsConcatenationConfiguration":{ "type":"structure", "required":["State"], @@ -1850,6 +2201,11 @@ "max":2, "min":2 }, + "ReservedStreamCapacity":{ + "type":"integer", + "max":10, + "min":1 + }, "ResolutionOption":{ "type":"string", "enum":[ @@ -2267,6 +2623,24 @@ "UpdateStatus":{"shape":"MediaPipelineStatusUpdate"} } }, + "UpdateMediaPipelineKinesisVideoStreamPoolRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"identifier" + }, + "StreamConfiguration":{"shape":"KinesisVideoStreamConfigurationUpdate"} + } + }, + "UpdateMediaPipelineKinesisVideoStreamPoolResponse":{ + "type":"structure", + "members":{ + "KinesisVideoStreamPoolConfiguration":{"shape":"KinesisVideoStreamPoolConfiguration"} + } + }, "VerticalLayoutConfiguration":{ "type":"structure", "members":{ diff --git a/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json b/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json index 49a67277bc2..594e1bb3d17 100644 --- a/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json +++ b/models/apis/chime-sdk-media-pipelines/2021-07-15/docs-2.json @@ -7,16 +7,21 @@ "CreateMediaInsightsPipeline": "

Creates a media insights pipeline.

", "CreateMediaInsightsPipelineConfiguration": "

A structure that contains the static configurations for a media insights pipeline.

", "CreateMediaLiveConnectorPipeline": "

Creates a media live connector pipeline in an Amazon Chime SDK meeting.

", + "CreateMediaPipelineKinesisVideoStreamPool": "

Creates an Kinesis video stream pool for the media pipeline.

", + "CreateMediaStreamPipeline": "

Creates a streaming media pipeline.

", "DeleteMediaCapturePipeline": "

Deletes the media pipeline.

", "DeleteMediaInsightsPipelineConfiguration": "

Deletes the specified configuration settings.

", "DeleteMediaPipeline": "

Deletes the media pipeline.

", + "DeleteMediaPipelineKinesisVideoStreamPool": "

Deletes an Kinesis video stream pool.

", "GetMediaCapturePipeline": "

Gets an existing media pipeline.

", "GetMediaInsightsPipelineConfiguration": "

Gets the configuration settings for a media insights pipeline.

", "GetMediaPipeline": "

Gets an existing media pipeline.

", + "GetMediaPipelineKinesisVideoStreamPool": "

Gets an Kinesis video stream pool.

", "GetSpeakerSearchTask": "

Retrieves the details of the specified speaker search task.

", "GetVoiceToneAnalysisTask": "

Retrieves the details of a voice tone analysis task.

", "ListMediaCapturePipelines": "

Returns a list of media pipelines.

", "ListMediaInsightsPipelineConfigurations": "

Lists the available media insights pipeline configurations.

", + "ListMediaPipelineKinesisVideoStreamPools": "

Lists the video stream pools in the media pipeline.

", "ListMediaPipelines": "

Returns a list of media pipelines.

", "ListTagsForResource": "

Lists the tags available for a media pipeline.

", "StartSpeakerSearchTask": "

Starts a speaker search task.

Before starting any speaker search tasks, you must provide all notices and obtain all consents from the speaker as required under applicable privacy and biometrics laws, and as required under the AWS service terms for the Amazon Chime SDK.

", @@ -26,7 +31,8 @@ "TagResource": "

The ARN of the media pipeline that you want to tag. Consists of the pipeline's endpoint region, resource ID, and pipeline ID.

", "UntagResource": "

Removes any tags from a media pipeline.

", "UpdateMediaInsightsPipelineConfiguration": "

Updates the media insights pipeline's configuration settings.

", - "UpdateMediaInsightsPipelineStatus": "

Updates the status of a media insights pipeline.

" + "UpdateMediaInsightsPipelineStatus": "

Updates the status of a media insights pipeline.

", + "UpdateMediaPipelineKinesisVideoStreamPool": "

Updates an Kinesis video stream pool in a media pipeline.

" }, "shapes": { "ActiveSpeakerOnlyConfiguration": { @@ -50,6 +56,7 @@ "MediaConcatenationPipeline$MediaPipelineArn": "

The ARN of the media pipeline that you specify in the SourceConfiguration object.

", "MediaLiveConnectorPipeline$MediaPipelineArn": "

The connector pipeline's ARN.

", "MediaPipelineSummary$MediaPipelineArn": "

The ARN of the media pipeline in the summary.

", + "MediaStreamPipeline$MediaPipelineArn": "

The ARN of the media stream pipeline.

", "TagResourceRequest$ResourceARN": "

The ARN of the media pipeline associated with any tags. The ARN consists of the pipeline's endpoint region, resource ID, and pipeline ID.

", "UntagResourceRequest$ResourceARN": "

The ARN of the pipeline that you want to untag.

" } @@ -75,6 +82,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$ResourceAccessRoleArn": "

The ARN of the role used by the service to access Amazon Web Services resources, including Transcribe and Transcribe Call Analytics, on the caller’s behalf.

", "CreateMediaInsightsPipelineRequest$MediaInsightsPipelineConfigurationArn": "

The ARN of the pipeline's configuration.

", "KinesisDataStreamSinkConfiguration$InsightsTarget": "

The ARN of the sink.

", + "KinesisVideoStreamPoolConfiguration$PoolArn": "

The ARN of the video stream pool configuration.

", + "KinesisVideoStreamPoolSummary$PoolArn": "

The ARN of the video stream pool.

", "LambdaFunctionSinkConfiguration$InsightsTarget": "

The ARN of the sink.

", "MediaCapturePipeline$SourceArn": "

ARN of the source from which the media artifacts are saved.

", "MediaCapturePipeline$SinkArn": "

ARN of the destination to which the media artifacts are saved.

", @@ -84,6 +93,8 @@ "MediaInsightsPipelineConfiguration$MediaInsightsPipelineConfigurationArn": "

The ARN of the configuration.

", "MediaInsightsPipelineConfiguration$ResourceAccessRoleArn": "

The ARN of the role used by the service to access Amazon Web Services resources.

", "MediaInsightsPipelineConfigurationSummary$MediaInsightsPipelineConfigurationArn": "

The ARN of the media insights pipeline configuration.

", + "MediaStreamSink$SinkArn": "

The ARN of the media stream sink.

", + "MediaStreamSource$SourceArn": "

The ARN of the media stream source.

", "S3BucketSinkConfiguration$Destination": "

The destination URL of the S3 bucket.

", "S3RecordingSinkConfiguration$Destination": "

The default URI of the Amazon S3 bucket used as the recording sink.

", "S3RecordingSinkRuntimeConfiguration$Destination": "

The URI of the S3 bucket used as the sink.

", @@ -165,6 +176,12 @@ "LiveConnectorRTMPConfiguration$AudioSampleRate": "

The audio sample rate set for the RTMP configuration. Default: 48000.

" } }, + "AwsRegion": { + "base": null, + "refs": { + "KinesisVideoStreamConfiguration$Region": "

The Amazon Web Services Region of the video stream.

" + } + }, "BadRequestException": { "base": "

The input parameters don't match the service's restrictions.

", "refs": { @@ -268,6 +285,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$ClientRequestToken": "

The unique identifier for the media insights pipeline configuration request.

", "CreateMediaInsightsPipelineRequest$ClientRequestToken": "

The unique identifier for the media insights pipeline request.

", "CreateMediaLiveConnectorPipelineRequest$ClientRequestToken": "

The token assigned to the client making the request.

", + "CreateMediaPipelineKinesisVideoStreamPoolRequest$ClientRequestToken": "

The token assigned to the client making the request.

", + "CreateMediaStreamPipelineRequest$ClientRequestToken": "

The token assigned to the client making the request.

", "StartSpeakerSearchTaskRequest$ClientRequestToken": "

The unique identifier for the client request. Use a different token for different speaker search tasks.

", "StartVoiceToneAnalysisTaskRequest$ClientRequestToken": "

The unique identifier for the client request. Use a different token for different voice tone analysis tasks.

" } @@ -423,12 +442,44 @@ "refs": { } }, + "CreateMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "CreateMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } + }, + "CreateMediaStreamPipelineRequest": { + "base": null, + "refs": { + } + }, + "CreateMediaStreamPipelineResponse": { + "base": null, + "refs": { + } + }, "DataChannelConcatenationConfiguration": { "base": "

The content configuration object's data channel.

", "refs": { "ArtifactsConcatenationConfiguration$DataChannel": "

The configuration for the data channel artifacts concatenation.

" } }, + "DataRetentionChangeInHours": { + "base": null, + "refs": { + "KinesisVideoStreamConfigurationUpdate$DataRetentionInHours": "

The updated time that data is retained.

" + } + }, + "DataRetentionInHours": { + "base": null, + "refs": { + "KinesisVideoStreamConfiguration$DataRetentionInHours": "

The amount of time that data is retained.

" + } + }, "DeleteMediaCapturePipelineRequest": { "base": null, "refs": { @@ -439,6 +490,11 @@ "refs": { } }, + "DeleteMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, "DeleteMediaPipelineRequest": { "base": null, "refs": { @@ -514,6 +570,16 @@ "refs": { } }, + "GetMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "GetMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } + }, "GetMediaPipelineRequest": { "base": null, "refs": { @@ -559,7 +625,7 @@ "GetMediaCapturePipelineRequest$MediaPipelineId": "

The ID of the pipeline that you want to get.

", "GetMediaPipelineRequest$MediaPipelineId": "

The ID of the pipeline that you want to get.

", "GetSpeakerSearchTaskRequest$SpeakerSearchTaskId": "

The ID of the speaker search task.

", - "GetVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone anlysis task.

", + "GetVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone analysis task.

", "MediaCapturePipeline$MediaPipelineId": "

The ID of a media pipeline.

", "MediaCapturePipelineSummary$MediaPipelineId": "

The ID of the media pipeline in the summary.

", "MediaConcatenationPipeline$MediaPipelineId": "

The ID of the media pipeline being concatenated.

", @@ -568,6 +634,7 @@ "MediaInsightsPipelineConfigurationSummary$MediaInsightsPipelineConfigurationId": "

The ID of the media insights pipeline configuration.

", "MediaLiveConnectorPipeline$MediaPipelineId": "

The connector pipeline's ID.

", "MediaPipelineSummary$MediaPipelineId": "

The ID of the media pipeline in the summary.

", + "MediaStreamPipeline$MediaPipelineId": "

The ID of the media stream pipeline

", "SpeakerSearchTask$SpeakerSearchTaskId": "

The speaker search task ID.

", "StopSpeakerSearchTaskRequest$SpeakerSearchTaskId": "

The speaker search task ID.

", "StopVoiceToneAnalysisTaskRequest$VoiceToneAnalysisTaskId": "

The ID of the voice tone analysis task.

", @@ -595,6 +662,8 @@ "Iso8601Timestamp": { "base": null, "refs": { + "KinesisVideoStreamPoolConfiguration$CreatedTimestamp": "

The time at which the configuration was created.

", + "KinesisVideoStreamPoolConfiguration$UpdatedTimestamp": "

The time at which the configuration was updated.

", "MediaCapturePipeline$CreatedTimestamp": "

The time at which the pipeline was created, in ISO 8601 format.

", "MediaCapturePipeline$UpdatedTimestamp": "

The time at which the pipeline was updated, in ISO 8601 format.

", "MediaConcatenationPipeline$CreatedTimestamp": "

The time at which the concatenation pipeline was created.

", @@ -604,6 +673,8 @@ "MediaInsightsPipelineConfiguration$UpdatedTimestamp": "

The time at which the configuration was last updated.

", "MediaLiveConnectorPipeline$CreatedTimestamp": "

The time at which the connector pipeline was created.

", "MediaLiveConnectorPipeline$UpdatedTimestamp": "

The time at which the connector pipeline was last updated.

", + "MediaStreamPipeline$CreatedTimestamp": "

The time at which the media stream pipeline was created.

", + "MediaStreamPipeline$UpdatedTimestamp": "

The time at which the media stream pipeline was updated.

", "SpeakerSearchTask$CreatedTimestamp": "

The time at which a speaker search task was created.

", "SpeakerSearchTask$UpdatedTimestamp": "

The time at which a speaker search task was updated.

", "VoiceToneAnalysisTask$CreatedTimestamp": "

The time at which a voice tone analysis task was created.

", @@ -648,6 +719,66 @@ "StreamConfiguration$StreamArn": "

The ARN of the stream.

" } }, + "KinesisVideoStreamConfiguration": { + "base": "

The configuration of an Kinesis video stream.

", + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolRequest$StreamConfiguration": "

The configuration settings for the video stream.

", + "KinesisVideoStreamPoolConfiguration$StreamConfiguration": "

The Kinesis video stream pool configuration object.

" + } + }, + "KinesisVideoStreamConfigurationUpdate": { + "base": "

The updated Kinesis video stream configuration object.

", + "refs": { + "UpdateMediaPipelineKinesisVideoStreamPoolRequest$StreamConfiguration": "

The configuration settings for the video stream.

" + } + }, + "KinesisVideoStreamPoolConfiguration": { + "base": "

The video stream pool configuration object.

", + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The configuration for the Kinesis video stream pool.

", + "GetMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The video stream pool configuration object.

", + "UpdateMediaPipelineKinesisVideoStreamPoolResponse$KinesisVideoStreamPoolConfiguration": "

The video stream pool configuration object.

" + } + }, + "KinesisVideoStreamPoolId": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolId": "

The ID of the video stream pool in the configuration.

", + "KinesisVideoStreamPoolSummary$PoolId": "

The ID of the video stream pool.

" + } + }, + "KinesisVideoStreamPoolName": { + "base": null, + "refs": { + "CreateMediaPipelineKinesisVideoStreamPoolRequest$PoolName": "

The name of the video stream pool.

", + "KinesisVideoStreamPoolConfiguration$PoolName": "

The name of the video stream pool configuration.

", + "KinesisVideoStreamPoolSummary$PoolName": "

The name of the video stream pool.

" + } + }, + "KinesisVideoStreamPoolSize": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolSize": "

The size of the video stream pool in the configuration.

" + } + }, + "KinesisVideoStreamPoolStatus": { + "base": null, + "refs": { + "KinesisVideoStreamPoolConfiguration$PoolStatus": "

The status of the video stream pool in the configuration.

" + } + }, + "KinesisVideoStreamPoolSummary": { + "base": "

A summary of the Kinesis video stream pool.

", + "refs": { + "KinesisVideoStreamPoolSummaryList$member": null + } + }, + "KinesisVideoStreamPoolSummaryList": { + "base": null, + "refs": { + "ListMediaPipelineKinesisVideoStreamPoolsResponse$KinesisVideoStreamPools": "

The list of video stream pools.

" + } + }, "KinesisVideoStreamRecordingSourceRuntimeConfiguration": { "base": "

A structure that contains the runtime settings for recording a Kinesis video stream.

", "refs": { @@ -707,6 +838,16 @@ "refs": { } }, + "ListMediaPipelineKinesisVideoStreamPoolsRequest": { + "base": null, + "refs": { + } + }, + "ListMediaPipelineKinesisVideoStreamPoolsResponse": { + "base": null, + "refs": { + } + }, "ListMediaPipelinesRequest": { "base": null, "refs": { @@ -927,7 +1068,8 @@ "base": null, "refs": { "CreateMediaCapturePipelineRequest$SourceType": "

Source type from which the media artifacts are captured. A Chime SDK Meeting is the only supported source.

", - "MediaCapturePipeline$SourceType": "

Source type from which media artifacts are saved. You must use ChimeMeeting.

" + "MediaCapturePipeline$SourceType": "

Source type from which media artifacts are saved. You must use ChimeMeeting.

", + "MediaStreamSource$SourceType": "

The type of media stream source.

" } }, "MediaPipelineStatus": { @@ -936,7 +1078,8 @@ "MediaCapturePipeline$Status": "

The status of the media pipeline.

", "MediaConcatenationPipeline$Status": "

The status of the concatenation pipeline.

", "MediaInsightsPipeline$Status": "

The status of a media insights pipeline.

", - "MediaLiveConnectorPipeline$Status": "

The connector pipeline's status.

" + "MediaLiveConnectorPipeline$Status": "

The connector pipeline's status.

", + "MediaStreamPipeline$Status": "

The status of the media stream pipeline.

" } }, "MediaPipelineStatusUpdate": { @@ -964,6 +1107,51 @@ "KinesisVideoStreamSourceRuntimeConfiguration$MediaSampleRate": "

The sample rate of the input audio (in hertz). Low-quality audio, such as telephone audio, is typically around 8,000 Hz. High-quality audio typically ranges from 16,000 Hz to 48,000 Hz. Note that the sample rate you specify must match that of your audio.

Valid Range: Minimum value of 8000. Maximum value of 48000.

" } }, + "MediaStreamPipeline": { + "base": "

Structure that contains the settings for a media stream pipeline.

", + "refs": { + "CreateMediaStreamPipelineResponse$MediaStreamPipeline": "

The requested media pipeline.

", + "MediaPipeline$MediaStreamPipeline": "

Designates a media pipeline as a media stream pipeline.

" + } + }, + "MediaStreamPipelineSinkType": { + "base": null, + "refs": { + "MediaStreamSink$SinkType": "

The media stream sink's type.

" + } + }, + "MediaStreamSink": { + "base": "

Structure that contains the settings for a media stream sink.

", + "refs": { + "MediaStreamSinkList$member": null + } + }, + "MediaStreamSinkList": { + "base": null, + "refs": { + "CreateMediaStreamPipelineRequest$Sinks": "

The data sink for the media pipeline.

", + "MediaStreamPipeline$Sinks": "

The media stream pipeline's data sinks.

" + } + }, + "MediaStreamSource": { + "base": "

Structure that contains the settings for media stream sources.

", + "refs": { + "MediaStreamSourceList$member": null + } + }, + "MediaStreamSourceList": { + "base": null, + "refs": { + "CreateMediaStreamPipelineRequest$Sources": "

The data sources for the media pipeline.

", + "MediaStreamPipeline$Sources": "

The media stream pipeline's data sources.

" + } + }, + "MediaStreamType": { + "base": null, + "refs": { + "MediaStreamSink$MediaStreamType": "

The media stream sink's media stream type.

" + } + }, "MeetingEventsConcatenationConfiguration": { "base": "

The configuration object for an event concatenation pipeline.

", "refs": { @@ -981,7 +1169,9 @@ "base": null, "refs": { "DeleteMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier of the resource to be deleted. Valid values include the name and ARN of the media insights pipeline configuration.

", + "DeleteMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the pool being deleted.

", "GetMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier of the requested resource. Valid values include the name and ARN of the media insights pipeline configuration.

", + "GetMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the video stream pool.

", "GetSpeakerSearchTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "GetVoiceToneAnalysisTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "MediaInsightsRuntimeMetadata$key": null, @@ -990,7 +1180,8 @@ "StopSpeakerSearchTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "StopVoiceToneAnalysisTaskRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", "UpdateMediaInsightsPipelineConfigurationRequest$Identifier": "

The unique identifier for the resource to be updated. Valid values include the name and ARN of the media insights pipeline configuration.

", - "UpdateMediaInsightsPipelineStatusRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

" + "UpdateMediaInsightsPipelineStatusRequest$Identifier": "

The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

", + "UpdateMediaPipelineKinesisVideoStreamPoolRequest$Identifier": "

The ID of the video stream pool.

" } }, "NotFoundException": { @@ -1087,6 +1278,12 @@ "KinesisVideoStreamRecordingSourceRuntimeConfiguration$Streams": "

The stream or streams to be recorded.

" } }, + "ReservedStreamCapacity": { + "base": null, + "refs": { + "MediaStreamSink$ReservedStreamCapacity": "

Specifies the number of streams that the sink can accept.

" + } + }, "ResolutionOption": { "base": null, "refs": { @@ -1103,6 +1300,7 @@ "refs": { "ListMediaCapturePipelinesRequest$MaxResults": "

The maximum number of results to return in a single call. Valid Range: 1 - 99.

", "ListMediaInsightsPipelineConfigurationsRequest$MaxResults": "

The maximum number of results to return in a single call.

", + "ListMediaPipelineKinesisVideoStreamPoolsRequest$MaxResults": "

The maximum number of results to return in a single call.

", "ListMediaPipelinesRequest$MaxResults": "

The maximum number of results to return in a single call. Valid Range: 1 - 99.

" } }, @@ -1260,6 +1458,8 @@ "ListMediaCapturePipelinesResponse$NextToken": "

The token used to retrieve the next page of results.

", "ListMediaInsightsPipelineConfigurationsRequest$NextToken": "

The token used to return the next page of results.

", "ListMediaInsightsPipelineConfigurationsResponse$NextToken": "

The token used to return the next page of results.

", + "ListMediaPipelineKinesisVideoStreamPoolsRequest$NextToken": "

The token used to return the next page of results.

", + "ListMediaPipelineKinesisVideoStreamPoolsResponse$NextToken": "

The token used to return the next page of results.

", "ListMediaPipelinesRequest$NextToken": "

The token used to retrieve the next page of results.

", "ListMediaPipelinesResponse$NextToken": "

The token used to retrieve the next page of results.

", "MediaInsightsRuntimeMetadata$value": null, @@ -1307,6 +1507,8 @@ "CreateMediaInsightsPipelineConfigurationRequest$Tags": "

The tags assigned to the media insights pipeline configuration.

", "CreateMediaInsightsPipelineRequest$Tags": "

The tags assigned to the media insights pipeline.

", "CreateMediaLiveConnectorPipelineRequest$Tags": "

The tags associated with the media live connector pipeline.

", + "CreateMediaPipelineKinesisVideoStreamPoolRequest$Tags": "

The tags assigned to the video stream pool.

", + "CreateMediaStreamPipelineRequest$Tags": "

The tags assigned to the media pipeline.

", "ListTagsForResourceResponse$Tags": "

The tags associated with the specified media pipeline.

", "TagResourceRequest$Tags": "

The tags associated with the specified media pipeline.

" } @@ -1335,7 +1537,7 @@ "TileAspectRatio": { "base": null, "refs": { - "HorizontalLayoutConfiguration$TileAspectRatio": "

Sets the aspect ratio of the video tiles, such as 16:9.

", + "HorizontalLayoutConfiguration$TileAspectRatio": "

Specifies the aspect ratio of all video tiles.

", "VerticalLayoutConfiguration$TileAspectRatio": "

Sets the aspect ratio of the video tiles, such as 16:9.

" } }, @@ -1402,6 +1604,16 @@ "refs": { } }, + "UpdateMediaPipelineKinesisVideoStreamPoolRequest": { + "base": null, + "refs": { + } + }, + "UpdateMediaPipelineKinesisVideoStreamPoolResponse": { + "base": null, + "refs": { + } + }, "VerticalLayoutConfiguration": { "base": "

Defines the configuration settings for a vertical layout.

", "refs": { diff --git a/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json b/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json index 300591768e3..5c1e9878244 100644 --- a/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json +++ b/models/apis/chime-sdk-media-pipelines/2021-07-15/paginators-1.json @@ -10,6 +10,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMediaPipelineKinesisVideoStreamPools": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListMediaPipelines": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/emr-serverless/2021-07-13/api-2.json b/models/apis/emr-serverless/2021-07-13/api-2.json index b281eeff262..09272251620 100644 --- a/models/apis/emr-serverless/2021-07-13/api-2.json +++ b/models/apis/emr-serverless/2021-07-13/api-2.json @@ -276,7 +276,9 @@ "networkConfiguration":{"shape":"NetworkConfiguration"}, "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfiguration"}, - "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationMap"} + "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationMap"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "ApplicationArn":{ @@ -483,7 +485,9 @@ "networkConfiguration":{"shape":"NetworkConfiguration"}, "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfigurationInput"}, - "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"} + "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "CreateApplicationResponse":{ @@ -1299,7 +1303,9 @@ "architecture":{"shape":"Architecture"}, "imageConfiguration":{"shape":"ImageConfigurationInput"}, "workerTypeSpecifications":{"shape":"WorkerTypeSpecificationInputMap"}, - "releaseLabel":{"shape":"ReleaseLabel"} + "releaseLabel":{"shape":"ReleaseLabel"}, + "runtimeConfiguration":{"shape":"ConfigurationList"}, + "monitoringConfiguration":{"shape":"MonitoringConfiguration"} } }, "UpdateApplicationResponse":{ diff --git a/models/apis/emr-serverless/2021-07-13/docs-2.json b/models/apis/emr-serverless/2021-07-13/docs-2.json index 8fbfc08bd11..ffeaad36d71 100644 --- a/models/apis/emr-serverless/2021-07-13/docs-2.json +++ b/models/apis/emr-serverless/2021-07-13/docs-2.json @@ -164,8 +164,11 @@ "ConfigurationList": { "base": null, "refs": { + "Application$runtimeConfiguration": "

The Configuration specifications of an application. Each configuration consists of a classification and properties. You use this parameter when creating or updating an application. To see the runtimeConfiguration object of an application, run the GetApplication API operation.

", "Configuration$configurations": "

A list of additional configurations to apply within a configuration object.

", - "ConfigurationOverrides$applicationConfiguration": "

The override configurations for the application.

" + "ConfigurationOverrides$applicationConfiguration": "

The override configurations for the application.

", + "CreateApplicationRequest$runtimeConfiguration": "

The Configuration specifications to use when creating an application. Each configuration consists of a classification and properties. This configuration is applied to all the job runs submitted under the application.

", + "UpdateApplicationRequest$runtimeConfiguration": "

The Configuration specifications to use when updating an application. Each configuration consists of a classification and properties. This configuration is applied across all the job runs submitted under the application.

" } }, "ConfigurationOverrides": { @@ -551,7 +554,10 @@ "MonitoringConfiguration": { "base": "

The configuration setting for monitoring.

", "refs": { - "ConfigurationOverrides$monitoringConfiguration": "

The override configurations for monitoring.

" + "Application$monitoringConfiguration": null, + "ConfigurationOverrides$monitoringConfiguration": "

The override configurations for monitoring.

", + "CreateApplicationRequest$monitoringConfiguration": "

The configuration setting for monitoring.

", + "UpdateApplicationRequest$monitoringConfiguration": "

The configuration setting for monitoring.

" } }, "NetworkConfiguration": { diff --git a/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json b/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json index 9af69616e2b..d3eee9057b7 100644 --- a/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json +++ b/models/apis/emr-serverless/2021-07-13/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://emr-serverless-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://emr-serverless.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://emr-serverless.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://emr-serverless.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://emr-serverless.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/finspace-data/2020-07-13/api-2.json b/models/apis/finspace-data/2020-07-13/api-2.json index b9f3b69eec2..982a00984b6 100644 --- a/models/apis/finspace-data/2020-07-13/api-2.json +++ b/models/apis/finspace-data/2020-07-13/api-2.json @@ -613,7 +613,8 @@ "secretAccessKey":{"shape":"SecretAccessKey"}, "sessionToken":{"shape":"SessionToken"}, "expiration":{"shape":"TimestampEpoch"} - } + }, + "sensitive":true }, "Boolean":{"type":"boolean"}, "ChangeType":{ @@ -846,7 +847,7 @@ "type":{"shape":"UserType"}, "firstName":{"shape":"FirstName"}, "lastName":{"shape":"LastName"}, - "ApiAccess":{"shape":"ApiAccess"}, + "apiAccess":{"shape":"ApiAccess"}, "apiAccessPrincipalArn":{"shape":"RoleArn"}, "clientToken":{ "shape":"ClientToken", @@ -866,7 +867,8 @@ "accessKeyId":{"shape":"stringValueLength1to255"}, "secretAccessKey":{"shape":"stringValueMaxLength1000"}, "sessionToken":{"shape":"stringValueMaxLength1000"} - } + }, + "sensitive":true }, "DataViewArn":{"type":"string"}, "DataViewDestinationType":{"type":"string"}, @@ -1786,8 +1788,8 @@ }, "SessionDuration":{ "type":"long", - "max":720, - "min":60 + "max":60, + "min":1 }, "SessionToken":{ "type":"string", diff --git a/models/apis/finspace-data/2020-07-13/docs-2.json b/models/apis/finspace-data/2020-07-13/docs-2.json index 1a1d3178cbd..4a860e2a47f 100644 --- a/models/apis/finspace-data/2020-07-13/docs-2.json +++ b/models/apis/finspace-data/2020-07-13/docs-2.json @@ -2,7 +2,7 @@ "version": "2.0", "service": "

The FinSpace APIs let you take actions inside the FinSpace.

", "operations": { - "AssociateUserToPermissionGroup": "

Adds a user account to a permission group to grant permissions for actions a user can perform in FinSpace.

", + "AssociateUserToPermissionGroup": "

Adds a user to a permission group to grant permissions for actions a user can perform in FinSpace.

", "CreateChangeset": "

Creates a new Changeset in a FinSpace Dataset.

", "CreateDataView": "

Creates a Dataview for a Dataset.

", "CreateDataset": "

Creates a new FinSpace Dataset.

", @@ -11,28 +11,28 @@ "DeleteDataset": "

Deletes a FinSpace Dataset.

", "DeletePermissionGroup": "

Deletes a permission group. This action is irreversible.

", "DisableUser": "

Denies access to the FinSpace web application and API for the specified user.

", - "DisassociateUserFromPermissionGroup": "

Removes a user account from a permission group.

", + "DisassociateUserFromPermissionGroup": "

Removes a user from a permission group.

", "EnableUser": "

Allows the specified user to access the FinSpace web application and API.

", "GetChangeset": "

Get information about a Changeset.

", "GetDataView": "

Gets information about a Dataview.

", "GetDataset": "

Returns information about a Dataset.

", "GetExternalDataViewAccessDetails": "

Returns the credentials to access the external Dataview from an S3 location. To call this API:

", "GetPermissionGroup": "

Retrieves the details of a specific permission group.

", - "GetProgrammaticAccessCredentials": "

Request programmatic credentials to use with FinSpace SDK.

", + "GetProgrammaticAccessCredentials": "

Request programmatic credentials to use with FinSpace SDK. For more information, see Step 2. Access credentials programmatically using IAM access key id and secret access key.

", "GetUser": "

Retrieves details for a specific user.

", "GetWorkingLocation": "

A temporary Amazon S3 location, where you can copy your files from a source location to stage or use as a scratch space in FinSpace notebook.

", "ListChangesets": "

Lists the FinSpace Changesets for a Dataset.

", "ListDataViews": "

Lists all available Dataviews for a Dataset.

", "ListDatasets": "

Lists all of the active Datasets that a user has access to.

", "ListPermissionGroups": "

Lists all available permission groups in FinSpace.

", - "ListPermissionGroupsByUser": "

Lists all the permission groups that are associated with a specific user account.

", - "ListUsers": "

Lists all available user accounts in FinSpace.

", + "ListPermissionGroupsByUser": "

Lists all the permission groups that are associated with a specific user.

", + "ListUsers": "

Lists all available users in FinSpace.

", "ListUsersByPermissionGroup": "

Lists details of all the users in a specific permission group.

", "ResetUserPassword": "

Resets the password for a specified user ID and generates a temporary one. Only a superuser can reset password for other users. Resetting the password immediately invalidates the previous password associated with the user.

", "UpdateChangeset": "

Updates a FinSpace Changeset.

", "UpdateDataset": "

Updates a FinSpace Dataset.

", "UpdatePermissionGroup": "

Modifies the details of a permission group. You cannot modify a permissionGroupID.

", - "UpdateUser": "

Modifies the details of the specified user account. You cannot update the userId for a user.

" + "UpdateUser": "

Modifies the details of the specified user. You cannot update the userId for a user.

" }, "shapes": { "AccessDeniedException": { @@ -58,7 +58,7 @@ "ApiAccess": { "base": null, "refs": { - "CreateUserRequest$ApiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

", + "CreateUserRequest$apiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

", "GetUserResponse$apiAccess": "

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

", "UpdateUserRequest$apiAccess": "

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

", "User$apiAccess": "

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

", @@ -732,7 +732,7 @@ "Password": { "base": null, "refs": { - "ResetUserPasswordResponse$temporaryPassword": "

A randomly generated temporary password for the requested user account. This password expires in 7 days.

" + "ResetUserPasswordResponse$temporaryPassword": "

A randomly generated temporary password for the requested user. This password expires in 7 days.

" } }, "PermissionGroup": { @@ -743,7 +743,7 @@ } }, "PermissionGroupByUser": { - "base": "

The structure of a permission group associated with a user account.

", + "base": "

The structure of a permission group associated with a user.

", "refs": { "PermissionGroupByUserList$member": null } @@ -788,9 +788,9 @@ "PermissionGroupMembershipStatus": { "base": null, "refs": { - "PermissionGroup$membershipStatus": "

Indicates the status of the user account within a permission group.

", - "PermissionGroupByUser$membershipStatus": "

Indicates the status of the user account within a permission group.

", - "UserByPermissionGroup$membershipStatus": "

Indicates the status of the user account within a permission group.

" + "PermissionGroup$membershipStatus": "

Indicates the status of the user within a permission group.

", + "PermissionGroupByUser$membershipStatus": "

Indicates the status of the user within a permission group.

", + "UserByPermissionGroup$membershipStatus": "

Indicates the status of the user within a permission group.

" } }, "PermissionGroupName": { @@ -1001,17 +1001,17 @@ "GetDataViewResponse$createTime": "

The timestamp at which the Dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", "GetDatasetResponse$createTime": "

The timestamp at which the Dataset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", "GetDatasetResponse$lastModifiedTime": "

The last time that the Dataset was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

", - "GetUserResponse$createTime": "

The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastEnabledTime": "

Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastDisabledTime": "

Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds.

", - "GetUserResponse$lastModifiedTime": "

Describes the last time the user account was updated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$createTime": "

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastEnabledTime": "

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastDisabledTime": "

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

", + "GetUserResponse$lastModifiedTime": "

Describes the last time the user details were updated. The value is determined as epoch time in milliseconds.

", "GetUserResponse$lastLoginTime": "

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

", "PermissionGroup$createTime": "

The timestamp at which the group was created in FinSpace. The value is determined as epoch time in milliseconds.

", "PermissionGroup$lastModifiedTime": "

Describes the last time the permission group was updated. The value is determined as epoch time in milliseconds.

", - "User$createTime": "

The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in milliseconds.

", - "User$lastEnabledTime": "

Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds.

", - "User$lastDisabledTime": "

Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds.

", - "User$lastModifiedTime": "

Describes the last time the user account was updated. The value is determined as epoch time in milliseconds.

", + "User$createTime": "

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

", + "User$lastEnabledTime": "

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

", + "User$lastDisabledTime": "

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

", + "User$lastModifiedTime": "

Describes the last time the user was updated. The value is determined as epoch time in milliseconds.

", "User$lastLoginTime": "

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

" } }, @@ -1056,13 +1056,13 @@ } }, "User": { - "base": "

The details of the user account.

", + "base": "

The details of the user.

", "refs": { "UserList$member": null } }, "UserByPermissionGroup": { - "base": "

The structure of a user account associated with a permission group.

", + "base": "

The structure of a user associated with a permission group.

", "refs": { "UserByPermissionGroupList$member": null } @@ -1078,18 +1078,18 @@ "refs": { "AssociateUserToPermissionGroupRequest$userId": "

The unique identifier for the user.

", "CreateUserResponse$userId": "

The unique identifier for the user.

", - "DisableUserRequest$userId": "

The unique identifier for the user account that you want to disable.

", - "DisableUserResponse$userId": "

The unique identifier for the disabled user account.

", + "DisableUserRequest$userId": "

The unique identifier for the user that you want to deactivate.

", + "DisableUserResponse$userId": "

The unique identifier for the deactivated user.

", "DisassociateUserFromPermissionGroupRequest$userId": "

The unique identifier for the user.

", - "EnableUserRequest$userId": "

The unique identifier for the user account that you want to enable.

", - "EnableUserResponse$userId": "

The unique identifier for the enabled user account.

", + "EnableUserRequest$userId": "

The unique identifier for the user that you want to activate.

", + "EnableUserResponse$userId": "

The unique identifier for the active user.

", "GetUserRequest$userId": "

The unique identifier of the user to get data for.

", - "GetUserResponse$userId": "

The unique identifier for the user account that is retrieved.

", + "GetUserResponse$userId": "

The unique identifier for the user that is retrieved.

", "ListPermissionGroupsByUserRequest$userId": "

The unique identifier for the user.

", "ResetUserPasswordRequest$userId": "

The unique identifier of the user that a temporary password is requested for.

", "ResetUserPasswordResponse$userId": "

The unique identifier of the user that a new password is generated for.

", - "UpdateUserRequest$userId": "

The unique identifier for the user account to update.

", - "UpdateUserResponse$userId": "

The unique identifier of the updated user account.

", + "UpdateUserRequest$userId": "

The unique identifier for the user that you want to update.

", + "UpdateUserResponse$userId": "

The unique identifier of the updated user.

", "User$userId": "

The unique identifier for the user.

", "UserByPermissionGroup$userId": "

The unique identifier for the user.

" } @@ -1097,15 +1097,15 @@ "UserList": { "base": null, "refs": { - "ListUsersResponse$users": "

A list of all the user accounts.

" + "ListUsersResponse$users": "

A list of all the users.

" } }, "UserStatus": { "base": null, "refs": { - "GetUserResponse$status": "

The current status of the user account.

", - "User$status": "

The current status of the user account.

", - "UserByPermissionGroup$status": "

The current status of the user account.

" + "GetUserResponse$status": "

The current status of the user.

", + "User$status": "

The current status of the user.

", + "UserByPermissionGroup$status": "

The current status of the user.

" } }, "UserType": { diff --git a/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json b/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json new file mode 100644 index 00000000000..eb316299687 --- /dev/null +++ b/models/apis/finspace-data/2020-07-13/endpoint-rule-set-1.json @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://finspace-api.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff --git a/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json b/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json new file mode 100644 index 00000000000..382bcc5ca76 --- /dev/null +++ b/models/apis/finspace-data/2020-07-13/endpoint-tests-1.json @@ -0,0 +1,366 @@ +{ + "testCases": [ + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.ca-central-1.amazonaws.com" + } + }, + "params": { + "Region": "ca-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://finspace-api.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/quicksight/2018-04-01/api-2.json b/models/apis/quicksight/2018-04-01/api-2.json index b1fc52f582b..bd61b3e5601 100644 --- a/models/apis/quicksight/2018-04-01/api-2.json +++ b/models/apis/quicksight/2018-04-01/api-2.json @@ -13145,7 +13145,8 @@ "enum":[ "DASHBOARD", "ANALYSIS", - "DATASET" + "DATASET", + "TOPIC" ] }, "MetricComparisonComputation":{ @@ -14790,7 +14791,8 @@ "CustomPermissionsName":{"shape":"RoleName"}, "ExternalLoginFederationProviderType":{"shape":"String"}, "CustomFederationProviderUrl":{"shape":"String"}, - "ExternalLoginId":{"shape":"String"} + "ExternalLoginId":{"shape":"String"}, + "Tags":{"shape":"TagList"} } }, "RegisterUserResponse":{ diff --git a/models/apis/quicksight/2018-04-01/docs-2.json b/models/apis/quicksight/2018-04-01/docs-2.json index 25c04e5a8da..eb64e86fb4e 100644 --- a/models/apis/quicksight/2018-04-01/docs-2.json +++ b/models/apis/quicksight/2018-04-01/docs-2.json @@ -132,7 +132,7 @@ "StartAssetBundleExportJob": "

Starts an Asset Bundle export job.

An Asset Bundle export job exports specified Amazon QuickSight assets. You can also choose to export any asset dependencies in the same job. Export jobs run asynchronously and can be polled with a DescribeAssetBundleExportJob API call. When a job is successfully completed, a download URL that contains the exported assets is returned. The URL is valid for 5 minutes and can be refreshed with a DescribeAssetBundleExportJob API call. Each Amazon QuickSight account can run up to 5 export jobs concurrently.

The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.

", "StartAssetBundleImportJob": "

Starts an Asset Bundle import job.

An Asset Bundle import job imports specified Amazon QuickSight assets into an Amazon QuickSight account. You can also choose to import a naming prefix and specified configuration overrides. The assets that are contained in the bundle file that you provide are used to create or update a new or existing asset in your Amazon QuickSight account. Each Amazon QuickSight account can run up to 5 import jobs concurrently.

The API caller must have the necessary \"create\", \"describe\", and \"update\" permissions in their IAM role to access each resource type that is contained in the bundle file before the resources can be imported.

", "StartDashboardSnapshotJob": "

Starts an asynchronous job that generates a dashboard snapshot. You can request one of the following format configurations per API call.

Poll job descriptions with a DescribeDashboardSnapshotJob API call. Once the job succeeds, use the DescribeDashboardSnapshotJobResult API to obtain the download URIs that the job generates.

", - "TagResource": "

Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight resource.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource. Amazon QuickSight supports tagging on data set, data source, dashboard, template, and topic.

Tagging for Amazon QuickSight works in a similar way to tagging for other Amazon Web Services services, except for the following:

", + "TagResource": "

Assigns one or more tags (key-value pairs) to the specified Amazon QuickSight resource.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource. Amazon QuickSight supports tagging on data set, data source, dashboard, template, topic, and user.

Tagging for Amazon QuickSight works in a similar way to tagging for other Amazon Web Services services, except for the following:

", "UntagResource": "

Removes a tag or tags from a resource.

", "UpdateAccountCustomization": "

Updates Amazon QuickSight customizations for the current Amazon Web Services Region. Currently, the only customization that you can use is a theme.

You can use customizations for your Amazon Web Services account or, if you specify a namespace, for a Amazon QuickSight namespace instead. Customizations that apply to a namespace override customizations that apply to an Amazon Web Services account. To find out which customizations apply, use the DescribeAccountCustomization API operation.

", "UpdateAccountSettings": "

Updates the Amazon QuickSight settings in your Amazon Web Services account.

", @@ -10863,6 +10863,7 @@ "CreateTopicRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags that are assigned to the dataset.

", "CreateVPCConnectionRequest$Tags": "

A map of the key-value pairs for the resource tag or tags assigned to the VPC connection.

", "ListTagsForResourceResponse$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.

", + "RegisterUserRequest$Tags": "

The tags to associate with the user.

", "TagResourceRequest$Tags": "

Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.

" } }, diff --git a/models/apis/ssm/2014-11-06/api-2.json b/models/apis/ssm/2014-11-06/api-2.json index ec25d13766a..faa8c3709e9 100644 --- a/models/apis/ssm/2014-11-06/api-2.json +++ b/models/apis/ssm/2014-11-06/api-2.json @@ -3374,8 +3374,8 @@ "ConnectionStatus":{ "type":"string", "enum":[ - "Connected", - "NotConnected" + "connected", + "notconnected" ] }, "ContentLength":{"type":"long"}, @@ -9521,7 +9521,6 @@ "type":"string", "enum":[ "ManagedInstance", - "Document", "EC2Instance" ] }, diff --git a/models/apis/ssm/2014-11-06/docs-2.json b/models/apis/ssm/2014-11-06/docs-2.json index 26c96aafb45..003f04786f0 100644 --- a/models/apis/ssm/2014-11-06/docs-2.json +++ b/models/apis/ssm/2014-11-06/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Web Services Systems Manager is the operations hub for your Amazon Web Services applications and resources and a secure end-to-end management solution for hybrid cloud environments that enables safe and secure operations at scale.

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide. To get started, see Setting up Amazon Web Services Systems Manager.

Related resources

", + "service": "

Amazon Web Services Systems Manager is the operations hub for your Amazon Web Services applications and resources and a secure end-to-end management solution for hybrid cloud environments that enables safe and secure operations at scale.

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide. To get started, see Setting up Amazon Web Services Systems Manager.

Related resources

", "operations": { "AddTagsToResource": "

Adds or overwrites one or more tags for the specified resource. Tags are metadata that you can assign to your automations, documents, managed nodes, maintenance windows, Parameter Store parameters, and patch baselines. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define. For example, you could define a set of tags for your account's managed nodes that helps you track each node's owner and stack level. For example:

Most resources can have a maximum of 50 tags. Automations can have a maximum of 5 tags.

We recommend that you devise a set of tag keys that meets your needs for each resource type. Using a consistent set of tag keys makes it easier for you to manage your resources. You can search and filter the resources based on the tags you add. Tags don't have any semantic meaning to and are interpreted strictly as a string of characters.

For more information about using tags with Amazon Elastic Compute Cloud (Amazon EC2) instances, see Tagging your Amazon EC2 resources in the Amazon EC2 User Guide.

", "AssociateOpsItemRelatedItem": "

Associates a related item to a Systems Manager OpsCenter OpsItem. For example, you can associate an Incident Manager incident or analysis with an OpsItem. Incident Manager and OpsCenter are capabilities of Amazon Web Services Systems Manager.

", @@ -5201,9 +5201,9 @@ "OpsItemDescription": { "base": null, "refs": { - "CreateOpsItemRequest$Description": "

Information about the OpsItem.

", + "CreateOpsItemRequest$Description": "

User-defined text that contains information about the OpsItem, in Markdown format.

Provide enough information so that users viewing this OpsItem for the first time understand the issue.

", "OpsItem$Description": "

The OpsItem description.

", - "UpdateOpsItemRequest$Description": "

Update the information about the OpsItem. Provide enough information so that users reading this OpsItem for the first time understand the issue.

" + "UpdateOpsItemRequest$Description": "

User-defined text that contains information about the OpsItem, in Markdown format.

" } }, "OpsItemEventFilter": { @@ -5527,9 +5527,9 @@ "OpsItemType": { "base": null, "refs": { - "CreateOpsItemRequest$OpsItemType": "

The type of OpsItem to create. Systems Manager supports the following types of OpsItems:

", - "OpsItem$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

", - "OpsItemSummary$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

" + "CreateOpsItemRequest$OpsItemType": "

The type of OpsItem to create. Systems Manager supports the following types of OpsItems:

", + "OpsItem$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

", + "OpsItemSummary$OpsItemType": "

The type of OpsItem. Systems Manager supports the following types of OpsItems:

" } }, "OpsMetadata": { diff --git a/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json b/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json index 67ec4003d08..7d680a93a72 100644 --- a/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json +++ b/models/apis/ssm/2014-11-06/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,92 +140,83 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ssm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://ssm-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] } ], @@ -221,155 +225,115 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, + "aws-us-gov", { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] } ] } ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - "aws-us-gov", - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - } - ] - } - ], - "endpoint": { - "url": "https://ssm.{Region}.amazonaws.com", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://ssm-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] + "endpoint": { + "url": "https://ssm.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://ssm-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://ssm.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://ssm.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://ssm.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://ssm.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/wafv2/2019-07-29/api-2.json b/models/apis/wafv2/2019-07-29/api-2.json index 0d6068380b9..a533391ffa2 100755 --- a/models/apis/wafv2/2019-07-29/api-2.json +++ b/models/apis/wafv2/2019-07-29/api-2.json @@ -1904,7 +1904,8 @@ "JsonBody":{"shape":"JsonBody"}, "Headers":{"shape":"Headers"}, "Cookies":{"shape":"Cookies"}, - "HeaderOrder":{"shape":"HeaderOrder"} + "HeaderOrder":{"shape":"HeaderOrder"}, + "JA3Fingerprint":{"shape":"JA3Fingerprint"} } }, "FieldToMatchData":{ @@ -2386,6 +2387,13 @@ "TARGETED" ] }, + "JA3Fingerprint":{ + "type":"structure", + "required":["FallbackBehavior"], + "members":{ + "FallbackBehavior":{"shape":"FallbackBehavior"} + } + }, "JsonBody":{ "type":"structure", "required":[ diff --git a/models/apis/wafv2/2019-07-29/docs-2.json b/models/apis/wafv2/2019-07-29/docs-2.json index b504e816364..426e224a697 100755 --- a/models/apis/wafv2/2019-07-29/docs-2.json +++ b/models/apis/wafv2/2019-07-29/docs-2.json @@ -8,7 +8,7 @@ "CreateIPSet": "

Creates an IPSet, which you use to identify web requests that originate from specific IP addresses or ranges of IP addresses. For example, if you're receiving a lot of requests from a ranges of IP addresses, you can configure WAF to block them using an IPSet that lists those IP addresses.

", "CreateRegexPatternSet": "

Creates a RegexPatternSet, which you reference in a RegexPatternSetReferenceStatement, to have WAF inspect a web request component for the specified patterns.

", "CreateRuleGroup": "

Creates a RuleGroup per the specifications provided.

A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.

", - "CreateWebACL": "

Creates a WebACL per the specifications provided.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", + "CreateWebACL": "

Creates a WebACL per the specifications provided.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", "DeleteFirewallManagerRuleGroups": "

Deletes all rule groups that are managed by Firewall Manager for the specified web ACL.

You can only use this if ManagedByFirewallManager is false in the specified WebACL.

", "DeleteIPSet": "

Deletes the specified IPSet.

", "DeleteLoggingConfiguration": "

Deletes the LoggingConfiguration from the specified web ACL.

", @@ -54,7 +54,7 @@ "UpdateManagedRuleSetVersionExpiryDate": "

Updates the expiration information for your managed rule set. Use this to initiate the expiration of a managed rule group version. After you initiate expiration for a version, WAF excludes it from the response to ListAvailableManagedRuleGroupVersions for the managed rule group.

This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Amazon Web Services Marketplace sellers.

Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.

", "UpdateRegexPatternSet": "

Updates the specified RegexPatternSet.

This operation completely replaces the mutable specifications that you already have for the regex pattern set with the ones that you provide to this call.

To modify a regex pattern set, do the following:

  1. Retrieve it by calling GetRegexPatternSet

  2. Update its settings as needed

  3. Provide the complete regex pattern set specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

", "UpdateRuleGroup": "

Updates the specified RuleGroup.

This operation completely replaces the mutable specifications that you already have for the rule group with the ones that you provide to this call.

To modify a rule group, do the following:

  1. Retrieve it by calling GetRuleGroup

  2. Update its settings as needed

  3. Provide the complete rule group specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.

", - "UpdateWebACL": "

Updates the specified WebACL. While updating a web ACL, WAF provides continuous coverage to the resources that you have associated with the web ACL.

This operation completely replaces the mutable specifications that you already have for the web ACL with the ones that you provide to this call.

To modify a web ACL, do the following:

  1. Retrieve it by calling GetWebACL

  2. Update its settings as needed

  3. Provide the complete web ACL specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

" + "UpdateWebACL": "

Updates the specified WebACL. While updating a web ACL, WAF provides continuous coverage to the resources that you have associated with the web ACL.

This operation completely replaces the mutable specifications that you already have for the web ACL with the ones that you provide to this call.

To modify a web ACL, do the following:

  1. Retrieve it by calling GetWebACL

  2. Update its settings as needed

  3. Provide the complete web ACL specification to this call

When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

" }, "shapes": { "APIKey": { @@ -412,7 +412,7 @@ "CreationPathString": { "base": null, "refs": { - "AWSManagedRulesACFPRuleSet$CreationPath": "

The path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.

For example, for the URL https://example.com/web/signup, you would provide the path /web/signup.

" + "AWSManagedRulesACFPRuleSet$CreationPath": "

The path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.

For example, for the URL https://example.com/web/newaccount, you would provide the path /web/newaccount. Account creation page paths that start with the path that you provide are considered a match. For example /web/newaccount matches the account creation paths /web/newaccount, /web/newaccount/, /web/newaccountPage, and /web/newaccount/thisPage, but doesn't match the path /home/web/newaccount or /website/newaccount.

" } }, "CustomHTTPHeader": { @@ -437,7 +437,7 @@ "base": null, "refs": { "CustomRequestHandling$InsertHeaders": "

The HTTP headers to insert into the request. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

", - "CustomResponse$ResponseHeaders": "

The HTTP headers to use in the response. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

" + "CustomResponse$ResponseHeaders": "

The HTTP headers to use in the response. You can specify any header name except for content-type. Duplicate header names are not allowed.

For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

" } }, "CustomRequestHandling": { @@ -775,7 +775,8 @@ "base": null, "refs": { "ForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

", - "IPSetForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

" + "IPSetForwardedIPConfig$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.

If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.

You can specify the following fallback behaviors:

", + "JA3Fingerprint$FallbackBehavior": "

The match status to assign to the web request if the request doesn't have a JA3 fingerprint.

You can specify the following fallback behaviors:

" } }, "FieldIdentifier": { @@ -1097,10 +1098,10 @@ "IPAddresses": { "base": null, "refs": { - "CreateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

", - "IPSet$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

", + "CreateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

", + "IPSet$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

", "RateBasedStatementManagedKeysIPSet$Addresses": "

The IP addresses that are currently blocked.

", - "UpdateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

" + "UpdateIPSetRequest$Addresses": "

Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0.

Example address strings:

For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

Example JSON Addresses specifications:

" } }, "IPSet": { @@ -1153,6 +1154,12 @@ "AWSManagedRulesBotControlRuleSet$InspectionLevel": "

The inspection level to use for the Bot Control rule group. The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see WAF Bot Control rule group in the WAF Developer Guide.

" } }, + "JA3Fingerprint": { + "base": "

Match against the request's JA3 fingerprint header. The header contains a hash fingerprint of the TLS Client Hello packet for the request.

You can use this choice only with a string match ByteMatchStatement with the PositionalConstraint set to EXACTLY.

", + "refs": { + "FieldToMatch$JA3Fingerprint": "

Match against the request's JA3 fingerprint header. The header contains a hash fingerprint of the TLS Client Hello packet for the request.

You can use this choice only with a string match ByteMatchStatement with the PositionalConstraint set to EXACTLY.

" + } + }, "JsonBody": { "base": "

Inspect the body of the web request as JSON. The body immediately follows the request headers.

This is used to indicate the web request component to inspect, in the FieldToMatch specification.

Use the specifications in this object to indicate which parts of the JSON body to inspect using the rule's inspection criteria. WAF inspects only the parts of the JSON that result from the matches that you indicate.

Example JSON: \"JsonBody\": { \"MatchPattern\": { \"All\": {} }, \"MatchScope\": \"ALL\" }

", "refs": { @@ -1472,10 +1479,10 @@ } }, "ManagedRuleGroupStatement": { - "base": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. It can only be referenced as a top-level statement within a rule.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

", + "base": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. You cannot use a managed rule group inside another rule group. You can only reference a managed rule group as a top-level statement within a rule that you define in a web ACL.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

", "refs": { "FirewallManagerStatement$ManagedRuleGroupStatement": "

A statement used by Firewall Manager to run the rules that are defined in a managed rule group. This is managed by Firewall Manager for an Firewall Manager WAF policy.

", - "Statement$ManagedRuleGroupStatement": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. It can only be referenced as a top-level statement within a rule.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

" + "Statement$ManagedRuleGroupStatement": "

A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups.

You cannot nest a ManagedRuleGroupStatement, for example for use inside a NotStatement or OrStatement. You cannot use a managed rule group inside another rule group. You can only reference a managed rule group as a top-level statement within a rule that you define in a web ACL.

You are charged additional fees when you use the WAF Bot Control managed rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account takeover prevention (ATP) managed rule group AWSManagedRulesATPRuleSet, or the WAF Fraud Control account creation fraud prevention (ACFP) managed rule group AWSManagedRulesACFPRuleSet. For more information, see WAF Pricing.

" } }, "ManagedRuleGroupSummaries": { @@ -1914,7 +1921,7 @@ "RegistrationPagePathString": { "base": null, "refs": { - "AWSManagedRulesACFPRuleSet$RegistrationPagePath": "

The path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users.

This page must accept GET text/html requests.

For example, for the URL https://example.com/web/register, you would provide the path /web/register.

" + "AWSManagedRulesACFPRuleSet$RegistrationPagePath": "

The path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users.

This page must accept GET text/html requests.

For example, for the URL https://example.com/web/registration, you would provide the path /web/registration. Registration page paths that start with the path that you provide are considered a match. For example /web/registration matches the registration paths /web/registration, /web/registration/, /web/registrationPage, and /web/registration/thisPage, but doesn't match the path /home/web/registration or /website/registration.

" } }, "RegularExpressionList": { @@ -2133,7 +2140,7 @@ } }, "Rule": { - "base": "

A single rule, which you can use in a WebACL or RuleGroup to identify web requests that you want to allow, block, or count. Each rule includes one top-level Statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "base": "

A single rule, which you can use in a WebACL or RuleGroup to identify web requests that you want to manage in some way. Each rule includes one top-level Statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", "refs": { "Rules$member": null } @@ -2166,10 +2173,10 @@ } }, "RuleGroupReferenceStatement": { - "base": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You can only use a rule group reference statement at the top level inside a web ACL.

", + "base": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You cannot use a rule group reference statement inside another rule group. You can only reference a rule group as a top-level statement within a rule that you define in a web ACL.

", "refs": { "FirewallManagerStatement$RuleGroupReferenceStatement": "

A statement used by Firewall Manager to run the rules that are defined in a rule group. This is managed by Firewall Manager for an Firewall Manager WAF policy.

", - "Statement$RuleGroupReferenceStatement": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You can only use a rule group reference statement at the top level inside a web ACL.

" + "Statement$RuleGroupReferenceStatement": "

A rule statement used to run the rules that are defined in a RuleGroup. To use this, create a rule group with your rules, then provide the ARN of the rule group in this statement.

You cannot nest a RuleGroupReferenceStatement, for example for use inside a NotStatement or OrStatement. You cannot use a rule group reference statement inside another rule group. You can only reference a rule group as a top-level statement within a rule that you define in a web ACL.

" } }, "RuleGroupSummaries": { @@ -2208,12 +2215,12 @@ "base": null, "refs": { "CheckCapacityRequest$Rules": "

An array of Rule that you're configuring to use in a rule group or web ACL.

", - "CreateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "CreateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "RuleGroup$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "UpdateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "UpdateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", - "WebACL$Rules": "

The Rule statements used to identify the web requests that you want to allow, block, or count. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

" + "CreateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "CreateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "RuleGroup$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "UpdateRuleGroupRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "UpdateWebACLRequest$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

", + "WebACL$Rules": "

The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

" } }, "SampleWeight": { @@ -2278,7 +2285,7 @@ "SearchString": { "base": null, "refs": { - "ByteMatchStatement$SearchString": "

A string value that you want WAF to search for. WAF searches only in the part of web requests that you designate for inspection in FieldToMatch. The maximum length of the value is 200 bytes.

Valid values depend on the component that you specify for inspection in FieldToMatch:

If SearchString includes alphabetic characters A-Z and a-z, note that the value is case sensitive.

If you're using the WAF API

Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 200 bytes.

For example, suppose the value of Type is HEADER and the value of Data is User-Agent. If you want to search the User-Agent header for the value BadBot, you base64-encode BadBot using MIME base64-encoding and include the resulting value, QmFkQm90, in the value of SearchString.

If you're using the CLI or one of the Amazon Web Services SDKs

The value that you want WAF to search for. The SDK automatically base64 encodes the value.

" + "ByteMatchStatement$SearchString": "

A string value that you want WAF to search for. WAF searches only in the part of web requests that you designate for inspection in FieldToMatch. The maximum length of the value is 200 bytes.

Valid values depend on the component that you specify for inspection in FieldToMatch:

If SearchString includes alphabetic characters A-Z and a-z, note that the value is case sensitive.

If you're using the WAF API

Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 200 bytes.

For example, suppose the value of Type is HEADER and the value of Data is User-Agent. If you want to search the User-Agent header for the value BadBot, you base64-encode BadBot using MIME base64-encoding and include the resulting value, QmFkQm90, in the value of SearchString.

If you're using the CLI or one of the Amazon Web Services SDKs

The value that you want WAF to search for. The SDK automatically base64 encodes the value.

" } }, "SensitivityLevel": { @@ -2356,7 +2363,7 @@ "String": { "base": null, "refs": { - "AWSManagedRulesATPRuleSet$LoginPath": "

The path of the login endpoint for your application. For example, for the URL https://example.com/web/login, you would provide the path /web/login.

The rule group inspects only HTTP POST requests to your specified login endpoint.

" + "AWSManagedRulesATPRuleSet$LoginPath": "

The path of the login endpoint for your application. For example, for the URL https://example.com/web/login, you would provide the path /web/login. Login paths that start with the path that you provide are considered a match. For example /web/login matches the login paths /web/login, /web/login/, /web/loginPage, and /web/login/thisPage, but doesn't match the login path /home/web/login or /website/login.

The rule group inspects only HTTP POST requests to your specified login endpoint.

" } }, "SuccessCode": { @@ -2441,23 +2448,23 @@ "TextTransformationType": { "base": null, "refs": { - "TextTransformation$Type": "

You can specify the following transformation types:

BASE64_DECODE - Decode a Base64-encoded string.

BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation that ignores characters that aren't valid.

CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness of attackers who inject an operating system command-line command and use unusual formatting to disguise some or all of the command.

COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal 32):

COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.

CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules syndata.html#characters. This function uses up to two bytes in the decoding process, so it can help to uncover ASCII characters that were encoded using CSS encoding that wouldn’t typically be encoded. It's also useful in countering evasion, which is a combination of a backslash and non-hexadecimal characters. For example, ja\\vascript for javascript.

ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \\a, \\b, \\f, \\n, \\r, \\t, \\v, \\\\, \\?, \\', \\\", \\xHH (hexadecimal), \\0OOO (octal). Encodings that aren't valid remain in the output.

HEX_DECODE - Decode a string of hexadecimal characters into a binary.

HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs these operations:

JS_DECODE - Decode JavaScript escape sequences. If a \\ u HHHH code is in the full-width ASCII code range of FF01-FF5E, then the higher byte is used to detect and adjust the lower byte. If not, only the lower byte is used and the higher byte is zeroed, causing a possible loss of information.

LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z).

MD5 - Calculate an MD5 hash from the data in the input. The computed hash is in a raw binary form.

NONE - Specify NONE if you don't want any text transformations.

NORMALIZE_PATH - Remove multiple slashes, directory self-references, and directory back-references that are not at the beginning of the input from an input string.

NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts backslash characters to forward slashes.

REMOVE_NULLS - Remove all NULL bytes from the input.

REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... */) with a single space. Multiple consecutive occurrences are not compressed. Unterminated comments are also replaced with a space (ASCII 0x20). However, a standalone termination of a comment (*/) is not acted upon.

REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII 0x20).

SQL_HEX_DECODE - Decode SQL hex data. Example (0x414243) will be decoded to (ABC).

URL_DECODE - Decode a URL-encoded value.

URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, the higher byte is used to detect and adjust the lower byte. Otherwise, only the lower byte is used and the higher byte is zeroed.

UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This helps input normalization, and minimizing false-positives and false-negatives for non-English languages.

" + "TextTransformation$Type": "

For detailed descriptions of each of the transformation types, see Text transformations in the WAF Developer Guide.

" } }, "TextTransformations": { "base": null, "refs": { - "ByteMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitCookie$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitHeader$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitQueryArgument$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitQueryString$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RateLimitUriPath$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RegexMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "RegexPatternSetReferenceStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "SizeConstraintStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "SqliMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

", - "XssMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the component contents.

" + "ByteMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitCookie$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitHeader$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitQueryArgument$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitQueryString$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RateLimitUriPath$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RegexMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "RegexPatternSetReferenceStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "SizeConstraintStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "SqliMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

", + "XssMatchStatement$TextTransformations": "

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.

" } }, "TimeWindow": { @@ -2747,7 +2754,7 @@ } }, "WebACL": { - "base": "

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", + "base": "

A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

", "refs": { "GetWebACLForResourceResponse$WebACL": "

The web ACL that is associated with the resource. If there is no associated resource, WAF returns a null web ACL.

", "GetWebACLResponse$WebACL": "

The web ACL specification. You can modify the settings in this web ACL and use it to update this web ACL or create a new one.

" diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 83b37c96818..4e596321c16 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -23077,6 +23077,12 @@ "us-gov-west-1" : { } } }, + "rolesanywhere" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "route53" : { "endpoints" : { "aws-us-gov-global" : { diff --git a/service/amplifyuibuilder/api.go b/service/amplifyuibuilder/api.go index e1fe04bc4a8..90c58f2d2e3 100644 --- a/service/amplifyuibuilder/api.go +++ b/service/amplifyuibuilder/api.go @@ -584,7 +584,9 @@ func (c *AmplifyUIBuilder) ExchangeCodeForTokenRequest(input *ExchangeCodeForTok // ExchangeCodeForToken API operation for AWS Amplify UI Builder. // -// Exchanges an access code for a token. +// This is for internal use. +// +// Amplify uses this action to exchange an access code for a token. // // 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 @@ -2150,7 +2152,10 @@ func (c *AmplifyUIBuilder) RefreshTokenRequest(input *RefreshTokenInput) (req *r // RefreshToken API operation for AWS Amplify UI Builder. // -// Refreshes a previously issued access token that might have expired. +// This is for internal use. +// +// Amplify uses this action to refresh a previously issued access token that +// might have expired. // // 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 @@ -2758,6 +2763,66 @@ func (s *ApiConfiguration) SetNoApiConfig(v *NoApiRenderConfig) *ApiConfiguratio return s } +// Dependency package that may be required for the project code to run. +type CodegenDependency struct { + _ struct{} `type:"structure"` + + // Determines if the dependency package is using Semantic versioning. If set + // to true, it indicates that the dependency package uses Semantic versioning. + IsSemVer *bool `locationName:"isSemVer" type:"boolean"` + + // Name of the dependency package. + Name *string `locationName:"name" type:"string"` + + // Indicates the reason to include the dependency package in your project code. + Reason *string `locationName:"reason" type:"string"` + + // Indicates the version of the supported dependency package. + SupportedVersion *string `locationName:"supportedVersion" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodegenDependency) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CodegenDependency) GoString() string { + return s.String() +} + +// SetIsSemVer sets the IsSemVer field's value. +func (s *CodegenDependency) SetIsSemVer(v bool) *CodegenDependency { + s.IsSemVer = &v + return s +} + +// SetName sets the Name field's value. +func (s *CodegenDependency) SetName(v string) *CodegenDependency { + s.Name = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *CodegenDependency) SetReason(v string) *CodegenDependency { + s.Reason = &v + return s +} + +// SetSupportedVersion sets the SupportedVersion field's value. +func (s *CodegenDependency) SetSupportedVersion(v string) *CodegenDependency { + s.SupportedVersion = &v + return s +} + // Describes the feature flags that you can specify for a code generation job. type CodegenFeatureFlags struct { _ struct{} `type:"structure"` @@ -3243,6 +3308,10 @@ type CodegenJob struct { // The time that the code generation job was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"` + // Lists the dependency packages that may be required for the project code to + // run. + Dependencies []*CodegenDependency `locationName:"dependencies" type:"list"` + // The name of the backend environment associated with the code generation job. // // EnvironmentName is a required field @@ -3318,6 +3387,12 @@ func (s *CodegenJob) SetCreatedAt(v time.Time) *CodegenJob { return s } +// SetDependencies sets the Dependencies field's value. +func (s *CodegenJob) SetDependencies(v []*CodegenDependency) *CodegenJob { + s.Dependencies = v + return s +} + // SetEnvironmentName sets the EnvironmentName field's value. func (s *CodegenJob) SetEnvironmentName(v string) *CodegenJob { s.EnvironmentName = &v @@ -9536,6 +9611,10 @@ type ReactStartCodegenJobData struct { // The API configuration for the code generation job. ApiConfiguration *ApiConfiguration `locationName:"apiConfiguration" type:"structure"` + // Lists the dependency packages that may be required for the project code to + // run. + Dependencies map[string]*string `locationName:"dependencies" type:"map"` + // Specifies whether the code generation job should render inline source maps. InlineSourceMap *bool `locationName:"inlineSourceMap" type:"boolean"` @@ -9592,6 +9671,12 @@ func (s *ReactStartCodegenJobData) SetApiConfiguration(v *ApiConfiguration) *Rea return s } +// SetDependencies sets the Dependencies field's value. +func (s *ReactStartCodegenJobData) SetDependencies(v map[string]*string) *ReactStartCodegenJobData { + s.Dependencies = v + return s +} + // SetInlineSourceMap sets the InlineSourceMap field's value. func (s *ReactStartCodegenJobData) SetInlineSourceMap(v bool) *ReactStartCodegenJobData { s.InlineSourceMap = &v diff --git a/service/chimesdkmediapipelines/api.go b/service/chimesdkmediapipelines/api.go index 13290ca9327..4e3bb64d339 100644 --- a/service/chimesdkmediapipelines/api.go +++ b/service/chimesdkmediapipelines/api.go @@ -505,6 +505,207 @@ func (c *ChimeSDKMediaPipelines) CreateMediaLiveConnectorPipelineWithContext(ctx return out, req.Send() } +const opCreateMediaPipelineKinesisVideoStreamPool = "CreateMediaPipelineKinesisVideoStreamPool" + +// CreateMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the CreateMediaPipelineKinesisVideoStreamPool 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 CreateMediaPipelineKinesisVideoStreamPool for more information on using the CreateMediaPipelineKinesisVideoStreamPool +// 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 CreateMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.CreateMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPoolRequest(input *CreateMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *CreateMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opCreateMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "POST", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools", + } + + if input == nil { + input = &CreateMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &CreateMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Creates an Kinesis video stream pool for the media pipeline. +// +// 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 Chime SDK Media Pipelines's +// API operation CreateMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPool(input *CreateMediaPipelineKinesisVideoStreamPoolInput) (*CreateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.CreateMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// CreateMediaPipelineKinesisVideoStreamPoolWithContext is the same as CreateMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMediaPipelineKinesisVideoStreamPool 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 *ChimeSDKMediaPipelines) CreateMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *CreateMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*CreateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.CreateMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateMediaStreamPipeline = "CreateMediaStreamPipeline" + +// CreateMediaStreamPipelineRequest generates a "aws/request.Request" representing the +// client's request for the CreateMediaStreamPipeline 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 CreateMediaStreamPipeline for more information on using the CreateMediaStreamPipeline +// 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 CreateMediaStreamPipelineRequest method. +// req, resp := client.CreateMediaStreamPipelineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaStreamPipeline +func (c *ChimeSDKMediaPipelines) CreateMediaStreamPipelineRequest(input *CreateMediaStreamPipelineInput) (req *request.Request, output *CreateMediaStreamPipelineOutput) { + op := &request.Operation{ + Name: opCreateMediaStreamPipeline, + HTTPMethod: "POST", + HTTPPath: "/sdk-media-stream-pipelines", + } + + if input == nil { + input = &CreateMediaStreamPipelineInput{} + } + + output = &CreateMediaStreamPipelineOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateMediaStreamPipeline API operation for Amazon Chime SDK Media Pipelines. +// +// Creates a streaming media pipeline. +// +// 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 Chime SDK Media Pipelines's +// API operation CreateMediaStreamPipeline for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/CreateMediaStreamPipeline +func (c *ChimeSDKMediaPipelines) CreateMediaStreamPipeline(input *CreateMediaStreamPipelineInput) (*CreateMediaStreamPipelineOutput, error) { + req, out := c.CreateMediaStreamPipelineRequest(input) + return out, req.Send() +} + +// CreateMediaStreamPipelineWithContext is the same as CreateMediaStreamPipeline with the addition of +// the ability to pass a context and additional request options. +// +// See CreateMediaStreamPipeline 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 *ChimeSDKMediaPipelines) CreateMediaStreamPipelineWithContext(ctx aws.Context, input *CreateMediaStreamPipelineInput, opts ...request.Option) (*CreateMediaStreamPipelineOutput, error) { + req, out := c.CreateMediaStreamPipelineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMediaCapturePipeline = "DeleteMediaCapturePipeline" // DeleteMediaCapturePipelineRequest generates a "aws/request.Request" representing the @@ -807,6 +1008,108 @@ func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineWithContext(ctx aws.Context, return out, req.Send() } +const opDeleteMediaPipelineKinesisVideoStreamPool = "DeleteMediaPipelineKinesisVideoStreamPool" + +// DeleteMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the DeleteMediaPipelineKinesisVideoStreamPool 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 DeleteMediaPipelineKinesisVideoStreamPool for more information on using the DeleteMediaPipelineKinesisVideoStreamPool +// 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 DeleteMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.DeleteMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/DeleteMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPoolRequest(input *DeleteMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *DeleteMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opDeleteMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "DELETE", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", + } + + if input == nil { + input = &DeleteMediaPipelineKinesisVideoStreamPoolInput{} + } + + output = &DeleteMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Deletes an Kinesis video stream pool. +// +// 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 Chime SDK Media Pipelines's +// API operation DeleteMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/DeleteMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPool(input *DeleteMediaPipelineKinesisVideoStreamPoolInput) (*DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.DeleteMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// DeleteMediaPipelineKinesisVideoStreamPoolWithContext is the same as DeleteMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteMediaPipelineKinesisVideoStreamPool 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 *ChimeSDKMediaPipelines) DeleteMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *DeleteMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.DeleteMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMediaCapturePipeline = "GetMediaCapturePipeline" // GetMediaCapturePipelineRequest generates a "aws/request.Request" representing the @@ -1098,57 +1401,57 @@ func (c *ChimeSDKMediaPipelines) GetMediaPipelineWithContext(ctx aws.Context, in return out, req.Send() } -const opGetSpeakerSearchTask = "GetSpeakerSearchTask" +const opGetMediaPipelineKinesisVideoStreamPool = "GetMediaPipelineKinesisVideoStreamPool" -// GetSpeakerSearchTaskRequest generates a "aws/request.Request" representing the -// client's request for the GetSpeakerSearchTask operation. The "output" return +// GetMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the GetMediaPipelineKinesisVideoStreamPool 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 GetSpeakerSearchTask for more information on using the GetSpeakerSearchTask +// See GetMediaPipelineKinesisVideoStreamPool for more information on using the GetMediaPipelineKinesisVideoStreamPool // 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 GetSpeakerSearchTaskRequest method. -// req, resp := client.GetSpeakerSearchTaskRequest(params) +// // Example sending a request using the GetMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.GetMediaPipelineKinesisVideoStreamPoolRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetSpeakerSearchTask -func (c *ChimeSDKMediaPipelines) GetSpeakerSearchTaskRequest(input *GetSpeakerSearchTaskInput) (req *request.Request, output *GetSpeakerSearchTaskOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPoolRequest(input *GetMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *GetMediaPipelineKinesisVideoStreamPoolOutput) { op := &request.Operation{ - Name: opGetSpeakerSearchTask, + Name: opGetMediaPipelineKinesisVideoStreamPool, HTTPMethod: "GET", - HTTPPath: "/media-insights-pipelines/{identifier}/speaker-search-tasks/{speakerSearchTaskId}", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", } if input == nil { - input = &GetSpeakerSearchTaskInput{} + input = &GetMediaPipelineKinesisVideoStreamPoolInput{} } - output = &GetSpeakerSearchTaskOutput{} + output = &GetMediaPipelineKinesisVideoStreamPoolOutput{} req = c.newRequest(op, input, output) return } -// GetSpeakerSearchTask API operation for Amazon Chime SDK Media Pipelines. +// GetMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. // -// Retrieves the details of the specified speaker search task. +// Gets an Kinesis video stream pool. // // 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 Chime SDK Media Pipelines's -// API operation GetSpeakerSearchTask for usage and error information. +// API operation GetMediaPipelineKinesisVideoStreamPool for usage and error information. // // Returned Error Types: // @@ -1158,13 +1461,110 @@ func (c *ChimeSDKMediaPipelines) GetSpeakerSearchTaskRequest(input *GetSpeakerSe // - ForbiddenException // The client is permanently forbidden from making the request. // +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// // - UnauthorizedClientException // The client is not currently authorized to make the request. // // - ThrottledClientException // The client exceeded its request rate limit. // -// - NotFoundException +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPool(input *GetMediaPipelineKinesisVideoStreamPoolInput) (*GetMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.GetMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// GetMediaPipelineKinesisVideoStreamPoolWithContext is the same as GetMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See GetMediaPipelineKinesisVideoStreamPool 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 *ChimeSDKMediaPipelines) GetMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *GetMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*GetMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.GetMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSpeakerSearchTask = "GetSpeakerSearchTask" + +// GetSpeakerSearchTaskRequest generates a "aws/request.Request" representing the +// client's request for the GetSpeakerSearchTask 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 GetSpeakerSearchTask for more information on using the GetSpeakerSearchTask +// 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 GetSpeakerSearchTaskRequest method. +// req, resp := client.GetSpeakerSearchTaskRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/GetSpeakerSearchTask +func (c *ChimeSDKMediaPipelines) GetSpeakerSearchTaskRequest(input *GetSpeakerSearchTaskInput) (req *request.Request, output *GetSpeakerSearchTaskOutput) { + op := &request.Operation{ + Name: opGetSpeakerSearchTask, + HTTPMethod: "GET", + HTTPPath: "/media-insights-pipelines/{identifier}/speaker-search-tasks/{speakerSearchTaskId}", + } + + if input == nil { + input = &GetSpeakerSearchTaskInput{} + } + + output = &GetSpeakerSearchTaskOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSpeakerSearchTask API operation for Amazon Chime SDK Media Pipelines. +// +// Retrieves the details of the specified speaker search task. +// +// 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 Chime SDK Media Pipelines's +// API operation GetSpeakerSearchTask for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - NotFoundException // One or more of the resources in the request does not exist in the system. // // - ServiceUnavailableException @@ -1600,6 +2000,160 @@ func (c *ChimeSDKMediaPipelines) ListMediaInsightsPipelineConfigurationsPagesWit return p.Err() } +const opListMediaPipelineKinesisVideoStreamPools = "ListMediaPipelineKinesisVideoStreamPools" + +// ListMediaPipelineKinesisVideoStreamPoolsRequest generates a "aws/request.Request" representing the +// client's request for the ListMediaPipelineKinesisVideoStreamPools 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 ListMediaPipelineKinesisVideoStreamPools for more information on using the ListMediaPipelineKinesisVideoStreamPools +// 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 ListMediaPipelineKinesisVideoStreamPoolsRequest method. +// req, resp := client.ListMediaPipelineKinesisVideoStreamPoolsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/ListMediaPipelineKinesisVideoStreamPools +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsRequest(input *ListMediaPipelineKinesisVideoStreamPoolsInput) (req *request.Request, output *ListMediaPipelineKinesisVideoStreamPoolsOutput) { + op := &request.Operation{ + Name: opListMediaPipelineKinesisVideoStreamPools, + HTTPMethod: "GET", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMediaPipelineKinesisVideoStreamPoolsInput{} + } + + output = &ListMediaPipelineKinesisVideoStreamPoolsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMediaPipelineKinesisVideoStreamPools API operation for Amazon Chime SDK Media Pipelines. +// +// Lists the video stream pools in the media pipeline. +// +// 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 Chime SDK Media Pipelines's +// API operation ListMediaPipelineKinesisVideoStreamPools for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ResourceLimitExceededException +// The request exceeds the resource limit. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/ListMediaPipelineKinesisVideoStreamPools +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPools(input *ListMediaPipelineKinesisVideoStreamPoolsInput) (*ListMediaPipelineKinesisVideoStreamPoolsOutput, error) { + req, out := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(input) + return out, req.Send() +} + +// ListMediaPipelineKinesisVideoStreamPoolsWithContext is the same as ListMediaPipelineKinesisVideoStreamPools with the addition of +// the ability to pass a context and additional request options. +// +// See ListMediaPipelineKinesisVideoStreamPools 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 *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsWithContext(ctx aws.Context, input *ListMediaPipelineKinesisVideoStreamPoolsInput, opts ...request.Option) (*ListMediaPipelineKinesisVideoStreamPoolsOutput, error) { + req, out := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMediaPipelineKinesisVideoStreamPoolsPages iterates over the pages of a ListMediaPipelineKinesisVideoStreamPools operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMediaPipelineKinesisVideoStreamPools 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 ListMediaPipelineKinesisVideoStreamPools operation. +// pageNum := 0 +// err := client.ListMediaPipelineKinesisVideoStreamPoolsPages(params, +// func(page *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsPages(input *ListMediaPipelineKinesisVideoStreamPoolsInput, fn func(*ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool) error { + return c.ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext same as ListMediaPipelineKinesisVideoStreamPoolsPages 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 *ChimeSDKMediaPipelines) ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(ctx aws.Context, input *ListMediaPipelineKinesisVideoStreamPoolsInput, fn func(*ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMediaPipelineKinesisVideoStreamPoolsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMediaPipelineKinesisVideoStreamPoolsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMediaPipelineKinesisVideoStreamPoolsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMediaPipelines = "ListMediaPipelines" // ListMediaPipelinesRequest generates a "aws/request.Request" representing the @@ -2669,39 +3223,140 @@ func (c *ChimeSDKMediaPipelines) UpdateMediaInsightsPipelineStatusWithContext(ct return out, req.Send() } -// Defines the configuration for an ActiveSpeakerOnly video tile. -type ActiveSpeakerOnlyConfiguration struct { - _ struct{} `type:"structure"` - - // The position of the ActiveSpeakerOnly video tile. - ActiveSpeakerPosition *string `type:"string" enum:"ActiveSpeakerPosition"` -} +const opUpdateMediaPipelineKinesisVideoStreamPool = "UpdateMediaPipelineKinesisVideoStreamPool" -// String returns the string representation. +// UpdateMediaPipelineKinesisVideoStreamPoolRequest generates a "aws/request.Request" representing the +// client's request for the UpdateMediaPipelineKinesisVideoStreamPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ActiveSpeakerOnlyConfiguration) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. +// 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. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ActiveSpeakerOnlyConfiguration) GoString() string { - return s.String() -} +// See UpdateMediaPipelineKinesisVideoStreamPool for more information on using the UpdateMediaPipelineKinesisVideoStreamPool +// 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 UpdateMediaPipelineKinesisVideoStreamPoolRequest method. +// req, resp := client.UpdateMediaPipelineKinesisVideoStreamPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/UpdateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPoolRequest(input *UpdateMediaPipelineKinesisVideoStreamPoolInput) (req *request.Request, output *UpdateMediaPipelineKinesisVideoStreamPoolOutput) { + op := &request.Operation{ + Name: opUpdateMediaPipelineKinesisVideoStreamPool, + HTTPMethod: "PUT", + HTTPPath: "/media-pipeline-kinesis-video-stream-pools/{identifier}", + } -// SetActiveSpeakerPosition sets the ActiveSpeakerPosition field's value. -func (s *ActiveSpeakerOnlyConfiguration) SetActiveSpeakerPosition(v string) *ActiveSpeakerOnlyConfiguration { - s.ActiveSpeakerPosition = &v - return s -} + if input == nil { + input = &UpdateMediaPipelineKinesisVideoStreamPoolInput{} + } -// A structure that contains the configuration settings for an Amazon Transcribe + output = &UpdateMediaPipelineKinesisVideoStreamPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateMediaPipelineKinesisVideoStreamPool API operation for Amazon Chime SDK Media Pipelines. +// +// Updates an Kinesis video stream pool in a media pipeline. +// +// 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 Chime SDK Media Pipelines's +// API operation UpdateMediaPipelineKinesisVideoStreamPool for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The input parameters don't match the service's restrictions. +// +// - ForbiddenException +// The client is permanently forbidden from making the request. +// +// - NotFoundException +// One or more of the resources in the request does not exist in the system. +// +// - UnauthorizedClientException +// The client is not currently authorized to make the request. +// +// - ThrottledClientException +// The client exceeded its request rate limit. +// +// - ConflictException +// The request could not be processed because of conflict in the current state +// of the resource. +// +// - ServiceUnavailableException +// The service is currently unavailable. +// +// - ServiceFailureException +// The service encountered an unexpected error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-media-pipelines-2021-07-15/UpdateMediaPipelineKinesisVideoStreamPool +func (c *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPool(input *UpdateMediaPipelineKinesisVideoStreamPoolInput) (*UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.UpdateMediaPipelineKinesisVideoStreamPoolRequest(input) + return out, req.Send() +} + +// UpdateMediaPipelineKinesisVideoStreamPoolWithContext is the same as UpdateMediaPipelineKinesisVideoStreamPool with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateMediaPipelineKinesisVideoStreamPool 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 *ChimeSDKMediaPipelines) UpdateMediaPipelineKinesisVideoStreamPoolWithContext(ctx aws.Context, input *UpdateMediaPipelineKinesisVideoStreamPoolInput, opts ...request.Option) (*UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) { + req, out := c.UpdateMediaPipelineKinesisVideoStreamPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// Defines the configuration for an ActiveSpeakerOnly video tile. +type ActiveSpeakerOnlyConfiguration struct { + _ struct{} `type:"structure"` + + // The position of the ActiveSpeakerOnly video tile. + ActiveSpeakerPosition *string `type:"string" enum:"ActiveSpeakerPosition"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActiveSpeakerOnlyConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActiveSpeakerOnlyConfiguration) GoString() string { + return s.String() +} + +// SetActiveSpeakerPosition sets the ActiveSpeakerPosition field's value. +func (s *ActiveSpeakerOnlyConfiguration) SetActiveSpeakerPosition(v string) *ActiveSpeakerOnlyConfiguration { + s.ActiveSpeakerPosition = &v + return s +} + +// A structure that contains the configuration settings for an Amazon Transcribe // call analytics processor. type AmazonTranscribeCallAnalyticsProcessorConfiguration struct { _ struct{} `type:"structure"` @@ -4857,11 +5512,348 @@ func (s *CreateMediaInsightsPipelineConfigurationInput) SetTags(v []*Tag) *Creat return s } -type CreateMediaInsightsPipelineConfigurationOutput struct { +type CreateMediaInsightsPipelineConfigurationOutput struct { + _ struct{} `type:"structure"` + + // The configuration settings for the media insights pipeline. + MediaInsightsPipelineConfiguration *MediaInsightsPipelineConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineConfigurationOutput) GoString() string { + return s.String() +} + +// SetMediaInsightsPipelineConfiguration sets the MediaInsightsPipelineConfiguration field's value. +func (s *CreateMediaInsightsPipelineConfigurationOutput) SetMediaInsightsPipelineConfiguration(v *MediaInsightsPipelineConfiguration) *CreateMediaInsightsPipelineConfigurationOutput { + s.MediaInsightsPipelineConfiguration = v + return s +} + +type CreateMediaInsightsPipelineInput struct { + _ struct{} `type:"structure"` + + // The unique identifier for the media insights pipeline request. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's + // String and GoString methods. + ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` + + // The runtime configuration for the Kinesis video recording stream source. + KinesisVideoStreamRecordingSourceRuntimeConfiguration *KinesisVideoStreamRecordingSourceRuntimeConfiguration `type:"structure"` + + // The runtime configuration for the Kinesis video stream source of the media + // insights pipeline. + KinesisVideoStreamSourceRuntimeConfiguration *KinesisVideoStreamSourceRuntimeConfiguration `type:"structure"` + + // The ARN of the pipeline's configuration. + // + // MediaInsightsPipelineConfigurationArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's + // String and GoString methods. + // + // MediaInsightsPipelineConfigurationArn is a required field + MediaInsightsPipelineConfigurationArn *string `min:"1" type:"string" required:"true" sensitive:"true"` + + // The runtime metadata for the media insights pipeline. Consists of a key-value + // map of strings. + // + // MediaInsightsRuntimeMetadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's + // String and GoString methods. + MediaInsightsRuntimeMetadata map[string]*string `type:"map" sensitive:"true"` + + // The runtime configuration for the S3 recording sink. If specified, the settings + // in this structure override any settings in S3RecordingSinkConfiguration. + S3RecordingSinkRuntimeConfiguration *S3RecordingSinkRuntimeConfiguration `type:"structure"` + + // The tags assigned to the media insights pipeline. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMediaInsightsPipelineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaInsightsPipelineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.MediaInsightsPipelineConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("MediaInsightsPipelineConfigurationArn")) + } + if s.MediaInsightsPipelineConfigurationArn != nil && len(*s.MediaInsightsPipelineConfigurationArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MediaInsightsPipelineConfigurationArn", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.KinesisVideoStreamRecordingSourceRuntimeConfiguration != nil { + if err := s.KinesisVideoStreamRecordingSourceRuntimeConfiguration.Validate(); err != nil { + invalidParams.AddNested("KinesisVideoStreamRecordingSourceRuntimeConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.KinesisVideoStreamSourceRuntimeConfiguration != nil { + if err := s.KinesisVideoStreamSourceRuntimeConfiguration.Validate(); err != nil { + invalidParams.AddNested("KinesisVideoStreamSourceRuntimeConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.S3RecordingSinkRuntimeConfiguration != nil { + if err := s.S3RecordingSinkRuntimeConfiguration.Validate(); err != nil { + invalidParams.AddNested("S3RecordingSinkRuntimeConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateMediaInsightsPipelineInput) SetClientRequestToken(v string) *CreateMediaInsightsPipelineInput { + s.ClientRequestToken = &v + return s +} + +// SetKinesisVideoStreamRecordingSourceRuntimeConfiguration sets the KinesisVideoStreamRecordingSourceRuntimeConfiguration field's value. +func (s *CreateMediaInsightsPipelineInput) SetKinesisVideoStreamRecordingSourceRuntimeConfiguration(v *KinesisVideoStreamRecordingSourceRuntimeConfiguration) *CreateMediaInsightsPipelineInput { + s.KinesisVideoStreamRecordingSourceRuntimeConfiguration = v + return s +} + +// SetKinesisVideoStreamSourceRuntimeConfiguration sets the KinesisVideoStreamSourceRuntimeConfiguration field's value. +func (s *CreateMediaInsightsPipelineInput) SetKinesisVideoStreamSourceRuntimeConfiguration(v *KinesisVideoStreamSourceRuntimeConfiguration) *CreateMediaInsightsPipelineInput { + s.KinesisVideoStreamSourceRuntimeConfiguration = v + return s +} + +// SetMediaInsightsPipelineConfigurationArn sets the MediaInsightsPipelineConfigurationArn field's value. +func (s *CreateMediaInsightsPipelineInput) SetMediaInsightsPipelineConfigurationArn(v string) *CreateMediaInsightsPipelineInput { + s.MediaInsightsPipelineConfigurationArn = &v + return s +} + +// SetMediaInsightsRuntimeMetadata sets the MediaInsightsRuntimeMetadata field's value. +func (s *CreateMediaInsightsPipelineInput) SetMediaInsightsRuntimeMetadata(v map[string]*string) *CreateMediaInsightsPipelineInput { + s.MediaInsightsRuntimeMetadata = v + return s +} + +// SetS3RecordingSinkRuntimeConfiguration sets the S3RecordingSinkRuntimeConfiguration field's value. +func (s *CreateMediaInsightsPipelineInput) SetS3RecordingSinkRuntimeConfiguration(v *S3RecordingSinkRuntimeConfiguration) *CreateMediaInsightsPipelineInput { + s.S3RecordingSinkRuntimeConfiguration = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateMediaInsightsPipelineInput) SetTags(v []*Tag) *CreateMediaInsightsPipelineInput { + s.Tags = v + return s +} + +type CreateMediaInsightsPipelineOutput struct { + _ struct{} `type:"structure"` + + // The media insights pipeline object. + // + // MediaInsightsPipeline is a required field + MediaInsightsPipeline *MediaInsightsPipeline `type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaInsightsPipelineOutput) GoString() string { + return s.String() +} + +// SetMediaInsightsPipeline sets the MediaInsightsPipeline field's value. +func (s *CreateMediaInsightsPipelineOutput) SetMediaInsightsPipeline(v *MediaInsightsPipeline) *CreateMediaInsightsPipelineOutput { + s.MediaInsightsPipeline = v + return s +} + +type CreateMediaLiveConnectorPipelineInput struct { + _ struct{} `type:"structure"` + + // The token assigned to the client making the request. + // + // ClientRequestToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateMediaLiveConnectorPipelineInput's + // String and GoString methods. + ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` + + // The media live connector pipeline's data sinks. + // + // Sinks is a required field + Sinks []*LiveConnectorSinkConfiguration `min:"1" type:"list" required:"true"` + + // The media live connector pipeline's data sources. + // + // Sources is a required field + Sources []*LiveConnectorSourceConfiguration `min:"1" type:"list" required:"true"` + + // The tags associated with the media live connector pipeline. + Tags []*Tag `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaLiveConnectorPipelineInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMediaLiveConnectorPipelineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMediaLiveConnectorPipelineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaLiveConnectorPipelineInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) + } + if s.Sinks == nil { + invalidParams.Add(request.NewErrParamRequired("Sinks")) + } + if s.Sinks != nil && len(s.Sinks) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sinks", 1)) + } + if s.Sources == nil { + invalidParams.Add(request.NewErrParamRequired("Sources")) + } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Sinks != nil { + for i, v := range s.Sinks { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sinks", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Sources != nil { + for i, v := range s.Sources { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateMediaLiveConnectorPipelineInput) SetClientRequestToken(v string) *CreateMediaLiveConnectorPipelineInput { + s.ClientRequestToken = &v + return s +} + +// SetSinks sets the Sinks field's value. +func (s *CreateMediaLiveConnectorPipelineInput) SetSinks(v []*LiveConnectorSinkConfiguration) *CreateMediaLiveConnectorPipelineInput { + s.Sinks = v + return s +} + +// SetSources sets the Sources field's value. +func (s *CreateMediaLiveConnectorPipelineInput) SetSources(v []*LiveConnectorSourceConfiguration) *CreateMediaLiveConnectorPipelineInput { + s.Sources = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateMediaLiveConnectorPipelineInput) SetTags(v []*Tag) *CreateMediaLiveConnectorPipelineInput { + s.Tags = v + return s +} + +type CreateMediaLiveConnectorPipelineOutput struct { _ struct{} `type:"structure"` - // The configuration settings for the media insights pipeline. - MediaInsightsPipelineConfiguration *MediaInsightsPipelineConfiguration `type:"structure"` + // The new media live connector pipeline. + MediaLiveConnectorPipeline *MediaLiveConnectorPipeline `type:"structure"` } // String returns the string representation. @@ -4869,7 +5861,7 @@ type CreateMediaInsightsPipelineConfigurationOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineConfigurationOutput) String() string { +func (s CreateMediaLiveConnectorPipelineOutput) String() string { return awsutil.Prettify(s) } @@ -4878,55 +5870,37 @@ func (s CreateMediaInsightsPipelineConfigurationOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineConfigurationOutput) GoString() string { +func (s CreateMediaLiveConnectorPipelineOutput) GoString() string { return s.String() } -// SetMediaInsightsPipelineConfiguration sets the MediaInsightsPipelineConfiguration field's value. -func (s *CreateMediaInsightsPipelineConfigurationOutput) SetMediaInsightsPipelineConfiguration(v *MediaInsightsPipelineConfiguration) *CreateMediaInsightsPipelineConfigurationOutput { - s.MediaInsightsPipelineConfiguration = v +// SetMediaLiveConnectorPipeline sets the MediaLiveConnectorPipeline field's value. +func (s *CreateMediaLiveConnectorPipelineOutput) SetMediaLiveConnectorPipeline(v *MediaLiveConnectorPipeline) *CreateMediaLiveConnectorPipelineOutput { + s.MediaLiveConnectorPipeline = v return s } -type CreateMediaInsightsPipelineInput struct { +type CreateMediaPipelineKinesisVideoStreamPoolInput struct { _ struct{} `type:"structure"` - // The unique identifier for the media insights pipeline request. + // The token assigned to the client making the request. // // ClientRequestToken is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's + // replaced with "sensitive" in string returned by CreateMediaPipelineKinesisVideoStreamPoolInput's // String and GoString methods. ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` - // The runtime configuration for the Kinesis video recording stream source. - KinesisVideoStreamRecordingSourceRuntimeConfiguration *KinesisVideoStreamRecordingSourceRuntimeConfiguration `type:"structure"` - - // The runtime configuration for the Kinesis video stream source of the media - // insights pipeline. - KinesisVideoStreamSourceRuntimeConfiguration *KinesisVideoStreamSourceRuntimeConfiguration `type:"structure"` - - // The ARN of the pipeline's configuration. - // - // MediaInsightsPipelineConfigurationArn is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's - // String and GoString methods. + // The name of the video stream pool. // - // MediaInsightsPipelineConfigurationArn is a required field - MediaInsightsPipelineConfigurationArn *string `min:"1" type:"string" required:"true" sensitive:"true"` + // PoolName is a required field + PoolName *string `min:"1" type:"string" required:"true"` - // The runtime metadata for the media insights pipeline. Consists of a key-value - // map of strings. + // The configuration settings for the video stream. // - // MediaInsightsRuntimeMetadata is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateMediaInsightsPipelineInput's - // String and GoString methods. - MediaInsightsRuntimeMetadata map[string]*string `type:"map" sensitive:"true"` - - // The runtime configuration for the S3 recording sink. If specified, the settings - // in this structure override any settings in S3RecordingSinkConfiguration. - S3RecordingSinkRuntimeConfiguration *S3RecordingSinkRuntimeConfiguration `type:"structure"` + // StreamConfiguration is a required field + StreamConfiguration *KinesisVideoStreamConfiguration `type:"structure" required:"true"` - // The tags assigned to the media insights pipeline. + // The tags assigned to the video stream pool. Tags []*Tag `min:"1" type:"list"` } @@ -4935,7 +5909,7 @@ type CreateMediaInsightsPipelineInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineInput) String() string { +func (s CreateMediaPipelineKinesisVideoStreamPoolInput) String() string { return awsutil.Prettify(s) } @@ -4944,38 +5918,31 @@ func (s CreateMediaInsightsPipelineInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineInput) GoString() string { +func (s CreateMediaPipelineKinesisVideoStreamPoolInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateMediaInsightsPipelineInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateMediaInsightsPipelineInput"} +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaPipelineKinesisVideoStreamPoolInput"} if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) } - if s.MediaInsightsPipelineConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("MediaInsightsPipelineConfigurationArn")) + if s.PoolName == nil { + invalidParams.Add(request.NewErrParamRequired("PoolName")) } - if s.MediaInsightsPipelineConfigurationArn != nil && len(*s.MediaInsightsPipelineConfigurationArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MediaInsightsPipelineConfigurationArn", 1)) + if s.PoolName != nil && len(*s.PoolName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PoolName", 1)) + } + if s.StreamConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("StreamConfiguration")) } if s.Tags != nil && len(s.Tags) < 1 { invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } - if s.KinesisVideoStreamRecordingSourceRuntimeConfiguration != nil { - if err := s.KinesisVideoStreamRecordingSourceRuntimeConfiguration.Validate(); err != nil { - invalidParams.AddNested("KinesisVideoStreamRecordingSourceRuntimeConfiguration", err.(request.ErrInvalidParams)) - } - } - if s.KinesisVideoStreamSourceRuntimeConfiguration != nil { - if err := s.KinesisVideoStreamSourceRuntimeConfiguration.Validate(); err != nil { - invalidParams.AddNested("KinesisVideoStreamSourceRuntimeConfiguration", err.(request.ErrInvalidParams)) - } - } - if s.S3RecordingSinkRuntimeConfiguration != nil { - if err := s.S3RecordingSinkRuntimeConfiguration.Validate(); err != nil { - invalidParams.AddNested("S3RecordingSinkRuntimeConfiguration", err.(request.ErrInvalidParams)) + if s.StreamConfiguration != nil { + if err := s.StreamConfiguration.Validate(); err != nil { + invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams)) } } if s.Tags != nil { @@ -4996,54 +5963,34 @@ func (s *CreateMediaInsightsPipelineInput) Validate() error { } // SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateMediaInsightsPipelineInput) SetClientRequestToken(v string) *CreateMediaInsightsPipelineInput { +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetClientRequestToken(v string) *CreateMediaPipelineKinesisVideoStreamPoolInput { s.ClientRequestToken = &v return s } -// SetKinesisVideoStreamRecordingSourceRuntimeConfiguration sets the KinesisVideoStreamRecordingSourceRuntimeConfiguration field's value. -func (s *CreateMediaInsightsPipelineInput) SetKinesisVideoStreamRecordingSourceRuntimeConfiguration(v *KinesisVideoStreamRecordingSourceRuntimeConfiguration) *CreateMediaInsightsPipelineInput { - s.KinesisVideoStreamRecordingSourceRuntimeConfiguration = v - return s -} - -// SetKinesisVideoStreamSourceRuntimeConfiguration sets the KinesisVideoStreamSourceRuntimeConfiguration field's value. -func (s *CreateMediaInsightsPipelineInput) SetKinesisVideoStreamSourceRuntimeConfiguration(v *KinesisVideoStreamSourceRuntimeConfiguration) *CreateMediaInsightsPipelineInput { - s.KinesisVideoStreamSourceRuntimeConfiguration = v - return s -} - -// SetMediaInsightsPipelineConfigurationArn sets the MediaInsightsPipelineConfigurationArn field's value. -func (s *CreateMediaInsightsPipelineInput) SetMediaInsightsPipelineConfigurationArn(v string) *CreateMediaInsightsPipelineInput { - s.MediaInsightsPipelineConfigurationArn = &v - return s -} - -// SetMediaInsightsRuntimeMetadata sets the MediaInsightsRuntimeMetadata field's value. -func (s *CreateMediaInsightsPipelineInput) SetMediaInsightsRuntimeMetadata(v map[string]*string) *CreateMediaInsightsPipelineInput { - s.MediaInsightsRuntimeMetadata = v +// SetPoolName sets the PoolName field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetPoolName(v string) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.PoolName = &v return s } -// SetS3RecordingSinkRuntimeConfiguration sets the S3RecordingSinkRuntimeConfiguration field's value. -func (s *CreateMediaInsightsPipelineInput) SetS3RecordingSinkRuntimeConfiguration(v *S3RecordingSinkRuntimeConfiguration) *CreateMediaInsightsPipelineInput { - s.S3RecordingSinkRuntimeConfiguration = v +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetStreamConfiguration(v *KinesisVideoStreamConfiguration) *CreateMediaPipelineKinesisVideoStreamPoolInput { + s.StreamConfiguration = v return s } // SetTags sets the Tags field's value. -func (s *CreateMediaInsightsPipelineInput) SetTags(v []*Tag) *CreateMediaInsightsPipelineInput { +func (s *CreateMediaPipelineKinesisVideoStreamPoolInput) SetTags(v []*Tag) *CreateMediaPipelineKinesisVideoStreamPoolInput { s.Tags = v return s } -type CreateMediaInsightsPipelineOutput struct { +type CreateMediaPipelineKinesisVideoStreamPoolOutput struct { _ struct{} `type:"structure"` - // The media insights pipeline object. - // - // MediaInsightsPipeline is a required field - MediaInsightsPipeline *MediaInsightsPipeline `type:"structure" required:"true"` + // The configuration for the Kinesis video stream pool. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` } // String returns the string representation. @@ -5051,7 +5998,7 @@ type CreateMediaInsightsPipelineOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineOutput) String() string { +func (s CreateMediaPipelineKinesisVideoStreamPoolOutput) String() string { return awsutil.Prettify(s) } @@ -5060,37 +6007,37 @@ func (s CreateMediaInsightsPipelineOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaInsightsPipelineOutput) GoString() string { +func (s CreateMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { return s.String() } -// SetMediaInsightsPipeline sets the MediaInsightsPipeline field's value. -func (s *CreateMediaInsightsPipelineOutput) SetMediaInsightsPipeline(v *MediaInsightsPipeline) *CreateMediaInsightsPipelineOutput { - s.MediaInsightsPipeline = v +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *CreateMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *CreateMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v return s } -type CreateMediaLiveConnectorPipelineInput struct { +type CreateMediaStreamPipelineInput struct { _ struct{} `type:"structure"` // The token assigned to the client making the request. // // ClientRequestToken is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateMediaLiveConnectorPipelineInput's + // replaced with "sensitive" in string returned by CreateMediaStreamPipelineInput's // String and GoString methods. ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"` - // The media live connector pipeline's data sinks. + // The data sink for the media pipeline. // // Sinks is a required field - Sinks []*LiveConnectorSinkConfiguration `min:"1" type:"list" required:"true"` + Sinks []*MediaStreamSink `min:"1" type:"list" required:"true"` - // The media live connector pipeline's data sources. + // The data sources for the media pipeline. // // Sources is a required field - Sources []*LiveConnectorSourceConfiguration `min:"1" type:"list" required:"true"` + Sources []*MediaStreamSource `min:"1" type:"list" required:"true"` - // The tags associated with the media live connector pipeline. + // The tags assigned to the media pipeline. Tags []*Tag `min:"1" type:"list"` } @@ -5099,7 +6046,7 @@ type CreateMediaLiveConnectorPipelineInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaLiveConnectorPipelineInput) String() string { +func (s CreateMediaStreamPipelineInput) String() string { return awsutil.Prettify(s) } @@ -5108,13 +6055,13 @@ func (s CreateMediaLiveConnectorPipelineInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaLiveConnectorPipelineInput) GoString() string { +func (s CreateMediaStreamPipelineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateMediaLiveConnectorPipelineInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateMediaLiveConnectorPipelineInput"} +func (s *CreateMediaStreamPipelineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMediaStreamPipelineInput"} if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2)) } @@ -5171,34 +6118,34 @@ func (s *CreateMediaLiveConnectorPipelineInput) Validate() error { } // SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateMediaLiveConnectorPipelineInput) SetClientRequestToken(v string) *CreateMediaLiveConnectorPipelineInput { +func (s *CreateMediaStreamPipelineInput) SetClientRequestToken(v string) *CreateMediaStreamPipelineInput { s.ClientRequestToken = &v return s } // SetSinks sets the Sinks field's value. -func (s *CreateMediaLiveConnectorPipelineInput) SetSinks(v []*LiveConnectorSinkConfiguration) *CreateMediaLiveConnectorPipelineInput { +func (s *CreateMediaStreamPipelineInput) SetSinks(v []*MediaStreamSink) *CreateMediaStreamPipelineInput { s.Sinks = v return s } // SetSources sets the Sources field's value. -func (s *CreateMediaLiveConnectorPipelineInput) SetSources(v []*LiveConnectorSourceConfiguration) *CreateMediaLiveConnectorPipelineInput { +func (s *CreateMediaStreamPipelineInput) SetSources(v []*MediaStreamSource) *CreateMediaStreamPipelineInput { s.Sources = v return s } // SetTags sets the Tags field's value. -func (s *CreateMediaLiveConnectorPipelineInput) SetTags(v []*Tag) *CreateMediaLiveConnectorPipelineInput { +func (s *CreateMediaStreamPipelineInput) SetTags(v []*Tag) *CreateMediaStreamPipelineInput { s.Tags = v return s } -type CreateMediaLiveConnectorPipelineOutput struct { +type CreateMediaStreamPipelineOutput struct { _ struct{} `type:"structure"` - // The new media live connector pipeline. - MediaLiveConnectorPipeline *MediaLiveConnectorPipeline `type:"structure"` + // The requested media pipeline. + MediaStreamPipeline *MediaStreamPipeline `type:"structure"` } // String returns the string representation. @@ -5206,7 +6153,7 @@ type CreateMediaLiveConnectorPipelineOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaLiveConnectorPipelineOutput) String() string { +func (s CreateMediaStreamPipelineOutput) String() string { return awsutil.Prettify(s) } @@ -5215,13 +6162,13 @@ func (s CreateMediaLiveConnectorPipelineOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMediaLiveConnectorPipelineOutput) GoString() string { +func (s CreateMediaStreamPipelineOutput) GoString() string { return s.String() } -// SetMediaLiveConnectorPipeline sets the MediaLiveConnectorPipeline field's value. -func (s *CreateMediaLiveConnectorPipelineOutput) SetMediaLiveConnectorPipeline(v *MediaLiveConnectorPipeline) *CreateMediaLiveConnectorPipelineOutput { - s.MediaLiveConnectorPipeline = v +// SetMediaStreamPipeline sets the MediaStreamPipeline field's value. +func (s *CreateMediaStreamPipelineOutput) SetMediaStreamPipeline(v *MediaStreamPipeline) *CreateMediaStreamPipelineOutput { + s.MediaStreamPipeline = v return s } @@ -5464,6 +6411,77 @@ func (s *DeleteMediaPipelineInput) SetMediaPipelineId(v string) *DeleteMediaPipe return s } +type DeleteMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the pool being deleted. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *DeleteMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +type DeleteMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + type DeleteMediaPipelineOutput struct { _ struct{} `type:"structure"` } @@ -5842,9 +6860,89 @@ func (s *GetMediaPipelineInput) Validate() error { return nil } -// SetMediaPipelineId sets the MediaPipelineId field's value. -func (s *GetMediaPipelineInput) SetMediaPipelineId(v string) *GetMediaPipelineInput { - s.MediaPipelineId = &v +// SetMediaPipelineId sets the MediaPipelineId field's value. +func (s *GetMediaPipelineInput) SetMediaPipelineId(v string) *GetMediaPipelineInput { + s.MediaPipelineId = &v + return s +} + +type GetMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the video stream pool. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *GetMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +type GetMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` + + // The video stream pool configuration object. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *GetMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *GetMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v return s } @@ -5986,7 +7084,7 @@ type GetVoiceToneAnalysisTaskInput struct { // Identifier is a required field Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` - // The ID of the voice tone anlysis task. + // The ID of the voice tone analysis task. // // VoiceToneAnalysisTaskId is a required field VoiceToneAnalysisTaskId *string `location:"uri" locationName:"voiceToneAnalysisTaskId" min:"36" type:"string" required:"true"` @@ -6195,7 +7293,7 @@ func (s *GridViewConfiguration) SetVideoAttribute(v *VideoAttribute) *GridViewCo type HorizontalLayoutConfiguration struct { _ struct{} `type:"structure"` - // Sets the aspect ratio of the video tiles, such as 16:9. + // Specifies the aspect ratio of all video tiles. TileAspectRatio *string `type:"string"` // The maximum number of video tiles to display. @@ -6442,6 +7540,263 @@ func (s *KinesisDataStreamSinkConfiguration) SetInsightsTarget(v string) *Kinesi return s } +// The configuration of an Kinesis video stream. +type KinesisVideoStreamConfiguration struct { + _ struct{} `type:"structure"` + + // The amount of time that data is retained. + DataRetentionInHours *int64 `type:"integer"` + + // The Amazon Web Services Region of the video stream. + // + // Region is a required field + Region *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KinesisVideoStreamConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KinesisVideoStreamConfiguration"} + if s.Region == nil { + invalidParams.Add(request.NewErrParamRequired("Region")) + } + if s.Region != nil && len(*s.Region) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Region", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataRetentionInHours sets the DataRetentionInHours field's value. +func (s *KinesisVideoStreamConfiguration) SetDataRetentionInHours(v int64) *KinesisVideoStreamConfiguration { + s.DataRetentionInHours = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *KinesisVideoStreamConfiguration) SetRegion(v string) *KinesisVideoStreamConfiguration { + s.Region = &v + return s +} + +// The updated Kinesis video stream configuration object. +type KinesisVideoStreamConfigurationUpdate struct { + _ struct{} `type:"structure"` + + // The updated time that data is retained. + DataRetentionInHours *int64 `min:"1" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfigurationUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamConfigurationUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KinesisVideoStreamConfigurationUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KinesisVideoStreamConfigurationUpdate"} + if s.DataRetentionInHours != nil && *s.DataRetentionInHours < 1 { + invalidParams.Add(request.NewErrParamMinValue("DataRetentionInHours", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataRetentionInHours sets the DataRetentionInHours field's value. +func (s *KinesisVideoStreamConfigurationUpdate) SetDataRetentionInHours(v int64) *KinesisVideoStreamConfigurationUpdate { + s.DataRetentionInHours = &v + return s +} + +// The video stream pool configuration object. +type KinesisVideoStreamPoolConfiguration struct { + _ struct{} `type:"structure"` + + // The time at which the configuration was created. + CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The ARN of the video stream pool configuration. + // + // PoolArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KinesisVideoStreamPoolConfiguration's + // String and GoString methods. + PoolArn *string `min:"1" type:"string" sensitive:"true"` + + // The ID of the video stream pool in the configuration. + PoolId *string `min:"1" type:"string"` + + // The name of the video stream pool configuration. + PoolName *string `min:"1" type:"string"` + + // The size of the video stream pool in the configuration. + PoolSize *int64 `type:"integer"` + + // The status of the video stream pool in the configuration. + PoolStatus *string `type:"string" enum:"KinesisVideoStreamPoolStatus"` + + // The Kinesis video stream pool configuration object. + StreamConfiguration *KinesisVideoStreamConfiguration `type:"structure"` + + // The time at which the configuration was updated. + UpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolConfiguration) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetCreatedTimestamp(v time.Time) *KinesisVideoStreamPoolConfiguration { + s.CreatedTimestamp = &v + return s +} + +// SetPoolArn sets the PoolArn field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolArn(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolArn = &v + return s +} + +// SetPoolId sets the PoolId field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolId(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolId = &v + return s +} + +// SetPoolName sets the PoolName field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolName(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolName = &v + return s +} + +// SetPoolSize sets the PoolSize field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolSize(v int64) *KinesisVideoStreamPoolConfiguration { + s.PoolSize = &v + return s +} + +// SetPoolStatus sets the PoolStatus field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetPoolStatus(v string) *KinesisVideoStreamPoolConfiguration { + s.PoolStatus = &v + return s +} + +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetStreamConfiguration(v *KinesisVideoStreamConfiguration) *KinesisVideoStreamPoolConfiguration { + s.StreamConfiguration = v + return s +} + +// SetUpdatedTimestamp sets the UpdatedTimestamp field's value. +func (s *KinesisVideoStreamPoolConfiguration) SetUpdatedTimestamp(v time.Time) *KinesisVideoStreamPoolConfiguration { + s.UpdatedTimestamp = &v + return s +} + +// A summary of the Kinesis video stream pool. +type KinesisVideoStreamPoolSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the video stream pool. + // + // PoolArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by KinesisVideoStreamPoolSummary's + // String and GoString methods. + PoolArn *string `min:"1" type:"string" sensitive:"true"` + + // The ID of the video stream pool. + PoolId *string `min:"1" type:"string"` + + // The name of the video stream pool. + PoolName *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KinesisVideoStreamPoolSummary) GoString() string { + return s.String() +} + +// SetPoolArn sets the PoolArn field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolArn(v string) *KinesisVideoStreamPoolSummary { + s.PoolArn = &v + return s +} + +// SetPoolId sets the PoolId field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolId(v string) *KinesisVideoStreamPoolSummary { + s.PoolId = &v + return s +} + +// SetPoolName sets the PoolName field's value. +func (s *KinesisVideoStreamPoolSummary) SetPoolName(v string) *KinesisVideoStreamPoolSummary { + s.PoolName = &v + return s +} + // A structure that contains the runtime settings for recording a Kinesis video // stream. type KinesisVideoStreamRecordingSourceRuntimeConfiguration struct { @@ -6743,20 +8098,113 @@ func (s *LambdaFunctionSinkConfiguration) Validate() error { return nil } -// SetInsightsTarget sets the InsightsTarget field's value. -func (s *LambdaFunctionSinkConfiguration) SetInsightsTarget(v string) *LambdaFunctionSinkConfiguration { - s.InsightsTarget = &v +// SetInsightsTarget sets the InsightsTarget field's value. +func (s *LambdaFunctionSinkConfiguration) SetInsightsTarget(v string) *LambdaFunctionSinkConfiguration { + s.InsightsTarget = &v + return s +} + +type ListMediaCapturePipelinesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return in a single call. Valid Range: 1 + // - 99. + MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` + + // The token used to retrieve the next page of results. + NextToken *string `location:"querystring" locationName:"next-token" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaCapturePipelinesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaCapturePipelinesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMediaCapturePipelinesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMediaCapturePipelinesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMediaCapturePipelinesInput) SetMaxResults(v int64) *ListMediaCapturePipelinesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMediaCapturePipelinesInput) SetNextToken(v string) *ListMediaCapturePipelinesInput { + s.NextToken = &v + return s +} + +type ListMediaCapturePipelinesOutput struct { + _ struct{} `type:"structure"` + + // The media pipeline objects in the list. + MediaCapturePipelines []*MediaCapturePipelineSummary `type:"list"` + + // The token used to retrieve the next page of results. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaCapturePipelinesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListMediaCapturePipelinesOutput) GoString() string { + return s.String() +} + +// SetMediaCapturePipelines sets the MediaCapturePipelines field's value. +func (s *ListMediaCapturePipelinesOutput) SetMediaCapturePipelines(v []*MediaCapturePipelineSummary) *ListMediaCapturePipelinesOutput { + s.MediaCapturePipelines = v return s } -type ListMediaCapturePipelinesInput struct { +// SetNextToken sets the NextToken field's value. +func (s *ListMediaCapturePipelinesOutput) SetNextToken(v string) *ListMediaCapturePipelinesOutput { + s.NextToken = &v + return s +} + +type ListMediaInsightsPipelineConfigurationsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The maximum number of results to return in a single call. Valid Range: 1 - // - 99. + // The maximum number of results to return in a single call. MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"` - // The token used to retrieve the next page of results. + // The token used to return the next page of results. NextToken *string `location:"querystring" locationName:"next-token" type:"string"` } @@ -6765,7 +8213,7 @@ type ListMediaCapturePipelinesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaCapturePipelinesInput) String() string { +func (s ListMediaInsightsPipelineConfigurationsInput) String() string { return awsutil.Prettify(s) } @@ -6774,13 +8222,13 @@ func (s ListMediaCapturePipelinesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaCapturePipelinesInput) GoString() string { +func (s ListMediaInsightsPipelineConfigurationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListMediaCapturePipelinesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListMediaCapturePipelinesInput"} +func (s *ListMediaInsightsPipelineConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMediaInsightsPipelineConfigurationsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -6792,24 +8240,24 @@ func (s *ListMediaCapturePipelinesInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListMediaCapturePipelinesInput) SetMaxResults(v int64) *ListMediaCapturePipelinesInput { +func (s *ListMediaInsightsPipelineConfigurationsInput) SetMaxResults(v int64) *ListMediaInsightsPipelineConfigurationsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListMediaCapturePipelinesInput) SetNextToken(v string) *ListMediaCapturePipelinesInput { +func (s *ListMediaInsightsPipelineConfigurationsInput) SetNextToken(v string) *ListMediaInsightsPipelineConfigurationsInput { s.NextToken = &v return s } -type ListMediaCapturePipelinesOutput struct { +type ListMediaInsightsPipelineConfigurationsOutput struct { _ struct{} `type:"structure"` - // The media pipeline objects in the list. - MediaCapturePipelines []*MediaCapturePipelineSummary `type:"list"` + // The requested list of media insights pipeline configurations. + MediaInsightsPipelineConfigurations []*MediaInsightsPipelineConfigurationSummary `type:"list"` - // The token used to retrieve the next page of results. + // The token used to return the next page of results. NextToken *string `type:"string"` } @@ -6818,7 +8266,7 @@ type ListMediaCapturePipelinesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaCapturePipelinesOutput) String() string { +func (s ListMediaInsightsPipelineConfigurationsOutput) String() string { return awsutil.Prettify(s) } @@ -6827,23 +8275,23 @@ func (s ListMediaCapturePipelinesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaCapturePipelinesOutput) GoString() string { +func (s ListMediaInsightsPipelineConfigurationsOutput) GoString() string { return s.String() } -// SetMediaCapturePipelines sets the MediaCapturePipelines field's value. -func (s *ListMediaCapturePipelinesOutput) SetMediaCapturePipelines(v []*MediaCapturePipelineSummary) *ListMediaCapturePipelinesOutput { - s.MediaCapturePipelines = v +// SetMediaInsightsPipelineConfigurations sets the MediaInsightsPipelineConfigurations field's value. +func (s *ListMediaInsightsPipelineConfigurationsOutput) SetMediaInsightsPipelineConfigurations(v []*MediaInsightsPipelineConfigurationSummary) *ListMediaInsightsPipelineConfigurationsOutput { + s.MediaInsightsPipelineConfigurations = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListMediaCapturePipelinesOutput) SetNextToken(v string) *ListMediaCapturePipelinesOutput { +func (s *ListMediaInsightsPipelineConfigurationsOutput) SetNextToken(v string) *ListMediaInsightsPipelineConfigurationsOutput { s.NextToken = &v return s } -type ListMediaInsightsPipelineConfigurationsInput struct { +type ListMediaPipelineKinesisVideoStreamPoolsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of results to return in a single call. @@ -6858,7 +8306,7 @@ type ListMediaInsightsPipelineConfigurationsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaInsightsPipelineConfigurationsInput) String() string { +func (s ListMediaPipelineKinesisVideoStreamPoolsInput) String() string { return awsutil.Prettify(s) } @@ -6867,13 +8315,13 @@ func (s ListMediaInsightsPipelineConfigurationsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaInsightsPipelineConfigurationsInput) GoString() string { +func (s ListMediaPipelineKinesisVideoStreamPoolsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListMediaInsightsPipelineConfigurationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListMediaInsightsPipelineConfigurationsInput"} +func (s *ListMediaPipelineKinesisVideoStreamPoolsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMediaPipelineKinesisVideoStreamPoolsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -6885,22 +8333,22 @@ func (s *ListMediaInsightsPipelineConfigurationsInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListMediaInsightsPipelineConfigurationsInput) SetMaxResults(v int64) *ListMediaInsightsPipelineConfigurationsInput { +func (s *ListMediaPipelineKinesisVideoStreamPoolsInput) SetMaxResults(v int64) *ListMediaPipelineKinesisVideoStreamPoolsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListMediaInsightsPipelineConfigurationsInput) SetNextToken(v string) *ListMediaInsightsPipelineConfigurationsInput { +func (s *ListMediaPipelineKinesisVideoStreamPoolsInput) SetNextToken(v string) *ListMediaPipelineKinesisVideoStreamPoolsInput { s.NextToken = &v return s } -type ListMediaInsightsPipelineConfigurationsOutput struct { +type ListMediaPipelineKinesisVideoStreamPoolsOutput struct { _ struct{} `type:"structure"` - // The requested list of media insights pipeline configurations. - MediaInsightsPipelineConfigurations []*MediaInsightsPipelineConfigurationSummary `type:"list"` + // The list of video stream pools. + KinesisVideoStreamPools []*KinesisVideoStreamPoolSummary `type:"list"` // The token used to return the next page of results. NextToken *string `type:"string"` @@ -6911,7 +8359,7 @@ type ListMediaInsightsPipelineConfigurationsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaInsightsPipelineConfigurationsOutput) String() string { +func (s ListMediaPipelineKinesisVideoStreamPoolsOutput) String() string { return awsutil.Prettify(s) } @@ -6920,18 +8368,18 @@ func (s ListMediaInsightsPipelineConfigurationsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMediaInsightsPipelineConfigurationsOutput) GoString() string { +func (s ListMediaPipelineKinesisVideoStreamPoolsOutput) GoString() string { return s.String() } -// SetMediaInsightsPipelineConfigurations sets the MediaInsightsPipelineConfigurations field's value. -func (s *ListMediaInsightsPipelineConfigurationsOutput) SetMediaInsightsPipelineConfigurations(v []*MediaInsightsPipelineConfigurationSummary) *ListMediaInsightsPipelineConfigurationsOutput { - s.MediaInsightsPipelineConfigurations = v +// SetKinesisVideoStreamPools sets the KinesisVideoStreamPools field's value. +func (s *ListMediaPipelineKinesisVideoStreamPoolsOutput) SetKinesisVideoStreamPools(v []*KinesisVideoStreamPoolSummary) *ListMediaPipelineKinesisVideoStreamPoolsOutput { + s.KinesisVideoStreamPools = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListMediaInsightsPipelineConfigurationsOutput) SetNextToken(v string) *ListMediaInsightsPipelineConfigurationsOutput { +func (s *ListMediaPipelineKinesisVideoStreamPoolsOutput) SetNextToken(v string) *ListMediaPipelineKinesisVideoStreamPoolsOutput { s.NextToken = &v return s } @@ -8093,21 +9541,217 @@ func (s *MediaInsightsPipelineConfigurationSummary) SetMediaInsightsPipelineConf return s } -// SetMediaInsightsPipelineConfigurationName sets the MediaInsightsPipelineConfigurationName field's value. -func (s *MediaInsightsPipelineConfigurationSummary) SetMediaInsightsPipelineConfigurationName(v string) *MediaInsightsPipelineConfigurationSummary { - s.MediaInsightsPipelineConfigurationName = &v +// SetMediaInsightsPipelineConfigurationName sets the MediaInsightsPipelineConfigurationName field's value. +func (s *MediaInsightsPipelineConfigurationSummary) SetMediaInsightsPipelineConfigurationName(v string) *MediaInsightsPipelineConfigurationSummary { + s.MediaInsightsPipelineConfigurationName = &v + return s +} + +// The status of the pipeline element. +type MediaInsightsPipelineElementStatus struct { + _ struct{} `type:"structure"` + + // The element's status. + Status *string `type:"string" enum:"MediaPipelineElementStatus"` + + // The type of status. + Type *string `type:"string" enum:"MediaInsightsPipelineConfigurationElementType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaInsightsPipelineElementStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaInsightsPipelineElementStatus) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *MediaInsightsPipelineElementStatus) SetStatus(v string) *MediaInsightsPipelineElementStatus { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *MediaInsightsPipelineElementStatus) SetType(v string) *MediaInsightsPipelineElementStatus { + s.Type = &v + return s +} + +// The connector pipeline. +type MediaLiveConnectorPipeline struct { + _ struct{} `type:"structure"` + + // The time at which the connector pipeline was created. + CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The connector pipeline's ARN. + MediaPipelineArn *string `min:"1" type:"string"` + + // The connector pipeline's ID. + MediaPipelineId *string `min:"36" type:"string"` + + // The connector pipeline's data sinks. + Sinks []*LiveConnectorSinkConfiguration `min:"1" type:"list"` + + // The connector pipeline's data sources. + Sources []*LiveConnectorSourceConfiguration `min:"1" type:"list"` + + // The connector pipeline's status. + Status *string `type:"string" enum:"MediaPipelineStatus"` + + // The time at which the connector pipeline was last updated. + UpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaLiveConnectorPipeline) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaLiveConnectorPipeline) GoString() string { + return s.String() +} + +// SetCreatedTimestamp sets the CreatedTimestamp field's value. +func (s *MediaLiveConnectorPipeline) SetCreatedTimestamp(v time.Time) *MediaLiveConnectorPipeline { + s.CreatedTimestamp = &v + return s +} + +// SetMediaPipelineArn sets the MediaPipelineArn field's value. +func (s *MediaLiveConnectorPipeline) SetMediaPipelineArn(v string) *MediaLiveConnectorPipeline { + s.MediaPipelineArn = &v + return s +} + +// SetMediaPipelineId sets the MediaPipelineId field's value. +func (s *MediaLiveConnectorPipeline) SetMediaPipelineId(v string) *MediaLiveConnectorPipeline { + s.MediaPipelineId = &v + return s +} + +// SetSinks sets the Sinks field's value. +func (s *MediaLiveConnectorPipeline) SetSinks(v []*LiveConnectorSinkConfiguration) *MediaLiveConnectorPipeline { + s.Sinks = v + return s +} + +// SetSources sets the Sources field's value. +func (s *MediaLiveConnectorPipeline) SetSources(v []*LiveConnectorSourceConfiguration) *MediaLiveConnectorPipeline { + s.Sources = v + return s +} + +// SetStatus sets the Status field's value. +func (s *MediaLiveConnectorPipeline) SetStatus(v string) *MediaLiveConnectorPipeline { + s.Status = &v + return s +} + +// SetUpdatedTimestamp sets the UpdatedTimestamp field's value. +func (s *MediaLiveConnectorPipeline) SetUpdatedTimestamp(v time.Time) *MediaLiveConnectorPipeline { + s.UpdatedTimestamp = &v + return s +} + +// A pipeline consisting of a media capture, media concatenation, or live-streaming +// pipeline. +type MediaPipeline struct { + _ struct{} `type:"structure"` + + // A pipeline that enables users to capture audio and video. + MediaCapturePipeline *MediaCapturePipeline `type:"structure"` + + // The media concatenation pipeline in a media pipeline. + MediaConcatenationPipeline *MediaConcatenationPipeline `type:"structure"` + + // The media insights pipeline of a media pipeline. + MediaInsightsPipeline *MediaInsightsPipeline `type:"structure"` + + // The connector pipeline of the media pipeline. + MediaLiveConnectorPipeline *MediaLiveConnectorPipeline `type:"structure"` + + // Designates a media pipeline as a media stream pipeline. + MediaStreamPipeline *MediaStreamPipeline `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaPipeline) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MediaPipeline) GoString() string { + return s.String() +} + +// SetMediaCapturePipeline sets the MediaCapturePipeline field's value. +func (s *MediaPipeline) SetMediaCapturePipeline(v *MediaCapturePipeline) *MediaPipeline { + s.MediaCapturePipeline = v + return s +} + +// SetMediaConcatenationPipeline sets the MediaConcatenationPipeline field's value. +func (s *MediaPipeline) SetMediaConcatenationPipeline(v *MediaConcatenationPipeline) *MediaPipeline { + s.MediaConcatenationPipeline = v + return s +} + +// SetMediaInsightsPipeline sets the MediaInsightsPipeline field's value. +func (s *MediaPipeline) SetMediaInsightsPipeline(v *MediaInsightsPipeline) *MediaPipeline { + s.MediaInsightsPipeline = v + return s +} + +// SetMediaLiveConnectorPipeline sets the MediaLiveConnectorPipeline field's value. +func (s *MediaPipeline) SetMediaLiveConnectorPipeline(v *MediaLiveConnectorPipeline) *MediaPipeline { + s.MediaLiveConnectorPipeline = v + return s +} + +// SetMediaStreamPipeline sets the MediaStreamPipeline field's value. +func (s *MediaPipeline) SetMediaStreamPipeline(v *MediaStreamPipeline) *MediaPipeline { + s.MediaStreamPipeline = v return s } -// The status of the pipeline element. -type MediaInsightsPipelineElementStatus struct { +// The summary of the media pipeline. +type MediaPipelineSummary struct { _ struct{} `type:"structure"` - // The element's status. - Status *string `type:"string" enum:"MediaPipelineElementStatus"` + // The ARN of the media pipeline in the summary. + MediaPipelineArn *string `min:"1" type:"string"` - // The type of status. - Type *string `type:"string" enum:"MediaInsightsPipelineConfigurationElementType"` + // The ID of the media pipeline in the summary. + MediaPipelineId *string `min:"36" type:"string"` } // String returns the string representation. @@ -8115,7 +9759,7 @@ type MediaInsightsPipelineElementStatus struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaInsightsPipelineElementStatus) String() string { +func (s MediaPipelineSummary) String() string { return awsutil.Prettify(s) } @@ -8124,45 +9768,45 @@ func (s MediaInsightsPipelineElementStatus) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaInsightsPipelineElementStatus) GoString() string { +func (s MediaPipelineSummary) GoString() string { return s.String() } -// SetStatus sets the Status field's value. -func (s *MediaInsightsPipelineElementStatus) SetStatus(v string) *MediaInsightsPipelineElementStatus { - s.Status = &v +// SetMediaPipelineArn sets the MediaPipelineArn field's value. +func (s *MediaPipelineSummary) SetMediaPipelineArn(v string) *MediaPipelineSummary { + s.MediaPipelineArn = &v return s } -// SetType sets the Type field's value. -func (s *MediaInsightsPipelineElementStatus) SetType(v string) *MediaInsightsPipelineElementStatus { - s.Type = &v +// SetMediaPipelineId sets the MediaPipelineId field's value. +func (s *MediaPipelineSummary) SetMediaPipelineId(v string) *MediaPipelineSummary { + s.MediaPipelineId = &v return s } -// The connector pipeline. -type MediaLiveConnectorPipeline struct { +// Structure that contains the settings for a media stream pipeline. +type MediaStreamPipeline struct { _ struct{} `type:"structure"` - // The time at which the connector pipeline was created. + // The time at which the media stream pipeline was created. CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` - // The connector pipeline's ARN. + // The ARN of the media stream pipeline. MediaPipelineArn *string `min:"1" type:"string"` - // The connector pipeline's ID. + // The ID of the media stream pipeline MediaPipelineId *string `min:"36" type:"string"` - // The connector pipeline's data sinks. - Sinks []*LiveConnectorSinkConfiguration `min:"1" type:"list"` + // The media stream pipeline's data sinks. + Sinks []*MediaStreamSink `min:"1" type:"list"` - // The connector pipeline's data sources. - Sources []*LiveConnectorSourceConfiguration `min:"1" type:"list"` + // The media stream pipeline's data sources. + Sources []*MediaStreamSource `min:"1" type:"list"` - // The connector pipeline's status. + // The status of the media stream pipeline. Status *string `type:"string" enum:"MediaPipelineStatus"` - // The time at which the connector pipeline was last updated. + // The time at which the media stream pipeline was updated. UpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` } @@ -8171,7 +9815,7 @@ type MediaLiveConnectorPipeline struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaLiveConnectorPipeline) String() string { +func (s MediaStreamPipeline) String() string { return awsutil.Prettify(s) } @@ -8180,68 +9824,79 @@ func (s MediaLiveConnectorPipeline) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaLiveConnectorPipeline) GoString() string { +func (s MediaStreamPipeline) GoString() string { return s.String() } // SetCreatedTimestamp sets the CreatedTimestamp field's value. -func (s *MediaLiveConnectorPipeline) SetCreatedTimestamp(v time.Time) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetCreatedTimestamp(v time.Time) *MediaStreamPipeline { s.CreatedTimestamp = &v return s } // SetMediaPipelineArn sets the MediaPipelineArn field's value. -func (s *MediaLiveConnectorPipeline) SetMediaPipelineArn(v string) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetMediaPipelineArn(v string) *MediaStreamPipeline { s.MediaPipelineArn = &v return s } // SetMediaPipelineId sets the MediaPipelineId field's value. -func (s *MediaLiveConnectorPipeline) SetMediaPipelineId(v string) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetMediaPipelineId(v string) *MediaStreamPipeline { s.MediaPipelineId = &v return s } // SetSinks sets the Sinks field's value. -func (s *MediaLiveConnectorPipeline) SetSinks(v []*LiveConnectorSinkConfiguration) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetSinks(v []*MediaStreamSink) *MediaStreamPipeline { s.Sinks = v return s } // SetSources sets the Sources field's value. -func (s *MediaLiveConnectorPipeline) SetSources(v []*LiveConnectorSourceConfiguration) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetSources(v []*MediaStreamSource) *MediaStreamPipeline { s.Sources = v return s } // SetStatus sets the Status field's value. -func (s *MediaLiveConnectorPipeline) SetStatus(v string) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetStatus(v string) *MediaStreamPipeline { s.Status = &v return s } // SetUpdatedTimestamp sets the UpdatedTimestamp field's value. -func (s *MediaLiveConnectorPipeline) SetUpdatedTimestamp(v time.Time) *MediaLiveConnectorPipeline { +func (s *MediaStreamPipeline) SetUpdatedTimestamp(v time.Time) *MediaStreamPipeline { s.UpdatedTimestamp = &v return s } -// A pipeline consisting of a media capture, media concatenation, or live-streaming -// pipeline. -type MediaPipeline struct { +// Structure that contains the settings for a media stream sink. +type MediaStreamSink struct { _ struct{} `type:"structure"` - // A pipeline that enables users to capture audio and video. - MediaCapturePipeline *MediaCapturePipeline `type:"structure"` + // The media stream sink's media stream type. + // + // MediaStreamType is a required field + MediaStreamType *string `type:"string" required:"true" enum:"MediaStreamType"` - // The media concatenation pipeline in a media pipeline. - MediaConcatenationPipeline *MediaConcatenationPipeline `type:"structure"` + // Specifies the number of streams that the sink can accept. + // + // ReservedStreamCapacity is a required field + ReservedStreamCapacity *int64 `min:"1" type:"integer" required:"true"` - // The media insights pipeline of a media pipeline. - MediaInsightsPipeline *MediaInsightsPipeline `type:"structure"` + // The ARN of the media stream sink. + // + // SinkArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by MediaStreamSink's + // String and GoString methods. + // + // SinkArn is a required field + SinkArn *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The connector pipeline of the media pipeline. - MediaLiveConnectorPipeline *MediaLiveConnectorPipeline `type:"structure"` + // The media stream sink's type. + // + // SinkType is a required field + SinkType *string `type:"string" required:"true" enum:"MediaStreamPipelineSinkType"` } // String returns the string representation. @@ -8249,7 +9904,7 @@ type MediaPipeline struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaPipeline) String() string { +func (s MediaStreamSink) String() string { return awsutil.Prettify(s) } @@ -8258,43 +9913,79 @@ func (s MediaPipeline) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaPipeline) GoString() string { +func (s MediaStreamSink) GoString() string { return s.String() } -// SetMediaCapturePipeline sets the MediaCapturePipeline field's value. -func (s *MediaPipeline) SetMediaCapturePipeline(v *MediaCapturePipeline) *MediaPipeline { - s.MediaCapturePipeline = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaStreamSink) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaStreamSink"} + if s.MediaStreamType == nil { + invalidParams.Add(request.NewErrParamRequired("MediaStreamType")) + } + if s.ReservedStreamCapacity == nil { + invalidParams.Add(request.NewErrParamRequired("ReservedStreamCapacity")) + } + if s.ReservedStreamCapacity != nil && *s.ReservedStreamCapacity < 1 { + invalidParams.Add(request.NewErrParamMinValue("ReservedStreamCapacity", 1)) + } + if s.SinkArn == nil { + invalidParams.Add(request.NewErrParamRequired("SinkArn")) + } + if s.SinkArn != nil && len(*s.SinkArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SinkArn", 1)) + } + if s.SinkType == nil { + invalidParams.Add(request.NewErrParamRequired("SinkType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMediaStreamType sets the MediaStreamType field's value. +func (s *MediaStreamSink) SetMediaStreamType(v string) *MediaStreamSink { + s.MediaStreamType = &v return s } -// SetMediaConcatenationPipeline sets the MediaConcatenationPipeline field's value. -func (s *MediaPipeline) SetMediaConcatenationPipeline(v *MediaConcatenationPipeline) *MediaPipeline { - s.MediaConcatenationPipeline = v +// SetReservedStreamCapacity sets the ReservedStreamCapacity field's value. +func (s *MediaStreamSink) SetReservedStreamCapacity(v int64) *MediaStreamSink { + s.ReservedStreamCapacity = &v return s } -// SetMediaInsightsPipeline sets the MediaInsightsPipeline field's value. -func (s *MediaPipeline) SetMediaInsightsPipeline(v *MediaInsightsPipeline) *MediaPipeline { - s.MediaInsightsPipeline = v +// SetSinkArn sets the SinkArn field's value. +func (s *MediaStreamSink) SetSinkArn(v string) *MediaStreamSink { + s.SinkArn = &v return s } -// SetMediaLiveConnectorPipeline sets the MediaLiveConnectorPipeline field's value. -func (s *MediaPipeline) SetMediaLiveConnectorPipeline(v *MediaLiveConnectorPipeline) *MediaPipeline { - s.MediaLiveConnectorPipeline = v +// SetSinkType sets the SinkType field's value. +func (s *MediaStreamSink) SetSinkType(v string) *MediaStreamSink { + s.SinkType = &v return s } -// The summary of the media pipeline. -type MediaPipelineSummary struct { +// Structure that contains the settings for media stream sources. +type MediaStreamSource struct { _ struct{} `type:"structure"` - // The ARN of the media pipeline in the summary. - MediaPipelineArn *string `min:"1" type:"string"` + // The ARN of the media stream source. + // + // SourceArn is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by MediaStreamSource's + // String and GoString methods. + // + // SourceArn is a required field + SourceArn *string `min:"1" type:"string" required:"true" sensitive:"true"` - // The ID of the media pipeline in the summary. - MediaPipelineId *string `min:"36" type:"string"` + // The type of media stream source. + // + // SourceType is a required field + SourceType *string `type:"string" required:"true" enum:"MediaPipelineSourceType"` } // String returns the string representation. @@ -8302,7 +9993,7 @@ type MediaPipelineSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaPipelineSummary) String() string { +func (s MediaStreamSource) String() string { return awsutil.Prettify(s) } @@ -8311,19 +10002,38 @@ func (s MediaPipelineSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MediaPipelineSummary) GoString() string { +func (s MediaStreamSource) GoString() string { return s.String() } -// SetMediaPipelineArn sets the MediaPipelineArn field's value. -func (s *MediaPipelineSummary) SetMediaPipelineArn(v string) *MediaPipelineSummary { - s.MediaPipelineArn = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *MediaStreamSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MediaStreamSource"} + if s.SourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceArn")) + } + if s.SourceArn != nil && len(*s.SourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SourceArn", 1)) + } + if s.SourceType == nil { + invalidParams.Add(request.NewErrParamRequired("SourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSourceArn sets the SourceArn field's value. +func (s *MediaStreamSource) SetSourceArn(v string) *MediaStreamSource { + s.SourceArn = &v return s } -// SetMediaPipelineId sets the MediaPipelineId field's value. -func (s *MediaPipelineSummary) SetMediaPipelineId(v string) *MediaPipelineSummary { - s.MediaPipelineId = &v +// SetSourceType sets the SourceType field's value. +func (s *MediaStreamSource) SetSourceType(v string) *MediaStreamSource { + s.SourceType = &v return s } @@ -10818,6 +12528,100 @@ func (s UpdateMediaInsightsPipelineStatusOutput) GoString() string { return s.String() } +type UpdateMediaPipelineKinesisVideoStreamPoolInput struct { + _ struct{} `type:"structure"` + + // The ID of the video stream pool. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"identifier" type:"string" required:"true"` + + // The configuration settings for the video stream. + StreamConfiguration *KinesisVideoStreamConfigurationUpdate `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateMediaPipelineKinesisVideoStreamPoolInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.StreamConfiguration != nil { + if err := s.StreamConfiguration.Validate(); err != nil { + invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) SetIdentifier(v string) *UpdateMediaPipelineKinesisVideoStreamPoolInput { + s.Identifier = &v + return s +} + +// SetStreamConfiguration sets the StreamConfiguration field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolInput) SetStreamConfiguration(v *KinesisVideoStreamConfigurationUpdate) *UpdateMediaPipelineKinesisVideoStreamPoolInput { + s.StreamConfiguration = v + return s +} + +type UpdateMediaPipelineKinesisVideoStreamPoolOutput struct { + _ struct{} `type:"structure"` + + // The video stream pool configuration object. + KinesisVideoStreamPoolConfiguration *KinesisVideoStreamPoolConfiguration `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateMediaPipelineKinesisVideoStreamPoolOutput) GoString() string { + return s.String() +} + +// SetKinesisVideoStreamPoolConfiguration sets the KinesisVideoStreamPoolConfiguration field's value. +func (s *UpdateMediaPipelineKinesisVideoStreamPoolOutput) SetKinesisVideoStreamPoolConfiguration(v *KinesisVideoStreamPoolConfiguration) *UpdateMediaPipelineKinesisVideoStreamPoolOutput { + s.KinesisVideoStreamPoolConfiguration = v + return s +} + // Defines the configuration settings for a vertical layout. type VerticalLayoutConfiguration struct { _ struct{} `type:"structure"` @@ -11586,6 +13390,34 @@ func HorizontalTilePosition_Values() []string { } } +const ( + // KinesisVideoStreamPoolStatusCreating is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusCreating = "CREATING" + + // KinesisVideoStreamPoolStatusActive is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusActive = "ACTIVE" + + // KinesisVideoStreamPoolStatusUpdating is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusUpdating = "UPDATING" + + // KinesisVideoStreamPoolStatusDeleting is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusDeleting = "DELETING" + + // KinesisVideoStreamPoolStatusFailed is a KinesisVideoStreamPoolStatus enum value + KinesisVideoStreamPoolStatusFailed = "FAILED" +) + +// KinesisVideoStreamPoolStatus_Values returns all elements of the KinesisVideoStreamPoolStatus enum +func KinesisVideoStreamPoolStatus_Values() []string { + return []string{ + KinesisVideoStreamPoolStatusCreating, + KinesisVideoStreamPoolStatusActive, + KinesisVideoStreamPoolStatusUpdating, + KinesisVideoStreamPoolStatusDeleting, + KinesisVideoStreamPoolStatusFailed, + } +} + const ( // LayoutOptionGridView is a LayoutOption enum value LayoutOptionGridView = "GridView" @@ -11842,6 +13674,34 @@ func MediaPipelineTaskStatus_Values() []string { } } +const ( + // MediaStreamPipelineSinkTypeKinesisVideoStreamPool is a MediaStreamPipelineSinkType enum value + MediaStreamPipelineSinkTypeKinesisVideoStreamPool = "KinesisVideoStreamPool" +) + +// MediaStreamPipelineSinkType_Values returns all elements of the MediaStreamPipelineSinkType enum +func MediaStreamPipelineSinkType_Values() []string { + return []string{ + MediaStreamPipelineSinkTypeKinesisVideoStreamPool, + } +} + +const ( + // MediaStreamTypeMixedAudio is a MediaStreamType enum value + MediaStreamTypeMixedAudio = "MixedAudio" + + // MediaStreamTypeIndividualAudio is a MediaStreamType enum value + MediaStreamTypeIndividualAudio = "IndividualAudio" +) + +// MediaStreamType_Values returns all elements of the MediaStreamType enum +func MediaStreamType_Values() []string { + return []string{ + MediaStreamTypeMixedAudio, + MediaStreamTypeIndividualAudio, + } +} + const ( // PartialResultsStabilityHigh is a PartialResultsStability enum value PartialResultsStabilityHigh = "high" diff --git a/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go b/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go index fd5bbddfa24..2c9f72d1ad9 100644 --- a/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go +++ b/service/chimesdkmediapipelines/chimesdkmediapipelinesiface/interface.go @@ -80,6 +80,14 @@ type ChimeSDKMediaPipelinesAPI interface { CreateMediaLiveConnectorPipelineWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaLiveConnectorPipelineInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaLiveConnectorPipelineOutput, error) CreateMediaLiveConnectorPipelineRequest(*chimesdkmediapipelines.CreateMediaLiveConnectorPipelineInput) (*request.Request, *chimesdkmediapipelines.CreateMediaLiveConnectorPipelineOutput) + CreateMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput, error) + CreateMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput, error) + CreateMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.CreateMediaPipelineKinesisVideoStreamPoolOutput) + + CreateMediaStreamPipeline(*chimesdkmediapipelines.CreateMediaStreamPipelineInput) (*chimesdkmediapipelines.CreateMediaStreamPipelineOutput, error) + CreateMediaStreamPipelineWithContext(aws.Context, *chimesdkmediapipelines.CreateMediaStreamPipelineInput, ...request.Option) (*chimesdkmediapipelines.CreateMediaStreamPipelineOutput, error) + CreateMediaStreamPipelineRequest(*chimesdkmediapipelines.CreateMediaStreamPipelineInput) (*request.Request, *chimesdkmediapipelines.CreateMediaStreamPipelineOutput) + DeleteMediaCapturePipeline(*chimesdkmediapipelines.DeleteMediaCapturePipelineInput) (*chimesdkmediapipelines.DeleteMediaCapturePipelineOutput, error) DeleteMediaCapturePipelineWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaCapturePipelineInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaCapturePipelineOutput, error) DeleteMediaCapturePipelineRequest(*chimesdkmediapipelines.DeleteMediaCapturePipelineInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaCapturePipelineOutput) @@ -92,6 +100,10 @@ type ChimeSDKMediaPipelinesAPI interface { DeleteMediaPipelineWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaPipelineInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaPipelineOutput, error) DeleteMediaPipelineRequest(*chimesdkmediapipelines.DeleteMediaPipelineInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaPipelineOutput) + DeleteMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) + DeleteMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput, error) + DeleteMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.DeleteMediaPipelineKinesisVideoStreamPoolOutput) + GetMediaCapturePipeline(*chimesdkmediapipelines.GetMediaCapturePipelineInput) (*chimesdkmediapipelines.GetMediaCapturePipelineOutput, error) GetMediaCapturePipelineWithContext(aws.Context, *chimesdkmediapipelines.GetMediaCapturePipelineInput, ...request.Option) (*chimesdkmediapipelines.GetMediaCapturePipelineOutput, error) GetMediaCapturePipelineRequest(*chimesdkmediapipelines.GetMediaCapturePipelineInput) (*request.Request, *chimesdkmediapipelines.GetMediaCapturePipelineOutput) @@ -104,6 +116,10 @@ type ChimeSDKMediaPipelinesAPI interface { GetMediaPipelineWithContext(aws.Context, *chimesdkmediapipelines.GetMediaPipelineInput, ...request.Option) (*chimesdkmediapipelines.GetMediaPipelineOutput, error) GetMediaPipelineRequest(*chimesdkmediapipelines.GetMediaPipelineInput) (*request.Request, *chimesdkmediapipelines.GetMediaPipelineOutput) + GetMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput, error) + GetMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput, error) + GetMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.GetMediaPipelineKinesisVideoStreamPoolOutput) + GetSpeakerSearchTask(*chimesdkmediapipelines.GetSpeakerSearchTaskInput) (*chimesdkmediapipelines.GetSpeakerSearchTaskOutput, error) GetSpeakerSearchTaskWithContext(aws.Context, *chimesdkmediapipelines.GetSpeakerSearchTaskInput, ...request.Option) (*chimesdkmediapipelines.GetSpeakerSearchTaskOutput, error) GetSpeakerSearchTaskRequest(*chimesdkmediapipelines.GetSpeakerSearchTaskInput) (*request.Request, *chimesdkmediapipelines.GetSpeakerSearchTaskOutput) @@ -126,6 +142,13 @@ type ChimeSDKMediaPipelinesAPI interface { ListMediaInsightsPipelineConfigurationsPages(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsInput, func(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsOutput, bool) bool) error ListMediaInsightsPipelineConfigurationsPagesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsInput, func(*chimesdkmediapipelines.ListMediaInsightsPipelineConfigurationsOutput, bool) bool, ...request.Option) error + ListMediaPipelineKinesisVideoStreamPools(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput) (*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, error) + ListMediaPipelineKinesisVideoStreamPoolsWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, ...request.Option) (*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, error) + ListMediaPipelineKinesisVideoStreamPoolsRequest(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput) (*request.Request, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput) + + ListMediaPipelineKinesisVideoStreamPoolsPages(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, func(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool) error + ListMediaPipelineKinesisVideoStreamPoolsPagesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsInput, func(*chimesdkmediapipelines.ListMediaPipelineKinesisVideoStreamPoolsOutput, bool) bool, ...request.Option) error + ListMediaPipelines(*chimesdkmediapipelines.ListMediaPipelinesInput) (*chimesdkmediapipelines.ListMediaPipelinesOutput, error) ListMediaPipelinesWithContext(aws.Context, *chimesdkmediapipelines.ListMediaPipelinesInput, ...request.Option) (*chimesdkmediapipelines.ListMediaPipelinesOutput, error) ListMediaPipelinesRequest(*chimesdkmediapipelines.ListMediaPipelinesInput) (*request.Request, *chimesdkmediapipelines.ListMediaPipelinesOutput) @@ -168,6 +191,10 @@ type ChimeSDKMediaPipelinesAPI interface { UpdateMediaInsightsPipelineStatus(*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput) (*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput, error) UpdateMediaInsightsPipelineStatusWithContext(aws.Context, *chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput, ...request.Option) (*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput, error) UpdateMediaInsightsPipelineStatusRequest(*chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusInput) (*request.Request, *chimesdkmediapipelines.UpdateMediaInsightsPipelineStatusOutput) + + UpdateMediaPipelineKinesisVideoStreamPool(*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput) (*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) + UpdateMediaPipelineKinesisVideoStreamPoolWithContext(aws.Context, *chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput, ...request.Option) (*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput, error) + UpdateMediaPipelineKinesisVideoStreamPoolRequest(*chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolInput) (*request.Request, *chimesdkmediapipelines.UpdateMediaPipelineKinesisVideoStreamPoolOutput) } var _ ChimeSDKMediaPipelinesAPI = (*chimesdkmediapipelines.ChimeSDKMediaPipelines)(nil) diff --git a/service/emrserverless/api.go b/service/emrserverless/api.go index d8ddf3e5e43..574812137e9 100644 --- a/service/emrserverless/api.go +++ b/service/emrserverless/api.go @@ -1487,6 +1487,9 @@ type Application struct { // No new resources will be created once any one of the defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The name of the application. Name *string `locationName:"name" min:"1" type:"string"` @@ -1498,6 +1501,14 @@ type Application struct { // ReleaseLabel is a required field ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications of an application. Each configuration consists of a classification + // and properties. You use this parameter when creating or updating an application. + // To see the runtimeConfiguration object of an application, run the GetApplication + // (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetApplication.html) + // API operation. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The state of the application. // // State is a required field @@ -1595,6 +1606,12 @@ func (s *Application) SetMaximumCapacity(v *MaximumAllowedResources) *Applicatio return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *Application) SetMonitoringConfiguration(v *MonitoringConfiguration) *Application { + s.MonitoringConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *Application) SetName(v string) *Application { s.Name = &v @@ -1613,6 +1630,12 @@ func (s *Application) SetReleaseLabel(v string) *Application { return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *Application) SetRuntimeConfiguration(v []*Configuration) *Application { + s.RuntimeConfiguration = v + return s +} + // SetState sets the State field's value. func (s *Application) SetState(v string) *Application { s.State = &v @@ -2327,6 +2350,9 @@ type CreateApplicationInput struct { // the defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The name of the application. Name *string `locationName:"name" min:"1" type:"string"` @@ -2338,6 +2364,12 @@ type CreateApplicationInput struct { // ReleaseLabel is a required field ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string" required:"true"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications to use when creating an application. Each configuration consists + // of a classification and properties. This configuration is applied to all + // the job runs submitted under the application. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The tags assigned to the application. Tags map[string]*string `locationName:"tags" type:"map"` @@ -2419,6 +2451,21 @@ func (s *CreateApplicationInput) Validate() error { invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams)) } } + if s.MonitoringConfiguration != nil { + if err := s.MonitoringConfiguration.Validate(); err != nil { + invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RuntimeConfiguration != nil { + for i, v := range s.RuntimeConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } if s.WorkerTypeSpecifications != nil { for i, v := range s.WorkerTypeSpecifications { if v == nil { @@ -2478,6 +2525,12 @@ func (s *CreateApplicationInput) SetMaximumCapacity(v *MaximumAllowedResources) return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *CreateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *CreateApplicationInput { + s.MonitoringConfiguration = v + return s +} + // SetName sets the Name field's value. func (s *CreateApplicationInput) SetName(v string) *CreateApplicationInput { s.Name = &v @@ -2496,6 +2549,12 @@ func (s *CreateApplicationInput) SetReleaseLabel(v string) *CreateApplicationInp return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *CreateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *CreateApplicationInput { + s.RuntimeConfiguration = v + return s +} + // SetTags sets the Tags field's value. func (s *CreateApplicationInput) SetTags(v map[string]*string) *CreateApplicationInput { s.Tags = v @@ -5172,6 +5231,9 @@ type UpdateApplicationInput struct { // defined limits is hit. MaximumCapacity *MaximumAllowedResources `locationName:"maximumCapacity" type:"structure"` + // The configuration setting for monitoring. + MonitoringConfiguration *MonitoringConfiguration `locationName:"monitoringConfiguration" type:"structure"` + // The network configuration for customer VPC connectivity. NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"` @@ -5179,6 +5241,12 @@ type UpdateApplicationInput struct { // label to use a different release of Amazon EMR. ReleaseLabel *string `locationName:"releaseLabel" min:"1" type:"string"` + // The Configuration (https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_Configuration.html) + // specifications to use when updating an application. Each configuration consists + // of a classification and properties. This configuration is applied across + // all the job runs submitted under the application. + RuntimeConfiguration []*Configuration `locationName:"runtimeConfiguration" type:"list"` + // The key-value pairs that specify worker type to WorkerTypeSpecificationInput. // This parameter must contain all valid worker types for a Spark or Hive application. // Valid worker types include Driver and Executor for Spark applications and @@ -5246,6 +5314,21 @@ func (s *UpdateApplicationInput) Validate() error { invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams)) } } + if s.MonitoringConfiguration != nil { + if err := s.MonitoringConfiguration.Validate(); err != nil { + invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.RuntimeConfiguration != nil { + for i, v := range s.RuntimeConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } if s.WorkerTypeSpecifications != nil { for i, v := range s.WorkerTypeSpecifications { if v == nil { @@ -5311,6 +5394,12 @@ func (s *UpdateApplicationInput) SetMaximumCapacity(v *MaximumAllowedResources) return s } +// SetMonitoringConfiguration sets the MonitoringConfiguration field's value. +func (s *UpdateApplicationInput) SetMonitoringConfiguration(v *MonitoringConfiguration) *UpdateApplicationInput { + s.MonitoringConfiguration = v + return s +} + // SetNetworkConfiguration sets the NetworkConfiguration field's value. func (s *UpdateApplicationInput) SetNetworkConfiguration(v *NetworkConfiguration) *UpdateApplicationInput { s.NetworkConfiguration = v @@ -5323,6 +5412,12 @@ func (s *UpdateApplicationInput) SetReleaseLabel(v string) *UpdateApplicationInp return s } +// SetRuntimeConfiguration sets the RuntimeConfiguration field's value. +func (s *UpdateApplicationInput) SetRuntimeConfiguration(v []*Configuration) *UpdateApplicationInput { + s.RuntimeConfiguration = v + return s +} + // SetWorkerTypeSpecifications sets the WorkerTypeSpecifications field's value. func (s *UpdateApplicationInput) SetWorkerTypeSpecifications(v map[string]*WorkerTypeSpecificationInput_) *UpdateApplicationInput { s.WorkerTypeSpecifications = v diff --git a/service/finspacedata/api.go b/service/finspacedata/api.go index 2c8d990d6cd..ee167f4a47c 100644 --- a/service/finspacedata/api.go +++ b/service/finspacedata/api.go @@ -54,8 +54,8 @@ func (c *FinSpaceData) AssociateUserToPermissionGroupRequest(input *AssociateUse // AssociateUserToPermissionGroup API operation for FinSpace Public API. // -// Adds a user account to a permission group to grant permissions for actions -// a user can perform in FinSpace. +// Adds a user to a permission group to grant permissions for actions a user +// can perform in FinSpace. // // 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 @@ -923,7 +923,7 @@ func (c *FinSpaceData) DisassociateUserFromPermissionGroupRequest(input *Disasso // DisassociateUserFromPermissionGroup API operation for FinSpace Public API. // -// Removes a user account from a permission group. +// Removes a user from a permission group. // // 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 @@ -1588,7 +1588,9 @@ func (c *FinSpaceData) GetProgrammaticAccessCredentialsRequest(input *GetProgram // GetProgrammaticAccessCredentials API operation for FinSpace Public API. // -// Request programmatic credentials to use with FinSpace SDK. +// Request programmatic credentials to use with FinSpace SDK. For more information, +// see Step 2. Access credentials programmatically using IAM access key id and +// secret access key (https://docs.aws.amazon.com/finspace/latest/data-api/fs-using-the-finspace-api.html#accessing-credentials). // // 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 @@ -2455,8 +2457,7 @@ func (c *FinSpaceData) ListPermissionGroupsByUserRequest(input *ListPermissionGr // ListPermissionGroupsByUser API operation for FinSpace Public API. // -// Lists all the permission groups that are associated with a specific user -// account. +// Lists all the permission groups that are associated with a specific user. // // 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 @@ -2554,7 +2555,7 @@ func (c *FinSpaceData) ListUsersRequest(input *ListUsersInput) (req *request.Req // ListUsers API operation for FinSpace Public API. // -// Lists all available user accounts in FinSpace. +// Lists all available users in FinSpace. // // 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 @@ -3168,8 +3169,8 @@ func (c *FinSpaceData) UpdateUserRequest(input *UpdateUserInput) (req *request.R // UpdateUser API operation for FinSpace Public API. // -// Modifies the details of the specified user account. You cannot update the -// userId for a user. +// Modifies the details of the specified user. You cannot update the userId +// for a user. // // 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 @@ -3396,7 +3397,7 @@ func (s *AssociateUserToPermissionGroupOutput) SetStatusCode(v int64) *Associate // The credentials required to access the external Dataview from the S3 location. type AwsCredentials struct { - _ struct{} `type:"structure"` + _ struct{} `type:"structure" sensitive:"true"` // The unique identifier for the security credentials. AccessKeyId *string `locationName:"accessKeyId" min:"1" type:"string"` @@ -4498,7 +4499,7 @@ type CreateUserInput struct { // * ENABLED – The user has permissions to use the APIs. // // * DISABLED – The user does not have permissions to use any APIs. - ApiAccess *string `type:"string" enum:"ApiAccess"` + ApiAccess *string `locationName:"apiAccess" type:"string" enum:"ApiAccess"` // The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials // API to obtain a credentials token for a specific FinSpace user. This must @@ -4670,7 +4671,7 @@ func (s *CreateUserOutput) SetUserId(v string) *CreateUserOutput { // Short term API credentials. type Credentials struct { - _ struct{} `type:"structure"` + _ struct{} `type:"structure" sensitive:"true"` // The access key identifier. AccessKeyId *string `locationName:"accessKeyId" min:"1" type:"string"` @@ -5394,7 +5395,7 @@ type DisableUserInput struct { // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The unique identifier for the user account that you want to disable. + // The unique identifier for the user that you want to deactivate. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -5452,7 +5453,7 @@ func (s *DisableUserInput) SetUserId(v string) *DisableUserInput { type DisableUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier for the disabled user account. + // The unique identifier for the deactivated user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -5595,7 +5596,7 @@ type EnableUserInput struct { // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The unique identifier for the user account that you want to enable. + // The unique identifier for the user that you want to activate. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -5653,7 +5654,7 @@ func (s *EnableUserInput) SetUserId(v string) *EnableUserInput { type EnableUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier for the enabled user account. + // The unique identifier for the active user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -6375,7 +6376,11 @@ type GetExternalDataViewAccessDetailsOutput struct { _ struct{} `type:"structure"` // The credentials required to access the external Dataview from the S3 location. - Credentials *AwsCredentials `locationName:"credentials" type:"structure"` + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetExternalDataViewAccessDetailsOutput's + // String and GoString methods. + Credentials *AwsCredentials `locationName:"credentials" type:"structure" sensitive:"true"` // The location where the external Dataview is stored. S3Location *S3Location `locationName:"s3Location" type:"structure"` @@ -6496,7 +6501,7 @@ type GetProgrammaticAccessCredentialsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The time duration in which the credentials remain valid. - DurationInMinutes *int64 `location:"querystring" locationName:"durationInMinutes" min:"60" type:"long"` + DurationInMinutes *int64 `location:"querystring" locationName:"durationInMinutes" min:"1" type:"long"` // The FinSpace environment identifier. // @@ -6525,8 +6530,8 @@ func (s GetProgrammaticAccessCredentialsInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *GetProgrammaticAccessCredentialsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetProgrammaticAccessCredentialsInput"} - if s.DurationInMinutes != nil && *s.DurationInMinutes < 60 { - invalidParams.Add(request.NewErrParamMinValue("DurationInMinutes", 60)) + if s.DurationInMinutes != nil && *s.DurationInMinutes < 1 { + invalidParams.Add(request.NewErrParamMinValue("DurationInMinutes", 1)) } if s.EnvironmentId == nil { invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) @@ -6558,10 +6563,14 @@ type GetProgrammaticAccessCredentialsOutput struct { _ struct{} `type:"structure"` // Returns the programmatic credentials. - Credentials *Credentials `locationName:"credentials" type:"structure"` + // + // Credentials is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProgrammaticAccessCredentialsOutput's + // String and GoString methods. + Credentials *Credentials `locationName:"credentials" type:"structure" sensitive:"true"` // Returns the duration in which the credentials will remain valid. - DurationInMinutes *int64 `locationName:"durationInMinutes" min:"60" type:"long"` + DurationInMinutes *int64 `locationName:"durationInMinutes" min:"1" type:"long"` } // String returns the string representation. @@ -6660,8 +6669,8 @@ type GetUserOutput struct { // be an IAM role within your FinSpace account. ApiAccessPrincipalArn *string `locationName:"apiAccessPrincipalArn" min:"20" type:"string"` - // The timestamp at which the user account was created in FinSpace. The value - // is determined as epoch time in milliseconds. + // The timestamp at which the user was created in FinSpace. The value is determined + // as epoch time in milliseconds. CreateTime *int64 `locationName:"createTime" type:"long"` // The email address that is associated with the user. @@ -6678,19 +6687,19 @@ type GetUserOutput struct { // String and GoString methods. FirstName *string `locationName:"firstName" min:"1" type:"string" sensitive:"true"` - // Describes the last time the user account was disabled. The value is determined + // Describes the last time the user was deactivated. The value is determined // as epoch time in milliseconds. LastDisabledTime *int64 `locationName:"lastDisabledTime" type:"long"` - // Describes the last time the user account was enabled. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was activated. The value is determined as + // epoch time in milliseconds. LastEnabledTime *int64 `locationName:"lastEnabledTime" type:"long"` // Describes the last time that the user logged into their account. The value // is determined as epoch time in milliseconds. LastLoginTime *int64 `locationName:"lastLoginTime" type:"long"` - // Describes the last time the user account was updated. The value is determined + // Describes the last time the user details were updated. The value is determined // as epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` @@ -6701,13 +6710,13 @@ type GetUserOutput struct { // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. @@ -6719,7 +6728,7 @@ type GetUserOutput struct { // are assigned permissions by adding them to a permission group. Type *string `locationName:"type" type:"string" enum:"UserType"` - // The unique identifier for the user account that is retrieved. + // The unique identifier for the user that is retrieved. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -7747,7 +7756,7 @@ type ListUsersOutput struct { // A token that indicates where a results page should begin. NextToken *string `locationName:"nextToken" type:"string"` - // A list of all the user accounts. + // A list of all the users. Users []*User `locationName:"users" type:"list"` } @@ -7827,12 +7836,12 @@ type PermissionGroup struct { // as epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the @@ -7910,16 +7919,16 @@ func (s *PermissionGroup) SetPermissionGroupId(v string) *PermissionGroup { return s } -// The structure of a permission group associated with a user account. +// The structure of a permission group associated with a user. type PermissionGroupByUser struct { _ struct{} `type:"structure"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the @@ -8108,8 +8117,8 @@ func (s *ResetUserPasswordInput) SetUserId(v string) *ResetUserPasswordInput { type ResetUserPasswordOutput struct { _ struct{} `type:"structure"` - // A randomly generated temporary password for the requested user account. This - // password expires in 7 days. + // A randomly generated temporary password for the requested user. This password + // expires in 7 days. // // TemporaryPassword is a sensitive parameter and its value will be // replaced with "sensitive" in string returned by ResetUserPasswordOutput's @@ -9011,7 +9020,7 @@ type UpdateUserInput struct { // are assigned permissions by adding them to a permission group. Type *string `locationName:"type" type:"string" enum:"UserType"` - // The unique identifier for the user account to update. + // The unique identifier for the user that you want to update. // // UserId is a required field UserId *string `location:"uri" locationName:"userId" min:"1" type:"string" required:"true"` @@ -9108,7 +9117,7 @@ func (s *UpdateUserInput) SetUserId(v string) *UpdateUserInput { type UpdateUserOutput struct { _ struct{} `type:"structure"` - // The unique identifier of the updated user account. + // The unique identifier of the updated user. UserId *string `locationName:"userId" min:"1" type:"string"` } @@ -9136,7 +9145,7 @@ func (s *UpdateUserOutput) SetUserId(v string) *UpdateUserOutput { return s } -// The details of the user account. +// The details of the user. type User struct { _ struct{} `type:"structure"` @@ -9154,8 +9163,8 @@ type User struct { // be an IAM role within your FinSpace account. ApiAccessPrincipalArn *string `locationName:"apiAccessPrincipalArn" min:"20" type:"string"` - // The timestamp at which the user account was created in FinSpace. The value - // is determined as epoch time in milliseconds. + // The timestamp at which the user was created in FinSpace. The value is determined + // as epoch time in milliseconds. CreateTime *int64 `locationName:"createTime" type:"long"` // The email address of the user. The email address serves as a uniquer identifier @@ -9173,20 +9182,20 @@ type User struct { // String and GoString methods. FirstName *string `locationName:"firstName" min:"1" type:"string" sensitive:"true"` - // Describes the last time the user account was disabled. The value is determined + // Describes the last time the user was deactivated. The value is determined // as epoch time in milliseconds. LastDisabledTime *int64 `locationName:"lastDisabledTime" type:"long"` - // Describes the last time the user account was enabled. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was activated. The value is determined as + // epoch time in milliseconds. LastEnabledTime *int64 `locationName:"lastEnabledTime" type:"long"` // Describes the last time that the user logged into their account. The value // is determined as epoch time in milliseconds. LastLoginTime *int64 `locationName:"lastLoginTime" type:"long"` - // Describes the last time the user account was updated. The value is determined - // as epoch time in milliseconds. + // Describes the last time the user was updated. The value is determined as + // epoch time in milliseconds. LastModifiedTime *int64 `locationName:"lastModifiedTime" type:"long"` // The last name of the user. @@ -9196,13 +9205,13 @@ type User struct { // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The user creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. @@ -9314,7 +9323,7 @@ func (s *User) SetUserId(v string) *User { return s } -// The structure of a user account associated with a permission group. +// The structure of a user associated with a permission group. type UserByPermissionGroup struct { _ struct{} `type:"structure"` @@ -9350,25 +9359,25 @@ type UserByPermissionGroup struct { // String and GoString methods. LastName *string `locationName:"lastName" min:"1" type:"string" sensitive:"true"` - // Indicates the status of the user account within a permission group. + // Indicates the status of the user within a permission group. // - // * ADDITION_IN_PROGRESS – The user account is currently being added to - // the permission group. + // * ADDITION_IN_PROGRESS – The user is currently being added to the permission + // group. // - // * ADDITION_SUCCESS – The user account is successfully added to the permission + // * ADDITION_SUCCESS – The user is successfully added to the permission // group. // // * REMOVAL_IN_PROGRESS – The user is currently being removed from the // permission group. MembershipStatus *string `locationName:"membershipStatus" type:"string" enum:"PermissionGroupMembershipStatus"` - // The current status of the user account. + // The current status of the user. // - // * CREATING – The user account creation is in progress. + // * CREATING – The user creation is in progress. // - // * ENABLED – The user account is created and is currently active. + // * ENABLED – The user is created and is currently active. // - // * DISABLED – The user account is currently inactive. + // * DISABLED – The user is currently inactive. Status *string `locationName:"status" type:"string" enum:"UserStatus"` // Indicates the type of user. diff --git a/service/quicksight/api.go b/service/quicksight/api.go index 20256904c2a..6a54919c28e 100644 --- a/service/quicksight/api.go +++ b/service/quicksight/api.go @@ -15436,15 +15436,15 @@ func (c *QuickSight) TagResourceRequest(input *TagResourceInput) (req *request.R // for that tag. // // You can associate as many as 50 tags with a resource. Amazon QuickSight supports -// tagging on data set, data source, dashboard, template, and topic. +// tagging on data set, data source, dashboard, template, topic, and user. // // Tagging for Amazon QuickSight works in a similar way to tagging for other // Amazon Web Services services, except for the following: // -// - You can't use tags to track costs for Amazon QuickSight. This isn't -// possible because you can't tag the resources that Amazon QuickSight costs -// are based on, for example Amazon QuickSight storage capacity (SPICE), -// number of users, type of users, and usage metrics. +// - Tags are used to track costs for users in Amazon QuickSight. You can't +// tag other resources that Amazon QuickSight costs are based on, such as +// storage capacoty (SPICE), session usage, alert consumption, or reporting +// units. // // - Amazon QuickSight doesn't currently support the tag editor for Resource // Groups. @@ -75788,6 +75788,9 @@ type RegisterUserInput struct { // in the CLI Reference. SessionName *string `min:"2" type:"string"` + // The tags to associate with the user. + Tags []*Tag `min:"1" type:"list"` + // The Amazon QuickSight user name that you want to create for the user you // are registering. UserName *string `min:"1" type:"string"` @@ -75856,12 +75859,25 @@ func (s *RegisterUserInput) Validate() error { if s.SessionName != nil && len(*s.SessionName) < 2 { invalidParams.Add(request.NewErrParamMinLen("SessionName", 2)) } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if s.UserRole == nil { invalidParams.Add(request.NewErrParamRequired("UserRole")) } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -75929,6 +75945,12 @@ func (s *RegisterUserInput) SetSessionName(v string) *RegisterUserInput { return s } +// SetTags sets the Tags field's value. +func (s *RegisterUserInput) SetTags(v []*Tag) *RegisterUserInput { + s.Tags = v + return s +} + // SetUserName sets the UserName field's value. func (s *RegisterUserInput) SetUserName(v string) *RegisterUserInput { s.UserName = &v @@ -103114,6 +103136,9 @@ const ( // MemberTypeDataset is a MemberType enum value MemberTypeDataset = "DATASET" + + // MemberTypeTopic is a MemberType enum value + MemberTypeTopic = "TOPIC" ) // MemberType_Values returns all elements of the MemberType enum @@ -103122,6 +103147,7 @@ func MemberType_Values() []string { MemberTypeDashboard, MemberTypeAnalysis, MemberTypeDataset, + MemberTypeTopic, } } diff --git a/service/ssm/api.go b/service/ssm/api.go index 092693aa444..614b04f1811 100644 --- a/service/ssm/api.go +++ b/service/ssm/api.go @@ -22808,7 +22808,11 @@ type CreateOpsItemInput struct { // Specify a category to assign to an OpsItem. Category *string `min:"1" type:"string"` - // Information about the OpsItem. + // User-defined text that contains information about the OpsItem, in Markdown + // format. + // + // Provide enough information so that users viewing this OpsItem for the first + // time understand the issue. // // Description is a required field Description *string `min:"1" type:"string" required:"true"` @@ -22849,7 +22853,7 @@ type CreateOpsItemInput struct { // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -45305,7 +45309,7 @@ type OpsItem struct { // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -46532,7 +46536,7 @@ type OpsItemSummary struct { // * /aws/changerequest This type of OpsItem is used by Change Manager for // reviewing and approving or rejecting change requests. // - // * /aws/insights This type of OpsItem is used by OpsCenter for aggregating + // * /aws/insight This type of OpsItem is used by OpsCenter for aggregating // and reporting on duplicate OpsItems. OpsItemType *string `type:"string"` @@ -58869,8 +58873,8 @@ type UpdateOpsItemInput struct { // Specify a new category for an OpsItem. Category *string `min:"1" type:"string"` - // Update the information about the OpsItem. Provide enough information so that - // users reading this OpsItem for the first time understand the issue. + // User-defined text that contains information about the OpsItem, in Markdown + // format. Description *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of an SNS topic where notifications are sent @@ -60436,17 +60440,17 @@ func ComplianceUploadType_Values() []string { const ( // ConnectionStatusConnected is a ConnectionStatus enum value - ConnectionStatusConnected = "Connected" + ConnectionStatusConnected = "connected" - // ConnectionStatusNotConnected is a ConnectionStatus enum value - ConnectionStatusNotConnected = "NotConnected" + // ConnectionStatusNotconnected is a ConnectionStatus enum value + ConnectionStatusNotconnected = "notconnected" ) // ConnectionStatus_Values returns all elements of the ConnectionStatus enum func ConnectionStatus_Values() []string { return []string{ ConnectionStatusConnected, - ConnectionStatusNotConnected, + ConnectionStatusNotconnected, } } @@ -61851,9 +61855,6 @@ const ( // ResourceTypeManagedInstance is a ResourceType enum value ResourceTypeManagedInstance = "ManagedInstance" - // ResourceTypeDocument is a ResourceType enum value - ResourceTypeDocument = "Document" - // ResourceTypeEc2instance is a ResourceType enum value ResourceTypeEc2instance = "EC2Instance" ) @@ -61862,7 +61863,6 @@ const ( func ResourceType_Values() []string { return []string{ ResourceTypeManagedInstance, - ResourceTypeDocument, ResourceTypeEc2instance, } } diff --git a/service/ssm/doc.go b/service/ssm/doc.go index b7b2854b4a9..a527ef256c4 100644 --- a/service/ssm/doc.go +++ b/service/ssm/doc.go @@ -15,7 +15,7 @@ // Related resources // // - For information about each of the capabilities that comprise Systems -// Manager, see Systems Manager capabilities (https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/systems-manager-capabilities.html) +// Manager, see Systems Manager capabilities (https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html#systems-manager-capabilities) // in the Amazon Web Services Systems Manager User Guide. // // - For details about predefined runbooks for Automation, a capability of diff --git a/service/wafv2/api.go b/service/wafv2/api.go index 074b80b18aa..d0361aa70a5 100644 --- a/service/wafv2/api.go +++ b/service/wafv2/api.go @@ -835,15 +835,16 @@ func (c *WAFV2) CreateWebACLRequest(input *CreateWebACLInput) (req *request.Requ // Creates a WebACL per the specifications provided. // // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6183,15 +6184,16 @@ func (c *WAFV2) UpdateWebACLRequest(input *UpdateWebACLInput) (req *request.Requ // type last only a few seconds. // // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6376,8 +6378,12 @@ type AWSManagedRulesACFPRuleSet struct { // page on your website that accepts the completed registration form for a new // user. This page must accept POST requests. // - // For example, for the URL https://example.com/web/signup, you would provide - // the path /web/signup. + // For example, for the URL https://example.com/web/newaccount, you would provide + // the path /web/newaccount. Account creation page paths that start with the + // path that you provide are considered a match. For example /web/newaccount + // matches the account creation paths /web/newaccount, /web/newaccount/, /web/newaccountPage, + // and /web/newaccount/thisPage, but doesn't match the path /home/web/newaccount + // or /website/newaccount. // // CreationPath is a required field CreationPath *string `min:"1" type:"string" required:"true"` @@ -6391,8 +6397,12 @@ type AWSManagedRulesACFPRuleSet struct { // // This page must accept GET text/html requests. // - // For example, for the URL https://example.com/web/register, you would provide - // the path /web/register. + // For example, for the URL https://example.com/web/registration, you would + // provide the path /web/registration. Registration page paths that start with + // the path that you provide are considered a match. For example /web/registration + // matches the registration paths /web/registration, /web/registration/, /web/registrationPage, + // and /web/registration/thisPage, but doesn't match the path /home/web/registration + // or /website/registration. // // RegistrationPagePath is a required field RegistrationPagePath *string `min:"1" type:"string" required:"true"` @@ -6511,6 +6521,10 @@ type AWSManagedRulesATPRuleSet struct { // The path of the login endpoint for your application. For example, for the // URL https://example.com/web/login, you would provide the path /web/login. + // Login paths that start with the path that you provide are considered a match. + // For example /web/login matches the login paths /web/login, /web/login/, /web/loginPage, + // and /web/login/thisPage, but doesn't match the login path /home/web/login + // or /website/login. // // The rule group inspects only HTTP POST requests to your specified login endpoint. // @@ -7312,6 +7326,10 @@ type ByteMatchStatement struct { // * UriPath: The value that you want WAF to search for in the URI path, // for example, /images/daily-ad.jpg. // + // * JA3Fingerprint: The string to match against the web request's JA3 fingerprint + // header. The header contains a hash fingerprint of the TLS Client Hello + // packet for the request. + // // * HeaderOrder: The comma-separated list of header names to match for. // WAF creates a string that contains the ordered list of header names, from // the headers in the web request, and then matches against that string. @@ -7345,7 +7363,7 @@ type ByteMatchStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -8318,24 +8336,23 @@ type CreateIPSetInput struct { _ struct{} `type:"structure"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -8730,10 +8747,9 @@ type CreateRuleGroupInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -8987,10 +9003,9 @@ type CreateWebACLInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -9416,7 +9431,8 @@ type CustomResponse struct { // ResponseCode is a required field ResponseCode *int64 `min:"200" type:"integer" required:"true"` - // The HTTP headers to use in the response. Duplicate header names are not allowed. + // The HTTP headers to use in the response. You can specify any header name + // except for content-type. Duplicate header names are not allowed. // // For information about the limits on count and size for custom request and // response settings, see WAF quotas (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) @@ -11132,6 +11148,13 @@ type FieldToMatch struct { // from the underlying host service. Headers *Headers `type:"structure"` + // Match against the request's JA3 fingerprint header. The header contains a + // hash fingerprint of the TLS Client Hello packet for the request. + // + // You can use this choice only with a string match ByteMatchStatement with + // the PositionalConstraint set to EXACTLY. + JA3Fingerprint *JA3Fingerprint `type:"structure"` + // Inspect the request body as JSON. The request body immediately follows the // request headers. This is the part of a request that contains any additional // data that you want to send to your web server as the HTTP request body, such @@ -11212,6 +11235,11 @@ func (s *FieldToMatch) Validate() error { invalidParams.AddNested("Headers", err.(request.ErrInvalidParams)) } } + if s.JA3Fingerprint != nil { + if err := s.JA3Fingerprint.Validate(); err != nil { + invalidParams.AddNested("JA3Fingerprint", err.(request.ErrInvalidParams)) + } + } if s.JsonBody != nil { if err := s.JsonBody.Validate(); err != nil { invalidParams.AddNested("JsonBody", err.(request.ErrInvalidParams)) @@ -11264,6 +11292,12 @@ func (s *FieldToMatch) SetHeaders(v *Headers) *FieldToMatch { return s } +// SetJA3Fingerprint sets the JA3Fingerprint field's value. +func (s *FieldToMatch) SetJA3Fingerprint(v *JA3Fingerprint) *FieldToMatch { + s.JA3Fingerprint = v + return s +} + // SetJsonBody sets the JsonBody field's value. func (s *FieldToMatch) SetJsonBody(v *JsonBody) *FieldToMatch { s.JsonBody = v @@ -13778,24 +13812,23 @@ type IPSet struct { ARN *string `min:"20" type:"string" required:"true"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -14219,6 +14252,65 @@ func (s *ImmunityTimeProperty) SetImmunityTime(v int64) *ImmunityTimeProperty { return s } +// Match against the request's JA3 fingerprint header. The header contains a +// hash fingerprint of the TLS Client Hello packet for the request. +// +// You can use this choice only with a string match ByteMatchStatement with +// the PositionalConstraint set to EXACTLY. +type JA3Fingerprint struct { + _ struct{} `type:"structure"` + + // The match status to assign to the web request if the request doesn't have + // a JA3 fingerprint. + // + // You can specify the following fallback behaviors: + // + // * MATCH - Treat the web request as matching the rule statement. WAF applies + // the rule action to the request. + // + // * NO_MATCH - Treat the web request as not matching the rule statement. + // + // FallbackBehavior is a required field + FallbackBehavior *string `type:"string" required:"true" enum:"FallbackBehavior"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JA3Fingerprint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s JA3Fingerprint) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *JA3Fingerprint) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "JA3Fingerprint"} + if s.FallbackBehavior == nil { + invalidParams.Add(request.NewErrParamRequired("FallbackBehavior")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFallbackBehavior sets the FallbackBehavior field's value. +func (s *JA3Fingerprint) SetFallbackBehavior(v string) *JA3Fingerprint { + s.FallbackBehavior = &v + return s +} + // Inspect the body of the web request as JSON. The body immediately follows // the request headers. // @@ -16786,8 +16878,9 @@ func (s *ManagedRuleGroupConfig) SetUsernameField(v *UsernameField) *ManagedRule // in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups. // // You cannot nest a ManagedRuleGroupStatement, for example for use inside a -// NotStatement or OrStatement. It can only be referenced as a top-level statement -// within a rule. +// NotStatement or OrStatement. You cannot use a managed rule group inside another +// rule group. You can only reference a managed rule group as a top-level statement +// within a rule that you define in a web ACL. // // You are charged additional fees when you use the WAF Bot Control managed // rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account @@ -18846,7 +18939,7 @@ type RateLimitCookie struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19002,7 +19095,7 @@ type RateLimitHeader struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19181,7 +19274,7 @@ type RateLimitQueryArgument struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19263,7 +19356,7 @@ type RateLimitQueryString struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19333,7 +19426,7 @@ type RateLimitUriPath struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19456,7 +19549,7 @@ type RegexMatchStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -19642,7 +19735,7 @@ type RegexPatternSetReferenceStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -20725,9 +20818,9 @@ func (s *ResponseInspectionStatusCode) SetSuccessCodes(v []*int64) *ResponseInsp } // A single rule, which you can use in a WebACL or RuleGroup to identify web -// requests that you want to allow, block, or count. Each rule includes one -// top-level Statement that WAF uses to identify matching web requests, and -// parameters that govern how WAF handles them. +// requests that you want to manage in some way. Each rule includes one top-level +// Statement that WAF uses to identify matching web requests, and parameters +// that govern how WAF handles them. type Rule struct { _ struct{} `type:"structure"` @@ -21230,10 +21323,9 @@ type RuleGroup struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Defines and enables Amazon CloudWatch metrics and web request sample collection. @@ -21331,8 +21423,9 @@ func (s *RuleGroup) SetVisibilityConfig(v *VisibilityConfig) *RuleGroup { // rule group in this statement. // // You cannot nest a RuleGroupReferenceStatement, for example for use inside -// a NotStatement or OrStatement. You can only use a rule group reference statement -// at the top level inside a web ACL. +// a NotStatement or OrStatement. You cannot use a rule group reference statement +// inside another rule group. You can only reference a rule group as a top-level +// statement within a rule that you define in a web ACL. type RuleGroupReferenceStatement struct { _ struct{} `type:"structure"` @@ -21862,7 +21955,7 @@ type SizeConstraintStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -21982,7 +22075,7 @@ type SqliMatchStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"` @@ -22136,8 +22229,9 @@ type Statement struct { // in this statement. You can retrieve the required names by calling ListAvailableManagedRuleGroups. // // You cannot nest a ManagedRuleGroupStatement, for example for use inside a - // NotStatement or OrStatement. It can only be referenced as a top-level statement - // within a rule. + // NotStatement or OrStatement. You cannot use a managed rule group inside another + // rule group. You can only reference a managed rule group as a top-level statement + // within a rule that you define in a web ACL. // // You are charged additional fees when you use the WAF Bot Control managed // rule group AWSManagedRulesBotControlRuleSet, the WAF Fraud Control account @@ -22256,8 +22350,9 @@ type Statement struct { // rule group in this statement. // // You cannot nest a RuleGroupReferenceStatement, for example for use inside - // a NotStatement or OrStatement. You can only use a rule group reference statement - // at the top level inside a web ACL. + // a NotStatement or OrStatement. You cannot use a rule group reference statement + // inside another rule group. You can only reference a rule group as a top-level + // statement within a rule that you define in a web ACL. RuleGroupReferenceStatement *RuleGroupReferenceStatement `type:"structure"` // A rule statement that compares a number of bytes against the size of a request @@ -22724,116 +22819,9 @@ type TextTransformation struct { // Priority is a required field Priority *int64 `type:"integer" required:"true"` - // You can specify the following transformation types: - // - // BASE64_DECODE - Decode a Base64-encoded string. - // - // BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation - // that ignores characters that aren't valid. - // - // CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness - // of attackers who inject an operating system command-line command and use - // unusual formatting to disguise some or all of the command. - // - // * Delete the following characters: \ " ' ^ - // - // * Delete spaces before the following characters: / ( - // - // * Replace the following characters with a space: , ; - // - // * Replace multiple spaces with one space - // - // * Convert uppercase letters (A-Z) to lowercase (a-z) - // - // COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal - // 32): - // - // * \f, formfeed, decimal 12 - // - // * \t, tab, decimal 9 - // - // * \n, newline, decimal 10 - // - // * \r, carriage return, decimal 13 - // - // * \v, vertical tab, decimal 11 - // - // * Non-breaking space, decimal 160 - // - // COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. - // - // CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules - // syndata.html#characters. This function uses up to two bytes in the decoding - // process, so it can help to uncover ASCII characters that were encoded using - // CSS encoding that wouldn’t typically be encoded. It's also useful in countering - // evasion, which is a combination of a backslash and non-hexadecimal characters. - // For example, ja\vascript for javascript. - // - // ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \a, \b, - // \f, \n, \r, \t, \v, \\, \?, \', \", \xHH (hexadecimal), \0OOO (octal). Encodings - // that aren't valid remain in the output. - // - // HEX_DECODE - Decode a string of hexadecimal characters into a binary. - // - // HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. - // HTML_ENTITY_DECODE performs these operations: - // - // * Replaces (ampersand)quot; with " - // - // * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 - // - // * Replaces (ampersand)lt; with a "less than" symbol - // - // * Replaces (ampersand)gt; with > - // - // * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, - // with the corresponding characters - // - // * Replaces characters that are represented in decimal format, (ampersand)#nnnn;, - // with the corresponding characters - // - // JS_DECODE - Decode JavaScript escape sequences. If a \ u HHHH code is in - // the full-width ASCII code range of FF01-FF5E, then the higher byte is used - // to detect and adjust the lower byte. If not, only the lower byte is used - // and the higher byte is zeroed, causing a possible loss of information. - // - // LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z). - // - // MD5 - Calculate an MD5 hash from the data in the input. The computed hash - // is in a raw binary form. - // - // NONE - Specify NONE if you don't want any text transformations. - // - // NORMALIZE_PATH - Remove multiple slashes, directory self-references, and - // directory back-references that are not at the beginning of the input from - // an input string. - // - // NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts - // backslash characters to forward slashes. - // - // REMOVE_NULLS - Remove all NULL bytes from the input. - // - // REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... */) - // with a single space. Multiple consecutive occurrences are not compressed. - // Unterminated comments are also replaced with a space (ASCII 0x20). However, - // a standalone termination of a comment (*/) is not acted upon. - // - // REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII - // 0x20). - // - // SQL_HEX_DECODE - Decode SQL hex data. Example (0x414243) will be decoded - // to (ABC). - // - // URL_DECODE - Decode a URL-encoded value. - // - // URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific - // %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, - // the higher byte is used to detect and adjust the lower byte. Otherwise, only - // the lower byte is used and the higher byte is zeroed. - // - // UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This - // helps input normalization, and minimizing false-positives and false-negatives - // for non-English languages. + // For detailed descriptions of each of the transformation types, see Text transformations + // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-transformation.html) + // in the WAF Developer Guide. // // Type is a required field Type *string `type:"string" required:"true" enum:"TextTransformationType"` @@ -23059,24 +23047,23 @@ type UpdateIPSetInput struct { _ struct{} `type:"structure"` // Contains an array of strings that specifies zero or more IP addresses or - // blocks of IP addresses. All addresses must be specified using Classless Inter-Domain - // Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except - // for /0. + // blocks of IP addresses that you want WAF to inspect for in incoming requests. + // All addresses must be specified using Classless Inter-Domain Routing (CIDR) + // notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0. // // Example address strings: // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 192.0.2.44, specify 192.0.2.44/32. + // * For requests that originated from the IP address 192.0.2.44, specify + // 192.0.2.44/32. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24. + // * For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, + // specify 192.0.2.0/24. // - // * To configure WAF to allow, block, or count requests that originated - // from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128. + // * For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, + // specify 1111:0000:0000:0000:0000:0000:0000:0111/128. // - // * To configure WAF to allow, block, or count requests that originated - // from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, - // specify 1111:0000:0000:0000:0000:0000:0000:0000/64. + // * For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 + // to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64. // // For more information about CIDR notation, see the Wikipedia entry Classless // Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). @@ -23706,10 +23693,9 @@ type UpdateRuleGroupInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -23970,10 +23956,9 @@ type UpdateWebACLInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies whether this is for an Amazon CloudFront distribution or for a @@ -25780,15 +25765,16 @@ func (s *WAFUnsupportedAggregateKeyTypeException) RequestID() string { } // A web ACL defines a collection of rules to use to inspect and control web -// requests. Each rule has an action defined (allow, block, or count) for requests -// that match the statement of the rule. In the web ACL, you assign a default -// action to take (allow, block) for any request that does not match any of -// the rules. The rules in a web ACL can be a combination of the types Rule, -// RuleGroup, and managed rule group. You can associate a web ACL with one or -// more Amazon Web Services resources to protect. The resources can be an Amazon -// CloudFront distribution, an Amazon API Gateway REST API, an Application Load -// Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner -// service, or an Amazon Web Services Verified Access instance. +// requests. Each rule has a statement that defines what to look for in web +// requests and an action that WAF applies to requests that match the statement. +// In the web ACL, you assign a default action to take (allow, block) for any +// request that does not match any of the rules. The rules in a web ACL can +// be a combination of the types Rule, RuleGroup, and managed rule group. You +// can associate a web ACL with one or more Amazon Web Services resources to +// protect. The resources can be an Amazon CloudFront distribution, an Amazon +// API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, +// an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services +// Verified Access instance. type WebACL struct { _ struct{} `type:"structure"` @@ -25907,10 +25893,9 @@ type WebACL struct { // groups, to determine their relative processing order. PreProcessFirewallManagerRuleGroups []*FirewallManagerRuleGroup `type:"list"` - // The Rule statements used to identify the web requests that you want to allow, - // block, or count. Each rule includes one top-level statement that WAF uses - // to identify matching web requests, and parameters that govern how WAF handles - // them. + // The Rule statements used to identify the web requests that you want to manage. + // Each rule includes one top-level statement that WAF uses to identify matching + // web requests, and parameters that govern how WAF handles them. Rules []*Rule `type:"list"` // Specifies the domains that WAF should accept in a web request token. This @@ -26146,7 +26131,7 @@ type XssMatchStatement struct { // to transform request components before using them as custom aggregation keys. // If you specify one or more transformations to apply, WAF performs all transformations // on the specified content, starting from the lowest priority setting, and - // then uses the component contents. + // then uses the transformed component contents. // // TextTransformations is a required field TextTransformations []*TextTransformation `min:"1" type:"list" required:"true"`